Dịch thuật tự động đang chuyển từ việc tối ưu hóa prompt sang việc xây dựng hệ thống kiểm soát tốt hơn. Sự thay đổi quan trọng là các kỹ sư đang học cách bọc các agent trong các mục tiêu, bộ đánh giá, vòng lặp và các artifact để chúng có thể tiếp tục làm việc sau khi con người ngừng gõ phím.
Điều này quan trọng bởi vì hầu hết các công việc kỹ thuật nghiêm túc đều kéo dài trong một khoảng thời gian dài: yêu cầu không rõ ràng, ràng buộc ẩn, thất bại một phần, bối cảnh thay đổi và kiểm tra lặp đi lặp lại. Ranh giới mới là thiết kế hệ thống xung quanh agent để nó có thể lập kế hoạch, thực thi, kiểm tra công việc, phục hồi sau lỗi và tiếp tục tiến triển mà không cần sự điều khiển liên tục của con người.
Bài viết này dựa trên một buổi học của DAIR.AI Academy về các agent lập trình tự động chạy dài, nơi tôi đã trình bày chi tiết về chế độ /goal của Claude Code, lệnh /loop mới hơn, các bộ xác minh, artifact và các mẫu điều phối trong thực tế. Được viết với sự cộng tác của Codex và Claude Code.
Từ Prompting đến Thiết kế Mục tiêu

Ý tưởng cốt lõi đằng sau các tính năng như /goal của Claude Code rất đơn giản. Một agent lập trình vẫn là người thực thi, nhưng con người không còn tương tác với nó từng lượt một nữa. Thay vào đó, con người chỉ định trạng thái kết thúc mong muốn, bằng chứng cần thiết để chứng minh thành công, các ràng buộc không được vi phạm và, nếu có thể, số lượt và ngân sách.
Mục tiêu đó hoạt động giống như một hợp đồng hơn là một prompt dài hơn. Một mục tiêu yếu cho phép mô hình có khoảng trống để dừng sớm, đi đường tắt hoặc định nghĩa lại thành công theo cách có vẻ hợp lý trong bản ghi nhưng lại thất bại trong hệ thống thực tế. Một mục tiêu mạnh mẽ cung cấp cho agent một mục tiêu mà nó có thể liên tục tự đo lường.
Khả năng phán đoán kỹ thuật vẫn rất quan trọng ở đây. Các mục tiêu tốt nhất mã hóa kiến thức miền mà nếu không thì mô hình sẽ phải phỏng đoán. Đối với một thí nghiệm nghiên cứu, điều đó có thể có nghĩa là một điểm chuẩn mục tiêu, một đánh giá dữ liệu giữ lại, một đường cong mất mát yêu cầu và một quy tắc rằng kết quả phải vượt qua một đường cơ sở ban đầu. Đối với một tác vụ UI, nó có thể có nghĩa là một ảnh chụp màn hình tham chiếu, các ràng buộc bố cục cụ thể và một bước xác minh trình duyệt. Mô hình có thể thực thi, nhưng con người vẫn định nghĩa "hoàn thành" thực sự có nghĩa là gì.
Bộ Đánh giá Trở thành Thành phần Hạng Nhất

Các agent chạy dài cần một vai trò thứ hai bên cạnh mục tiêu. Bộ đánh giá đó có thể là một agent lập trình khác, một LLM-as-judge, một script, một bộ kiểm thử, một khung đánh giá điểm chuẩn hoặc sự kết hợp của tất cả chúng. Lựa chọn thiết kế chính là ghép bộ đánh giá với tác vụ. Khi thành công rõ ràng, các kiểm tra xác định sẽ tốt hơn. Các kiểm tra kiểu, kiểm thử đơn vị, quy tắc lint, kiểm thử tích hợp và script điểm chuẩn nên được sử dụng bất cứ khi nào chúng có thể diễn đạt điều kiện một cách rõ ràng.
Khi thành công mơ hồ, một bộ đánh giá agent trở nên hữu ích. Một script có thể cho bạn biết liệu các bài kiểm tra có vượt qua hay không, nhưng nó không thể dễ dàng quyết định liệu một báo cáo nghiên cứu được tạo ra có mạch lạc hay không, liệu một triển khai có trung thành với một bài báo khoa học hay không, hoặc liệu một UI có khớp với ý đồ thiết kế hay không. Đây là lúc bộ đánh giá được hưởng lợi từ ngôn ngữ, khả năng phán đoán và đôi khi là tầm nhìn.
Mô hình thực tế sử dụng các kiểm tra xác định làm nền tảng và đánh giá agent làm bước đánh giá cấp cao hơn. Sự kết hợp này làm giảm thành công ảo tưởng trong khi vẫn cho phép tự động hóa đối với các tác vụ không phù hợp rõ ràng với một xác nhận kiểm thử.
Bộ Xác minh Xác định Ranh giới của Sự Tin cậy

