ChatGPT đã thể hiện khả năng vượt trội trong việc tạo mã nguồn từ các câu lệnh văn bản và phân tích chúng một cách hiệu quả. Giờ đây, OpenAI đã bổ sung một tác nhân lập trình mới vào ChatGPT, và điều này không chỉ làm các lập trình viên phấn khích mà còn mở ra nhiều cơ hội cho người dùng công nghệ nói chung.
ChatGPT Codex: Đặc Tính và Cách Mạng Hóa Quy Trình Phát Triển Phần Mềm
OpenAI đang giới thiệu bản xem trước nghiên cứu của Codex, một “tác nhân kỹ thuật phần mềm dựa trên đám mây”. Tính năng này được hỗ trợ bởi codex-1, một phiên bản của mô hình OpenAI o3 được tối ưu hóa đặc biệt cho các nhiệm vụ lập trình và kỹ thuật phần mềm. Codex-1 cũng được huấn luyện để điều chỉnh đầu ra của nó sao cho phù hợp chặt chẽ với “các ưu tiên và tiêu chuẩn mã hóa của con người”.
Bạn có thể tìm thấy tính năng này ở thanh bên của ChatGPT nếu bạn là người dùng ChatGPT Pro, Enterprise hoặc Team, và sẽ sớm có mặt cho người dùng Plus và Edu. Khi mở, bạn có thể chỉ định một nhiệm vụ lập trình bằng cách nhập một câu lệnh và nhấn nút Code, hoặc hỏi các câu hỏi về cơ sở mã của bạn bằng cách nhấn nút Ask. Thông tin về danh sách tác vụ và tiến độ của Codex sẽ hiển thị bên dưới thanh nhập lệnh.
ChatGPT Codex đang chạy các bài kiểm thử mã nguồn
Tác nhân lập trình AI mới này có thể thực hiện nhiều tác vụ trên một cơ sở mã hiện có, như thêm các tính năng mới, sửa lỗi và trả lời bất kỳ câu hỏi nào bạn có thể có. Mỗi tác vụ chạy trong một môi trường cô lập riêng biệt, được tải sẵn với cơ sở mã hoặc kho lưu trữ của bạn. Codex cũng có khả năng đọc và chỉnh sửa các tệp.
Theo thông báo của OpenAI, tác nhân này sẽ mất từ 1 đến 30 phút để hoàn thành một nhiệm vụ được giao, tùy thuộc vào độ phức tạp của nhiệm vụ đó. Bạn có thể theo dõi tiến độ của nó theo thời gian thực hoặc thậm chí chạy nhiều tác vụ đồng thời, tất cả trong khi vẫn sử dụng trình duyệt và máy tính của bạn như bình thường.
Trong khi ChatGPT có thể giúp bạn tạo mã nguồn và thậm chí cung cấp toàn bộ dự án để bạn tải xuống và kiểm thử, nó không hoạt động hiệu quả với các kho lưu trữ phần mềm (software repositories) và cơ sở mã lớn (codebases). Khả năng của Codex trong việc làm việc trực tiếp trong các hạ tầng kỹ thuật phần mềm điển hình có nghĩa là nó hữu ích hơn nhiều so với ChatGPT phiên bản cơ bản đối với cả công ty và cá nhân duy trì nhiều dự án trong các kho lưu trữ.
Codex tạo ra mã sạch hơn so với ChatGPT thông thường; mã sẵn sàng để con người xem xét và tích hợp vào quy trình làm việc hoặc cơ sở mã. Nó cũng tự động chạy các bài kiểm thử cho đến khi vượt qua tất cả các trường hợp và điều kiện kiểm thử đã cho. Sau khi một tác vụ hoàn thành, Codex sẽ cam kết các thay đổi vào môi trường của nó và cung cấp “bằng chứng xác minh về các hành động của nó thông qua trích dẫn nhật ký thiết bị đầu cuối và đầu ra kiểm thử”.
Tại Sao ChatGPT Codex Là Công Cụ Thay Đổi Cuộc Chơi?
Codex là một bước tiến quan trọng đối với các chuyên gia trong mọi ngành. Bạn có thể viết các macro Excel, tự động hóa báo cáo, chỉnh sửa hàng loạt tệp và thực hiện mọi thứ mà trước đây đòi hỏi chuyên môn về một số ngôn ngữ lập trình hoặc kịch bản.
Giao diện ChatGPT Codex hiển thị tác vụ mã hóa
Chắc chắn, ChatGPT có thể tạo mã và tập lệnh cho bạn, nhưng theo kinh nghiệm, nó không phải lúc nào cũng đáng tin cậy. Bạn cần có kiến thức tương đối tốt về ngôn ngữ lập trình đang làm việc và ý tưởng chung về gỡ lỗi mã. Tuy nhiên, Codex tự động kiểm tra mã của nó và chạy thử để đảm bảo nó hoạt động theo cách bạn muốn.
Điều này có thể được cải thiện với mô hình GPT-4.1 mới của ChatGPT, nhưng đây vẫn chưa phải là giải pháp hoàn hảo. Việc biết khi nào nên sử dụng mô hình ChatGPT nào cho từng nhiệm vụ có thể ảnh hưởng lớn đến đầu ra, do đó một mô hình được tùy chỉnh riêng cho lập trình sẽ hoạt động tốt hơn một mô hình đa năng.
Đương nhiên, nếu bạn là một lập trình viên, Codex cực kỳ hữu ích vì nó có thể tích hợp với các kho lưu trữ GitHub của bạn và xử lý các tác vụ lặp đi lặp lại cũng như các trường hợp kiểm thử. Điều này cho phép bạn phát triển và phát hành ứng dụng của mình nhanh hơn mà không bị sa lầy vào các công việc bảo trì, kiểm thử và các nhiệm vụ khác thường là một phần của quy trình phát triển phần mềm.