APIMaster.ai

OpenCode с APIMaster.ai

Добавьте APIMaster в качестве провайдера, совместимого с OpenAI, в OpenCode Desktop, с опциональными уровнями Reasoning через opencode.jsonc.

OpenCode Desktop — это графический клиент для OpenCode (сейчас в бета-версии): локальные сессии агентов, редактирование файлов и выполнение shell-команд. APIMaster.ai совместим с OpenAI — добавьте его через Настройки → Провайдеры → Пользовательский провайдер.

Сначала получите API-ключ. Используйте заглушку your_apimaster_key ниже; на скриншотах ключи скрыты.


Предварительные требования

  1. OpenCode Desktop установлен с opencode.ai/download.
    • Windows: opencode-desktop-win-x64.exe
    • macOS: brew install --cask opencode-desktop или .dmg
    • Linux: .deb / .rpm / AppImage
  2. API-ключ APIMaster из консоли.

Шаг 1 — Открыть Провайдеров

  1. Запустите OpenCode Desktop и откройте рабочее пространство.
  2. Нажмите на значок шестеренки (внизу слева).
  3. Выберите Провайдеры на боковой панели.
  4. Прокрутите до Пользовательский провайдер (Добавить провайдера, совместимого с OpenAI, по базовому URL).
  5. Нажмите + Подключить.

Настройки → Провайдеры → Пользовательский провайдер


Шаг 2 — Форма пользовательского провайдера

Поле Значение
ID провайдера apimaster
Отображаемое имя APIMaster.ai
Базовый URL https://apimaster.ai/v1
API-ключ Ваш ключ APIMaster

Форма пользовательского провайдера

Оставьте Заголовки пустыми, если вы не аутентифицируетесь только через заголовки.


Шаг 3 — Добавить модели и Отправить

На следующем экране сопоставьте модели (слева = метка в OpenCode, справа = id модели, отправляемый в APIMaster — обычно одинаковые):

Слева Справа
gpt-5.4 gpt-5.4
claude-sonnet-4-6 claude-sonnet-4-6
  1. Нажмите + Добавить модель для добавления строк.
  2. Нажмите Отправить.

Добавить модели и Отправить

Выбирайте id из маркетплейса. Избегайте моделей только для изображений (например, gpt-image-2) для чата с агентом.


Шаг 4 — Выбрать модель

  1. Начните или откройте сессию.
  2. Откройте выпадающий список моделей под полем ввода.
  3. В разделе APIMaster.ai выберите модель (например, claude-sonnet-4-6).

Выбор модели


Шаг 5 — Тест

Отправьте hello или небольшое задание по коду. Обычный ответ Ассистента (редактирование файлов / shell) означает, что APIMaster подключен.

Тест чата


Расширенная настройка: opencode.jsonc и Reasoning

Описанного выше интерфейса достаточно для быстрого старта. Чтобы настроить уровни Reasoning / усилия мышления (low, high, max, …) для одного и того же id модели, отредактируйте opencode.jsonc.

Расположение файла конфигурации

ОС Путь
macOS / Linux ~/.config/opencode/opencode.jsonc
Windows C:\Users\<имя_пользователя>\.config\opencode\opencode.jsonc

Создайте файл, если его нет. Перезапустите OpenCode Desktop или начните новую сессию после сохранения.

API-ключ (не помещайте в jsonc)

Не храните ваш API-ключ в opencode.jsonc.

Используйте:

  • /connect в терминале, или
  • Настройки → Провайдеры → Подключить провайдера (как на Шагах 1–2 выше).

Храните секреты в хранилище аутентификации OpenCode; jsonc определяет только провайдера, модели и варианты Reasoning.

Провайдер APIMaster в jsonc

ID провайдера: apimaster. npm-пакет: @ai-sdk/openai-compatible.

baseURL должен быть:

https://apimaster.ai/v1

Не https://apimaster.ai/ — OpenCode добавляет /chat/completions. Без /v1 вы получите https://apimaster.ai/chat/completions404 Not Found.

Полный пример с вариантами Reasoning — скачайте и замените конфиг OpenCode:

  1. Скачайте opencode.jsonc
  2. Замените (или сохраните как):
    • macOS / Linux: ~/.config/opencode/opencode.jsonc
    • Windows: C:\Users\<имя_пользователя>\.config\opencode\opencode.jsonc
  3. Настройте API-ключ через /connect или интерфейс (никогда в jsonc).
  4. Перезапустите OpenCode Desktop или начните новую сессию.

Сделайте резервную копию существующего файла перед заменой или объедините только блок provider.apimaster.

