AI sẽ là kỹ sư lập trình tương lai
Trong tương lai, kỹ sư lập trình phần mềm sẽ chính là AI được đào tạo thông qua các dòng code do con người viết ra.
Trong tương lai, kỹ sư lập trình phần mềm sẽ chính là AI được đào tạo thông qua các dòng code do con người viết ra.
GPT-3 là một mô hình ngôn ngữ được phát triển bởi OpenAI, một phòng thí nghiệm về trí tuệ nhân tạo AI ở San Francisco. GPT-3 được đào tạo bằng một khối lượng văn bản khổng lồ. Quyền truy cập vào GPT-3 bị hạn chế, nếu không, nó có thể được sử dụng để sản xuất hàng loạt tin tức giả mạo tràn ngập trên mạng xã hội.
Nhưng OpenAI cũng biết rằng GPT-3 có giá trị thương mại. Năm ngoái, phòng thí nghiệm bắt đầu cho phép các công ty mua đầu ra của nó để sử dụng cho mục đích đã được phê duyệt, gồm viết câu trả lời cho các câu hỏi có sẵn về sản phẩm và viết lời thoại trả lời tự động cho các nhân vật trong game. Nhưng có lẽ quan trọng nhất, GPT-3 có thể được sử dụng để lập trình phần mềm.
AI có thể được ứng dụng để tăng tốc độ lập trình. Ảnh: Economist.
Một số công ty đã thêm GPT-3 và GPT-2 vào phần mềm mà các lập trình viên sử dụng để viết code. Trên thực tế, phần lớn những gì các lập trình viên viết ra đã tồn tại trong quá khứ. Điều này có nghĩa là bằng cách đưa nhiều code có sẵn vào cho AI, chúng có thể được đào tạo để dự đoán các dòng lệnh lập trình viên sẽ viết tiếp theo. Khi lập trình viên viết code, các đoạn mã tiềm năng của một hoặc một vài dòng sẽ gợi ý trên màn hình.
Dự đoán và đưa ra gợi ý
Công ty Tabnine đã tạo ra tính năng tự hoàn thành code. Như vậy, nhờ sử dụng GPT-2. Phần mềm lập trình của công ty được đào tạo bằng nhiều code đến mức nó đã thu được một lượng "kiến thức bằng cả thế giới", Eran Yahav, chuyên gia công nghệ hàng đầu của Tabnine cho biết. Yahav mô tả điều này là "một khái niệm khá hay về cách thế giới ứng xử", ít nhất là khi nói đến ngôn ngữ lập trình. Phần mềm Tabnine có thể phát hiện ra lập trình viên đang lập trình để, chẳng hạn tạo đơn đặt hàng. Khi đó, nó sẽ gợi ý thêm code để hiển thị tên và giá sản phẩm, cũng như code để tạo các trường cần điền số lượng, dữ liệu thanh toán và giao hàng, mặc dù phần mềm Tabnine chưa bao giờ được hướng dẫn cụ thể về cách làm điều đó.
Nếu gặp một số dòng lệnh hiếm, Tabnine sẽ kéo dài danh sách gợi ý về các phần hoàn thành để tăng khả năng hữu ích. Bằng cách click vào một lựa chọn gợi ý phù hợp, lập trình viên sẽ dạy Tabnine hoạt động tốt hơn vào những lần sau. Theo Dror Weiss, nhà sáng lập công ty, phiên bản cao cấp nhất của Tabnine đạt trình độ "gần như thông minh".
Ngày 17/6, "gã khổng lồ phần mềm" Microsoft cũng đã phát hành một phiên bản mới của tính năng hoàn thiện AI được nhúng trong phần mềm lập trình Visual Studio. Phiên bản gốc, được phát hành vào năm 2018 được đặt tên là IntelliCode, đã được đào tạo trên hàng nghìn kho lưu trữ trực tuyến. Ở phiên bản cải tiến, Microsoft đã đào tạo hệ thống của mình trên hơn nửa triệu kho lưu trữ khác nhau. Amanda Silver, Giám đốc điều hành phụ trách Visual Studio, cho biết lượng kiến thức đào tạo bổ sung này cho phép phiên bản mới thu thập ý định tốt hơn từ các gợi ý trong các dòng code mà một lập trình viên đã viết.
Tất nhiên, mục đích của những điều này là để tiết kiệm thời gian. Kite, một công ty ở San Francisco, tuyên bố các sản phẩm hoàn thiện bằng AI của họ đã giúp giảm nửa số lần nhấn phím cần thiết cho một số tác vụ. Tuy nhiên, hiệu quả tổng thể đạt được lại thấp hơn. Vitaly Khudobakhshov, trưởng bộ phận sản phẩm AI tại JetBrains, nhận thấy thời gian tiết kiệm từ 10% đến 20%. Theo Sharif Shameem, CEO của Debuild, một công ty ở San Francisco sử dụng GPT-3 để giúp xây dựng trang web, công nghệ này cũng giúp giảm áp lực làm việc. Chọn từ nhiều lựa chọn có sẵn sẽ ít stress hơn so với việc phải tự nghĩ ra các dòng code từ đầu.
Về phần mình, Microsoft đang sử dụng GPT-3 để tạo ra cái mà họ gọi là lập trình "không có mã/mã thấp". Charles Lamanna, nhóm trưởng phụ trách dự án, dự đoán một tương lai tươi sáng khi phần mềm rẻ hơn được tạo ra bởi các nhà phát triển không chuyên chưa qua đào tạo. Tuy nhiên, một số người lại lo sợ một kết cục đen tối hơn. Liệu cuối cùng các AI có thể tự viết bất kỳ đoạn code nào mà chúng thích không?
Hiện tại AI chưa có khả năng như vậy, nhưng ý tưởng đó hoàn toàn có thể trở thành sự thật trong lương lai.