- Tiện ích mở rộng GitHub Copilot Chat của VS Code đã được phát hành dưới dạng mã nguồn mở
- Trong Chat view, có thể đặt câu hỏi bằng ngôn ngữ tự nhiên cho Copilot để nhận trợ giúp liên quan đến mã ngay lập tức
- Cung cấp câu trả lời nhận biết ngữ cảnh bằng cách tận dụng mã trong workspace, biến, thông tin Participant, lệnh Slash, v.v.
- Với Inline chat, có thể áp dụng trực tiếp các đề xuất của AI ngay trong mã
- Có thể thực hiện theo thời gian thực các việc như refactor, thêm xử lý ngoại lệ, giải thích các thuật toán phức tạp
Tổng quan
- GitHub Copilot là công cụ lập trình đồng hành dựa trên AI, một tiện ích mở rộng giúp tăng tốc độ viết mã và cải thiện chất lượng
- Người dùng có thể chọn model phù hợp nhất với dự án, tùy chỉnh phản hồi trò chuyện và sử dụng agent mode để triển khai các phiên lập trình cộng tác tự nhiên
- GitHub Copilot (tự động hoàn thành mã) và GitHub Copilot Chat (AI hội thoại) được cài đặt dưới dạng các tiện ích mở rộng riêng biệt
- Có thể sử dụng thông qua gói miễn phí hoặc với sự phê duyệt của quản trị viên doanh nghiệp, và cần đăng ký thuê bao
- Cung cấp nhiều sản phẩm khác nhau cho mục đích cá nhân và doanh nghiệp (gói cá nhân, doanh nghiệp, enterprise)
- Do đặc tính tích hợp UI, Copilot Chat chỉ hoạt động trên các phiên bản VS Code mới nhất và có thể liên kết với các model và tính năng mới nhất
- Trên các phiên bản VS Code cũ, chỉ có thể sử dụng các phiên bản Copilot Chat trước đó
- Việc sử dụng Copilot Chat đồng nghĩa với việc đồng ý với điều khoản Preview của GitHub Copilot và thông báo minh bạch
- Mã của người dùng được đảm bảo quyền sở hữu và không được dùng làm mã đề xuất cho người dùng khác của GitHub Copilot
1 bình luận
Ý kiến trên Hacker News
Chia sẻ tại đây liên kết đến mẫu system prompt mà họ sử dụng liên kết
Copilot trong VS Code có khá nhiều điểm chưa đạt kỳ vọng, trông vẫn thiếu độ hoàn thiện trau chuốt mà người ta mong đợi ở tầm Microsoft
Không rõ sau khi agent mode được thêm vào thì bạn còn cảm thấy như vậy không; theo trải nghiệm của tôi thì dùng khá hài lòng, tôi chưa thử gemini CLI hay cline nhưng không nghĩ chúng sẽ tốt hơn Copilot
Trước đây tôi từng đặt kỳ vọng vào Microsoft, nhưng nhìn các sản phẩm họ đưa ra trong 15 năm gần đây thì rất khó để còn giữ kỳ vọng đó
Sẽ rất hay nếu có ai đó dùng AI để phân tích cây quyết định về cách Copilot Chat xử lý prompt và phản hồi
AskAgentIntent.handleRequest,EditAgentIntent.handleRequest; sau đó trongDefaultIntentRequestHandler.getResult()sẽ tạo instance và gọi intent để chạy vòng lặprunWithToolCalling, rồi render prompt và phản hồi của tool bằng.tsxtoolCallingLoop.tsCopilot Chat rốt cuộc chỉ là frontend cho Microsoft SaaS; phần thực sự quan trọng thì nằm sau GitHub Copilot API nên khó xem là mã nguồn mở theo đúng nghĩa. Không ai có thể truy cập thiết kế hay dữ liệu huấn luyện của LLM này, cũng không thể self-host, về cơ bản chỉ là thêm một quảng cáo cho mô hình thuê bao và một cấu trúc chuyển dữ liệu cá nhân cho bên thứ ba, không có nhiều giá trị cộng đồng hay lợi ích công cộng
Tôi phản đối ý kiến này; hầu hết các mô hình LLM SOTA thương mại đều cho chất lượng mã và các giới hạn tương tự nhau, điểm khác biệt thực sự nằm ở cách truyền tải ngữ cảnh có ý nghĩa và cấu trúc xử lý kết quả. Bất kỳ ai cũng có thể làm một agent chỉ lặp đi lặp lại việc nhét nội dung tệp vào LLM, nhưng chỉ như vậy thì không thể tạo ra một coding agent tốt
Tôi thấy khó theo được logic của lời phê bình này. Mã nguồn mở đúng nghĩa là mở mã nguồn, còn việc nó hữu ích đến mức nào cho người dùng lại là một chuyện khác
Tôi nghĩ ý nghĩa của mã nguồn mở là công khai mã nguồn; tôi không hiểu vì sao riêng điểm này lại đáng bị chỉ trích
Tôi đồng ý rằng Copilot Chat chỉ là frontend, nhưng bản thân frontend nếu được mã nguồn mở thì cũng tạo ra giá trị công cộng vì ai đó sẽ không cần phải xây lại UI từ đầu; còn chỉ trích rằng cả thiết kế LLM lẫn dữ liệu huấn luyện cũng phải mã nguồn mở thì hơi quá, vì trên thực tế cộng đồng mã nguồn mở không có khả năng vận hành lượng tài nguyên tính toán khổng lồ đó
Trong các bình luận gần đây tôi thường thấy sự bất mãn với API "AI", và với tư cách không phải developer thì khá khó hiểu; trước đây tôi cũng từng có sự khó chịu tương tự với "Web API"
Trước kia website không có API, và người ta chỉ scrape thông tin công khai trên web; cách này khả thi miễn là website còn tồn tại và không cần đăng ký
Ngược lại, Web API thường hạn chế quyền truy cập bằng cách thu thập email, theo dõi lịch sử sử dụng, ràng buộc tài khoản, gói cước..., và đôi khi còn có rủi ro API bị ngừng mà không báo trước
Lựa chọn tải dữ liệu hàng loạt từ trang chủ chỉ tồn tại ở một số ít nơi như các website chính phủ hay Wikipedia dump
Điều này giờ cũng áp dụng với LLM qua API: dữ liệu nội bộ như trọng số mô hình không được công khai, còn người dùng chỉ được tiếp cận gián tiếp thông tin công khai ấy thông qua đăng ký tài khoản, thuê bao...; dữ liệu nằm trên máy chủ nhưng bạn không thể nhận trực tiếp
Tôi tự hỏi liệu đây có phải là lúc những công cụ và công nghệ mà các developer từng ủng hộ đang bắt đầu quay lại vận hành theo hướng bất lợi cho chính họ hay không