Điểm sâu sắc hơn là tính tự động chỉ hoạt động khi hệ thống có một bộ xác minh đáng tin cậy. Một agent lập trình có thể tạo ra một kế hoạch, triển khai một tính năng và giải thích tại sao nó tin rằng công việc đã hoàn thành, nhưng lời giải thích đó không nên được coi là bằng chứng. Bằng chứng đến từ một kiểm tra bên ngoài mà agent không thể dễ dàng lách qua.
Đối với code, bộ xác minh có thể là một bộ kiểm thử, trình kiểm tra kiểu, điểm chuẩn, chạy trình duyệt, so sánh ảnh chụp màn hình hoặc script có thể tái tạo. Đối với công việc nghiên cứu, nó có thể là một đánh giá dữ liệu giữ lại, một bảng được tái tạo, một đường cong mất mát hoặc một điểm chuẩn được cải thiện so với đường cơ sở. Đối với công việc thiết kế, nó có thể là một ảnh chụp màn hình tham chiếu cộng với một bước đánh giá trực quan. Bộ xác minh là thứ biến một agent chạy dài từ một trình tạo văn bản tự tin thành một hệ thống có thể được tin tưởng với nhiều thời gian hơn.
Hầu hết các lối tắt xuất hiện ở ranh giới này. Nếu bộ xác minh mơ hồ, mô hình thường sẽ thỏa mãn cách diễn giải dễ nhất của tác vụ. Nếu bộ xác minh quá hẹp, mô hình có thể quá khớp với nó và bỏ lỡ ý định rộng hơn. Do đó, một quy trình làm việc tự động tốt cần có xác minh nhiều lớp, với các kiểm tra xác định rẻ tiền bắt các lỗi cơ bản và đánh giá cấp cao hơn bắt các lỗi nặng về phán đoán. Một vài mô hình tiên tiến nhất đã có thể đạt được một số mức độ xác minh, nhưng dựa trên nghiên cứu của tôi, vẫn còn một vấn đề OOD rõ ràng, nơi mà nếu tác vụ xác minh bạn gán cho agent nằm ngoài phân phối huấn luyện, các mô hình sẽ gặp khó khăn đáng kể.
Các bộ xác minh vẫn là một lĩnh vực nghiên cứu mở, nhưng tôi dự đoán sẽ có nhiều công ty hơn bắt đầu đầu tư mạnh vào lĩnh vực này. Khái niệm về các bộ xác minh được tinh chỉnh cũng đang có nhu cầu cao trong doanh nghiệp.
Vòng lặp Làm cho Tính Tự động Bền vững

