13 điểm bởi laeyoung 2021-08-02 | 12 bình luận | Chia sẻ qua WhatsApp
  • Copilot là dịch vụ thương mại hóa Codex, được xây dựng dựa trên GPT-3

  • Được huấn luyện bằng bộ dữ liệu 159GB trích xuất từ 54 triệu repo trên Github

  • Đã tạo ra 164 bộ dữ liệu benchmark, và Codex giải được 28,8% trong số đó

  • Giỏi giải các bài toán thuật toán như trên LeetCode

    -> Có lẽ là vì trên Github có nhiều repo đăng lời giải các bài toán thuật toán và nó đã học từ đó


Trên GeekNews trước đây cũng đã có vài bài viết liên quan đến Copilot rồi.

Lần này có một người ở công ty viết bài về Copilot, mà chỉ mình tôi có tài khoản Copilot Preview nên tôi đã hỗ trợ một chút trên máy tính của mình.

Trong lúc thử nghiệm, điều khiến tôi ngạc nhiên là tôi đưa vào 3 bài toán lập trình thì nó đều cho ra đáp án qua được ngay.

Một trong các bài là bài trên Baekjoon, tôi còn dịch qua bằng máy rồi mới đưa vào mà nó vẫn ra đáp án đúng.

Tôi đã nghĩ rằng chắc cũng sẽ có người dùng nó để gian lận trong các bài test code online...

Kết luận của tôi sau khi gắn vào VSCode và dùng thử trong một tháng là

  • Rất hữu ích khi phát triển bằng một ngôn ngữ hay môi trường mà bạn chỉ biết tương đối.

    -> Khi phát triển React, có chỗ tôi cần lấy e.target.value để làm gì đó, nó gợi ý một đoạn khoảng 20 ký tự, tôi bấm Tab để tự động hoàn thành thì kết quả đúng như mong muốn.

    -> Tất nhiên vì vốn khá nghi ngờ nên tôi còn lên StackOverFlow kiểm tra lại, và gợi ý đó thực sự chính xác.

  • Nếu là ngôn ngữ hay môi trường bạn đã rất quen thuộc, gợi ý có thể không tối ưu nên đôi khi sẽ gây khó chịu.

  • Tôi cũng có lo rằng mã nguồn sẽ bị gửi đi để inference, nhưng rồi lại nghĩ chỉ với từng file riêng lẻ thì có thể làm được gì chứ, nên hiện vẫn cứ dùng.

12 bình luận

 
ruinnel 2021-08-03

https://www.youtube.com/watch?v=a9349pRiCRk

Tôi cũng thấy có những ý kiến như thế này.

Xem xong cái này thì tôi tụt hứng khá nhiều.

 
budlebee 2021-08-03

Tôi không rành lắm về bản quyền mã nguồn, nhưng nếu chỉ đổi tên biến, đổi tên hàm hoặc chỉnh sửa nhẹ rồi dùng mã được bảo hộ bản quyền thì có bị xem là vi phạm giấy phép không?

 
dalinaum 2021-08-05

Vâng. Đây là vi phạm.

 
ruinnel 2021-08-03

Tôi nghĩ trong bản quyền mã nguồn, yếu tố quan trọng có lẽ không phải là mã có hoàn toàn giống nhau hay không... mà là mã đó xuất phát từ đâu?

Với giấy phép MIT hay Apache thì việc mang về, chỉnh sửa rồi sử dụng có lẽ sẽ không thành vấn đề lớn...

Nếu đoạn mã do Copilot gợi ý lại trùng với mã mang giấy phép GPL...

và giả sử lập trình viên sửa một phần của đoạn mã đó rồi đưa vào dự án đang phát triển...

thì xét theo giấy phép GPL, chẳng phải dự án đó sẽ phải công khai toàn bộ mã nguồn hay sao.

Theo tôi biết, nếu dùng mã có giấy phép GPL mà không công khai toàn bộ mã đã sử dụng nó thì sẽ bị xem là vi phạm giấy phép GPL.

Nếu viết thành một ví dụ cực đoan kiểu giả tưởng thì...

Một công ty đang phát triển giải pháp, lập trình viên dùng Copilot, và xui xẻo thay đoạn mã được gợi ý lại là mã từ một nơi dùng giấy phép GPL mà AI đã học rồi xuất ra nguyên xi...... thì chẳng phải sẽ phát sinh vấn đề hoặc là phải công khai toàn bộ mã của giải pháp của công ty hay sao.

 
budlebee 2021-08-03

Tôi thắc mắc là, nếu người dùng chỉ chỉnh sửa nhẹ đoạn mã mà Copilot tạo ra rồi dùng, thì có cách nào phát hiện được không? Dù cùng I/O và cùng chức năng thì vẫn có thể có nhiều phong cách mã khác nhau, nên tôi tò mò không biết người ta phát hiện kiểu đạo mã như vậy bằng cách nào (liệu có phương pháp so sánh đối chiếu với tài liệu tham chiếu giống như trong các vụ kiện đạo nhạc không?)

 
ruinnel 2021-08-03

Chà, tôi cũng không rõ lắm về tiêu chí để xác minh mức độ tương đồng và quyết định đến đâu thì được xem là cùng một đoạn mã nữa haha

 
laeyoung 2021-08-03

Bài viết liên quan cũng đã từng được đăng trên GeekNews

https://vi.news.hada.io/topic?id=4659

Trong video YouTube đó có nói về vấn đề bản quyền, nhưng nhìn việc ngay cả các tư liệu xuất hiện trong video (tin tức, hoạt hình, v.v.) cũng không hề ghi rõ nguồn hay bản quyền thì đúng là một việc rất khó thật TT

 
ruinnel 2021-08-03

Bản quyền đối với tin tức/truyện tranh trong video mà bạn đã chỉ ra là ... về nguyên tắc chỉ là vấn đề mà chính người đã tạo/phát hành video đó phải chịu trách nhiệm thôi..

Nhưng vấn đề ở đây là, nếu khi dùng Copilot mà đoạn mã vi phạm bản quyền lại được đưa vào mã của tôi thì sao.

Tôi chỉ dùng một công cụ thôi, nhưng lại thành ra chương trình tôi phát triển có thể bị cuốn vào một vụ kiện bản quyền.

 
yeop2 2021-08-02

Tôi cũng muốn dùng thử, không biết đến bao giờ mới được cấp quyền nữa huhu

 
ktseo41 2021-08-02

+1 tôi vẫn đang tiếp tục chờ đây

 
cog25 2021-08-02

Theo tôi biết là dùng Github càng nhiều thì sẽ được cấp càng nhanh.

 
laeyoung 2021-08-02

Không hiểu sao mà repo tôi làm gấp vào năm ngoái vì COVID lại nhận được hơn 100 star. Có lẽ vì vậy nên cả Copilot lẫn GitHub Codespaces, cứ hễ tôi đăng ký là khá dễ được chọn.