Xây dựng một Đội ngũ Agent Tự hành
Tôi đã xây dựng một đội ngũ agent nhỏ để mô phỏng quy trình làm việc kỹ thuật của mình. Nó xử lý mọi thứ từ việc đọc một tác vụ cho đến khi đẩy một nhánh có thể review.
Quy trình làm việc tuân theo các bước sau:
- Clarifier: Kiểm tra xem tác vụ có đủ cụ thể hay không.
- Planner: Khám phá codebase và viết kế hoạch triển khai.
- Implementer: Thực thi kế hoạch và commit mã theo từng phần.
- Reviewer: Tìm lỗi và các vấn đề về style.
- Tester: Chạy test và linter để đảm bảo tính ổn định.
Bí quyết cốt lõi là giao tiếp có cấu trúc.
Các agent không trò chuyện với nhau. Chúng phát ra các token có cấu trúc như PLAN_WRITTEN hoặc REVIEW_RESULT. Bộ điều phối (orchestrator) sẽ phân tích các token này để định tuyến bước tiếp theo. Điều này giúp hệ thống nhanh hơn, rẻ hơn và ngăn chặn hiện tượng ảo giác (hallucinations).
Mỗi agent có một vai trò và mô hình cụ thể:
• Planner (Opus): Suy luận sâu để lập bản đồ các đường dẫn tệp và các thay đổi mã chính xác. • Implementer (Sonnet): Tuân theo kế hoạch hoặc sửa các lỗi ngăn cản việc review (review blockers). • Reviewer (Sonnet): So sánh mã với nhánh gốc (base branch). Nó sử dụng ngưỡng tin cậy 80% để tránh nhiễu. • Tester (Haiku): Chạy các lệnh Go như vet, test, và lint.
Các lựa chọn thiết kế chính để đảm bảo độ tin cậy:
- Một công việc cho mỗi agent: Điều này giúp logic đơn giản.
- Hợp đồng đầu ra cố định: Điều này loại bỏ nhu cầu gọi thêm LLM để trích xuất ý định.
- Vòng lặp review-retry: Hệ thống cho phép tối đa hai lần thử để sửa các lỗi ngăn cản.
- Tối ưu hóa mô hình: Tôi sử dụng các mô hình đắt tiền cho việc lập kế hoạch và các mô hình rẻ hơn cho việc kiểm thử để tiết kiệm chi phí.
Bạn có thể tự động hóa các vòng lặp lặp đi lặp lại của mình. Bạn chỉ cần viết chúng ra.
Cộng đồng học tập tùy chọn: https://t.me/GyaanSetuAi