Nhà phát triển cá nhân giờ có thể sử dụng trợ lý 'trí tuệ nhân tạo' Copilot của Github — liệu công việc của tôi sẽ bị thay thế sớm?
Tôi yêu việc viết mã để tạo ra những thứ: ứng dụng, trang web, biểu đồ, và thậm chí là âm nhạc. Đây là một kỹ năng mà tôi đã làm việc chăm chỉ trong hơn 20 năm.
Vì vậy, tôi phải thú nhận tin tức tuần trước về việc phát hành một công cụ hỗ trợ mã lập trình mới có tên là GitHub Copilot đã khiến tôi có những cảm xúc phức tạp.
Copilot, một công cụ có khả năng tạo mã dựa trên mô tả 'tiếng Anh đơn giản', là một công cụ đáng chú ý. Nhưng liệu nó có làm mất việc cho những lập trình viên như tôi không?
Được đào tạo trên tỷ lệ dòng mã của con người
GitHub (hiện đang thuộc sở hữu của Microsoft) là một nền tảng hợp tác và mạng xã hội dành cho nhà phát triển. Bạn có thể nghĩ đến nó như là sự kết hợp giữa Dropbox và Instagram, được sử dụng từ cá nhân làm việc tự do đến các kỹ sư phần mềm được trả lương cao tại các công ty công nghệ lớn.
Trong thập kỷ qua hoặc là có thể lâu hơn, người dùng GitHub đã tải lên hàng chục tỷ dòng mã cho hơn 200 triệu ứng dụng. Đó là rất nhiều dòng mã với những câu lệnh if, for, và print("hello world").
Trí tuệ nhân tạo Copilot hoạt động như nhiều công cụ máy học khác: nó đã được 'đào tạo' bằng cách quét và tìm kiếm mẫu trong hàng chục tỷ dòng mã được viết và tải lên bởi cộng đồng lập trình viên của GitHub.
Copilot produces code from instructions in plain English (the pale blue text). GitHubQuá trình đào tạo có thể mất nhiều tháng, hàng trăm triệu đô la cho thiết bị tính toán và đủ điện để chạy một ngôi nhà trong một thập kỷ. Tuy nhiên, khi đã hoàn thành, các lập trình viên có thể viết mô tả (bằng tiếng Anh đơn giản) về những gì họ muốn mã của mình thực hiện, và trợ lý trí tuệ nhân tạo Copilot sẽ viết mã thay họ.
Dựa trên mô hình ngôn ngữ Codex, Copilot là bước tiến tiếp theo trong dòng công cụ 'tự động hoàn thành thông minh'. Tuy nhiên, những công cụ như vậy trong quá khứ đã có nhiều hạn chế. Copilot là một cải tiến đáng kể.
Một trợ lý hiệu quả đáng kinh ngạc
Tôi đã được truy cập sớm vào Copilot khoảng một năm trước, và tôi đã sử dụng nó thường xuyên. Cần một số thực hành để học cách sử dụng tiếng Anh để Copilot đưa ra mã đầu ra hữu ích nhất, nhưng nó có thể hiệu quả đáng kinh ngạc.
Tuy nhiên, chúng ta vẫn còn một đoạn đường dài để đến với việc 'Hey Siri, hãy tạo cho tôi một ứng dụng iPhone triệu đô'. Vẫn cần sử dụng kỹ năng thiết kế phần mềm của tôi để tìm ra những gì các đoạn mã khác nhau trong ứng dụng của tôi nên làm.
Để hiểu cấp độ mà Copilot đang hoạt động, hãy tưởng tượng bạn đang viết một bài luận. Bạn không thể chỉ đơn giản ném câu hỏi của bài luận vào đó và mong nó sẽ tạo ra một đoạn văn hữu ích, có logic. Nhưng nếu bạn hiểu rõ vấn đề và có thể viết câu chủ đề cho mỗi đoạn văn, nó thường sẽ làm một công việc khá tốt trong việc điền phần còn lại của mỗi đoạn văn tự động.
Tùy thuộc vào loại lập trình mà tôi đang làm, điều này đôi khi có thể giúp tiết kiệm rất nhiều thời gian và năng lượng tư duy.
Điều kiện rằng và lỗi lầm
Vẫn còn một số câu hỏi mở với những công cụ hỗ trợ lập trình AI như thế này. Tôi có chút lo lắng rằng chúng sẽ giới thiệu và củng cố động lực 'người chiến thắng mang hết' : rất ít công ty có dữ liệu (trong trường hợp này là hàng tỷ dòng mã) để xây dựng các công cụ như vậy, nên việc tạo ra một đối thủ cho Copilot sẽ khó khăn.
Và liệu Copilot có thể đề xuất cách viết mã và xây dựng phần mềm mới và tốt hơn không? Chúng ta đã thấy các hệ thống AI đổi mới trước đây. Ngược lại, Copilot có thể bị hạn chế trong việc thực hiện những điều theo cách chúng ta đã làm, vì các hệ thống AI được đào tạo trên dữ liệu quá khứ thường dễ mắc sai lầm.
Những trải nghiệm của tôi với Copilot cũng khiến tôi nhận ra rằng sự hiểu biết của tôi vẫn cần thiết, để kiểm tra xem mã 'đề xuất' có thực sự là điều tôi đang tìm kiếm không.
Đôi khi việc nhận ra Copilot đã hiểu lầm đầu vào của tôi là chuyện nhỏ bé. Đó là những trường hợp dễ dàng, và công cụ làm cho việc yêu cầu một gợi ý khác trở nên dễ dàng.
Những trường hợp khó khăn hơn là khi mã code trông đúng, nhưng nó có thể chứa một lỗi tinh sub. Lỗi có thể là do việc tạo ra mã code của AI này là khó khăn, hoặc có thể là do hàng tỷ dòng mã được viết bởi con người mà Copilot được đào tạo có chứa lỗi của riêng chúng.
Một lo ngại khác là về các vấn đề tiềm ẩn về quyền sở hữu mã nguồn Copilot được đào tạo. GitHub đã nói rằng họ đang cố gắng giải quyết những vấn đề này, nhưng chúng ta sẽ phải đợi xem nó sẽ đi về đâu.
Thêm đầu ra từ cùng một đầu vào
Đôi khi, việc sử dụng Copilot khiến tôi cảm thấy một chút hụt hẫng. Kỹ năng mà tôi thường nghĩ làm cho tôi ít nhất là một chút đặc biệt (khả năng viết mã và tạo ra những thứ với máy tính) có thể đang trong quá trình 'tự động hóa đi', giống như nhiều công việc khác đã từng được làm điều này vào các thời kỳ khác nhau trong lịch sử loài người.
Tuy nhiên, tôi chưa bán chiếc laptop của mình và bỏ chạy để sống một cuộc sống đơn giản giữa rừng cây. Người viết mã vẫn là một phần quan trọng của hệ thống, nhưng như một người quản trị thay vì một người tạo ra.
Tất nhiên, bạn có thể nghĩ 'đó là những gì một người viết mã sẽ nói'... và bạn có thể đúng.
Các công cụ AI như Copilot, bộ tạo văn bản GPT-3 của OpenAI, và động cơ chuyển văn bản thành hình ảnh của Google, đã trải qua những cải thiện đáng kể trong vài năm qua.
Nhiều người trong 'các ngành công nghiệp sáng tạo' trắng trợn có liên quan đến văn bản và hình ảnh đang bắt đầu đối mặt với nỗi sợ họ sẽ bị (ít nhất là một phần) tự động hóa đi. Copilot cho thấy một số chúng ta trong ngành công nghiệp công nghệ đang cùng một thuyền.
Tuy nhiên, tôi (một cách thận trọng) rất hứng thú. Copilot là một bộ nhân đôi sức mạnh theo truyền thống xây dựng công cụ lạc quan nhất: nó cung cấp thêm đòn bẩy, để tăng cường đầu ra hữu ích cho cùng một lượng đầu vào.
Các công cụ mới này và đòn bẩy mới mà chúng cung cấp được tích hợp trong các hệ thống rộng lớn của con người, công nghệ và các đối tác môi trường, và tôi thực sự rất tò mò để xem làm thế nào những hệ thống này sẽ tự định cấu trúc lại chúng sau phản ứng.

Bài viết của Ben Swift, Trưởng nhóm Kinh nghiệm Giáo dục (Giảng viên cấp cao), Trường Cybernetics ANU, Đại học Quốc gia Australia được tái bản từ The Conversation theo giấy phép Creative Commons. Đọc bài viết gốc.
