Quay lại blog

Công cụ & tích hợpHướng dẫn

Kết nối OpenHands với CheapTokens: model, Base URL, key

Điền ba trường trong OpenHands Settings > LLM (Advanced) để chạy agent trên một model của CheapTokens, và học cách đọc ba lỗi thường gặp.

Bởi CheapTokens TeamĐã xuất bản 5 phút đọc

Các trường cài đặt OpenHands với Base URL và model id của CheapTokens
Trên trang này
  1. Trước khi mở Settings
  2. Ba trường
  3. Kiểm tra các thành phần bên ngoài OpenHands trước
  4. Một trường sai trông như thế nào
  5. Một phiên tốn bao nhiêu
  6. Đang dùng OpenHands với nhà cung cấp khác?

Bạn có thể chạy OpenHands trên một model của CheapTokens bằng cách điền ba trường trong Settings > LLM sau khi bật Advanced: Custom Model (openai/deepseek-ai/DeepSeek-V4-Flash-0731), Base URL (https://api.cheaptokens.dev/v1) và API Key. Chỉ vậy là xong phần thiết lập. Phần còn lại của trang này giải thích ý nghĩa từng trường và trông ra sao khi một trong số chúng bị sai.

Tên các trường và quy tắc chuỗi model lấy từ trang tài liệu OpenHands về các endpoint tương thích OpenAI (kiểm tra ngày 8 tháng 11 năm 2026; trang không có ngày hay phiên bản). Bản phát hành OpenHands mới nhất tại thời điểm đó là v1.37.0 (6 tháng 11 năm 2026). Nếu nhãn trong bản build của bạn trông hơi khác, hãy dựa vào vị trí: model, base URL, key.

Trước khi mở Settings#

Ba thứ có sẵn sẽ giúp bạn khỏi phải làm lại một vòng: key, model id và quyền truy cập Settings.

Danh sách kiểm tra

Sẵn sàng cấu hình chưa?

Mới làm quen với key và base URL? What base_url is and how to switch giải thích trong vài phút, còn list models with GET /v1/models chỉ cách tự tra một id.

Ba trường#

Mở Settings > LLM và bật Advanced. Trường Base URL nằm dưới nút gạt Advanced.

The three values for OpenHands Settings > LLM (Advanced)
Diagram of the values, not a screenshot: what goes into each of the three fields. The key is a placeholder.

Tài liệu mô tả quy tắc model như sau: Custom Model là openai/ theo sau là tên model, và nếu bạn đi qua một proxy có tiền tố riêng thì openai/<proxy-prefix>/<model-name>. Phần sau openai/ là tên model. Với CheapTokens, id là deepseek-ai/DeepSeek-V4-Flash-0731, nên chuỗi đầy đủ là openai/deepseek-ai/DeepSeek-V4-Flash-0731.

Trường Giá trị
Custom Model openai/deepseek-ai/DeepSeek-V4-Flash-0731
Base URL https://api.cheaptokens.dev/v1
API Key key CheapTokens của bạn

Vì sao chọn model này cho một agent? DeepSeek-V4-Flash có cửa sổ ngữ cảnh 380K và tối đa 32.768 token đầu ra mỗi câu trả lời, cùng một mức giá ở mọi thời điểm, nên một phiên dài không bị đắt hơn vào giờ cao điểm. Một coding agent gửi lại rất nhiều ngữ cảnh ở mỗi bước, và đó chính là mục đích của cửa sổ này.

Thích GLM hơn? Dùng openai/zai-org/GLM-5.3-Flash (ngữ cảnh 390K, tối đa 8.192 token đầu ra) trong cùng trường đó và không đổi gì khác. Cùng số dư, cùng key, cùng Base URL.

Kiểm tra các thành phần bên ngoài OpenHands trước#

Trước khi đổ lỗi cho agent, hãy gửi một request với đúng URL, key và id đó. Nếu cách này chạy được, mọi vấn đề còn lại nằm ở cách bạn gõ các trường.

bash
curl https://api.cheaptokens.dev/v1/chat/completions \
  -H "Authorization: Bearer $CHEAPTOKENS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"deepseek-ai/DeepSeek-V4-Flash-0731","messages":[{"role":"user","content":"Say ready"}],"max_tokens":20}'

Để ý thứ còn thiếu: không có openai/ trong giá trị model. Tiền tố đó dành cho OpenHands, không dành cho API. Phản hồi có một khối usage với prompt_tokens và completion_tokens — đúng hai con số mà sau này bạn sẽ thấy cộng dồn qua một phiên agent.

So sánh

Chuỗi model: một tiền tố, hai kết quả

Chỉ id

deepseek-ai/DeepSeek-V4-Flash-0731 — dạng dùng cho curl và API.

Có tiền tố

openai/deepseek-ai/DeepSeek-V4-Flash-0731 — dạng dùng cho trường Custom Model.

Một trường sai trông như thế nào#

Mỗi trường trong ba trường đều có thể là nguyên nhân:

Where each error points: key, Base URL, model string
Symptom to field: 401 points to the key, 404 to the Base URL or model string.
  • Sai key. API trả về 401 — key bị thiếu, gõ nhầm, hoặc có dấu cách thừa ở cuối do copy.
  • Sai Base URL. Request đi đến sai chỗ và bạn nhận 404 hoặc lỗi kết nối. Địa chỉ phải kết thúc bằng /v1 và không chứa đường dẫn thừa.
  • Sai chuỗi model. Hoặc thiếu tiền tố, hoặc id sau đó không phải id đầy đủ (API chỉ chấp nhận gateway_id đầy đủ, không nhận id rút gọn như deepseek-v4-flash-0731).

Lý giải đầy đủ về 401 so với 404 nằm trong API 401 or 404: wrong key, base URL or model id.

Tự mình thử xemThử nhé: key đúng, URL đúng, agent vẫn lỗi ngay bước đầu tiên. Bạn mở trường nào?Hiện đáp án

Trường Custom Model. Kiểm tra rằng nó bắt đầu bằng openai/ và id sau đó được viết đúng y như trong bảng trên. Key và URL là những thứ dễ xác minh bằng curl.

Một phiên tốn bao nhiêu#

Một agent tính tiền cho toàn bộ ngữ cảnh ở mỗi bước, không phải cho tác vụ một dòng của bạn. Giả sử OpenHands xử lý một bug trong 40 bước, với khoảng 30.000 token gửi vào và 1.500 token ghi ra mỗi bước. Một bước trên DeepSeek-V4-Flash là $0.0006; bốn mươi bước được tính bên dưới, cạnh các model khác và OpenRouter.

Mô hình Mỗi yêu cầu 40 yêu cầu OpenRouter, 40 yêu cầu
GLM-5.3-Flash $0.00066 $0.0264 $0.0452
DeepSeek-V4-Flash $0.0006 $0.024 $0.0924
MiniMax-M2.7 $0.0017 $0.069 $0.828

30.000 token đầu vào và 1.500 token đầu ra mỗi yêu cầu. Giá trên 1 triệu token là giá hiện hành và thay đổi cùng với biểu phí của chúng tôi; cột OpenRouter hiển thị giá tham chiếu cho cùng khối lượng công việc.

Tổng cộng, khi tính cả đầu vào và đầu ra, DeepSeek-V4-Flash rẻ hơn OpenRouter cho khối lượng công việc này. Các giả định là của bạn để thay đổi: một bản sửa ngắn có thể mất 10 bước, một lần refactor lớn mất 100. Giá hiện tại nằm trên trang giá, và trang model là cheap DeepSeek.

Đang dùng OpenHands với nhà cung cấp khác?#

Vậy thì bạn chỉ cần đổi ba giá trị: Custom Model, Base URL, API Key. Không có gì khác trong dự án thay đổi, và bạn có thể chuyển lại theo cùng cách. Hướng dẫn kết nối từng bước cho chính API nằm trong tài liệu CheapTokens; một thiết lập tương tự trong công cụ khác là connect Aider.