"Context budget exceeded" không phải chỉ là một lỗi trong IronClaw. Có bốn biến thể lỗi riêng biệt mang cách diễn đạt đó, không biến thể nào là cửa sổ ngữ cảnh của mô hình, và không tệp cấu hình, biến môi trường hay cờ CLI nào thay đổi con số đứng sau bất kỳ biến thể nào. Ngân sách là 128.000 token được tích hợp khi biên dịch, với phần dự trữ 20.000 token; ba luồng chiếm chỗ của nó — các tệp nhận dạng, đoạn trích kỹ năng và schema công cụ — được tập hợp bên trên hạn mức đó thay vì nằm bên trong nó, theo chính báo cáo lỗi đang mở của IronClaw chứ không phải giả thuyết của trang này.
Một điểm cần phân biệt vì tên này dễ gây nhầm lẫn. Đây là github.com/nearai/ironclaw, runtime tác tử Rust của NEAR AI — không phải chuột chơi game Corsair chiếm phần lớn kết quả tìm kiếm thương mại cho từ này, cũng không phải công ty không liên quan tại ironclaw.tech, công ty cũng bán phần mềm tác tử và cũng so sánh mình với OpenClaw. IronClaw so với OpenClaw trình bày đầy đủ ranh giới đó. Mọi số liệu ở cấp mã nguồn bên dưới đều được đọc từ main tại commit b0b999d (được commit ngày 10 tháng 9 năm 2026) vào ngày 21 tháng 9 năm 2026, thông qua GitHub contents API. Commit đó mới hơn thẻ phát hành ironclaw-v1.4.0 được công bố ngày 28 tháng 8 năm 2026. Ngày 1 tháng 10 năm 2026, tệp nhị phân phát hành ironclaw-v1.4.1 mới hơn (được công bố ngày 29 tháng 9 năm 2026, là bản vá cho Google OAuth và Wasmtime, không thay đổi ngân sách trong ghi chú phát hành) đã được chạy với một endpoint kiểm thử cục bộ; những gì nó thực hiện được ghi lại bên dưới và chỉ áp dụng cho phiên bản đó, còn các số liệu mã nguồn vẫn chỉ áp dụng cho commit.
Bạn đang xem loại "context budget exceeded" nào
Đây là các chuỗi hiển thị Rust thiserror, tức là nội dung xuất hiện trong nhật ký và chi tiết lỗi. Đọc chính xác cách diễn đạt sẽ cho biết luồng nào đã thất bại.
| Chuỗi chính xác | Nơi phát sinh | Điều gì kích hoạt lỗi |
|---|---|---|
skill context: context budget exceeded | ironclaw_loop_contracts/src/skill_context.rs | Một đoạn trích kỹ năng vượt quá 64 KiB nội dung mô hình, hoặc tổng cộng vượt quá 256 KiB. Đây là byte, không phải token — và toàn bộ quá trình tạo ngữ cảnh kỹ năng thất bại thay vì loại bỏ mục gây lỗi |
skill context budget exceeded | ironclaw_loop_host/src/skill_bundle_context_source.rs | Hơn 100 ứng viên gói kỹ năng hiển thị, được đếm trước khi diễn ra bất kỳ việc lập ngân sách token nào. Lớp host cũng phát lại cách diễn đạt này khi ánh xạ lỗi byte ở cấp contracts nêu trên, vì vậy chỉ riêng chuỗi này không cho biết hai trường hợp khác nhau |
skill activation context budget exceeded | skill_activation/activation.rs | Hơn 8 kỹ năng đang hoạt động trong một lượt, hoặc một kỹ năng có chi phí ước tính vượt quá ngân sách token còn lại của bộ chọn. Ngân sách đó là 4.000 theo giá trị mặc định của chính bộ chọn và 6.000 tại nơi runtime composition kết nối nguồn kỹ năng hệ thống tệp |
identity context budget exceeded | ironclaw_loop_host/src/identity_context.rs | Không có gì, ở thời điểm hiện tại. Chú thích tài liệu của nó nêu rằng nó "Reserved for a future hard-limit mode" và builder "truncates silently on budget overflow rather than returning this error" |
Những gì người dùng nhìn thấy khi xảy ra tràn mô hình thực sự không chứa bất kỳ từ nào trong số đó. Phép chiếu lỗi do host tạo ra là câu cố định "The run failed because the model context was too large. Retry with a shorter request or start a new thread.", còn lỗi được ánh xạ từ model gateway là "model request exceeded its context budget". Hai điều cần thận trọng. Trang này không truy vết một lượt chạy đầu-cuối, nên chưa xác lập được lỗi ở luồng kỹ năng cuối cùng được chiếu thành câu nào hướng đến người dùng. Và một chuỗi được lặp lại rộng rãi, "Model request context exceeds the available input budget", không xuất hiện ở đâu trong nearai/ironclaw — nó thuộc về một dự án tác tử khác và không nên được dùng để chẩn đoán dự án này.
128.000 mà bạn không thể cấu hình
PromptContextTokenBudget cung cấp ba hằng số: giới hạn ngữ cảnh 128.000 token, phần dự trữ 20.000 token và giá trị đầu ra tối đa của vòng lặp chính là 0. Bản ghi hội thoại hiển thị là giới hạn trừ đi giá trị lớn hơn của hai giá trị cuối, tức 108.000 token — phép tính từ các giá trị mặc định, không phải một giá trị literal trong tệp. Hạng mục thứ ba không bao giờ được gán bên ngoài các bài kiểm thử, nên phần dự trữ luôn cố định ở 20.000. Và mọi phần khởi tạo không dành cho kiểm thử trong kho lưu trữ đều dùng PromptContextTokenBudget::default() đơn giản — một phần trong chiến lược nén, một phần trong giá trị mặc định TextOnlyLoopHostConfig của loop driver host; mọi lệnh gọi ::new(…) mang các con số khác đều nằm trong một mô-đun #[cfg(test)].
Báo cáo #5739 của chính IronClaw nói điều đó ngay trong tiêu đề — "Ngân sách ngữ cảnh thực tế được cố định trong mã ở mức 128K, bỏ qua context_length của mô hình và không có tùy chọn cấu hình để ghi đè" — mở từ ngày 6 tháng 7 năm 2026 và vẫn mở vào ngày 21 tháng 9 năm 2026. Từ đó có ba điểm dễ mắc bẫy:
- Các khóa
budget.*không phải là thứ này. Trang cấu hình của IronClaw ghi lạibudget.user_daily_usd,budget.pause_atvà các khóa cùng nhóm trong phần có tiêu đề "budget — cost controls", được mô tả ở đó là giới hạn mức chi tiêu của tác tử. Đây là các cài đặt tiền bạc (hai trong số đó,budget.overestimate_factorvàbudget.default_tz, lần lượt là hệ số nhân và múi giờ chứ không phải số tiền tính theo dollar). Không có khóa nào ở bất kỳ cấp nào đặt giới hạn ngữ cảnh, phần dự trữ, giới hạn nhận dạng hay ngân sách kỹ năng — và thứ tự ưu tiên được công bố là "compiled defaults < config.toml < environment variables < CLI flags", nên một khóa vắng mặt sẽ vắng mặt ở mọi nơi. - PR #5790 là một hướng điều tra sai. Tiêu đề của nó đề xuất "ghi đè ngân sách ngữ cảnh prompt thông qua host factory". API báo rằng nó đã bị đóng vào ngày 27 tháng 8 năm 2026 với
merged: false. - Các bản sửa đều chỉ là đề xuất. #8053, bản sẽ lấy 90% cửa sổ được mô hình quảng bá cùng phần dự trữ 20.000, cùng với #7976 và #5435, đều vẫn mở khi được kiểm tra.
Đối với endpoint bên thứ ba, còn có một bước nữa và đó là bước mang tính quyết định. ModelMetadata.context_length là một Option, giá trị mặc định của trait LlmProvider trả về None — "Mặc định trả về tên mô hình mà không có thông tin về kích thước" — còn bộ điều hợp tương thích OpenAI chung không định nghĩa override nào nên kế thừa giá trị mặc định đó. Vì vậy, endpoint tùy chỉnh không bao giờ quảng bá cửa sổ. IronClaw lập kế hoạch cho 108.000 token bản ghi hội thoại bất kể mô hình của bạn chứa được một triệu hay 32.000 token, còn #8053 sẽ đọc đúng trường mà đường dẫn này không bao giờ thiết lập. Xem Thiết lập API tùy chỉnh IronClaw để biết cách cấu hình endpoint đó; trang này chỉ tập trung vào ngân sách.
Các luồng lấp đầy prompt nhưng không chạm vào ngân sách
Đề xuất cải tiến đang mở #8057 của IronClaw, được lập ngày 3 tháng 9 năm 2026 và vẫn mở khi kiểm tra, nêu cơ chế này bằng chính lời của nhà cung cấp: ngân sách prompt "chỉ tính kích thước của bản ghi hội thoại", còn nội dung nhận dạng, các đoạn trích kỹ năng và bộ nhớ, ngữ cảnh kênh cùng schema công cụ "được thêm vào ngoài hạn mức bản ghi hội thoại mà không làm giảm hạn mức đó, nên yêu cầu mà nhà cung cấp nhận được có thể vượt quá ngân sách mà vòng lặp cho rằng mình đang tuân thủ." Đó là báo cáo lỗi, không phải tài liệu về hành vi đã phát hành — nhưng nó giải thích tại sao một lượt chạy có thể thất bại vì kích thước trong khi từng luồng riêng lẻ đều có vẻ tuân thủ.
| Luồng | Giới hạn riêng | Hành vi khi đạt giới hạn |
|---|---|---|
| Token bản ghi hội thoại | Ước tính 108.000 | Đi từ mới nhất về cũ nhất và break ở tin nhắn đầu tiên không vừa, loại bỏ mọi tin nhắn cũ hơn. Có chủ đích trên main: bỏ qua một tin nhắn ở giữa "can orphan provider tool calls from their result references" |
| Tin nhắn bản ghi hội thoại | 128 | Một giới hạn riêng về số lượng được áp dụng trước khi lập ngân sách token, vì vậy một chuỗi dài gồm các tin nhắn ngắn bị cắt khi còn thấp hơn nhiều so với 108.000 |
| Tệp nhận dạng | Ước tính 8.000 | Cũng break nên mọi thứ sau ứng viên quá lớn đầu tiên cũng bị loại bỏ — một cách âm thầm. Các ứng viên đến từ danh sách cho phép cố định gồm 11 tệp, bao gồm SOUL.md, AGENTS.md, SYSTEM.md và MEMORY.md |
| Kích hoạt kỹ năng | 8 slot; ước tính 4.000 token theo mặc định của bộ chọn, 6.000 theo cấu hình của runtime khi kết hợp các thành phần | Phát sinh skill activation context budget exceeded trong cả hai trường hợp |
| Byte đoạn trích kỹ năng | Mỗi đoạn 64 KiB, tổng cộng 256 KiB | Lỗi cứng, toàn bộ quá trình tạo thất bại |
| Công cụ được quảng bá | Ước tính 12.000 token, 32 công cụ — hoặc một phần mười cửa sổ mô hình, tùy giá trị nào nhỏ hơn, khi đã biết cửa sổ | Hoãn phần còn lại. Không giới hạn 27 tên công cụ cốt lõi được quảng bá bất kể chế độ |
| Tác vụ đã được ghim và chấp nhận | Một mình phải vừa trong 108.000 | Hoàn toàn là một lớp lỗi khác: accepted task exceeds the prompt context token budget, phát sinh trước mọi lần thử lại |
Luồng công cụ có thể đo được, và IronClaw đo nó. Điểm chuẩn đã commit của nó trên một fixture tổng hợp gồm 93 công cụ ghi nhận mức giảm từ 21.355 xuống 3.843 token schema ước tính với 22 công cụ được quảng bá — 82,0%, được bảo vệ trong kho mã bằng ngưỡng dung sai sai lệch 2,0 điểm và sàn 50,0%. Các con số đó được đọc từ tệp kiểm thử, không phải tạo ra bằng cách chạy nó ở đây — payload được đo của tệp nhị phân phát hành nằm trong phần bên trên, và có cấu trúc khác: bộ công cụ mặc định, không phải fixture 93 công cụ. Hãy xem chúng là các ước tính số ký tự nội bộ của IronClaw trên một fixture, không phải prompt công cụ của bạn và cũng không phải số lượng token theo tokenizer của nhà cung cấp. Cách hiểu đúng là cấu trúc: việc tiết lộ dần loại bỏ phần lớn schema nhưng vẫn để lại một sàn vài nghìn token mà không cài đặt nào loại bỏ được, vì 27 tên cốt lõi được quảng bá trong mọi chế độ tiết lộ.
Tệp nhị phân 1.4.1 đã phát hành đã làm gì
Ngày 1 tháng 10 năm 2026, tệp nhị phân phát hành ironclaw-v1.4.1, đã được xác minh checksum, chạy trong một container dùng một lần với slot [llm.default] trên nhà cung cấp openai_compatible trỏ đến một máy chủ kiểm thử cục bộ ghi lại từng yêu cầu. Mỗi lượt chạy có một tin nhắn ngắn thông qua ironclaw repl:
REBORN_TOOL_DISCLOSURE | Schema công cụ trong yêu cầu | Byte của schema công cụ |
|---|---|---|
chưa đặt, namespaces hoặc bridged | 26 — 23 công cụ tích hợp sẵn cộng với tool_search, tool_describe và tool_call | 35.703 |
compact | 26 | 35.406 |
signatures | 26 | 35.435 |
off | 50 | 61.630 |
true — không phải giá trị hợp lệ | 50 | 61.630, giống hệt off |
Vì vậy, sàn này là có thật trên bản dựng đã phát hành: không chế độ tiết lộ nào gửi ít hơn 26 schema, và theo ước tính riêng của IronClaw là bốn ký tự mỗi token, 35.703 byte tương đương khoảng 8.900 token trước cả một từ của bạn — trong khi các tin nhắn hệ thống và nhận dạng cộng thêm khoảng 24.000 byte. Đây là phép tính trên byte, không phải số lượng token của nhà cung cấp. Nguy cơ lỗi chính tả được mô tả bên dưới đã được xác nhận chứ không chỉ suy luận: true tạo ra chính xác payload off, gần như tăng gấp đôi prompt công cụ, mà không có gì trên màn hình cho biết điều đó.
Ngân sách cứng đã hoạt động đúng như mã nguồn mô tả. Một tin nhắn khoảng 380.000 ký tự được gửi đến endpoint; một tin nhắn khoảng 460.000 ký tự — vượt quá 108.000 token với bốn ký tự mỗi token — không bao giờ rời khỏi máy. REPL chỉ in các dòng nhật ký cảnh báo nêu stage Prompt, kind BudgetExceeded và bản tóm tắt accepted task exceeds the prompt context token budget. Không tìm thấy cài đặt nào, trong cấu hình hay môi trường, có thể thay đổi dòng đó. Các lỗi của luồng kỹ năng, lỗi tràn của một mô hình thực và bất kỳ yêu cầu nào thông qua Kunavo đều chưa được chạy.
Thử lại không phải cách khắc phục, và một lỗi chính tả còn làm tình hình tệ hơn
Chiến lược khôi phục mặc định thử lại lỗi tràn ngữ cảnh đúng một lần, ở phạm vi lần lặp, với thay đổi ShrinkContext, sau đó hủy — tên các bài kiểm thử của chính nhà cung cấp là model_context_overflow_compacts_once_then_aborts và second_model_context_overflow_aborts_without_another_compaction. Vì vậy, nhấn thử lại trên cùng một yêu cầu quá lớn không thể thành công. Để có quy mô so sánh, các giá trị mặc định của cùng chiến lược cho phép max_model_availability_attempts: 12 và max_attempts_per_class: 2; lớp lỗi này nhận đúng một lần thử ShrinkContext.
Việc nén cũng không cứu được bạn sớm hơn: ngưỡng kích hoạt của nó là cùng mức 108.000, nên không có gì buộc phải nén trước khi bản ghi hội thoại đạt đến đó. Nén cưỡng bức và nén khôi phục bỏ qua circuit breaker, đây là cách duy nhất của vòng lặp để thu nhỏ prompt quá lớn trước khi thử lại. Một lưu ý về chiến lược thay thế: issue #5582, mở từ ngày 3 tháng 7 năm 2026, báo cáo rằng ActiveTaskPreservingCompactionStrategy không bao giờ đọc cờ tràn. Chiến lược nào được triển khai cụ thể lựa chọn chưa được truy vết ở đây.
Một rủi ro cấu hình cần được kiểm tra trước mọi việc khác. Việc tiết lộ công cụ dần dần được đọc từ REBORN_TOOL_DISCLOSURE, chấp nhận off | compact | signatures | namespaces | bridged và mặc định là namespaces khi không được đặt hoặc để trống. Bất kỳ giá trị không rỗng nào khác — lỗi chính tả, true cũ hoặc on cũ — đều âm thầm được phân giải thành Off, được mô tả trong cùng tệp là "Nhánh đối chứng: quảng bá mọi schema được cấp quyền." Giá trị không phải UTF-8 cũng cho kết quả tương tự. Tín hiệu duy nhất là một dòng tracing::debug!, và tác động là prompt công cụ lớn hơn đáng kể. Hãy bỏ đặt biến thay vì đoán cách viết của nó.
Những gì bạn thực sự có thể thay đổi hôm nay
Không có trang tài liệu IronClaw nào được công bố bao quát ngân sách ngữ cảnh, việc nén hay bất kỳ lỗi nào trong bốn lỗi này, vì vậy các đòn bẩy bên dưới là những gì tài liệu và mã nguồn cùng hỗ trợ — không phải biện pháp khắc phục được nhà cung cấp chính thức xác nhận.
Đòn bẩy duy nhất được tài liệu hóa giúp giảm áp lực ngữ cảnh kỹ năng là một cờ cấu hình, không phải biến môi trường. Trang kỹ năng của IronClaw nói hãy đặt nó dưới [skills], đồng thời lưu ý rằng việc kích hoạt bằng từ khóa và thẻ, cùng các đề cập $my-skill rõ ràng, vẫn chèn kỹ năng:
[skills]
# Documented lever: stops regex auto-activation from loading full skill
# context. Keyword/tag activation and $my-skill mentions still inject skills.
regex_activation_enabled = falseThêm ba cách nữa, cùng các giới hạn của chúng. Trường frontmatter max_context_tokens của một kỹ năng mặc định là 2000 theo cùng trang tài liệu, nhưng ghi một số nhỏ ở đó không thu nhỏ được một kỹ năng lớn: khi phần nội dung ước tính lớn hơn hai lần giá trị đã khai báo, bộ chọn ghi nhật ký rằng nó đang "using actual estimate" và tính theo kích thước đo được. Một routine phản ứng có thể thu hẹp phạm vi công cụ thông qua allowed_tools, phạm vi này chỉ áp dụng cho routine đó chứ không áp dụng cho các lượt tương tác. Còn các công cụ tệp bị tắt trừ khi ALLOW_LOCAL_TOOLS=true: tài liệu công cụ tệp của IronClaw nói chúng mặc định bị vô hiệu hóa "để ngăn việc vô tình truy cập hệ thống tệp trong các môi trường được lưu trữ hoặc dùng chung", vì vậy để chúng tắt sẽ loại bớt một nhóm schema khỏi prompt. Không cách nào trong ba cách này chạm đến 128.000.
Cuối cùng, đừng lập kế hoạch dựa trên một con số lỗi thời. Issue #7485 báo cáo rằng ngân sách 108.000 token "thực tế tương đương khoảng 54 nghìn token thực" đối với nội dung ASCII và việc nén kích hoạt "sớm hơn khoảng 2 lần". Đó là lỗi đếm hai lần trong một trong hai bộ ước tính token. PR #7502 đã hợp nhất chúng và được merge ngày 11 tháng 8 năm 2026; compare API của GitHub đặt commit merge bên trong các thẻ v1.3.0 và v1.4.0 và bên trong main. Khi so với v1.2.0 và v1.1.0, kết quả so sánh là "diverged", nên chưa xác lập được bản phát hành sớm nhất chứa nó — hãy nói v1.3.0 trở lên. Bộ ước tính duy nhất hiện tại tính ASCII ở mức 4 ký tự mỗi token và khoảng 1,5 token cho mỗi ký tự không phải ASCII 3 byte, nghĩa là một bản ghi hội thoại nhiều CJK sẽ lấp đầy 108.000 nhanh hơn nhiều so với bản tiếng Anh.
Giới hạn này tốn bao nhiêu mỗi lượt và tuyến nào có lợi hơn
Đây là phép tính token minh họa, không phải chi phí tác vụ được đo và cũng không phải trần hóa đơn. Giả sử một lượt được tải tối đa: bản ghi hội thoại ở giới hạn 108.000 token, 8.000 token nhận dạng, 4.000 token ngữ cảnh kỹ năng (ngân sách mặc định của bộ chọn; runtime composition kết nối ở mức 6.000 sẽ làm tăng giá trị này) và 3.843 token schema công cụ được quảng bá từ điểm chuẩn đã ghi ở trên — 123.843 token đầu vào ước tính — cộng với 2.000 token đầu ra. Đây là các ước tính riêng của IronClaw trên một fixture tổng hợp, nên tokenizer thực của nhà cung cấp sẽ cho kết quả khác. Giá là mức giá catalog Kunavo hiện hành cho mỗi triệu token.
| Mô hình | Đầu vào / đầu ra trên mỗi 1M | Chi phí ước tính, một lượt chạy đầy đủ đến trần ngữ cảnh | Phần cộng thêm cho mỗi lượt nếu phần tiết lộ chuyển về Tắt |
|---|---|---|---|
| Claude Haiku 4.5 | $0,70 / $3,50 | $0,094 | +$0,012 |
| GPT-5.6 Terra | $0,70 / $4,20 | $0,095 | +$0,012 |
| Claude Sonnet 4.6 | $2,10 / $10,50 | $0,281 | +$0,037 |
| Claude Opus 5 | $3,50 / $17,50 | $0,468 | +$0,061 |
Cột cuối cùng mới là trọng tâm của phần này. Việc nhập sai REBORN_TOOL_DISCLOSURE sẽ thêm 17.512 token đầu vào ước tính vào mọi lượt — trên Claude Sonnet 4.6, con số đó là $0,037 mỗi lượt trước khi bất kỳ yếu tố nào khác thay đổi, và một tác tử luôn bật sẽ thực hiện nhiều lượt mỗi ngày. Cách hiểu thứ hai là trả tiền cho một mô hình có ngữ cảnh dài để thoát khỏi vấn đề này cũng không hiệu quả: IronClaw vẫn lắp ráp đến con số riêng của nó, nên cửa sổ bổ sung không mang lại lợi ích gì trong khi mức giá cao hơn được tính trên toàn bộ 123.843 token. Hãy nhân với số lượt của riêng bạn mỗi ngày trước khi coi bất kỳ con số nào trong đây là ngân sách.
| Phương thức | Giá niêm yết | Có lợi khi |
|---|---|---|
| IronClaw tự host | Phần mềm $0; huy hiệu README ghi "License: MIT OR Apache-2.0", trong khi trường giấy phép đơn trong GitHub API báo cáo Apache-2.0 | Bạn muốn kiểm soát endpoint. Không cần máy chủ cơ sở dữ liệu để bắt đầu — tài liệu lưu trữ cho biết trạng thái nằm trong các tệp nhúng dưới hồ sơ cục bộ mặc định, còn PostgreSQL là lựa chọn chuyển sang khi triển khai dạng phục vụ hoặc nhiều người dùng |
| API trực tiếp của nhà cung cấp | Mức giá theo mỗi token của nhà cung cấp | Dùng một dòng mô hình suốt cả ngày và muốn bộ nhớ đệm gốc của nhà cung cấp đó |
| Gateway tương thích OpenAI | Mức giá theo mỗi token của gateway | Bạn chuyển đổi dòng mô hình theo từng tác vụ và muốn dùng một khóa duy nhất — chấp nhận rằng không có cửa sổ nào được quảng cáo, điều đúng trên đường dẫn này với mọi gateway |
| ironclaw.com Starter | Hiển thị dưới dạng $5 gạch ngang thành $0/tháng, "$5 credits included", 1 phiên bản tác tử | Đang thử tuyến hosted. Hãy hiểu đây là nội dung quảng bá, không phải gói $0 vĩnh viễn |
| ironclaw.com Basic | $20/tháng, "$20 credits included", tối đa 2 phiên bản tác tử, gộp mức sử dụng | Hai lượt triển khai dùng chung tín dụng |
| ironclaw.com Pro+ | $200/tháng, "$200 credits included", tối đa 5 phiên bản tác tử, quyền truy cập sớm vào các mô hình nâng cao, hỗ trợ ưu tiên | Gói lưu trữ cao nhất |
| Model cục bộ | Không tính phí theo yêu cầu; thay vào đó là phần cứng | Công việc nhỏ hoặc riêng tư — nhưng lưu ý IronClaw vẫn sẽ lắp ráp 108.000 token với một cửa sổ cục bộ nhỏ |
Thông tin về các gói dịch vụ tác tử được vận hành sẵn được đọc từ ironclaw.com vào ngày 21 tháng 9 năm 2026; ironclaw.com/pricing trả về HTTP 404, vì vậy các gói nằm trên trang chủ. Tiêu đề phía trên cả ba thẻ ghi "Spin up to 5 agents in a Trusted Execution Environment with up to 130M tokens per month" — năm tác tử là mức tối đa của Pro+, nên tiêu đề đó nêu trần của gói cao nhất thay vì của bất kỳ thẻ riêng lẻ nào, và con số 130M token hoàn toàn không xuất hiện trên thẻ nào. Số tín dụng đi kèm quy đổi thành bao nhiêu token, và điều gì xảy ra khi chúng hết, không được công bố và không được suy đoán ở đây.
Kunavo không cung cấp mô hình embedding, chuyển văn bản thành giọng nói hoặc chuyển giọng nói thành văn bản, vì vậy mọi bước truy xuất hoặc giọng nói trong thiết lập của bạn phải gọi đến một nhà cung cấp bên ngoài.
Hãy thử, rồi đọc khoản phí
Nếu bạn định tuyến IronClaw đến một gateway tương thích với OpenAI, endpoint chat-completions của Kunavo có cấu trúc mà mã định danh nhà cung cấp openai_compatible yêu cầu. Đây là sự tương thích giao thức được đối chiếu từ tài liệu của cả hai phía — lần chạy ngày 1 tháng 10 ở trên dùng máy chủ kiểm thử cục bộ, không phải Kunavo, vì vậy Kunavo không đưa ra tuyên bố tương thích nào. Hãy duy trì một tuyến hoạt động, chạy một tác vụ có giới hạn và đối soát với mức sử dụng mà tài khoản của bạn đã ghi nhận thay vì chi phí hiển thị của IronClaw, vốn là phép tính riêng của nó. Số tiền trong danh mục Kunavo là mức sàn thanh toán chứ không phải mức trần: khi upstream báo cáo khoản phí, hóa đơn là giá trị lớn hơn giữa chi phí danh mục và chi phí upstream nhân với mức cộng thêm áp dụng. Khoản nạp tối thiểu là $10 tín dụng trả trước — mức tối thiểu để nạp tiền, không phải phí tác vụ hay gói đăng ký; xem chi tiết thanh toán, và tạo tài khoản khi bạn sẵn sàng nạp tiền cho một khóa. Đối với các lựa chọn liên quan, tối ưu hóa chi phí AI đề cập đến việc đo chi phí cho mỗi tác vụ hoàn tất, còn PicoClaw và ZeroClaw đề cập đến hai runtime cùng nhóm, trong đó độ dài vòng lặp cũng là một đòn bẩy chi phí tương tự.
Câu hỏi thường gặp
"context budget exceeded" trong IronClaw có nghĩa là gì?
Đây không phải một lỗi duy nhất. Bốn biến thể lỗi Rust riêng biệt trong nearai/ironclaw chứa cách diễn đạt đó: "skill context: context budget exceeded" dành cho đoạn skill vượt quá 64 KiB nội dung mô hình hoặc 256 KiB khi cộng tất cả các đoạn; "skill context budget exceeded", được phát sinh khi có hơn 100 ứng viên gói skill hiển thị và cũng được dùng khi lớp host ánh xạ lại lỗi byte đó; "skill activation context budget exceeded" dành cho hơn 8 skill đang hoạt động trong một lượt, hoặc một skill có chi phí ước tính vượt quá ngân sách token còn lại của bộ chọn — 4.000 theo mặc định riêng của bộ chọn, 6.000 khi runtime tổng hợp kết nối nguồn skill hệ thống tệp; và "identity context budget exceeded", được một chú thích mã đánh dấu là dành riêng cho chế độ giới hạn cứng trong tương lai vì tuyến identity hiện cắt ngắn một cách im lặng. Không biến thể nào trong bốn biến thể là cửa sổ ngữ cảnh của mô hình. Đọc từ nhánh main tại commit b0b999d vào ngày 21 tháng 9 năm 2026.
Làm cách nào để tăng ngân sách ngữ cảnh của IronClaw?
Bạn không thể làm vậy nếu không biên dịch lại. Ngân sách ngữ cảnh của prompt là giới hạn 128.000 token được tích hợp khi biên dịch, với phần dự trữ 20.000 token; mọi phần khởi tạo không dành cho kiểm thử trong kho lưu trữ đều dùng giá trị mặc định đơn giản, và không có khóa cấu hình, biến môi trường hay cờ CLI nào dành cho việc này. Issue #5739 của chính IronClaw, mở từ ngày 6 tháng 7 năm 2026, cũng nói điều tương tự ngay trong tiêu đề. Các khóa budget.* trên trang cấu hình là các biện pháp kiểm soát chi phí tiền bạc, không phải token ngữ cảnh, còn phần cấu hình [skills] chỉ có đúng một trường trong struct cấu hình Rust là regex_activation_enabled. PR #5790, có tiêu đề hứa hẹn cho phép ghi đè ngân sách ngữ cảnh của prompt, đã bị đóng mà không được hợp nhất vào ngày 27 tháng 8 năm 2026 — viện dẫn nó như giải pháp là viện dẫn công việc đã bị bỏ. Tất cả trạng thái được kiểm tra vào ngày 21 tháng 9 năm 2026.
Mô hình có cửa sổ ngữ cảnh lớn hơn có khắc phục được không?
Không phải trên một endpoint tương thích OpenAI tùy chỉnh. IronClaw xác định kích thước prompt từ con số được tích hợp khi biên dịch của chính nó, không phải từ mô hình, và một endpoint chung không bao giờ cho nó biết điều ngược lại: ModelMetadata.context_length là một Option, triển khai mặc định của trait LlmProvider trả về None với chú thích "Mặc định trả về tên mô hình mà không có thông tin về kích thước", còn bộ điều hợp tương thích OpenAI chung không định nghĩa override nào nên kế thừa None đó. Trỏ IronClaw đến một mô hình triệu token thì nó vẫn lập kế hoạch cho 108.000 token bản ghi hội thoại; trỏ đến một mô hình cục bộ nhỏ thì nó vẫn tạo 108.000 token rồi để nhà cung cấp từ chối yêu cầu. PR #8053 chưa được hợp nhất sẽ suy ra ngân sách từ cửa sổ được quảng bá, chính là trường mà đường dẫn này không bao giờ thiết lập. Đọc tại commit b0b999d vào ngày 21 tháng 9 năm 2026.
Tại sao IronClaw loại bỏ các tin nhắn trước đó trước khi đạt đến giới hạn?
Có hai cơ chế giới hạn chạy trước ngân sách token. Một giới hạn riêng về số lượng tin nhắn là 128 được áp dụng khi quét bản ghi hội thoại, vì vậy một chuỗi dài gồm các tin nhắn ngắn có thể bị cắt theo số lượng khi còn thấp hơn nhiều so với hạn mức token. Sau đó, việc chọn bản ghi hội thoại đi từ mới nhất về cũ nhất và dừng ở tin nhắn đầu tiên không vừa, loại bỏ mọi tin nhắn cũ hơn thay vì bỏ qua tin nhắn đó — trên nhánh chính, đây là lựa chọn có chủ đích đã được ghi rõ, với chú thích giải thích rằng bỏ qua một tin nhắn ở giữa "có thể khiến các lệnh gọi công cụ của nhà cung cấp mất liên kết với các tham chiếu đến kết quả tương ứng". Issue #7485 của IronClaw đề xuất bỏ qua tin nhắn không vừa thay vì dừng lại; đề xuất đó không được chấp nhận. Đọc tại commit b0b999d vào ngày 21 tháng 9 năm 2026.
Đặt SKILLS_MAX_TOKENS có thay đổi ngân sách kỹ năng không?
Không, và đây là một mâu thuẫn được ghi chép mà bạn nên biết. Tài liệu kỹ năng bằng tiếng Trung của IronClaw công bố một khối mã chứa SKILLS_MAX_TOKENS=4000 và mô tả việc chọn các kỹ năng cho đến khi ngân sách đó cạn. Trang kỹ năng tiếng Anh không đề cập đến biến này, còn tệp quy tắc trong kho mã của IronClaw nêu rằng "biến môi trường SKILLS_MAX_TOKENS trước đây không được bất kỳ thành phần nào đọc". Một lần tìm kiếm mã GitHub trên toàn bộ kho lưu trữ vào ngày 21 tháng 9 năm 2026 trả về ba tệp: tệp quy tắc đó, trang tài liệu tiếng Trung và một tập lệnh hoạt ảnh nội bộ — không có mã Rust. Giá trị thực sự có hiệu lực được tích hợp khi biên dịch: DEFAULT_MAX_SKILL_CONTEXT_TOKENS là 4000 làm mặc định của bộ chọn, còn runtime composition kết nối nguồn kỹ năng hệ thống tệp ở mức 6000. Dù theo cách nào, giá trị này chỉ thay đổi khi biên dịch lại.
Thử lại cùng một yêu cầu có giúp ích không?
Không. Chiến lược khôi phục mặc định của IronClaw thử lại lỗi tràn ngữ cảnh mô hình đúng một lần, ở phạm vi lần lặp, với thay đổi ShrinkContext, rồi hủy ở lần thứ hai — tên các bài kiểm thử của chính nhà cung cấp là model_context_overflow_compacts_once_then_aborts và second_model_context_overflow_aborts_without_another_compaction. Một tin nhắn tác vụ đã được ghim và chấp nhận nhưng lớn hơn phần cho phép của bản ghi hội thoại hiển thị thậm chí không được xử lý như vậy: nó thất bại ngay lập tức với một lớp lỗi khác, chứa thông báo "accepted task exceeds the prompt context token budget". Hãy rút ngắn yêu cầu hoặc bắt đầu chuỗi mới, đúng như câu thông báo lỗi hướng đến người dùng của IronClaw yêu cầu. Đọc tại commit b0b999d vào ngày 21 tháng 9 năm 2026.
Chạy vào ngày 1 tháng 10 năm 2026: tệp nhị phân bản phát hành ironclaw-v1.4.1 kết nối tới một máy chủ kiểm thử cục bộ — bảng tiết lộ và phép thăm dò ngân sách ở trên; trạng thái các issue #5739, #8053, #8057, #7976 và #5435 được kiểm tra lại trong cùng ngày, tất cả vẫn đang mở. Kiểm tra ngày 21 tháng 9 năm 2026. Các hằng số nguồn, chuỗi lỗi, chiến lược khôi phục, bộ ước tính token, các chế độ tiết lộ và đường cơ sở benchmark được đọc từ nearai/ironclaw main tại commit b0b999d thông qua GitHub contents API; trạng thái issue và pull request thông qua GitHub issues API; các trang về kỹ năng, cấu hình, lưu trữ và công cụ tệp trên docs.ironclaw.com cùng các thẻ gói trên ironclaw.com được lấy trực tiếp. Thẻ phát hành v1.4.0 không được checkout, không có thực thể IronClaw nào được chạy, không có kiểm thử nào trong kho mã được thực thi, không lỗi nào trong bốn lỗi được tái hiện khi phát sinh, và Kunavo chưa kiểm thử IronClaw trong runtime. Mức giá token của Kunavo lấy từ danh mục trực tiếp, và mọi con số đô la đều là phép tính token minh họa.