OpenCode với UberLLM: một nhà cung cấp rẻ hơn trong opencode.json
Thêm một nhà cung cấp "uberllm" vào ~/.config/opencode/opencode.json với npm "@ai-sdk/openai-compatible", baseURL https://api.uberllm.dev/v1 và các model bạn muốn, cung cấp cho nó key UberLLM của bạn (biến môi trường hoặc /connect), sau đó chọn uberllm/<model id> với /models.
Các bước
- Tạo một khóa trên trang khóa của bạn và nạp tiền.
- Mở (hoặc tạo)
~/.config/opencode/opencode.json. Chỉ dành cho một dự án, hãy dùngopencode.jsontrong thư mục dự án thay vào đó. - Thêm nhà cung cấp:
{
"$schema": "https://opencode.ai/config.json",
"provider": {
"uberllm": {
"npm": "@ai-sdk/openai-compatible",
"name": "UberLLM",
"options": {
"baseURL": "https://api.uberllm.dev/v1",
"apiKey": "{env:UBERLLM_API_KEY}"
},
"models": {
"moonshotai/kimi-k3": { "name": "moonshotai/kimi-k3" },
"deepseek/deepseek-v4.1-flash": { "name": "deepseek/deepseek-v4.1-flash" },
"deepseek/deepseek-v4.1-flash": { "name": "deepseek/deepseek-v4.1-flash" }
}
}
},
"model": "uberllm/moonshotai/kimi-k3",
"small_model": "uberllm/deepseek/deepseek-v4.1-flash"
}
- Cung cấp khóa cho OpenCode. Hoặc đặt biến mà cấu hình đọc:
export UBERLLM_API_KEY=ull_your_key
hoặc chạy /connect bên trong OpenCode, cuộn đến Other, nhập uberllm làm id nhà cung cấp và dán khóa. Id phải khớp chính xác với tên trong provider. Nếu bạn dùng /connect, bạn có thể xóa dòng apiKey.
- Khởi động
opencode, gõ/modelsvà chọn một trong các mô hình UberLLM.
Tại sao ID mô hình có hai dấu gạch chéo
OpenCode đặt tên một mô hình là <provider>/<model>, và các ID của UberLLM đã chứa một dấu gạch chéo (deepseek/…). OpenCode chỉ tách theo dấu gạch chéo đầu tiên, nên uberllm/moonshotai/kimi-k3 có nghĩa là nhà cung cấp uberllm, mô hình moonshotai/kimi-k3. Khóa dưới models phải là ID của UberLLM chính xác như nó hiển thị trên uberllm.dev/models](uberllm.dev/models](/models)).
Cho OpenCode biết kích thước ngữ cảnh
OpenCode sử dụng kích thước ngữ cảnh để biết khi nào cần nén một phiên dài. Thêm một limit vào mỗi mô hình, sử dụng các số trên trang mô hình của nó:
"moonshotai/kimi-k3": {
"name": "moonshotai/kimi-k3",
"limit": { "context": 1000000, "output": 64000 }
}
Các số trên là một ví dụ; hãy sao chép các số thực cho mô hình bạn chọn.
Dùng gói đúng
Giữ "npm": "@ai-sdk/openai-compatible". Gói đó gọi /v1/chat/completions, lộ trình mà mọi mô hình UberLLM đều được kiểm thử trên đó.
Khắc phục sự cố
ProviderModelNotFoundError: mô hình bạn chọn không có trong danh sáchmodels, hoặc khóa ở đó khác với id trong"model". Hãy thêm nó với id UberLLM chính xác.- 401 / no answer:
{env:UBERLLM_API_KEY}trở nên trống khi biến không được đặt trong shell đã khởi động OpenCode. Hãy xuất nó, hoặc sử dụng/connect. /connectkey not used: id nhà cung cấp bạn đã nhập ở đó không phải làuberllm. Hãy chạyopencode auth listđể xem những gì đã được lưu trữ.- 404: hãy kiểm tra
baseURLkết thúc bằng/v1, và gói npm là gói tương thích với openai. - 402 insufficient credits: hãy thêm tín dụng trên trang tín dụng.
Đọc thêm
- Trang tham khảo: Tài liệu OpenCode
- Thiết lập Kilo Code (cùng định dạng cấu hình)
- Claude Code trên UberLLM
- API Claude rẻ nhất