Quay lại blog

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

Cách kết nối OpenCode với CheapTokens (opencode.json)

Thêm CheapTokens vào OpenCode như một nhà cung cấp tương thích OpenAI: /connect cho khóa, opencode.json cho các mô hình, /models để kiểm tra.

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

OpenCode được kết nối với API CheapTokens thông qua một nhà cung cấp tùy chỉnh trong opencode.json
Trên trang này
  1. Những gì bạn cần
  2. Bước 1. Lưu khóa bằng /connect
  3. Bước 2. Mô tả nhà cung cấp trong opencode.json
  4. Thay vào đó, giữ khóa trong một biến môi trường (tùy chọn)
  5. Bước 3. Kiểm tra xem nó có hoạt động không
  6. Nên chọn mô hình CheapTokens nào
  7. Nếu nó không hoạt động
  8. Các bước tiếp theo

Để kết nối OpenCode với CheapTokens, hãy thêm một nhà cung cấp tương thích OpenAI tùy chỉnh: lưu khóa API của bạn bằng /connect (ID nhà cung cấp cheaptokens), sau đó mô tả nhà cung cấp trong opencode.json với URL cơ sở https://api.cheaptokens.dev/v1. Sau đó, các mô hình CheapTokens của bạn sẽ xuất hiện trong /models.

Hướng dẫn này dựa theo tài liệu về nhà cung cấp của OpenCode (trang cập nhật ngày 20 tháng 10 năm 2026; kiểm tra ngày 22 tháng 10 năm 2026). Cách làm tương tự cũng áp dụng cho các công cụ khác trong loạt bài này: Cline, Aider và Kilo Code.

Những gì bạn cần#

  • OpenCode đã được cài đặt (xem tài liệu của nó cho nền tảng của bạn).
  • Một khóa API CheapTokens. Hãy tạo một khóa trong tài khoản của bạn và nạp tiền vào số dư; một số dư dùng cho tất cả các mô hình. Những điều cơ bản có trong tài liệu CheapTokens.
  • Các thông tin API:
    • URL cơ sở: https://api.cheaptokens.dev/v1
    • khả năng tương thích: OpenAI Chat Completions và Anthropic Messages
    • ID mô hình dùng bên dưới: deepseek-ai/DeepSeek-V4-Flash-0731 (ngữ cảnh 380K, tối đa 32.768 token đầu ra). ID mô hình được liệt kê trong tài liệu CheapTokens: tên khác nhau giữa các nhà cung cấp, nên hãy sao chép ID từ đó.

Bước 1. Lưu khóa bằng /connect#

  1. Khởi động OpenCode trong dự án của bạn và chạy /connect.
  2. Cuộn đến Other.
  3. Nhập một ID nhà cung cấp duy nhất: cheaptokens.
  4. Dán khóa API CheapTokens của bạn.

Bước này chỉ lưu thông tin xác thực. OpenCode vẫn chưa biết địa chỉ hoặc các mô hình của nhà cung cấp: đó là việc mà opencode.json dùng để làm.

Bước 2. Mô tả nhà cung cấp trong opencode.json#

Tạo hoặc chỉnh sửa opencode.json và thêm nhà cung cấp. ID nhà cung cấp trong provider phải khớp với ID bạn đã nhập trong /connect.

json
{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "cheaptokens": {
      "npm": "@ai-sdk/openai-compatible",
      "name": "CheapTokens",
      "options": {
        "baseURL": "https://api.cheaptokens.dev/v1"
      },
      "models": {
        "deepseek-ai/DeepSeek-V4-Flash-0731": {
          "name": "DeepSeek-V4-Flash",
          "limit": {
            "context": 380000,
            "output": 32768
          }
        }
      }
    }
  }
}

Vai trò của từng phần:

  • npm — @ai-sdk/openai-compatible là gói dành cho các endpoint sử dụng /v1/chat/completions, đúng như những gì CheapTokens cung cấp. (OpenCode dùng @ai-sdk/openai cho các endpoint được xây dựng trên /v1/responses.)
  • name — nhãn hiển thị trong giao diện OpenCode.
  • options.baseURL — địa chỉ API CheapTokens.
  • models — được đánh khóa theo ID mô hình; name bên trong là tên hiển thị.
  • limit.context / limit.output — tùy chọn; chúng cho OpenCode biết cửa sổ ngữ cảnh của mô hình và độ dài câu trả lời tối đa.

Thay vào đó, giữ khóa trong một biến môi trường (tùy chọn)#

Nếu bạn không muốn giữ khóa trong kho thông tin xác thực của OpenCode, hãy thêm apiKey vào options với cú pháp {env:VARIABLE} mà tài liệu khuyến nghị:

