Nhịp điệu phát triển và kiểm soát AI

Trong bối cảnh phát triển ứng dụng 0-to-1, tức là từ con số không, Andrew Ng đưa ra một góc nhìn thú vị về "agentic coding loops" – các vòng lặp lập trình mà AI tự thực hiện cho đến khi đáp ứng một tiêu chí nhất định. Theo ông, "AI tokens are cheap; human tokens are gold". Khi xây dựng các hệ thống phức tạp, việc kiến trúc cẩn thận từ đầu là rất quan trọng để tránh những quyết định khó thay đổi. Tuy nhiên, với các ứng dụng thử nghiệm ban đầu hoặc những lĩnh vực còn mới mẻ, cách tiếp cận nhanh chóng hơn là cho AI bắt tay vào xây dựng prototype, sau đó xem xét sản phẩm và đưa ra quyết định tiếp theo. Ng cho rằng thay vì dành hàng giờ để suy nghĩ về bản thiết kế ban đầu, ta có thể viết một bản đặc tả chưa hoàn hảo trong 10 phút, để AI dành 20 phút xây dựng một prototype đơn giản. Từ đó, tôi có thể xem xét các giả định của AI và tinh chỉnh bản đặc tả, lặp lại quy trình. Chẳng hạn, nhiều ứng dụng prototype ban đầu có giao diện người dùng lộn xộn mà tôi chỉ nhận ra và sửa chữa khi thấy chúng hoạt động, điều mà không thời gian nào dành cho việc điều chỉnh spec ban đầu có thể chỉ ra trước. Việc AI tự tìm lỗi và sửa chữa giúp tiết kiệm "human tokens" đáng kể. Khi dự án còn non trẻ, việc loại bỏ hoàn toàn mã nguồn và bắt đầu lại từ đầu là chấp nhận được, bởi chi phí về thời gian và "token" của con người là thấp, còn giá trị học được từ việc thử nghiệm mới là vô giá. Ông cũng khuyến khích các nhà phát triển sớm đưa AI vào làm việc, thậm chí trước cả khi cảm thấy thoải mái, để có một điểm khởi đầu để phản hồi và lặp lại. Một điểm tôi đặc biệt lưu ý là việc AI dễ quên những gì chúng ta đã nói. Dù các mô hình gần đây đã cải thiện, điều này vẫn xảy ra. Ng thường yêu cầu AI lưu những quyết định quan trọng vào một file như SPEC.md để AI không "đốt" những "golden tokens" của con người. Khi tôi phát hiện một điểm chưa hài lòng trong prototype, tôi không chỉ yêu cầu AI sửa lỗi mà còn phải cập nhật bản đặc tả và kế hoạch kiểm thử, đảm bảo vấn đề đó không tái diễn, qua đó thể hiện sự trâ