- Thông qua trải nghiệm phát triển Sketch, trợ lý lập trình AI, bài viết nhấn mạnh cách triển khai ngắn gọn của cấu trúc vòng lặp kết hợp LLM và sử dụng công cụ
- Chỉ với 9 dòng mã vòng lặp, các LLM hiện đại như Claude 3.7 Sonnet có thể nhanh chóng giải quyết các vấn đề thực tế
- Chỉ cần một công cụ đa dụng như bash cũng có thể tự động hóa phần lớn các công việc lặp đi lặp lại và khó nhằn của lập trình viên
- Không chỉ giải quyết vấn đề, việc kết nối thêm các công cụ chỉnh sửa văn bản hoặc công việc chuyên biệt còn có thể nâng cao chất lượng và tốc độ lặp lại của công việc
- Xu hướng ngày càng nhiều vòng lặp tác nhân LLM tùy chỉnh được đưa vào tự động hóa công việc hằng ngày của lập trình viên
Mở đầu: trải nghiệm phát triển và dự án Sketch
- Trong quá trình phát triển Sketch, công cụ hỗ trợ lập trình dựa trên AI, Philip Zelig và các đồng nghiệp đã ngạc nhiên trước hiệu quả cao của cấu trúc vòng lặp tác nhân đơn giản kết hợp LLM với việc tận dụng công cụ
- Cấu trúc cốt lõi chỉ gồm 9 dòng mã vòng lặp, truyền system prompt, lịch sử hội thoại và tin nhắn mới nhất tới API của LLM
- LLM tạo đầu ra và khi cần sẽ trả về
tool_calls (yêu cầu gọi công cụ)
Tích hợp LLM và việc sử dụng công cụ
- "Sử dụng công cụ" (
tool use) là việc LLM trả về đầu ra phù hợp với schema được định nghĩa trước, đồng thời thông qua system prompt và prompt mô tả công cụ, LLM có thể truy cập các công cụ đa dụng như bash
- Các LLM hiện đại (ví dụ: Claude 3.7 Sonnet) có thể nhanh chóng tự động hóa nhiều vấn đề chỉ với một công cụ đa dụng duy nhất, và một số trường hợp còn giải quyết được chỉ trong một lần chạy ("one shot")
- Trước đây phải tìm, sao chép và dán các lệnh
git phức tạp rồi tự merge thủ công, nhưng giờ chỉ cần yêu cầu Sketch là có thể xử lý ngay
- Nhiều lỗi kiểm tra kiểu phát sinh sau khi thay đổi type cũng đã được Sketch tự động xử lý lần đầu tiên
- Vòng lặp tác nhân hoạt động liên tục và thích ứng, tự động cài công cụ khi chưa có và tùy biến để phù hợp với khác biệt về tùy chọn lệnh
- Trong lúc sử dụng, đôi khi LLM đưa ra các đề xuất bất ngờ như "bỏ qua test" khi test thất bại, nhưng nhìn chung chất lượng tự động hóa công việc vẫn được cải thiện
Đa dạng hóa và chuyên biệt hóa công cụ
- Sketch nhận thấy rằng ngoài
bash, việc sử dụng các công cụ bổ sung (ví dụ: công cụ chỉnh sửa văn bản) có thể nâng cao chất lượng công việc và giúp quy trình phát triển hiệu quả hơn
- Việc để LLM chỉnh sửa chính xác văn bản bằng
sed và các công cụ tương tự khó hơn dự đoán, và các công cụ theo kiểu trình biên tập trực quan (visual editor) tỏ ra tốt hơn
Triển vọng tương lai và thay đổi trong quy trình làm việc
- Cấu trúc vòng lặp tác nhân được dự đoán sẽ ngày càng được dùng nhiều hơn cho các công việc lặp lại trong đời sống hằng ngày của lập trình viên, vốn khó xử lý bằng các công cụ tự động hóa đa dụng trước đây
- Ví dụ, những công việc phiền phức và lặp đi lặp lại như phân tích mối tương quan giữa stack trace và git commit cũng có thể được LLM xử lý nhanh ở bước đầu
- Trong tương lai, có thể kỳ vọng nhiều vòng lặp tác nhân LLM tùy biến, dùng một lần sẽ được sử dụng trong thư mục bin/ của lập trình viên và các môi trường tương tự
- Người dùng chỉ cần chuẩn bị bearer token mong muốn là có thể dễ dàng thử nghiệm trong môi trường của mình
Liên kết tham khảo
1 bình luận
Ý kiến Hacker News
?utm_source=hn&utm_medium=browserhay không