Dựng prompt
Mô hình đọc gì ở mỗi lần gọi trong một lượt — chỉ dẫn, skill, bộ nhớ ngắn hạn, tin nhắn và tệp đính kèm của bạn — và cuộc trò chuyện dài được tóm tắt để vừa ngữ cảnh ra sao.
Mọi lần gọi mô hình trong một lượt đều đọc cùng một chồng lớp: chỉ dẫn của agent cùng quy ước của runtime, bộ nhớ ngắn hạn, rồi tin nhắn mới của bạn kèm tệp đính kèm. Trang này đi từ dưới lên, rồi giải thích cách nén ngữ cảnh cho cuộc trò chuyện dài và cách kết quả hiện trên màn hình.
Quy tắc chính
- Lớp sau thắng lớp trước: nền của portal → chỉ dẫn của tác giả → skill
/slug→ danh mục skill. - Bộ nhớ ngắn hạn được dựng lại từ bản ghi ở mỗi lần gọi: 20 lượt, 8 lệnh gọi mỗi lượt, kết quả tool của 3 lượt gần nhất.
- Suy luận không bao giờ vào bộ nhớ; chỉ những gì agent đã làm và đã nói.
- Ở 85% cửa sổ ngữ cảnh, lượt tự nén thành bản tóm tắt cộng bốn tin nhắn cuối, rồi chạy tiếp.
- Chỉ khối văn bản mới có thể là câu trả lời.
Ghép lượt
| Thứ tự | Lớp | Nội dung |
|---|---|---|
| 1 | Nền của portal | Trợ lý là ai và nói chuyện thế nào. |
| 2 | Chỉ dẫn của tác giả | Chỉ dẫn do tác giả agent viết. |
| 3 | Skill được chọn | Skill chọn bằng lệnh /slug ở đầu tin nhắn, được nạp nguyên vẹn. |
| 4 | Danh mục skill | Các skill gắn khác, mỗi skill là một tên và một câu nói khi nào dùng; mô hình tự nạp skill nó cần. |
| 5 | Bộ nhớ ngắn hạn | Các lượt gần đây dựng lại từ bản ghi (bên dưới). |
| 6 | Tin nhắn mới | Tin nhắn của bạn cùng tệp đính kèm. |
Mức suy luận
Agent có một mức suy luậnMức suy nghĩThinking effortThời gian mô hình được suy nghĩ trước khi trả lời. Mức cao giúp với câu hỏi khó, nhưng chậm hơn và tốn hơn.Mở trong Thuật ngữ, và bạn có thể đổi nó cho một tin nhắn. Mức được chọn cuối cùng được ghi trên lượt, nên lượt chạy tiếp giữ nguyên mức đó và ô soạn hiện lại khi mở lại cuộc trò chuyện. Mô hình không suy luận sâu được sẽ bỏ qua nó. Các mức và chi phí nằm ở vòng lặp agent.
Tệp đính kèm
Tệp đính kèm là tài liệu hoặc hình ảnh, được xác định một lần khi tải lên. Toàn bộ quy trình nằm ở Quy trình tri thức; trong prompt:
- Tài liệu hiện thành một mục manifest: tên tệp và loại, mã tệp đính kèm, tiến độ đọc, các trang không đọc được và hai mươi tiêu đề mục đầu tiên. Tài liệu đã đọc xong và có tối đa 6.000 ký tự được đặt nguyên vào tin nhắn; dài hơn thì được đọc bằng
read_documentvà tìm bằngsearch_attachments. - Hình ảnh được đưa thẳng cho mô hình, thu nhỏ trước nếu lớn hơn mức nhà cung cấp xem, và tin nhắn nêu kích thước đã thu nhỏ. Tin nhắn có hình cần mô hình nhìn được; nếu không, lượt bị từ chối trước khi ghi bất cứ gì, kèm tên mô hình.
- Ở các lượt sau, mọi tài liệu trước đó phát lại thành manifest với trạng thái hiện tại, văn bản đặt nguyên phát lại trong một ngân sách chung (mới nhất trước), và chỉ vài tin nhắn gần nhất có hình mới gửi lại hình. Tin nhắn cũ hơn nói bằng lời rằng hình không còn.
Chỉ dẫn
Danh mục skill lấy từ agent, thu hẹp theo những gì bạn được thấy và đã xuất bản; lượt chạy tiếp nhận cùng danh sách.
Ô soạn ghi các lựa chọn của bạn vào tin nhắn, ví dụ /market-research /fact-check trước yêu cầu. Trước khi mở lượt, backend:
- Xác định từng slug khác nhau trong tổ chức của bạn.
- Kiểm tra phạm vi hiển thị và trạng thái hoạt động. Một skill bị từ chối thì cả yêu cầu bị từ chối.
- Ghi một mục trace
SKILL_SELECTvới mã của mỗi skill được kích hoạt; lần chạy tiếp dùng các mã đó và kiểm tra phạm vi hiển thị lần nữa. - Bỏ skill đã chọn khỏi danh mục, vì chỉ dẫn của chúng đã được nạp.
Bộ nhớ ngắn hạn
Bộ nhớ ngắn hạn là nhật ký hành động gần đây, dựng lại từ bản ghi và đọc trọn ở mỗi lần gọi. Lệnh gọi tool của lượt trước quay lại dưới dạng lệnh gọi tool: lệnh gọi trong một tin nhắn của trợ lý và kết quả ở tin nhắn kế tiếp. Suy luận và lời dẫn trước khi gọi tool không bao giờ vào đây.
| Giới hạn | Giá trị |
|---|---|
| Số lượt phát lại | 20 |
| Số lệnh gọi phát lại mỗi lượt | 8 |
| Số lượt được phát lại kết quả tool | 3 lượt gần nhất |
| Mỗi kết quả phát lại | Vài trăm ký tự, kèm tham chiếu để lấy toàn bộ |
| Chuỗi trong tham số | Bị cắt |
- Lượt cũ hơn giữ tên, tham số và kết quả thành/bại của mỗi lệnh gọi nhưng mất nội dung kết quả và thông báo lỗi. Kết quả đã đi qua nguyên vẹn thì không mang tham chiếu.
- Mọi lệnh gọi phát lại đều có câu trả lời; lệnh chưa bao giờ trả về được trả lời bằng một câu nói rõ điều đó, vì API của mô hình từ chối tin nhắn trợ lý chứa lệnh gọi chưa được trả lời.
- Lượt bị cắt ngang vẫn để lại những gì nó đã viết và các lệnh gọi đã chạy.
- Hai mục văn xuôi kề nhau không bao giờ cùng vai, và mục mang câu trả lời của tool không bao giờ bị gộp vào.
Lệnh gọi nào được giữ chỗ và mỗi dòng kết quả nói gì theo khoảng cách nằm ở Quy tắc tool.
Nén ngữ cảnh
Khi lịch sử của một lượtLượtTurnMọi thứ từ lúc gửi tin nhắn đến khi nhận câu trả lời: kiểm tra, lệnh gọi mô hình, dùng công cụ, tạm dừng chờ bạn, và câu trả lời. Lượt vẫn chạy khi bạn đóng tab.Mở trong Thuật ngữ không còn vừa, nó được tóm tắt. Một lần nén thay mọi thứ trước nó bằng bản tóm tắt. Các lượt sau phát lại bản tóm tắt mới nhất trước, rồi phần viết sau đó; giới hạn 20 lượt chỉ áp cho phần sau. Bản tóm tắt mở đầu bằng việc nêu các lượt nó bao phủ, luôn bắt đầu từ lượt 1, vì mỗi lần nén tóm tắt bản tóm tắt trước cùng phần theo sau.
Lượt tự nén trước lần gọi mô hình có đầu vào dự kiến chạm 85% cửa sổ ngữ cảnh của mô hình, và nén lại khi gateway báo tràn. Sau đó nó tiếp tục chính lượt đó: danh sách tin nhắn trở thành bản tóm tắt cộng bốn tin nhắn cuối nguyên văn, dịch lên sao cho phần đuôi không bao giờ mở đầu bằng kết quả tool hay lệnh gọi thiếu kết quả.
Tóm tắt lỗi trước một lần gọi thì được ghi log và lần gọi vẫn chạy. Tóm tắt lỗi sau khi tràn thì lượt thất bại.
Gõ /compact, có thể kèm chỉ dẫn cho bản tóm tắt. Lệnh mở một lượt chỉ để tóm tắt lịch sử và kết thúc mà không vào vòng lặp agent. Nó bị từ chối:
- khi lượt mới nhất của cuộc trò chuyện đang chạy hoặc tạm dừng;
- khi chưa có gì được viết từ lần nén trước;
- khi tin nhắn có tệp đính kèm.
Khi lượt đang chạy, ô soạn từ chối gửi /compact, vì cơ chế nhắn chen sẽ đưa nó vào lượt đang chạy như văn bản thường.
Bản tóm tắt giữ gì. Mọi yêu cầu nguyên văn, các quyết định, công việc đã làm cùng đường dẫn và mã artifact, việc còn dở cùng danh sách tác vụ, và các dữ kiện mà phần còn lại dựa vào. Mỗi dữ kiện mang tham chiếu kết quả tool của lần đọc hay tìm kiếm đã tìm ra nó, để agent đọc lại nguồn; công việc đã làm thì không, vì đường dẫn hay mã đã đủ để tìm. Màn hình hiện bản tóm tắt đã bỏ các tham chiếu.
Ngôn ngữ. Lần gọi tóm tắt trích tối đa tám đoạn gần nhất của bạn và yêu cầu viết bằng ngôn ngữ mà phần lớn các đoạn đó dùng. Tiêu đề mục giữ tiếng Anh; trích dẫn, tên, mã tài liệu, số liệu, đường dẫn, mã và tham chiếu được chép nguyên, không dịch.
Các khối
Một tin nhắn là danh sách có thứ tự gồm bảy loại khối: suy luận, văn bản, gọi tool, kết quả tool, yêu cầu làm rõ, yêu cầu phê duyệt và nén ngữ cảnh. Khối nén giữ bản tóm tắt làm văn bản và AUTO hoặc MANUAL làm nguồn kích hoạt, nằm trong tin nhắn trợ lý tại nơi nó xảy ra. Chỉ khối văn bản mới được là khối cuối.
| Khối trên màn hình | Cách hiển thị |
|---|---|
| Lời dẫn trước khi gọi tool | Văn bản không phải câu trả lời, nhỏ hơn câu trả lời một cỡ khi lượt đã có câu trả lời. |
| Suy luận | Nhỏ hơn nữa, màu nhạt nhất, không bao giờ mở ra cho người đọc. |
| Văn bản đang chạy | Hiện từng ký tự, chậm hơn phần đã đến khoảng 0,6 giây, không bao giờ chậm hơn 40 ký tự mỗi giây. Tốc độ tăng dần tới mục tiêu trong khoảng 300 ms, nên câu được guardrail cho qua sẽ tăng tốc từ từ. Dấu thanh hay emoji không bao giờ bị tách. Mỗi chữ hiện dần từ mờ, con trỏ nhấp nháy khi còn nội dung, và phần còn lại được phát ra chứ không nhảy vào. |
| Câu trả lời đã xong hoặc tải lại | Văn bản thường. |
| Đang viết bản nén | Hai vạch của đường chia thu vào phía dòng chữ lấp lánh Summarising conversation (đang tóm tắt cuộc trò chuyện), có đồng hồ sau ba giây, thay cho chỉ báo suy luận. |
| Nén ngữ cảnh | Đường chia có nhãn Context summarised (đã tóm tắt ngữ cảnh), ghi là tự động khi agent tự chọn, mở ra để xem bản tóm tắt. Tin nhắn phía trên bản mới nhất bị làm mờ cho tới khi rê chuột. |
Đã gửi /compact | Một nhãn Compact (nén) kèm chỉ dẫn, thay cho lệnh đã gõ. |
Vì sao hoạt động như vậy
Vì sao phát lại lệnh gọi tool dưới dạng lệnh gọi tool?
Mô hình thấy đúng những gì nó đã làm, theo hình dạng nó hiểu, nên có thể dùng lại kết quả hoặc lấy phần còn lại qua tham chiếu thay vì đoán. Kết quả cũ rút gọn còn một dòng vì mọi lượt trước đều được trả tiền lại ở mỗi yêu cầu.
Vì sao nén ngữ cảnh dùng chính mô hình của lượt?
Lịch sử cần tóm tắt đã gần chạm cửa sổ ngữ cảnh của mô hình đó, còn mô hình nền của tổ chức có thể có cửa sổ nhỏ hơn. Việc nén chạy trên một instance riêng của mô hình của lượt, cùng một prompt cho cả hai kiểu, và để lại một dòng sử dụng tính theo giá mô hình của lượt như mọi lần gọi khác.
Vì sao trích đoạn văn của bạn để chọn ngôn ngữ?
Portal không lưu ngôn ngữ cho từng người, và kết quả tool cùng tài liệu chiếm phần lớn bản ghi. Chính lời của bạn cho mô hình biết bạn viết bằng ngôn ngữ nào.
Bên dưới
Chi tiết prompt nén ngữ cảnh
Mẫu ngôn ngữ bỏ qua ghi chú của runtime, các mục của bản tóm tắt được phát lại, lệnh slash và đoạn ít hơn ba từ (như một tham chiếu được dán vào). Khi lịch sử mở đầu bằng bản tóm tắt trước đó, prompt gọi nó bằng ghi chú mà nó được phát lại dưới đó và yêu cầu mang mọi thứ trong đó sang bản mới.
Bất biến của khối
Sáu bất biến của khối nằm trong mã miền; quan trọng nhất là chỉ khối văn bản mới được là khối cuối. Kích thước ngữ cảnh của lượt được ghi đè bởi mỗi lần gọi trên chính mô hình của lượt; các lần gọi tóm tắt, đánh giá và nén thì không mang giá trị này.