Tác giả đang dẫn đầu Nhà phát triển Năng suất GTM tại Microsoft Tây Âu. GitHub Copilot là một phần của lĩnh vực kinh doanh này.
GitHub Copilot Chat là một tính năng cực kỳ mạnh mẽ và hữu ích cho phép bạn trò chuyện về mã của mình. Mặc dù nó thân thiện với ngôn ngữ tự nhiên 100% (tức là bạn có thể gửi tin nhắn mà không cần sử dụng bất kỳ cú pháp cụ thể nào), việc tận dụng một số khả năng trò chuyện đặc biệt có thể mở khóa các kịch bản phát triển mới được AI hỗ trợ và tăng đáng kể năng suất của bạn.
Những tính năng mạnh mẽ này mà bạn có thể sử dụng bằng cách áp dụng cú pháp đặc biệt, bao gồm người tham gia trò chuyện, lệnh gạch chéo và biến ngữ cảnh. Lưu ý rằng các tính năng được mô tả có sẵn trong VS Code và có thể không được hỗ trợ đầy đủ trong các IDE khác có sẵn GitHub Copilot Chat.
Trong GitHub Copilot Chat, bạn có thể tham khảo một trong những “chuyên gia miền” được hỗ trợ bởi AI bằng cách sử dụng cú pháp trò chuyện thông thường—bằng cách thêm @ vào tên người tham gia. Những người tham gia trò chuyện hiện có là:
@workspace
: Biết mọi thứ về mã trong không gian làm việc hiện đang mở của bạn. Đây là người tham gia trò chuyện mà bạn có thể sẽ liên lạc thường xuyên nhất.
@terminal
: Biết tất cả về vỏ thiết bị đầu cuối tích hợp, nội dung và bộ đệm của nó.
@vscode
: Biết về trình soạn thảo VS Code, các lệnh và tính năng của nó. Ví dụ: Hãy lấy thông tin về phần phụ trợ của dự án mà chúng ta vừa được chỉ định bằng cách hỏi người tham gia trò chuyện @workspace
ngay sau khi chúng ta mở thư mục dự án trong VS Code.
Trong trường hợp cụ thể này, bạn thậm chí không cần mở tệp trong trình chỉnh sửa của mình. So sánh điều này với phản hồi bạn nhận được mà không gắn thẻ @workspace
:
Người tham gia trò chuyện @workspace
là công cụ cho tất cả các truy vấn trên toàn bộ giải pháp mà bạn muốn tất cả mã được xem xét cho phản hồi trò chuyện. Tuy nhiên, điều này không có nghĩa là tất cả mã sẽ được sử dụng và gửi như một phần của lời nhắc. Tiện ích mở rộng GitHub Copilot Chat trong VS Code cố gắng hết sức để xác định các tệp và phần có liên quan của các tệp này trước tiên bằng cách sử dụng kiến thức và trí thông minh địa phương. Bạn có thể kiểm tra xem tệp và dòng mã nào đã được sử dụng cho lời nhắc bằng cách mở rộng dòng “Tài liệu tham khảo đã sử dụng”:
Gợi ý về năng suất: Sử dụng Ctrl-Enter (Cmd-Enter) thay vì chỉ Enter sau khi nhập tin nhắn của bạn và chuỗi @workspace
sẽ tự động được chèn vào tin nhắn của bạn trước khi gửi.
Trong nhiều trường hợp, việc coi giải pháp đầy đủ làm bối cảnh cho câu hỏi hoặc yêu cầu của bạn (bằng cách sử dụng @workspace
) là quá mức cần thiết. Bạn có thể muốn trỏ đến các tệp cụ thể hoặc thậm chí các phần của tệp trong tin nhắn của mình. Các biến trò chuyện có thể hữu ích! Sử dụng # để gọi một từ danh sách này:
#file
: Trỏ tới một tệp cụ thể trong không gian làm việc của bạn.
#codebase
: Tất cả nội dung của không gian làm việc đang mở. Nó tương tự như việc sử dụng @workspace
và có thể hữu ích khi bạn trò chuyện với một tổng đài viên khác (như @terminal
) nhưng vẫn muốn tham khảo giải pháp đầy đủ.
#editor
: Mã nguồn trong khung nhìn của trình soạn thảo (phần hiển thị).
#git
: Kho git hiện tại: nhánh, điều khiển từ xa, đường dẫn, v.v.
#selection
: Mã hiện được chọn.
#terminalLastCommand
: Lệnh chạy lần cuối trong terminal của trình soạn thảo.
#terminalSelection
: Lựa chọn trong terminal của trình soạn thảo.Ví dụ: Hãy nhận trợ giúp về cách cải thiện tên phương thức trong một tệp cụ thể (và chúng tôi muốn đảm bảo rằng toàn bộ nội dung của tệp đều được xem xét).
Gợi ý về năng suất: Sử dụng mũi tên lên và xuống trên bàn phím để chọn biến trò chuyện bạn cần sau khi nhập #. Trong trường hợp #file
, hãy sử dụng lại điều hướng bàn phím để chọn một trong các tệp được đề xuất.
Trò chuyện với mã của bạn bằng ngôn ngữ tự nhiên thật thú vị nhưng có tùy chọn gọi các hành động thường được sử dụng bằng các phím tắt tiện dụng thậm chí còn tốt hơn. So sánh việc nhập thông báo đầy đủ “Giải thích cách hoạt động của mã đã chọn” so với việc nhập “/”, sau đó sử dụng các mũi tên trên bàn phím để chọn /explain
từ lớp phủ bật lên.
Một lợi ích khác của việc sử dụng cú pháp xác định trước cho các lệnh là sự tự tin rằng GitHub Copilot hiểu chính xác 100% ý định của chúng ta (ngôn ngữ tự nhiên có thể có một số điểm mơ hồ).
Có rất nhiều lệnh gạch chéo có sẵn. Bạn có thể sử dụng chúng kết hợp với việc tham khảo người tham gia trò chuyện để cung cấp phạm vi mong muốn. Một số lệnh là:
/help
: Trợ giúp với các lệnh gạch chéo có sẵn, người tham gia trò chuyện, biến trò chuyện, v.v.
/doc
: Tạo tài liệu cho mã.
/explain
: Giải thích cách hoạt động của mã (hoặc nhận trợ giúp về các lệnh đầu cuối nếu bạn thêm @terminal).
/fix
: Tối ưu hóa và/hoặc khắc phục các sự cố trong mã.
/tests
: Tạo các bài kiểm tra đơn vị cho mã.
/new
: Xây dựng một không gian làm việc mới. Ví dụ: Hãy giải thích cho một trong các biểu thức chính quy trong mã của chúng ta. Chọn dòng mã và sử dụng lệnh gạch chéo “ /explain
.
Gợi ý về năng suất: Hãy thử Trò chuyện Copilot GitHub ở chế độ nội tuyến thay vì trò chuyện luôn mở trong khung bên. Nhấn Ctrl-I (Cmd-I) và nhập tin nhắn của bạn vào hộp thoại lớp phủ nhỏ xuất hiện ngay phía trên dòng nơi con trỏ của bạn nằm trong cửa sổ mã.
Sử dụng người tham gia trò chuyện, biến trò chuyện và lệnh gạch chéo để duy trì toàn quyền kiểm soát bối cảnh cuộc trò chuyện, đảm bảo hiểu chính xác và nhất quán về ý định của bạn, đồng thời cuối cùng là trò chuyện và viết mã nhanh hơn! Bắt đầu dùng thử GitHub Copilot miễn phí của bạn tại đây: https://aka.ms/try-github-copilot
https://github.blog/changelog/2023-11-30-github-copilot-november-30th-update/
https://code.visualstudio.com/docs/copilot/copilot-chat#_chat-participants
https://devblogs.microsoft.com/visualstudio/copilot-chat-slash-commands-and-context-variables/
https://code.visualstudio.com/updates/v1_85#_terminal-agent-and-command-suggestion-improvements
https://code.visualstudio.com/updates/v1_84#_chat-agents