“Các bạn nên sử dụng nhiều Bash hơn.” Trong vài tuần qua, Thariq của Anthropic đã có một cuộc gọi hội nghị với hàng chục công ty làm về trí tuệ nhân tạo tổng quát. Trợ lý email, chatbot dịch vụ khách hàng, quản lý lịch trình - có đủ loại hình sản phẩm. Sau khi nói chuyện một vòng, anh nhận ra mình đã lặp đi lặp lại một câu nói. Bash? Đó không phải là công cụ dòng lệnh mà lập trình viên sử dụng sao, có liên quan gì đến những sản phẩm này? Trước tiên, hãy xem một tình huống cụ thể. Giả sử bạn có một Agent email, bạn hỏi nó: “Tuần này tôi đã chi bao nhiêu tiền cho việc đi taxi?” Cách làm truyền thống là như thế này: Agent gọi API để kéo email, có thể lấy về 100 email một lần, sau đó để mô hình tìm hóa đơn Uber, Lyft trong đó và cộng tổng số tiền. Vấn đề là 100 email được nhét vào ngữ cảnh, mô hình phải nhớ tất cả những nội dung này, lọc ra và tính toán. Điều này không dễ dàng đối với các mô hình ngôn ngữ lớn. Dễ bị bỏ sót, dễ sai, và bạn không thể xác minh nó đã xem những email nào. Đây là vấn đề điển hình của vùng thoải mái của mô hình: khối lượng dữ liệu không đủ lớn để cần viết chương trình xử lý riêng, nhưng lại vượt quá khả năng tính toán một lần của mô hình. Bị kẹt ở giữa, thật khó xử. Giải pháp của Thariq là: cung cấp cho Agent một công cụ Bash, để nó lưu kết quả trung gian thành tệp. Nghe có vẻ đơn giản, nhưng logic đằng sau thì rất thú vị. Cách gọi công cụ truyền thống là quy trình như sau: Công cụ → Mô hình xử lý → Xuất kết quả Tất cả các trạng thái trung gian đều nằm trong “đầu” của mô hình, bạn không thể nhìn thấy, cũng không thể kiểm tra. Khi chuyển sang Bash, quy trình đã thay đổi: Công cụ → Lưu tệp → Tìm kiếm/Lọc → Mô hình xử lý → Xuất kết quả ...