Một mục tiêu cung cấp cho agent hướng đi, nhưng một vòng lặp giữ cho công việc tồn tại. Sự khác biệt này rất quan trọng bởi vì các mô hình thường dừng lại trước khi tác vụ thực sự hoàn thành. Chúng có thể chạm đến giới hạn lượt, mất tự tin, cạn kiệt ngữ cảnh hoặc quyết định rằng một giải pháp một phần là đủ.
Vòng lặp là hệ thống kiểm soát bên ngoài. Nó thức dậy, kiểm tra tiến độ, chạy các kiểm tra, so sánh kết quả với mục tiêu và gửi agent trở lại với hướng dẫn tiếp theo khi mục tiêu chưa được đáp ứng. Ở dạng đơn giản nhất, đây là mô hình vòng lặp Ralph với một agent lập trình và một điều kiện xác định. Ở dạng linh hoạt hơn, vòng lặp bao gồm một agent đánh giá có thể suy luận về tiến độ và quyết định điều gì nên xảy ra tiếp theo.
Tính tự động chạy dài hoạt động như một nỗ lực lặp đi lặp lại dưới sự giám sát từ một lớp kiểm soát, không phải như một hành động trí tuệ liên tục duy nhất. Agent vẫn có thể thất bại, nhưng vòng lặp cung cấp cho hệ thống một cách để nhận thấy thất bại và tiếp tục thay vì âm thầm tuyên bố chiến thắng.
Lập kế hoạch là Nơi Chuyên môn Tham gia

Một trong những chủ đề mạnh nhất từ buổi học là lập kế hoạch vẫn rất quan trọng. Bạn có thể yêu cầu một mô hình tiên tiến tạo ra một kế hoạch, nhưng bạn vẫn cần kiểm tra nó, thách thức các giả định và làm cho các tiêu chí thành công rõ ràng hơn trước khi giao tác vụ cho một vòng lặp tự động.
Điều này dẫn đến một sự phân công lao động hữu ích. Một mô hình lập kế hoạch mạnh hơn có thể giúp xác định mục tiêu, xác định các ràng buộc bị thiếu và cấu trúc đánh giá. Một mô hình thực thi khác sau đó có thể chạy việc triển khai khi kế hoạch đã rõ ràng. Trong thực tế, điều này có nghĩa là các kỹ sư nên ngừng nghĩ về "mô hình" như một lựa chọn duy nhất. Việc chọn mô hình trở thành một quyết định kiến trúc.
Một số mô hình là người lập kế hoạch tốt hơn. Một số là người thực thi tốt hơn. Một số là bộ đánh giá rẻ hơn. Một số giỏi đánh giá dựa trên thị giác hơn. Một bộ điều phối tốt cho phép bạn hoán đổi các vai trò này thay vì chờ đợi một nhà cung cấp duy nhất cung cấp giao diện agent lập trình hoàn hảo.
Các Artifact Trực quan Trở thành Bề mặt Kiểm soát

Các bản ghi đầu cuối không mở rộng được khi có nhiều agent đang chạy. Khi bạn có một vài phiên làm việc song song, văn bản thô trở thành một giao diện kém để hiểu tiến độ.
Các artifact trực tiếp rất quan trọng bởi vì một bảng điều khiển với các đường cong mất mát, điểm chuẩn, trạng thái tác vụ, ảnh chụp màn hình, ước tính chi phí và các quyết định gần đây cung cấp cho con người một cách giám sát tính tự động tốt hơn nhiều. Artifact trở thành bề mặt kiểm soát để quyết định khi nào can thiệp, thay vì một báo cáo được tạo ra sau khi sự việc đã xảy ra.
Mô hình hữu ích nhất là tách biệt lưu trữ khỏi trình bày. Markdown hoặc một vault có thể lưu trữ bằng chứng, nhật ký, ghi chú, kế hoạch và kết quả lâu dài. Các artifact HTML có thể hiển thị trạng thái đó thành một thứ gì đó trực quan và tương tác. Agent có thể tìm kiếm Markdown, trong khi con người có thể theo dõi artifact.
Đối với công việc UI và sản phẩm, các tín hiệu trực quan đặc biệt mạnh mẽ. Một ảnh chụp màn hình tham chiếu có thể truyền đạt ý đồ thiết kế chính xác hơn văn xuôi, và một bộ đánh giá có khả năng thị giác có thể so sánh việc triển khai với tham chiếu đó. Điều này làm giảm chế độ thất bại phổ biến khi agent về mặt kỹ thuật triển khai thành phần được yêu cầu nhưng bỏ lỡ khoảng cách, hệ thống phân cấp, căn chỉnh hoặc cảm giác sản phẩm.
Khai thác Phiên làm việc Biến Việc Sử dụng Thành Bộ nhớ

