Khi Tom Smith - một lập trình viên đầy kinh nghiệm lần đầu tiếp xúc với Codex - trí tuệ nhân tạo (AI) có khả năng viết phần mềm máy tính, anh lập tức thực hiện một “cuộc phỏng vấn xin việc” cho chương trình này. Tom yêu cầu Codex thực hiện các bài thử thách viết code mà các lập trình viên là con người thường phải vượt qua nếu muốn nhận được công việc có lương cao tại các công ty công nghệ ở Thung lũng Silicon (Mỹ) như Google hay Facebook.
Codex hoàn toàn vượt qua được các yêu cầu đó trong tích tắc, thậm chí còn thực hiện xong các yêu cầu khác sau đó. “Các thử thách đó không hề dễ đối với con người, kể cả với tôi, nhưng AI đó xử lý chỉ trong vài giây. Cảm giác thật kỳ quá khi chứng kiến quá trình này”, Smith nói.
Tom Smith tiếp tục giao các bài kiểm tra khác cho Codex và nhận ra AI này không chỉ có kỹ năng trả lời vượt ra khỏi các câu hỏi đóng khung sẵn trong những buổi phỏng vấn mà còn có thể tự dịch một ngôn ngữ lập trình bất kỳ sang loại khác. Codex dường như là công nghệ có thể thay thế nhân lực lập trình trong tương lai gần.
Nhưng sau vài tuần “làm việc” cùng với công nghệ mới, Smith tin rằng Codex không mang mối đe dọa nào cho các lập trình viên chuyên nghiệp. Như nhiều chuyên gia khác trước đó, anh nhận ra đây là công cụ giúp thúc đẩy năng xuất của con người. Codex có thể giúp hình thành cả một thế hệ mới học về máy tính, bằng cách chỉ cho họ cách viết từng dòng mã lập trình đơn giản, giống như “gia sư” vậy.
“Đây sẽ là công cụ giúp cuộc sống của lập trình viên ‘dễ thở’ hơn nhiều”, Smith chia sẻ trên NYT. Thực tế, dù trải qua hơn một thập kỷ phát triển với nhiều bước tiến nhảy vọt, ngay cả những hệ thống AI ấn tượng nhất tới nay cũng chỉ nhằm mục đích phục vụ con người chứ không phải thay thế họ.
Codex là chương trình do OpenAI phát triển. Đây là một trong những phòng nghiên cứu tham vọng nhất thế giới, chuyên mang đến những góc nhìn sâu sắc về lĩnh vực trí tuệ nhân tạo thế giới. OpenAI từng tạo ra AI mang tên GPT-3 có thể tự viết các bài đăng trên Twitter, viết bài phát biểu, làm thơ hay viết báo. Chương trình dựa trên hệ thống toán học thường biết đến với tên “neural network” (mạng thần kinh) có khả năng học kỹ năng thông qua phân tích lượng lớn dữ liệu đầu vào.
GPT-3 cũng từng khiến chính các nhà nghiên cứu đã viết ra hệ thống này ngạc nhiên khi chứng minh khả năng tự viết chương trình máy tính dù chỉ ở mức ngắn và đơn giản. AI được cho là đã học kỹ năng này từ các chương trình đăng tải trên mạng internet. Chính vì vậy, OpenAI quyết định huấn luyện một thệ thống mới thành thạo cả văn xuôi lẫn lập trình. Cuối cùng, Codex ra đời.
|
Hệ thống có thể hiểu được nội dung văn bản lẫn mã (ở mức độ nhất định). Ví dụ, nếu viết yêu cầu (bằng tiếng Anh) tạo chương trình làm tuyết rơi trên nền màu đen, Codex sẽ trả về đoạn mã để “hiện thực hóa” yêu cầu đó. Hay khi yêu cầu tạo chương trình chứa quả bóng màu xanh có khả năng nảy trong màn hình, công nghệ này sẽ đáp ứng một cách nhanh chóng. “Cứ sai Codex viết mã, hệ thống sẽ thực hiện đúng như yêu cầu”, Ania Kubow - một lập trình viên chuyên nghiệp từng trải nghiệm Codex nói.
Theo NYT, AI có thể viết phần mềm bằng 12 ngôn ngữ lập trình máy tính khác nhau và dịch qua lại giữa các ngôn ngữ này. Dù vậy, Codex vẫn có thể mắc lỗi và không thể bằng được con người. Đôi khi chương trình do Codex viết ra không chạy, hoặc có lỗi về bảo mật, thi thoảng chỉ đạt tới mức gần đúng như yêu cầu đưa ra. OpenAI ước tính Codex lập trình đúng chỉ khoảng 37% tổng số lần thực hiện lệnh.
Nói cách khác, Codex chỉ thực sự hữu dụng với các lập trình viên có kinh nghiệm vì họ sẽ biết chỉnh sửa ở đâu trong đáp án mà AI đưa ra để chương trình có thể chạy hoàn chỉnh.
Jeremy Howard - sáng lập viên phòng thí nghiệm trí tuệ nhân tạo Fast.ai đánh giá đây là “cách để viết mã mà không phải viết quá nhiều. Dù không phải lúc nào mã lập trình trả về cũng đúng nhưng vậy là đủ cho lập trình viên”. Howard cũng tin rằng Codex có thể giúp ích cho người mới học cách để lập trình vì có thể tạo ra các chương trình đơn giản từ nội dung mô tả yêu cầu bằng văn bản.
Joel Hellermark, một doanh nhân ở Thụy Điển đang muốn hoàn thiện để biến hệ thống này thành công cụ dạy lập trình.
Bình luận (0)