json
"options": {
  "baseURL": "https://api.cheaptokens.dev/v1",
  "apiKey": "{env:CHEAPTOKENS_API_KEY}"
}

Sau đó export CHEAPTOKENS_API_KEY trong shell của bạn. Không commit khóa thật vào kho lưu trữ. Nếu bạn mới làm quen với khóa, hãy đọc API key là gì và cách lưu trữ an toàn.

Bước 3. Kiểm tra xem nó có hoạt động không#

Chạy /models và chọn DeepSeek-V4-Flash trong nhà cung cấp CheapTokens. Sau đó gửi một prompt ngắn, ví dụ: "Tóm tắt kho lưu trữ này làm gì trong ba câu." Một câu trả lời bình thường nghĩa là URL cơ sở, khóa và ID mô hình đều đúng.

Nên chọn mô hình CheapTokens nào#

Thêm bao nhiêu mục vào models cũng được — mỗi mục là một khối như trên, với ID riêng của nó.

Mô hình ID mô hình Ngữ cảnh Đầu ra tối đa Phù hợp cho
DeepSeek-V4-Flash deepseek-ai/DeepSeek-V4-Flash-0731 380K 32.768 Vòng lặp lập trình agentic: câu trả lời dài, một mức giá vào bất kỳ thời điểm nào trong ngày
GLM-5.3-Flash zai-org/GLM-5.3-Flash 390K 8.192 Lập trình đa dụng với ngữ cảnh lớn
MiniMax-M2.7 MiniMaxAI/MiniMax-M2.7 180K 8.192 Giá thấp nhất so với tham chiếu OpenRouter

Đối với một phiên OpenCode, vốn gửi nhiều yêu cầu trong một vòng lặp, DeepSeek-V4-Flash là mặc định tốt: đầu ra rẻ hơn giá tham chiếu của OpenRouter, câu trả lời có thể đạt 32.768 token, và giá không có giờ cao điểm. MiniMax-M2.7 cũng rẻ hơn giá tham chiếu của OpenRouter ở cả đầu vào và đầu ra. Đầu ra của GLM-5.3-Flash cũng rẻ hơn giá tham chiếu của OpenRouter. Giá hiện tại (kiểm tra trực tiếp, không có số liệu nào bị lỗi thời):

Mô hình Ngữ cảnh Đầu vào $/1M Đầu ra $/1M OpenRouter vào OpenRouter ra
GLM-5.3-Flash reasoning 390K $0.02 $0.04 $0.0413 $0.0758
DeepSeek-V4-Flash 380K $0.015 $0.10 $0.0475 $0.1568
MiniMax-M2.7 180K $0.05 $0.15 $0.30 $1.20

Giá tính bằng USD cho mỗi 1 triệu token. Các số liệu của OpenRouter được hiển thị để so sánh và có thể thay đổi.

Để ước tính một phiên làm việc, ví dụ 20 yêu cầu với 100.000 token đầu vào và 5.000 token đầu ra mỗi yêu cầu:

Mô hình Chi phí OpenRouter
GLM-5.3-Flash $0.044 $0.0902
DeepSeek-V4-Flash $0.04 $0.111
MiniMax-M2.7 $0.115 $0.72

Tổng cộng 2.000.000 token đầu vào và 100.000 token đầu ra. 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.

Xem tất cả giá và trang DeepSeek để biết thêm.

Nếu nó không hoạt động#

  • Nhà cung cấp hoặc các mô hình bị thiếu trong /models. Kiểm tra rằng opencode.json là JSON hợp lệ (không có dấu phẩy thừa) và khóa dưới provider đúng chính xác là ID bạn đã nhập trong /connect. Nếu cả hai đều đúng, hãy khởi động lại OpenCode.
  • 401 / lỗi xác thực. Chạy lại /connect và dán khóa lần nữa, hoặc kiểm tra biến CHEAPTOKENS_API_KEY trong shell nơi OpenCode khởi động.
  • 404 hoặc "model not found". ID mô hình trong models phải khớp với ID CheapTokens từng ký tự, bao gồm cả tiền tố nhà cung cấp (deepseek-ai/…).
  • Lỗi kết nối. URL cơ sở phải kết thúc bằng /v1 và không chứa đường dẫn thừa. Xem các lỗi kết nối thường gặp.
  • "Not enough tokens". Hãy nạp thêm tiền vào số dư; xem ý nghĩa của lỗi này.

Các bước tiếp theo#

Bây giờ bạn đã có OpenCode chạy trên CheapTokens với một số dư cho tất cả các mô hình. Hãy lấy một khóa và thực hiện cuộc gọi đầu tiên từ tài liệu CheapTokens.