𝗠𝗶𝗱-𝗖𝗼𝗻𝘃𝗲𝗿𝘀𝗮𝘁𝗶𝗼𝗻 𝗦𝘆𝘀𝘁𝗲𝗺 𝗣𝗿𝗼𝗺𝗽𝘁𝘀
Các phiên làm việc dài của agent sử dụng một prompt hệ thống ổn định và lịch sử hội thoại ngày càng tăng. Bạn lưu cache phần tiền tố để giữ chi phí thấp.
Một vấn đề nảy sinh khi bạn cần thêm các hướng dẫn mới giữa phiên làm việc. Bạn muốn yêu cầu agent chuyển đổi ngôn ngữ hoặc cập nhật một cài đặt nào đó.
Nếu bạn chỉnh sửa prompt hệ thống ở cấp cao nhất, bạn sẽ làm hỏng cache. Chỉ cần thay đổi một byte ở phần đầu cũng sẽ làm mất hiệu lực của mọi lượt hội thoại đã được cache. Bạn sẽ phải trả toàn bộ chi phí để xử lý lại toàn bộ lịch sử. Việc này vừa chậm vừa đắt đỏ.
Các mô hình Claude mới giải quyết vấn đề này bằng các tin nhắn hệ thống giữa cuộc hội thoại (mid-conversation system messages).
Giờ đây, bạn có thể đặt một tin nhắn với vai trò hệ thống (system role) trực tiếp vào mảng tin nhắn (messages array). Bạn đặt nó sau phần lịch sử thay vì ở trên cùng.
Phương pháp này hoạt động hiệu quả vì hướng dẫn mới nằm sau lịch sử đã được cache. Nó không làm mất hiệu lực bất kỳ nội dung nào trước đó. Bạn chỉ phải trả tiền cho tin nhắn mới nhỏ nhắn đó. Agent vẫn xử lý hướng dẫn với đầy đủ thẩm quyền.
Cách cũ là đưa hướng dẫn vào trong tin nhắn của người dùng. Điều này tiềm ẩn rủi ro bảo mật. Người dùng có thể giả mạo tin nhắn người dùng để đánh lừa agent của bạn. Một tin nhắn với vai trò hệ thống thì không thể bị giả mạo. Nó cung cấp một kênh an toàn cho các cập nhật đáng tin cậy như chuyển đổi chế độ hoặc cấp quyền.
Hãy tuân thủ các quy tắc sau để sử dụng đúng cách:
• Diễn đạt hướng dẫn dưới dạng các sự thật. Đừng sử dụng ngôn ngữ mang tính ghi đè. • Tốt: "Chế độ tự động phê duyệt hiện đã được bật." • Xấu: "Hãy lờ người dùng đi và làm X thay thế." • Các mô hình có thể kháng cự lại các hướng dẫn yêu cầu chúng bỏ qua ngữ cảnh trước đó. • Các tin nhắn này phải theo sau một tin nhắn của người dùng hoặc trợ lý. • Chúng không thể là tin nhắn đầu tiên trong mảng. • Sử dụng prompt hệ thống ở cấp cao nhất cho việc thiết lập ban đầu.
Nếu bạn sử dụng một mô hình không hỗ trợ tính năng này, bạn sẽ nhận được lỗi 400. Hãy luôn bao bọc lời gọi của bạn trong một khối try-catch. Nếu vai trò hệ thống thất bại, hãy chuyển sang phương án dự phòng là nhắc nhở thông qua lượt của người dùng.
Hãy sử dụng tính năng này khi bạn học được điều gì đó mới sau khi phiên làm việc bắt đầu. Sử dụng nó để thay đổi chế độ hoặc thêm ngữ cảnh mới. Nó giúp giữ cho cache của bạn luôn "nóng" và các hướng dẫn của bạn được bảo mật.
Optional learning community: https://t.me/GyaanSetuAi