Главная → Руководства → OpenCode со своим API: настройка, Claude, small_model и реальные затраты

OpenCode со своим API: настройка, Claude, small_model и реальные затраты

OpenCode берёт провайдеров из opencode.json, так что настройка — это один файл. Удивил нас счёт: просьба ответить одним словом породила два запроса и больше 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. Это обратно Claude Code, где ANTHROPIC_BASE_URL не должен содержать /v1.

Сколько стоит короткий ответ

В пустом проекте мы попросили 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 гораздо более длинный системный промпт (около 7700 токенов), чем DeepSeek (около 3000), а один только запрос названия на GPT съел 4640 токенов. Поэтому одно и то же «OK» на gpt-6-astra обошлось примерно в 77 раз дороже, чем на deepseek-v4.1-flash. Тест от 12 октября 2026 года, 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.

МодельЗапросыОбщее времяСтоимостьВерноПроверок в тестах
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 оказался самым быстрым и стоил примерно 1/60 от gpt-6-astra; обе модели 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 · فارسی · Русский

Цены на этой странице подставляются автоматически из реальных данных биллинга. Условия третьих сторон процитированы из их документации.