Statewright: Máy trạng thái trực quan giúp AI Agents hoạt động ổn định và đáng tin cậy hơn

Phần mềm12 tháng 5, 2026·5 phút đọc

Statewright là công cụ mới sử dụng máy trạng thái (state machines) để giới hạn hành vi của AI Agents, giúp tăng độ chính xác mà không cần phụ thuộc vào các mô hình quá lớn. Thay vì mở rộng ngữ cảnh, giải pháp này thu hẹp không gian giải quyết vấn đề ở từng bước cụ thể.

Statewright: Máy trạng thái trực quan giúp AI Agents hoạt động ổn định và đáng tin cậy hơn

Statewright: Máy trạng thái trực quan giúp AI Agents hoạt động ổn định và đáng tin cậy hơn

Trong bối cảnh các tác nhân AI (AI Agents) ngày càng phổ biến nhưng vẫn gặp nhiều vấn đề về độ ổn định, một giải pháp mới mang tên Statewright đã ra đời nhằm giải quyết bài toán này bằng cách áp dụng các máy trạng thái (state machines) để kiểm soát hành vi của mô hình.

Ben Cochran, một kỹ sư kỳ cựu với hơn 20 năm kinh nghiệm trong lĩnh vực full-stack Engineering, DevOps và ML (đã từng làm việc tại NVIDIA, AMD), là người đứng sau dự án này. Ông nhận thấy rằng việc cố gắng tăng độ tin cậy cho AI Agents bằng cách sử dụng các mô hình có tham số khổng lồ (massive parameter counts) hay cửa sổ ngữ cảnh quá rộng (massive context windows) là một cách tiếp cận tốn kém và chưa chắc đã hiệu quả.

Trình soạn thảo quy trình làm việc của StatewrightTrình soạn thảo quy trình làm việc của Statewright

Vấn đề của AI Agents hiện tại

Các AI Agent hiện nay thường rất "dễ vỡ" (brittle). Khi bạn cung cấp cho mô hình hơn 40 công cụ và một vấn đề mở, nó thường xuyên thất bại ngay từ đầu. Phương án khắc phục phổ biến hiện nay là sử dụng các mô hình lớn hơn và prompt dài hơn, nhưng điều này chỉ giải quyết được một phần vấn đề và gây tốn kém tài nguyên.

Tiếp cận từ máy trạng thái

Thay vì cố gắng làm cho mô hình lớn hơn, Statewright chọn cách làm cho "vấn đề nhỏ hơn".

Statewright sử dụng các máy trạng thái để giới hạn không gian công cụ và không gian giải pháp, giúp mô hình suy luận trong một ngữ cảnh tập trung tại từng bước. Cụ thể:

  • Trạng thái Lập kế hoạch (Planning): Chỉ được sử dụng các công cụ đọc (read-only tools).
  • Trạng thái Triển khai (Implementing): Mở khóa các công cụ chỉnh sửa với quyền truy cập shell hạn chế (các thao tác hủy diệt hoặc chuyển hướng bị chặn).
  • Trạng thái Kiểm thử (Testing): Chỉ cho phép các lệnh kiểm thử được chỉ định sẵn.

Nếu AI cố gắng gọi một công cụ không thuộc phạm vi của trạng thái hiện tại, yêu cầu sẽ bị từ chối và hệ thống sẽ thông báo cho mô hình biết những công cụ nào đang khả dụng cũng như cách chuyển đổi trạng thái phù hợp.

Kết quả nghiên cứu ấn tượng

Điều đáng ngạc nhiên là phương pháp này không chỉ hiệu quả với các mô hình cục bộ (local models) mà còn cải thiện hiệu suất của cả các mô hình tiên phong (frontier models) như Claude Haiku và Sonnet.

Trên các mô hình cỡ vừa và nhỏ (khoảng 13B - 20B tham số), việc áp dụng ràng buộc của Statewright giúp cải thiện đáng kể khả năng giải quyết các vấn đề thực tế (như SWE-bench). Các mô hình dưới mức 13B có thể điều hướng máy trạng thái nhưng không giữ đủ ngữ cảnh để thực hiện chỉnh sửa chính xác. Tuy nhiên, điểm mấu chốt ở đây là việc sử dụng ngữ cảnh làm việc có phạm vi chặt chẽ (tightly scoped working context) tại mỗi bước vượt trội hơn so với việc cấp cho mô hình quyền truy cập tự do hoàn toàn.

Cấu trúc kỹ thuật và tích hợp

Lõi của Statewright là một động cơ (engine) viết bằng Rust, có nhiệm vụ đánh giá các định nghĩa máy trạng thái bao gồm: trạng thái, chuyển đổi, bảo vệ (guards) và hạn chế công cụ. Quá trình điều phối này là xác định (deterministic) và không sử dụng bất kỳ LLM nào trong vòng lặp.

Ở trên là một lớp plugin tích hợp với các tác nhân lập trình (coding agents) thông qua giao thức MCP (Model Context Protocol). Khi bạn kích hoạt một quy trình làm việc (workflow), các hook sẽ tự động áp dụng các hạn chế công cụ cho từng trạng thái. Mô hình sẽ nhìn thấy 5 công cụ thay vì 30 công cụ, nhận được hướng dẫn rõ ràng cho giai đoạn hiện tại và chuyển trạng thái khi các điều kiện được đáp ứng.

Hàng rào bảo vệ (Guardrails)

Statewright cung cấp các cơ chế bảo vệ mạnh mẽ:

  • Thực thi công cụ theo trạng thái: Các công cụ vô hình với tác nhân khi không nằm trong danh sách allowed_tools.
  • Phân biệt Bash: Chặn các lệnh chuyển hướng (>>), thao tác hủy diệt (rm, shred) trong các trạng thái không cho phép ghi.
  • Bảo vệ chỉnh sửa: Từ chối các diff vượt quá số dòng tối đa, giới hạn số tệp được chỉnh sửa theo trạng thái.
  • Danh sách lệnh cho phép: Khớp tiền tố các lệnh được phép theo trạng thái.
  • Cổng phê duyệt: requires_approval tạm dừng để xem xét của con người trước các chuyển đổi rủi ro cao.

Cách sử dụng

Hiện tại, Statewright có sẵn miễn phí cho các nhà phát triển cá nhân. Bạn có thể thử nghiệm ngay trong Claude Code bằng cách chạy các lệnh sau:

/plugin marketplace add statewright/statewright
/plugin install statewright
/reload-plugins

Sau đó, bạn có thể bắt đầu quy trình sửa lỗi bằng cách nhập: "start the bugfix workflow" hoặc /statewright start bugfix.

Statewright cũng cung cấp trình soạn thảo trực quan tại statewright.ai, cho phép người dùng tinh chỉnh các quy trình làm việc trong chế độ xem đồ thị (graph view), nơi bạn có thể nhìn thấy rõ các đường dẫn thất bại, vòng lặp thử lại và các cổng phê duyệt.

Như Ben Cochran đã đúc kết: "Agents là những gợi ý, còn States là những luật pháp". Đây là một hướng đi thú vị nhằm đưa sự ổn định của mã code (deterministic code) vào thế giới không xác định của các mô hình ngôn ngữ lớn.

Chia sẻ:FacebookX
Nội dung tổng hợp bằng AI, mang tính tham khảo. Xem bài gốc ↗