--- title: Провайдеры description: Использование любого провайдера LLM в OpenCode. --- import config from "../../../../config.mjs" export const console = config.console OpenCode использует [AI SDK](https://ai-sdk.dev/) и [Models.dev](https://models.dev) для поддержки **более 75 поставщиков LLM** и поддерживает запуск локальных моделей. Чтобы добавить провайдера, вам необходимо: 1. Добавьте ключи API для провайдера с помощью команды `/connect`. 2. Настройте провайдера в вашей конфигурации OpenCode. --- ### Реквизиты для входа Когда вы добавляете ключи API провайдера с помощью команды `/connect`, они сохраняются в XX0ГГ. --- ### Конфигурация Вы можете настроить поставщиков через раздел `provider` в вашем OpenCode. конфиг. --- #### Базовый URL Вы можете настроить базовый URL-адрес для любого провайдера, установив параметр `baseURL`. Это полезно при использовании прокси-сервисов или пользовательских конечных точек. ```json title="opencode.json" {6} { "$schema": "https://opencode.ai/config.json", "provider": { "anthropic": { "options": { "baseURL": "https://api.anthropic.com/v1" } } } } ``` --- ## Открытый код Нет OpenCode Zen — это список моделей, предоставленный командой OpenCode, которые были протестировано и проверено на хорошую работу с OpenCode. [Подробнее](/docs/zen). :::tip Если вы новичок, мы рекомендуем начать с OpenCode Zen. ::: 1. Запустите команду `/connect` в TUI, выберите opencode и перейдите по адресу [opencode.ai/auth](https://opencode.ai/auth). ```txt /connect ``` 2. Войдите в систему, добавьте свои платежные данные и скопируйте ключ API. 3. Вставьте свой ключ API. ```txt ┌ API key │ │ └ enter ``` 4. Запустите `/models` в TUI, чтобы просмотреть список рекомендуемых нами моделей. ```txt /models ``` Он работает как любой другой поставщик в OpenCode и его использование совершенно необязательно. --- ## Каталог Рассмотрим некоторых провайдеров подробнее. Если вы хотите добавить провайдера в список, смело открывайте пиар. :::note Не видите здесь провайдера? Разместите пиар. ::: --- ### 302.ИИ 1. Перейдите в консоль 302.AI](https://302.ai/), создайте учетную запись и сгенерируйте ключ API. 2. Запустите команду `/connect` и найдите **302.AI**. ```txt /connect ``` 3. Введите свой ключ API 302.AI. ```txt ┌ API key │ │ └ enter ``` 4. Запустите команду `/models`, чтобы выбрать модель. ```txt /models ``` --- ### Амазонка Чтобы использовать Amazon Bedrock с OpenCode: 1. Перейдите в **Каталог моделей** в консоли Amazon Bedrock и запросите доступ к нужным моделям. :::кончик Вам необходимо иметь доступ к нужной модели в Amazon Bedrock. ::: 2. **Настройте аутентификацию** одним из следующих способов: #### Переменные среды (быстрый старт) Установите одну из этих переменных среды при запуске открытого кода: ```bash # Option 1: Using AWS access keys AWS_ACCESS_KEY_ID=XXX AWS_SECRET_ACCESS_KEY=YYY opencode # Option 2: Using named AWS profile AWS_PROFILE=my-profile opencode # Option 3: Using Bedrock bearer token AWS_BEARER_TOKEN_BEDROCK=XXX opencode ``` Или добавьте их в свой профиль bash: ```bash title="~/.bash_profile" export AWS_PROFILE=my-dev-profile export AWS_REGION=us-east-1 ``` #### Файл конфигурации (рекомендуется) Для конкретной или постоянной конфигурации проекта используйте `opencode.json`: ```json title="opencode.json" { "$schema": "https://opencode.ai/config.json", "provider": { "amazon-bedrock": { "options": { "region": "us-east-1", "profile": "my-aws-profile" } } } } ``` **Доступные варианты:** - `region` – регион AWS (например, `us-east-1`, `eu-west-1`). - `profile` – именованный профиль AWS из `~/.aws/credentials`. - `endpoint` — URL-адрес пользовательской конечной точки для конечных точек VPC (псевдоним для общей опции `baseURL`). :::кончик Параметры файла конфигурации имеют приоритет над переменными среды. ::: #### Дополнительно: конечные точки VPC Если вы используете конечные точки VPC для Bedrock: ```json title="opencode.json" { "$schema": "https://opencode.ai/config.json", "provider": { "amazon-bedrock": { "options": { "region": "us-east-1", "profile": "production", "endpoint": "https://bedrock-runtime.us-east-1.vpce-xxxxx.amazonaws.com" } } } } ``` :::примечание Параметр `endpoint` — это псевдоним общего параметра `baseURL`, использующий терминологию, специфичную для AWS. Если указаны и `endpoint`, и `baseURL`, `endpoint` имеет приоритет. ::: #### Методы аутентификации - **`AWS_ACCESS_KEY_ID` / `AWS_SECRET_ACCESS_KEY`**: создайте пользователя IAM и сгенерируйте ключи доступа в консоли AWS. - **`AWS_PROFILE`**: использовать именованные профили из `~/.aws/credentials`. Сначала настройте `aws configure --profile my-profile` или `aws sso login`. - **`AWS_BEARER_TOKEN_BEDROCK`**: создание долгосрочных ключей API из консоли Amazon Bedrock. - **`AWS_WEB_IDENTITY_TOKEN_FILE`/`AWS_ROLE_ARN`**: для EKS IRSA (роли IAM для учетных записей служб) или других сред Kubernetes с федерацией OIDC. Эти переменные среды автоматически вводятся Kubernetes при использовании аннотаций учетной записи службы. #### Приоритет аутентификации Amazon Bedrock использует следующий приоритет аутентификации: 1. **Токен носителя** — переменная среды `AWS_BEARER_TOKEN_BEDROCK` или токен из команды `/connect`. 2. **Цепочка учетных данных AWS** — профиль, ключи доступа, общие учетные данные, роли IAM, токены веб-идентификации (EKS IRSA), метаданные экземпляра. :::примечание Когда токен-носитель установлен (через `/connect` или `AWS_BEARER_TOKEN_BEDROCK`), он имеет приоритет над всеми методами учетных данных AWS, включая настроенные профили. ::: 3. Запустите команду `/models`, чтобы выбрать нужную модель. ```txt /models ``` :::note Для пользовательских профилей вывода используйте имя модели и поставщика в ключе и задайте для свойства `id` значение arn. Это обеспечивает правильное кэширование: ```json title="opencode.json" { "$schema": "https://opencode.ai/config.json", "provider": { "amazon-bedrock": { // ... "models": { "anthropic-claude-sonnet-4.5": { "id": "arn:aws:bedrock:us-east-1:xxx:application-inference-profile/yyy" } } } } } ``` ::: --- ### антропный 1. После регистрации введите команду `/connect` и выберите Anthropic. ```txt /connect ``` 2. Здесь вы можете выбрать опцию **Claude Pro/Max**, и ваш браузер откроется. и попросите вас пройти аутентификацию. ```txt ┌ Select auth method │ │ Claude Pro/Max │ Create an API Key │ Manually enter API Key └ ``` 3. Теперь все модели Anthropic должны быть доступны при использовании команды `/models`. ```txt /models ``` :::info Использование вашей подписки Claude Pro/Max в OpenCode официально не поддерживается [Anthropic](https://anthropic.com). ::: ##### Использование ключей API Вы также можете выбрать **Создать ключ API**, если у вас нет подписки Pro/Max. Он также откроет ваш браузер и попросит вас войти в Anthropic и предоставит вам код, который вы можете вставить в свой терминал. Или, если у вас уже есть ключ API, вы можете выбрать **Ввести ключ API вручную** и вставить его в свой терминал. --- ### Azure OpenAI :::note Если вы столкнулись с ошибками «Извините, но я не могу помочь с этим запросом», попробуйте изменить фильтр содержимого с **DefaultV2** на **Default** в своем ресурсе Azure. ::: 1. Перейдите на [портал Azure](https://portal.azure.com/) и создайте ресурс **Azure OpenAI**. Вам понадобится: - **Имя ресурса**: оно становится частью вашей конечной точки API (`https://RESOURCE_NAME.openai.azure.com/`). - **Ключ API**: `KEY 1` или `KEY 2` из вашего ресурса. 2. Перейдите в [Azure AI Foundry](https://ai.azure.com/) и разверните модель. :::примечание Для правильной работы открытого кода имя развертывания должно совпадать с именем модели. ::: 3. Запустите команду `/connect` и найдите **Azure**. ```txt /connect ``` 4. Введите свой ключ API. ```txt ┌ API key │ │ └ enter ``` 5. Задайте имя ресурса как переменную среды: ```bash AZURE_RESOURCE_NAME=XXX opencode ``` Или добавьте его в свой профиль bash: ```bash title="~/.bash_profile" export AZURE_RESOURCE_NAME=XXX ``` 6. Запустите команду `/models`, чтобы выбрать развернутую модель. ```txt /models ``` --- ### Когнитивные службы Azure 1. Перейдите на [портал Azure](https://portal.azure.com/) и создайте ресурс **Azure OpenAI**. Вам понадобится: - **Имя ресурса**: оно становится частью вашей конечной точки API (`https://AZURE_COGNITIVE_SERVICES_RESOURCE_NAME.cognitiveservices.azure.com/`). - **Ключ API**: `KEY 1` или `KEY 2` из вашего ресурса. 2. Перейдите в [Azure AI Foundry](https://ai.azure.com/) и разверните модель. :::примечание Для правильной работы открытого кода имя развертывания должно совпадать с именем модели. ::: 3. Запустите команду `/connect` и найдите **Azure Cognitive Services**. ```txt /connect ``` 4. Введите свой ключ API. ```txt ┌ API key │ │ └ enter ``` 5. Задайте имя ресурса как переменную среды: ```bash AZURE_COGNITIVE_SERVICES_RESOURCE_NAME=XXX opencode ``` Или добавьте его в свой профиль bash: ```bash title="~/.bash_profile" export AZURE_COGNITIVE_SERVICES_RESOURCE_NAME=XXX ``` 6. Запустите команду `/models`, чтобы выбрать развернутую модель. ```txt /models ``` --- ### Бассет-хаунд 1. Перейдите в [Baseten](https://app.baseten.co/), создайте учетную запись и сгенерируйте ключ API. 2. Запустите команду `/connect` и найдите **Baseten**. ```txt /connect ``` 3. Введите свой ключ API Baseten. ```txt ┌ API key │ │ └ enter ``` 4. Запустите команду `/models`, чтобы выбрать модель. ```txt /models ``` --- ### Мозги 1. Перейдите в [консоль Cerebras](https://inference.cerebras.ai/), создайте учетную запись и сгенерируйте ключ API. 2. Запустите команду `/connect` и найдите **Cerebras**. ```txt /connect ``` 3. Введите свой ключ API Cerebras. ```txt ┌ API key │ │ └ enter ``` 4. Запустите команду `/models`, чтобы выбрать такую ​​модель, как _Qwen 3 Coder 480B_. ```txt /models ``` --- ### Cloudflare AI-шлюз Cloudflare AI Gateway позволяет вам получать доступ к моделям OpenAI, Anthropic, Workers AI и т. д. через единую конечную точку. Благодаря [Unified Billing](https://developers.cloudflare.com/ai-gateway/features/unified-billing/) вам не нужны отдельные ключи API для каждого провайдера. 1. Перейдите на [панель управления Cloudflare](https://dash.cloudflare.com/), выберите **AI** > **AI Gateway** и создайте новый шлюз. 2. Установите идентификатор своей учетной записи и идентификатор шлюза в качестве переменных среды. ```bash title="~/.bash_profile" export CLOUDFLARE_ACCOUNT_ID=your-32-character-account-id export CLOUDFLARE_GATEWAY_ID=your-gateway-id ``` 3. Запустите команду `/connect` и найдите **Cloudflare AI Gateway**. ```txt /connect ``` 4. Введите свой токен API Cloudflare. ```txt ┌ API key │ │ └ enter ``` Или установите его как переменную среды. ```bash title="~/.bash_profile" export CLOUDFLARE_API_TOKEN=your-api-token ``` 5. Запустите команду `/models`, чтобы выбрать модель. ```txt /models ``` Вы также можете добавлять модели через конфигурацию открытого кода. ```json title="opencode.json" { "$schema": "https://opencode.ai/config.json", "provider": { "cloudflare-ai-gateway": { "models": { "openai/gpt-4o": {}, "anthropic/claude-sonnet-4": {} } } } } ``` --- ### Кора 1. Перейдите в [консоль Cortecs](https://cortecs.ai/), создайте учетную запись и сгенерируйте ключ API. 2. Запустите команду `/connect` и найдите **Cortecs**. ```txt /connect ``` 3. Введите свой ключ API Cortecs. ```txt ┌ API key │ │ └ enter ``` 4. Запустите команду `/models`, чтобы выбрать такую ​​модель, как _Kimi K2 Instruct_. ```txt /models ``` --- ### ДипСик 1. Перейдите в [консоль DeepSeek](https://platform.deepseek.com/), создайте учетную запись и нажмите **Создать новый ключ API**. 2. Запустите команду `/connect` и найдите **DeepSeek**. ```txt /connect ``` 3. Введите свой ключ API DeepSeek. ```txt ┌ API key │ │ └ enter ``` 4. Запустите команду `/models`, чтобы выбрать модель DeepSeek, например _DeepSeek Reasoner_. ```txt /models ``` --- ### Глубокая инфра 1. Перейдите на панель мониторинга Deep Infra](https://deepinfra.com/dash), создайте учетную запись и сгенерируйте ключ API. 2. Запустите команду `/connect` и найдите **Deep Infra**. ```txt /connect ``` 3. Введите свой ключ API Deep Infra. ```txt ┌ API key │ │ └ enter ``` 4. Запустите команду `/models`, чтобы выбрать модель. ```txt /models ``` --- ### Прошивка 1. Перейдите на [панель встроенного ПО](https://app.firmware.ai/signup), создайте учетную запись и сгенерируйте ключ API. 2. Запустите команду `/connect` и найдите **Прошивка**. ```txt /connect ``` 3. Введите ключ API прошивки. ```txt ┌ API key │ │ └ enter ``` 4. Запустите команду `/models`, чтобы выбрать модель. ```txt /models ``` --- ### Фейерверк ИИ 1. Перейдите в [консоль Fireworks AI](https://app.fireworks.ai/), создайте учетную запись и нажмите **Создать ключ API**. 2. Запустите команду `/connect` и найдите **Fireworks AI**. ```txt /connect ``` 3. Введите ключ API Fireworks AI. ```txt ┌ API key │ │ └ enter ``` 4. Запустите команду `/models`, чтобы выбрать такую ​​модель, как _Kimi K2 Instruct_. ```txt /models ``` --- ### GitLab Дуэт GitLab Duo предоставляет агентский чат на базе искусственного интеллекта со встроенными возможностями вызова инструментов через прокси-сервер GitLab Anthropic. 1. Запустите команду `/connect` и выберите GitLab. ```txt /connect ``` 2. Выберите метод аутентификации: ```txt ┌ Select auth method │ │ OAuth (Recommended) │ Personal Access Token └ ``` #### Использование OAuth (рекомендуется) Выберите **OAuth**, и ваш браузер откроется для авторизации. #### Использование токена личного доступа 1. Перейдите в [Настройки пользователя GitLab > Токены доступа](https://gitlab.com/-/user_settings/personal_access_tokens). 2. Нажмите **Добавить новый токен**. 3. Имя: `OpenCode`, Области применения: `api` 4. Скопируйте токен (начинается с `glpat-`) 5. Введите его в терминал 3. Запустите команду `/models`, чтобы просмотреть доступные модели. ```txt /models ``` Доступны три модели на основе Claude: - **duo-chat-haiku-4-5** (по умолчанию) — быстрые ответы на быстрые задачи. - **duo-chat-sonnet-4-5** — сбалансированная производительность для большинства рабочих процессов. - **duo-chat-opus-4-5** — Наиболее способен к комплексному анализу. :::note Вы также можете указать переменную среды «GITLAB_TOKEN», если не хотите. для хранения токена в хранилище аутентификации открытого кода. ::: ##### Самостоятельная GitLab :::note[примечание о соответствии] OpenCode использует небольшую модель для некоторых задач ИИ, таких как создание заголовка сеанса. По умолчанию он настроен на использование gpt-5-nano, размещенного на Zen. Чтобы заблокировать OpenCode чтобы использовать только свой собственный экземпляр, размещенный на GitLab, добавьте следующее в свой `opencode.json` файл. Также рекомендуется отключить совместное использование сеансов. ```json { "$schema": "https://opencode.ai/config.json", "small_model": "gitlab/duo-chat-haiku-4-5", "share": "disabled" } ``` ::: Для самостоятельных экземпляров GitLab: ```bash export GITLAB_INSTANCE_URL=https://gitlab.company.com export GITLAB_TOKEN=glpat-... ``` Если в вашем экземпляре используется собственный AI-шлюз: ```bash GITLAB_AI_GATEWAY_URL=https://ai-gateway.company.com ``` Или добавьте в свой профиль bash: ```bash title="~/.bash_profile" export GITLAB_INSTANCE_URL=https://gitlab.company.com export GITLAB_AI_GATEWAY_URL=https://ai-gateway.company.com export GITLAB_TOKEN=glpat-... ``` :::note Ваш администратор GitLab должен включить следующее: 1. [Платформа Duo Agent](https://docs.gitlab.com/user/gitlab_duo/turn_on_off/) для пользователя, группы или экземпляра 2. Флаги функций (через консоль Rails): - `agent_platform_claude_code` - `third_party_agents_enabled` ::: ##### OAuth для локальных экземпляров Чтобы Oauth работал на вашем локальном экземпляре, вам необходимо создать новое приложение (Настройки → Приложения) с URL обратного вызова `http://127.0.0.1:8080/callback` и следующие области: - API (Доступ к API от вашего имени) - read_user (прочитать вашу личную информацию) - read_repository (разрешает доступ к репозиторию только для чтения) Затем укажите идентификатор приложения как переменную среды: ```bash export GITLAB_OAUTH_CLIENT_ID=your_application_id_here ``` Дополнительная документация на домашней странице [opencode-gitlab-auth](https://www.npmjs.com/package/@gitlab/opencode-gitlab-auth). ##### Конфигурация Настройте через `opencode.json`: ```json title="opencode.json" { "$schema": "https://opencode.ai/config.json", "provider": { "gitlab": { "options": { "instanceUrl": "https://gitlab.com", "featureFlags": { "duo_agent_platform_agentic_chat": true, "duo_agent_platform": true } } } } } ``` ##### Инструменты API GitLab (необязательно, но настоятельно рекомендуется) Чтобы получить доступ к инструментам GitLab (мерж-реквесты, задачи, конвейеры, CI/CD и т. д.): ```json title="opencode.json" { "$schema": "https://opencode.ai/config.json", "plugin": ["@gitlab/opencode-gitlab-plugin"] } ``` Этот плагин предоставляет комплексные возможности управления репозиторием GitLab, включая проверки MR, отслеживание проблем, мониторинг конвейера и многое другое. --- ### GitHub второй пилот Чтобы использовать подписку GitHub Copilot с открытым кодом: :::note Некоторым моделям может потребоваться [Pro+ подписка](https://github.com/features/copilot/plans) для использования. Некоторые модели необходимо включить вручную в настройках [GitHub Copilot](https://docs.github.com/en/copilot/how-tos/use-ai-models/configure-access-to-ai-models#setup-for-individual-use). ::: 1. Запустите команду `/connect` и найдите GitHub Copilot. ```txt /connect ``` 2. Перейдите на [github.com/login/device](https://github.com/login/device) и введите код. ```txt ┌ Login with GitHub Copilot │ │ https://github.com/login/device │ │ Enter code: 8F43-6FCF │ └ Waiting for authorization... ``` 3. Теперь запустите команду `/models`, чтобы выбрать нужную модель. ```txt /models ``` --- ### Google Вертекс ИИ Чтобы использовать Google Vertex AI с OpenCode: 1. Перейдите в **Model Garden** в Google Cloud Console и проверьте модели, доступные в вашем регионе. :::примечание Вам необходим проект Google Cloud с включенным Vertex AI API. ::: 2. Установите необходимые переменные среды: - `GOOGLE_CLOUD_PROJECT`: идентификатор вашего проекта Google Cloud. - `VERTEX_LOCATION` (необязательно): регион для Vertex AI (по умолчанию `global`). - Аутентификация (выберите одну): - `GOOGLE_APPLICATION_CREDENTIALS`: путь к ключевому файлу JSON вашего сервисного аккаунта. - Аутентификация с помощью интерфейса командной строки gcloud: `gcloud auth application-default login`. Установите их во время запуска открытого кода. ```bash GOOGLE_APPLICATION_CREDENTIALS=/path/to/service-account.json GOOGLE_CLOUD_PROJECT=your-project-id opencode ``` Или добавьте их в свой профиль bash. ```bash title="~/.bash_profile" export GOOGLE_APPLICATION_CREDENTIALS=/path/to/service-account.json export GOOGLE_CLOUD_PROJECT=your-project-id export VERTEX_LOCATION=global ``` :::tip Регион `global` повышает доступность и уменьшает количество ошибок без дополнительных затрат. Используйте региональные конечные точки (например, `us-central1`) для требований к местонахождению данных. [Подробнее](https://cloud.google.com/vertex-ai/generative-ai/docs/partner-models/use-partner-models#regional_and_global_endpoints) ::: 3. Запустите команду `/models`, чтобы выбрать нужную модель. ```txt /models ``` --- ### Грок 1. Перейдите в консоль Groq](https://console.groq.com/), нажмите **Создать ключ API** и скопируйте ключ. 2. Запустите команду `/connect` и найдите Groq. ```txt /connect ``` 3. Введите ключ API для провайдера. ```txt ┌ API key │ │ └ enter ``` 4. Запустите команду `/models`, чтобы выбрать тот, который вам нужен. ```txt /models ``` --- ### Обнимающее лицо [Поставщики Hugging Face Inference Provider](https://huggingface.co/docs/inference-providers) предоставляют доступ к открытым моделям, поддерживаемым более чем 17 поставщиками. 1. Перейдите в [Настройки Hugging Face](https://huggingface.co/settings/tokens/new?ownUserPermissions=inference.serverless.write&tokenType=fineGrained), чтобы создать токен с разрешением совершать вызовы к поставщикам выводов. 2. Запустите команду `/connect` и найдите **Обнимающее лицо**. ```txt /connect ``` 3. Введите свой жетон «Обнимающее лицо». ```txt ┌ API key │ │ └ enter ``` 4. Запустите команду `/models`, чтобы выбрать такую ​​модель, как _Kimi-K2-Instruct_ или _GLM-4.6_. ```txt /models ``` --- ### Геликон [Helicone](https://helicone.ai) — это платформа наблюдения LLM, которая обеспечивает ведение журнала, мониторинг и аналитику для ваших приложений искусственного интеллекта. Helicone AI Gateway автоматически направляет ваши запросы соответствующему поставщику на основе модели. 1. Перейдите в [Helicone](https://helicone.ai), создайте учетную запись и сгенерируйте ключ API на своей панели управления. 2. Запустите команду `/connect` и найдите **Helicone**. ```txt /connect ``` 3. Введите свой ключ API Helicone. ```txt ┌ API key │ │ └ enter ``` 4. Запустите команду `/models`, чтобы выбрать модель. ```txt /models ``` Дополнительные сведения о дополнительных провайдерах и расширенных функциях, таких как кэширование и ограничение скорости, см. в [Документация Helicone](https://docs.helicone.ai). #### Дополнительные конфигурации Если вы видите функцию или модель от Helicone, которая не настраивается автоматически через открытый код, вы всегда можете настроить ее самостоятельно. Вот [Справочник моделей Helicone](https://helicone.ai/models), он понадобится вам, чтобы получить идентификаторы моделей, которые вы хотите добавить. ```jsonc title="~/.config/opencode/opencode.jsonc" { "$schema": "https://opencode.ai/config.json", "provider": { "helicone": { "npm": "@ai-sdk/openai-compatible", "name": "Helicone", "options": { "baseURL": "https://ai-gateway.helicone.ai", }, "models": { "gpt-4o": { // Model ID (from Helicone's model directory page) "name": "GPT-4o", // Your own custom name for the model }, "claude-sonnet-4-20250514": { "name": "Claude Sonnet 4", }, }, }, }, } ``` #### Пользовательские заголовки Helicone поддерживает пользовательские заголовки для таких функций, как кэширование, отслеживание пользователей и управление сеансами. Добавьте их в конфигурацию вашего провайдера, используя `options.headers`: ```jsonc title="~/.config/opencode/opencode.jsonc" { "$schema": "https://opencode.ai/config.json", "provider": { "helicone": { "npm": "@ai-sdk/openai-compatible", "name": "Helicone", "options": { "baseURL": "https://ai-gateway.helicone.ai", "headers": { "Helicone-Cache-Enabled": "true", "Helicone-User-Id": "opencode", }, }, }, }, } ``` ##### Отслеживание сеансов Функция Helicone [Sessions](https://docs.helicone.ai/features/sessions) позволяет группировать связанные запросы LLM вместе. Используйте плагин [opencode-helicone-session](https://github.com/H2Shami/opencode-helicone-session), чтобы автоматически регистрировать каждый диалог OpenCode как сеанс в Helicone. ```bash npm install -g opencode-helicone-session ``` Добавьте его в свою конфигурацию. ```json title="opencode.json" { "plugin": ["opencode-helicone-session"] } ``` Плагин вставляет в ваши запросы заголовки `Helicone-Session-Id` и `Helicone-Session-Name`. На странице «Сеансы» Helicone вы увидите каждый диалог OpenCode, указанный как отдельный сеанс. ##### Общие разъемы Helicone | Заголовок | Описание | | -------------------------- | ------------------------------------------------------------------------------ | | `Helicone-Cache-Enabled` | Включить кэширование ответов (`true`/`false`) | | `Helicone-User-Id` | Отслеживание показателей по пользователю | | `Helicone-Property-[Name]` | Добавьте пользовательские свойства (например, `Helicone-Property-Environment`) | | `Helicone-Prompt-Id` | Связывание запросов с версиями промптов | См. [Справочник заголовков Helicone](https://docs.helicone.ai/helicone-headers/header-directory) для всех доступных заголовков. --- ### вызов.cpp Вы можете настроить открытый код для использования локальных моделей с помощью [утилиты llama-server llama.cpp's](https://github.com/ggml-org/llama.cpp) ```json title="opencode.json" "llama.cpp" {5, 6, 8, 10-15} { "$schema": "https://opencode.ai/config.json", "provider": { "llama.cpp": { "npm": "@ai-sdk/openai-compatible", "name": "llama-server (local)", "options": { "baseURL": "http://127.0.0.1:8080/v1" }, "models": { "qwen3-coder:a3b": { "name": "Qwen3-Coder: a3b-30b (local)", "limit": { "context": 128000, "output": 65536 } } } } } } ``` В этом примере: - `llama.cpp` — это идентификатор пользовательского поставщика. Это может быть любая строка, которую вы хотите. - `npm` указывает пакет, который будет использоваться для этого поставщика. Здесь `@ai-sdk/openai-compatible` используется для любого API-интерфейса, совместимого с OpenAI. - `name` — это отображаемое имя поставщика в пользовательском интерфейсе. - `options.baseURL` — конечная точка локального сервера. - `models` — это карта идентификаторов моделей с их конфигурациями. Название модели будет отображаться в списке выбора модели. --- ### ИО.НЕТ IO.NET предлагает 17 моделей, оптимизированных для различных случаев использования: 1. Перейдите в консоль IO.NET](https://ai.io.net/), создайте учетную запись и сгенерируйте ключ API. 2. Запустите команду `/connect` и найдите **IO.NET**. ```txt /connect ``` 3. Введите свой ключ API IO.NET. ```txt ┌ API key │ │ └ enter ``` 4. Запустите команду `/models`, чтобы выбрать модель. ```txt /models ``` --- ### ЛМ Студия Вы можете настроить открытый код для использования локальных моделей через LM Studio. ```json title="opencode.json" "lmstudio" {5, 6, 8, 10-14} { "$schema": "https://opencode.ai/config.json", "provider": { "lmstudio": { "npm": "@ai-sdk/openai-compatible", "name": "LM Studio (local)", "options": { "baseURL": "http://127.0.0.1:1234/v1" }, "models": { "google/gemma-3n-e4b": { "name": "Gemma 3n-e4b (local)" } } } } } ``` В этом примере: - `lmstudio` — это идентификатор пользовательского поставщика. Это может быть любая строка, которую вы хотите. - `npm` указывает пакет, который будет использоваться для этого поставщика. Здесь `@ai-sdk/openai-compatible` используется для любого API-интерфейса, совместимого с OpenAI. - `name` — это отображаемое имя поставщика в пользовательском интерфейсе. - `options.baseURL` — конечная точка локального сервера. - `models` — это карта идентификаторов моделей с их конфигурациями. Название модели будет отображаться в списке выбора модели. --- ### Лунный выстрел ИИ Чтобы использовать Кими К2 из Moonshot AI: 1. Перейдите в [консоль Moonshot AI](https://platform.moonshot.ai/console), создайте учетную запись и нажмите **Создать ключ API**. 2. Запустите команду `/connect` и найдите **Moonshot AI**. ```txt /connect ``` 3. Введите свой API-ключ Moonshot. ```txt ┌ API key │ │ └ enter ``` 4. Запустите команду `/models`, чтобы выбрать _Kimi K2_. ```txt /models ``` --- ### МиниМакс 1. Перейдите в [консоль API MiniMax](https://platform.minimax.io/login), создайте учетную запись и сгенерируйте ключ API. 2. Запустите команду `/connect` и найдите **MiniMax**. ```txt /connect ``` 3. Введите свой ключ API MiniMax. ```txt ┌ API key │ │ └ enter ``` 4. Запустите команду `/models`, чтобы выбрать модель типа _M2.1_. ```txt /models ``` --- ### Фабрика токенов Небиуса 1. Перейдите в консоль Nebius Token Factory](https://tokenfactory.nebius.com/), создайте учетную запись и нажмите **Добавить ключ**. 2. Запустите команду `/connect` и найдите **Nebius Token Factory**. ```txt /connect ``` 3. Введите ключ API фабрики токенов Nebius. ```txt ┌ API key │ │ └ enter ``` 4. Запустите команду `/models`, чтобы выбрать такую ​​модель, как _Kimi K2 Instruct_. ```txt /models ``` --- ### Быть Вы можете настроить открытый код для использования локальных моделей через Ollama. :::tip Ollama может автоматически настроиться для OpenCode. Подробности см. в документации по интеграции Ollama](https://docs.ollama.com/integrations/opencode). ::: ```json title="opencode.json" "ollama" {5, 6, 8, 10-14} { "$schema": "https://opencode.ai/config.json", "provider": { "ollama": { "npm": "@ai-sdk/openai-compatible", "name": "Ollama (local)", "options": { "baseURL": "http://localhost:11434/v1" }, "models": { "llama2": { "name": "Llama 2" } } } } } ``` В этом примере: - `ollama` — это идентификатор пользовательского поставщика. Это может быть любая строка, которую вы хотите. - `npm` указывает пакет, который будет использоваться для этого поставщика. Здесь `@ai-sdk/openai-compatible` используется для любого API-интерфейса, совместимого с OpenAI. - `name` — это отображаемое имя поставщика в пользовательском интерфейсе. - `options.baseURL` — конечная точка локального сервера. - `models` — это карта идентификаторов моделей с их конфигурациями. Название модели будет отображаться в списке выбора модели. :::tip Если вызовы инструментов не работают, попробуйте увеличить `num_ctx` в Олламе. Начните с 16–32 тысяч. ::: --- ### Оллама Облако Чтобы использовать Ollama Cloud с OpenCode: 1. Перейдите на [https://ollama.com/](https://ollama.com/) и войдите в систему или создайте учетную запись. 2. Перейдите в **Настройки** > **Ключи** и нажмите **Добавить ключ API**, чтобы создать новый ключ API. 3. Скопируйте ключ API для использования в OpenCode. 4. Запустите команду `/connect` и найдите **Ollama Cloud**. ```txt /connect ``` 5. Введите свой ключ API Ollama Cloud. ```txt ┌ API key │ │ └ enter ``` 6. **Важно**. Перед использованием облачных моделей в OpenCode необходимо получить информацию о модели локально: ```bash ollama pull gpt-oss:20b-cloud ``` 7. Запустите команду `/models`, чтобы выбрать модель облака Ollama. ```txt /models ``` --- ### ОпенАИ Мы рекомендуем подписаться на [ChatGPT Plus или Pro](https://chatgpt.com/pricing). 1. После регистрации выполните команду `/connect` и выберите OpenAI. ```txt /connect ``` 2. Здесь вы можете выбрать опцию **ChatGPT Plus/Pro**, и ваш браузер откроется. и попросите вас пройти аутентификацию. ```txt ┌ Select auth method │ │ ChatGPT Plus/Pro │ Manually enter API Key └ ``` 3. Теперь все модели OpenAI должны быть доступны при использовании команды `/models`. ```txt /models ``` ##### Использование ключей API Если у вас уже есть ключ API, вы можете выбрать **Ввести ключ API вручную** и вставить его в свой терминал. --- ### OpenCode Дзен OpenCode Zen — это список протестированных и проверенных моделей, предоставленный командой OpenCode. [Подробнее](/docs/zen). 1. Войдите в систему **OpenCode Zen** и нажмите **Создать ключ API**. 2. Запустите команду `/connect` и найдите **OpenCode Zen**. ```txt /connect ``` 3. Введите свой ключ API OpenCode. ```txt ┌ API key │ │ └ enter ``` 4. Запустите команду `/models`, чтобы выбрать такую ​​модель, как _Qwen 3 Coder 480B_. ```txt /models ``` --- ### OpenRouter 1. Перейдите на панель управления OpenRouter](https://openrouter.ai/settings/keys), нажмите **Создать ключ API** и скопируйте ключ. 2. Запустите команду `/connect` и найдите OpenRouter. ```txt /connect ``` 3. Введите ключ API для провайдера. ```txt ┌ API key │ │ └ enter ``` 4. Многие модели OpenRouter предварительно загружены по умолчанию. Запустите команду `/models`, чтобы выбрать нужную. ```txt /models ``` Вы также можете добавить дополнительные модели через конфигурацию открытого кода. ```json title="opencode.json" {6} { "$schema": "https://opencode.ai/config.json", "provider": { "openrouter": { "models": { "somecoolnewmodel": {} } } } } ``` 5. Вы также можете настроить их через конфигурацию открытого кода. Вот пример указания провайдера ```json title="opencode.json" { "$schema": "https://opencode.ai/config.json", "provider": { "openrouter": { "models": { "moonshotai/kimi-k2": { "options": { "provider": { "order": ["baseten"], "allow_fallbacks": false } } } } } } } ``` --- ### SAP AI Ядро SAP AI Core предоставляет доступ к более чем 40 моделям от OpenAI, Anthropic, Google, Amazon, Meta, Mistral и AI21 через единую платформу. 1. Перейдите в [SAP BTP Cockpit](https://account.hana.ondemand.com/), перейдите к экземпляру службы SAP AI Core и создайте ключ службы. :::кончик Ключ службы — это объект JSON, содержащий `clientid`, `clientsecret`, `url` и `serviceurls.AI_API_URL`. Экземпляр AI Core можно найти в разделе **Сервисы** > **Экземпляры и подписки** в панели управления BTP. ::: 2. Запустите команду `/connect` и найдите **SAP AI Core**. ```txt /connect ``` 3. Введите свой сервисный ключ в формате JSON. ```txt ┌ Service key │ │ └ enter ``` Или установите переменную среды `AICORE_SERVICE_KEY`: ```bash AICORE_SERVICE_KEY='{"clientid":"...","clientsecret":"...","url":"...","serviceurls":{"AI_API_URL":"..."}}' opencode ``` Или добавьте его в свой профиль bash: ```bash title="~/.bash_profile" export AICORE_SERVICE_KEY='{"clientid":"...","clientsecret":"...","url":"...","serviceurls":{"AI_API_URL":"..."}}' ``` 4. При необходимости укажите идентификатор развертывания и группу ресурсов: ```bash AICORE_DEPLOYMENT_ID=your-deployment-id AICORE_RESOURCE_GROUP=your-resource-group opencode ``` :::примечание Эти параметры являются необязательными и должны быть настроены в соответствии с настройками SAP AI Core. ::: 5. Запустите команду `/models`, чтобы выбрать одну из более чем 40 доступных моделей. ```txt /models ``` --- ### Конечные точки OVHcloud AI 1. Перейдите к [OVHcloud Panel](https://ovh.com/manager). Перейдите в раздел `Public Cloud`, `AI & Machine Learning` > `AI Endpoints` и на вкладке `API Keys` нажмите **Создать новый ключ API**. 2. Запустите команду `/connect` и найдите **Конечные точки OVHcloud AI**. ```txt /connect ``` 3. Введите ключ API конечных точек OVHcloud AI. ```txt ┌ API key │ │ └ enter ``` 4. Запустите команду `/models`, чтобы выбрать модель типа _gpt-oss-120b_. ```txt /models ``` --- ### Чешуйчатая дорога Чтобы использовать [Scaleway Generative APIs](https://www.scaleway.com/en/docs/generative-apis/) с Opencode: 1. Перейдите к [Настройки IAM консоли Scaleway](https://console.scaleway.com/iam/api-keys), чтобы сгенерировать новый ключ API. 2. Запустите команду `/connect` и найдите **Scaleway**. ```txt /connect ``` 3. Введите ключ API Scaleway. ```txt ┌ API key │ │ └ enter ``` 4. Запустите команду `/models`, чтобы выбрать модель, например _devstral-2-123b-instruct-2512_ или _gpt-oss-120b_. ```txt /models ``` --- ### Вместе ИИ 1. Перейдите в [консоль Together AI](https://api.together.ai), создайте учетную запись и нажмите **Добавить ключ**. 2. Запустите команду `/connect` и найдите **Together AI**. ```txt /connect ``` 3. Введите ключ API Together AI. ```txt ┌ API key │ │ └ enter ``` 4. Запустите команду `/models`, чтобы выбрать такую ​​модель, как _Kimi K2 Instruct_. ```txt /models ``` --- ### Венеция ИИ 1. Перейдите к [консоли Venice AI](https://venice.ai), создайте учетную запись и сгенерируйте ключ API. 2. Запустите команду `/connect` и найдите **Венеция AI**. ```txt /connect ``` 3. Введите свой ключ API Венеции AI. ```txt ┌ API key │ │ └ enter ``` 4. Запустите команду `/models`, чтобы выбрать модель типа _Llama 3.3 70B_. ```txt /models ``` --- ### AI-шлюз Vercel Vercel AI Gateway позволяет получать доступ к моделям OpenAI, Anthropic, Google, xAI и других источников через единую конечную точку. Модели предлагаются по прейскурантной цене без наценок. 1. Перейдите на [панель мониторинга Vercel](https://vercel.com/), перейдите на вкладку **AI Gateway** и нажмите **Ключи API**, чтобы создать новый ключ API. 2. Запустите команду `/connect` и найдите **Vercel AI Gateway**. ```txt /connect ``` 3. Введите ключ API Vercel AI Gateway. ```txt ┌ API key │ │ └ enter ``` 4. Запустите команду `/models`, чтобы выбрать модель. ```txt /models ``` Вы также можете настраивать модели через конфигурацию открытого кода. Ниже приведен пример указания порядка маршрутизации поставщика. ```json title="opencode.json" { "$schema": "https://opencode.ai/config.json", "provider": { "vercel": { "models": { "anthropic/claude-sonnet-4": { "options": { "order": ["anthropic", "vertex"] } } } } } } ``` Некоторые полезные параметры маршрутизации: | Вариант | Описание | | ------------------- | -------------------------------------------------------------------- | | `order` | Последовательность провайдеров для попытки | | `only` | Ограничить конкретными провайдерами | | `zeroDataRetention` | Использовать только провайдеров с политикой нулевого хранения данных | --- ### xAI 1. Перейдите на [консоль xAI](https://console.x.ai/), создайте учетную запись и сгенерируйте ключ API. 2. Запустите команду `/connect` и найдите **xAI**. ```txt /connect ``` 3. Введите свой ключ API xAI. ```txt ┌ API key │ │ └ enter ``` 4. Запустите команду `/models`, чтобы выбрать такую ​​модель, как _Grok Beta_. ```txt /models ``` --- ### З.АИ 1. Перейдите в [консоль Z.AI API](https://z.ai/manage-apikey/apikey-list), создайте учетную запись и нажмите **Создать новый ключ API**. 2. Запустите команду `/connect` и найдите **Z.AI**. ```txt /connect ``` Если вы подписаны на **План кодирования GLM**, выберите **План кодирования Z.AI**. 3. Введите свой ключ API Z.AI. ```txt ┌ API key │ │ └ enter ``` 4. Запустите команду `/models`, чтобы выбрать модель типа _GLM-4.7_. ```txt /models ``` --- ### ДзенМукс 1. Перейдите на [панель управления ZenMux](https://zenmux.ai/settings/keys), нажмите **Создать ключ API** и скопируйте ключ. 2. Запустите команду `/connect` и найдите ZenMux. ```txt /connect ``` 3. Введите ключ API для провайдера. ```txt ┌ API key │ │ └ enter ``` 4. Многие модели ZenMux предварительно загружены по умолчанию. Запустите команду `/models`, чтобы выбрать нужную. ```txt /models ``` Вы также можете добавить дополнительные модели через конфигурацию открытого кода. ```json title="opencode.json" {6} { "$schema": "https://opencode.ai/config.json", "provider": { "zenmux": { "models": { "somecoolnewmodel": {} } } } } ``` --- ## Пользовательский поставщик Чтобы добавить любого **совместимого с OpenAI** поставщика, не указанного в команде `/connect`: :::tip Вы можете использовать любого OpenAI-совместимого провайдера с открытым кодом. Большинство современных поставщиков ИИ предлагают API-интерфейсы, совместимые с OpenAI. ::: 1. Запустите команду `/connect` и прокрутите вниз до пункта **Другое**. ```bash $ /connect ┌ Add credential │ ◆ Select provider │ ... │ ● Other └ ``` 2. Введите уникальный идентификатор провайдера. ```bash $ /connect ┌ Add credential │ ◇ Enter provider id │ myprovider └ ``` :::примечание Выберите запоминающийся идентификатор, вы будете использовать его в своем файле конфигурации. ::: 3. Введите свой ключ API для провайдера. ```bash $ /connect ┌ Add credential │ ▲ This only stores a credential for myprovider - you will need to configure it in opencode.json, check the docs for examples. │ ◇ Enter your API key │ sk-... └ ``` 4. Создайте или обновите файл `opencode.json` в каталоге вашего проекта: ```json title="opencode.json" ""myprovider"" {5-15} { "$schema": "https://opencode.ai/config.json", "provider": { "myprovider": { "npm": "@ai-sdk/openai-compatible", "name": "My AI ProviderDisplay Name", "options": { "baseURL": "https://api.myprovider.com/v1" }, "models": { "my-model-name": { "name": "My Model Display Name" } } } } } ``` Вот варианты конфигурации: - **npm**: используемый пакет AI SDK, `@ai-sdk/openai-compatible` для поставщиков, совместимых с OpenAI. - **имя**: отображаемое имя в пользовательском интерфейсе. - **модели**: Доступные модели. - **options.baseURL**: URL-адрес конечной точки API. - **options.apiKey**: при необходимости установите ключ API, если не используется аутентификация. - **options.headers**: при необходимости можно установить собственные заголовки. Подробнее о дополнительных параметрах в примере ниже. 5. Запустите команду `/models`, и ваш пользовательский поставщик и модели появятся в списке выбора. --- ##### Пример Ниже приведен пример настройки параметров `apiKey`, `headers` и модели `limit`. ```json title="opencode.json" {9,11,17-20} { "$schema": "https://opencode.ai/config.json", "provider": { "myprovider": { "npm": "@ai-sdk/openai-compatible", "name": "My AI ProviderDisplay Name", "options": { "baseURL": "https://api.myprovider.com/v1", "apiKey": "{env:ANTHROPIC_API_KEY}", "headers": { "Authorization": "Bearer custom-token" } }, "models": { "my-model-name": { "name": "My Model Display Name", "limit": { "context": 200000, "output": 65536 } } } } } } ``` Детали конфигурации: - **apiKey**: устанавливается с использованием синтаксиса переменной `env`, [подробнее ](/docs/config#env-vars). - **заголовки**: пользовательские заголовки, отправляемые с каждым запросом. - **limit.context**: Максимальное количество входных токенов, которые принимает модель. - **limit.output**: Максимальное количество токенов, которые может сгенерировать модель. Поля `limit` позволяют OpenCode понять, сколько контекста у вас осталось. Стандартные поставщики автоматически извлекают их из models.dev. --- ## Поиск неисправностей Если у вас возникли проблемы с настройкой провайдера, проверьте следующее: 1. **Проверьте настройку аутентификации**: запустите `opencode auth list`, чтобы проверить, верны ли учетные данные. для провайдера добавлены в ваш конфиг. Это не относится к таким поставщикам, как Amazon Bedrock, которые для аутентификации полагаются на переменные среды. 2. Для пользовательских поставщиков проверьте конфигурацию открытого кода и: - Убедитесь, что идентификатор провайдера, используемый в команде `/connect`, соответствует идентификатору в вашей конфигурации открытого кода. - Для провайдера используется правильный пакет npm. Например, используйте `@ai-sdk/cerebras` для Cerebras. А для всех других поставщиков, совместимых с OpenAI, используйте `@ai-sdk/openai-compatible`. - Убедитесь, что в поле `options.baseURL` используется правильная конечная точка API.