UberLLM과 함께하는 OpenCode: opencode.json에서 더 저렴한 제공업체
npm "@ai-sdk/openai-compatible", baseURL https://api.uberllm.dev/v1 및 원하는 모델과 함께 `~/.config/opencode/opencode.json`에 "uberllm" 프로바이더를 추가하고, UberLLM 키(환경 변수 또는 /connect)를 제공한 다음, /models로 uberllm/<model id>을 선택하세요.
단계
- 키 페이지]에서 키를 만들고 크레딧을 추가하세요.
~/.config/opencode/opencode.json를 열거나 (또는 만드세요). 단일 프로젝트의 경우, 대신 프로젝트 폴더에 있는opencode.json를 사용하세요.- 공급자를 추가하세요:
{
"$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"
}
- OpenCode에 키를 제공하세요. 설정이 읽는 변수를 설정하거나:
export UBERLLM_API_KEY=ull_your_key
또는 OpenCode 내에서 /connect를 실행하고, Other로 스크롤하여, 공급자 ID로 uberllm를 입력하고 키를 붙여넣으세요. ID는 provider에 있는 이름과 정확히 일치해야 합니다. /connect를 사용하는 경우, apiKey 줄을 삭제할 수 있습니다.
opencode를 시작하고,/models를 입력한 다음, UberLLM 모델 중 하나를 선택하세요.
모델 ID에 슬래시가 두 개 있는 이유
OpenCode는 모델을 <provider>/<model>으로 명명하며, UberLLM ID에는 이미 슬래시(deepseek/…)가 포함되어 있습니다. OpenCode는 첫 번째 슬래시를 기준으로만 분할하므로, uberllm/moonshotai/kimi-k3는 공급자 uberllm, 모델 moonshotai/kimi-k3를 의미합니다. models 아래의 키는 uberllm.dev/models]에 있는 것과 정확히 동일한 UberLLM ID여야 합니다.
OpenCode에 컨텍스트 크기를 알려주세요
OpenCode는 긴 세션을 언제 압축해야 할지 알기 위해 컨텍스트 크기를 사용합니다. 해당 모델 페이지의 숫자를 사용하여 각 모델에 limit을 추가하세요:
"moonshotai/kimi-k3": {
"name": "moonshotai/kimi-k3",
"limit": { "context": 1000000, "output": 64000 }
}
위 숫자는 예시입니다; 선택한 모델에 대해 실제 숫자를 복사하세요.
올바른 패키지를 사용하세요
"npm": "@ai-sdk/openai-compatible"을 유지하세요. 그 패키지는 /v1/chat/completions을 호출하며, 이는 모든 UberLLM 모델이 테스트되는 경로입니다.
문제 해결
ProviderModelNotFoundError: 선택한 모델이models목록에 없거나,"model"의 ID와 키가 다릅니다. 정확한 UberLLM ID로 추가하세요.- 401 / no answer: OpenCode를 시작한 셸에 변수가 설정되지 않아
{env:UBERLLM_API_KEY}이 비어 있습니다. 변수를 내보내거나/connect를 사용하세요. /connectkey not used: 입력한 공급자 ID가uberllm이 아닙니다.opencode auth list을 실행하여 저장된 내용을 확인하세요.- 404:
baseURL이/v1로 끝나는지, 그리고 npm 패키지가 openai 호환 패키지인지 확인하세요. - 402 insufficient credits: 크레딧 페이지에서 크레딧을 추가하세요.
계속 읽어보세요
- 참고 페이지: OpenCode 문서
- Kilo Code 설정 (동일한 구성 형식)
- UberLLM에서 Claude Code
- 가장 저렴한 Claude API