Một hiểu biết quan trọng khác là các phiên làm việc của agent trong quá khứ là một nguồn dữ liệu quy trình làm việc phong phú. Nếu một agent liên tục thất bại theo cùng một cách, quên chạy cùng một kiểm tra, sử dụng sai đường dẫn hoặc thử lại cùng một lệnh bị hỏng, mô hình đó không nên bị chôn vùi trong nhật ký.
Khai thác phiên làm việc biến các bản ghi đó thành các quy tắc vận hành. Một agent có thể quét ba mươi ngày làm việc qua, tìm các chế độ thất bại lặp đi lặp lại và đề xuất cập nhật cho các hướng dẫn dự án, kiến thức vault hoặc quy tắc agent. Đây là cách một nhóm có thể cải thiện dần dần hệ thống hỗ trợ của mình mà không cần ghi nhớ thủ công mọi sai lầm.
Mục tiêu là làm cho môi trường cục bộ thông minh hơn mà không cần huấn luyện một mô hình từ đầu. Một quy tắc nhỏ trong tệp hướng dẫn agent có thể ngăn ngừa các thất bại lặp đi lặp lại trong các phiên làm việc trong tương lai, đặc biệt là khi quy tắc đó cụ thể cho dự án.
Một Mô hình Hoạt động Thực tế

Đối với các kỹ sư AI, quy trình làm việc mới nổi trông như thế này.
- Bắt đầu với một tập hợp con nhỏ, rẻ tiền trước khi khởi chạy quá trình tự động hoàn chỉnh.
- Viết một mục tiêu với các tiêu chí thành công có thể đo lường được, các ràng buộc rõ ràng và ngân sách lượt hoặc thời gian (nếu có thể).
- Tách người thực thi khỏi người đánh giá để việc triển khai và phán đoán không bị gộp chung vào một vai trò.
- Xác định các bộ xác minh bên ngoài trước khi vòng lặp chạy dài bắt đầu.
- Sử dụng các kiểm tra xác định bất cứ khi nào có thể, sau đó thêm đánh giá agent cho các tiêu chí mơ hồ.
- Yêu cầu các artifact bằng chứng như nhật ký, ảnh chụp màn hình, đường cong điểm chuẩn hoặc các tệp đã thay đổi.
- Khai thác các phiên làm việc trong quá khứ và nâng các bài học lặp đi lặp lại thành hướng dẫn dự án.
Đó là sự khác biệt giữa việc sử dụng một agent lập trình và việc thiết kế một hệ thống lập trình tự động. Một cái mang đến cho bạn một cuộc trò chuyện. Cái kia mang đến cho bạn một hệ thống hỗ trợ.
Những Gì Vẫn Còn Thất bại

Không điều nào trong số này loại bỏ được các vấn đề khó khăn. Các agent vẫn đi đường tắt. Chúng vẫn dừng sớm. Chúng vẫn đánh giá quá cao mức độ hoàn thành. Chúng vẫn tạo ra các kế hoạch tự tin nhưng yếu kém, đặc biệt là trên các bài báo gần đây, các điểm chuẩn không quen thuộc hoặc các hệ thống nằm ngoài phân phối huấn luyện của chúng.
Tin tưởng chúng nhiều hơn sẽ không giải quyết được vấn đề này. Các hệ thống kiểm soát tốt hơn sẽ làm được. Các mục tiêu, vòng lặp, bộ đánh giá, kiểm tra xác định, artifact trực quan và bộ nhớ phiên làm việc đều là những cách để làm cho tính tự động có thể quan sát và sửa chữa được.
Hướng đi đã rõ ràng. Tương lai của các agent lập trình phụ thuộc vào sự điều phối tốt hơn xung quanh các mô hình có năng lực hơn, nơi các kỹ sư thiết kế các điều kiện để các agent có thể chạy an toàn trong nhiều giờ hoặc nhiều ngày và vẫn tạo ra công việc có thể được xác minh.





