홈 → 가이드 → OpenCode에서 커스텀 API 쓰기: 설정, Claude, small_model, 실제 비용

OpenCode에서 커스텀 API 쓰기: 설정, Claude, small_model, 실제 비용

OpenCode는 공급자를 opencode.json에서 읽으므로 설정은 파일 하나면 됩니다. 놀라웠던 건 청구액이었습니다. 한 단어로만 답하라고 했는데 요청이 2번, 입력 토큰이 12,000개를 넘었습니다. OpenCode 1.19.0을 우리 게이트웨이에서 세 모델로 돌려 토큰이 어디에 쓰이는지, 어떻게 줄이는지 확인했습니다.

설정 파일

다음 내용을 ~/.config/opencode/opencode.json(또는 프로젝트의 opencode.json)에 넣습니다:

{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "apiclan": {
      "npm": "@ai-sdk/openai-compatible",
      "name": "APICLAN",
      "options": {
        "baseURL": "https://apiclan.us/v1",
        "apiKey": "{env:APICLAN_GPT_KEY}"
      },
      "models": {
        "gpt-6-astra": {},
        "gpt-6.1-sol": {}
      }
    }
  }
}
  1. 콘솔에서 키를 만들고 환경 변수(예: APICLAN_GPT_KEY)로 설정합니다.
  2. models에는 그 키가 속한 그룹의 모델만 적습니다. 이 게이트웨이의 키는 각각 하나의 그룹에 속하므로 GPT, DeepSeek, Claude는 공급자 항목과 키를 따로 둬야 합니다.
  3. opencode를 실행하고 /models를 입력해 APICLAN → gpt-6-astra를 고릅니다. 스크립트에서는 opencode run -m apiclan/gpt-6-astra "..."를 씁니다.
baseURL결과
https://apiclan.us/v1✓
https://apiclan.us✗ 404 Not Found

@ai-sdk/openai-compatible은 baseURL 뒤에 /chat/completions만 붙이므로 /v1은 직접 써야 합니다. 없으면 OpenCode는 Not Found만 내고 멈춥니다.

Claude 추가

provider 안에 Anthropic 패키지를 쓰는 공급자를 하나 더 추가하고 Claude 그룹 키를 넣습니다:

"claude": {
  "npm": "@ai-sdk/anthropic",
  "name": "APICLAN Claude",
  "options": {
    "baseURL": "https://apiclan.us/v1",
    "apiKey": "{env:APICLAN_CLAUDE_KEY}"
  },
  "models": { "claude-fable-5-1": {} }
}

여기서도 baseURL은 /v1로 끝나야 합니다. Anthropic 패키지는 /messages만 붙이며, https://apiclan.us만 넣었을 때 실측에서 404가 났습니다. ANTHROPIC_BASE_URL에 /v1을 넣으면 안 되는 Claude Code와는 반대입니다.

짧은 답변 하나의 비용

빈 프로젝트에서 OpenCode에 「Reply with just OK」라고 요청했습니다. 모든 모델이 요청을 두 번 보냈습니다. 하나는 세션 제목 생성, 다른 하나는 OpenCode의 시스템 프롬프트와 도구 정의가 담긴 실제 답변입니다.

모델요청 수입력 토큰(제목 + 답변)소요 시간비용
gpt-6-astra24,640 + 7,67820.5 s$0.050
deepseek-v4-pro2528 + 5,70834.1 s$0.005
deepseek-v4.1-flash2529 + 3,02721.8 s$0.0006

OpenCode는 GPT 모델에 DeepSeek(약 3,000)보다 훨씬 긴 시스템 프롬프트(약 7,700토큰)를 보내고, GPT에서는 제목 생성에만 4,640토큰을 썼습니다. 그래서 같은 「OK」가 gpt-6-astra에서는 deepseek-v4.1-flash의 약 77배 비용이 들었습니다. 2026년 10월 12일, OpenCode 1.19.0으로 측정했고 비용은 우리 게이트웨이의 실제 과금액입니다.

small_model로 부가 비용 줄이기

OpenCode는 세션 제목 같은 부수 작업에 small_model을 씁니다. 저렴한 모델을 별도 공급자에 두고 지정하세요:

"small_model": "apiclan-ds/deepseek-v4.1-flash",
"provider": {
  "apiclan": { ... },
  "apiclan-ds": {
    "npm": "@ai-sdk/openai-compatible",
    "options": {
      "baseURL": "https://apiclan.us/v1",
      "apiKey": "{env:APICLAN_DS_KEY}"
    },
    "models": { "deepseek-v4.1-flash": {} }
  }
}

주 모델이 gpt-6-astra일 때 제목 요청은 $0.0187에서 $0.00003으로, 한 단어 대화 전체는 $0.050에서 $0.031로 줄었습니다. 새 세션마다 38% 절약되며 답변 내용은 그대로입니다.

작은 코딩 과제

모든 모델에 같은 과제를 줬습니다. fizzbuzz.py와 pytest 테스트를 작성하고 명령은 실행하지 않기. 그다음 각 함수를 1~30의 정답과 대조했습니다.

모델요청 수소요 시간비용정답테스트 assert 수
gpt-6-astra340 s$0.069✓2
deepseek-v4-pro361 s$0.008✓7
deepseek-v4.1-flash325 s$0.0011✓7

세 모델 모두 요청 세 번으로 올바른 코드를 작성했습니다. deepseek-v4.1-flash가 가장 빨랐고 비용은 gpt-6-astra의 약 1/60이었으며, 두 DeepSeek 모델은 테스트도 더 꼼꼼했습니다. deepseek-v4-pro는 단계마다 먼저 추론해서 가장 느렸습니다. 소요 시간에는 OpenCode 자체의 몇 초 기동 시간이 포함됩니다.

자주 나오는 오류

다른 코딩 도구: Cline에서 커스텀 API 쓰기 · Codex에서 커스텀 API 쓰기.

사용 시작하기

구독 없음, 월 최소 사용액 없음, 영업 통화 없음. USDT로 충전하고 쓴 만큼만 지불하세요 — 1 USDT는 2 크레딧의 API 잔액이 됩니다.

30초 빠른 시작 읽기

언어: English · 简体中文 · 繁體中文 · 日本語 · 한국어 · Deutsch · Français · Español · Türkçe · Português · Italiano · Bahasa Indonesia · Tiếng Việt · Bahasa Melayu · Polski · Čeština · فارسی · Русский

이 페이지의 가격은 실제 과금 데이터에서 자동으로 채워집니다. 제3자 조건은 해당 업체의 공개 문서에서 인용했습니다.