Минимальная структура:

{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "apimaster": {
      "name": "APIMaster.ai",
      "npm": "@ai-sdk/openai-compatible",
      "options": { "baseURL": "https://apimaster.ai/v1" },
      "models": {
        "gpt-5.4": {
          "name": "gpt-5.4",
          "variants": {
            "low": { "reasoningEffort": "low" },
            "high": { "reasoningEffort": "high" }
          }
        }
      }
    }
  }
}

Принципы Reasoning

  • variants = несколько уровней Reasoning для одного id модели в интерфейсе.
  • Для API, совместимых с OpenAI, OpenCode преобразует reasoningEffortreasoning_effort в теле запроса.
  • Имена вариантов должны соответствовать фактическому параметру (high"reasoningEffort": "high").
  • Каждая модель поддерживает разные уровни — настраивайте в соответствии с официальной документацией; скрытого переназначения нет.

Уровни Reasoning по моделям

Модель Варианты Reasoning Примечания
gpt-5.4 low, medium, high, xhigh GPT reasoning
gpt-5.5 low, medium, high, xhigh GPT reasoning
deepseek-v4-flash high, max DeepSeek thinking (рекомендуется)
deepseek-v4-pro high, max DeepSeek thinking (рекомендуется)
claude-sonnet-4-6 low, medium, high, max Claude Sonnet effort
claude-opus-4-7 low, medium, high, xhigh, max Claude Opus effort
claude-opus-4-8 low, medium, high, xhigh, max Claude Opus effort
claude-haiku-4-5 нет Нет неподтвержденных уровней effort
minimax-m3 нет Нет неподтвержденных уровней effort

Полный файл см. в opencode.jsonc.

Переключение Reasoning в OpenCode

  1. Сохраните opencode.jsonc, затем перезапустите или начните новую сессию.
  2. Используйте выпадающий список модели / Reasoning (например, gpt-5.4 / high).
  3. Если поддерживается в вашей сборке: Ctrl + Shift + D циклически переключает уровни Reasoning.

Устранение неполадок

Настройка через интерфейс

Проблема Решение
401 Проверьте ключ; смените, если был раскрыт
Модель не найдена Базовый URL должен быть https://apimaster.ai/v1; id модели должен совпадать с маркетплейсом
Нет моделей APIMaster Отредактируйте провайдера в Настройках → добавьте сопоставления → Отправить
Медленно / таймаут Попробуйте другую модель; используйте Тестер API-ключей

Reasoning / jsonc

Почему только high и max для DeepSeek?
Официальное усилие мышления, совместимое с OpenAI для DeepSeek, — это high и max. Избегайте low / medium / xhigh, которые могут непредсказуемо переназначаться.

Почему max для Claude Sonnet, а не xhigh?
Высший уровень Sonnet — max; xhigh предназначен для Opus (claude-opus-4-7 / claude-opus-4-8).

Почему нет вариантов для Haiku или MiniMax M3?
Без задокументированных значений reasoningEffort пропустите варианты — модель все равно работает; в интерфейсе просто не будут отображаться подуровни Reasoning.

Все еще получаете 400?

  1. baseURL = https://apimaster.ai/v1 (не корень сайта).
  2. Написание id модели соответствует маркетплейсу.
  3. Ключ настроен через /connect или интерфейс.
  4. Временно удалите variants — если обычные запросы работают, выбранный reasoning_effort может не поддерживаться для этой модели.

Безопасность

  • Никогда не делитесь ключами в чате или на неотредактированных скриншотах.
  • Меняйте ключи, которые появились на скриншотах или в логах.
  • OpenCode может читать/записывать файлы и выполнять shell-команды — используйте только доверенные рабочие пространства.

Контрольный список

  • OpenCode Desktop установлен
  • Пользовательский провайдер подключен или apimaster в opencode.jsonc
  • Базовый URL / baseURL = https://apimaster.ai/v1 (не https://apimaster.ai/)
  • API-ключ через /connect или интерфейс (не в jsonc)
  • Сопоставлена хотя бы одна чат-модель
  • (Опционально) Варианты Reasoning соответствуют официальным уровням
  • Тестовое сообщение успешно отправлено

Краткий итог

  • Ключи: baseURL (https://apimaster.ai/v1), id модели, API-ключ (/connect или интерфейс), опциональные варианты Reasoning.
  • Имена вариантов = фактические значения reasoning_effort.
  • Настраивайте уровни для каждой модели; пропускайте варианты, если они не поддерживаются (Haiku, MiniMax M3).

Смотрите также