Модуль 1 · Конфигурация · урок 4 из 16
Модели, провайдеры и локальные модели
В курсе «Codex с нуля» вы переключали модель командой /model и разобрались, что такое уровень рассуждений (reasoning effort) — см. урок «Модели и уровень рассуждений». Здесь — как закрепить выбор в конфигурации, развести модели по задачам и подключить модель не от OpenAI или вообще без облака.
Ключи выбора модели
model = "gpt-6.1-sol"
model_reasoning_effort = "medium" # low | medium | high | xhigh | max | ultra
plan_mode_reasoning_effort = "high" # отдельный уровень для режима планирования
review_model = "gpt-6.1-sol" # модель для /review и codex review
model_reasoning_summary = "auto" # auto | concise | detailed | none
model_verbosity = "medium" # low | medium | highЧто важно знать про каждый:
model— слаг модели. Он должен быть доступен вашему аккаунту и способу входа: выбор модели не даёт к ней доступа.model_reasoning_effort— набор допустимых уровней зависит от модели и клиента. В интерфейсе уровни называются Light (в CLI — Low), Medium, High, Extra High, Max, Ultra. На уровне Ultra Codex проактивно делит работу между субагентами, поэтому расходует заметно больше токенов.plan_mode_reasoning_effort— если не задан, режим планирования использует свой встроенный пресет.review_model— по умолчанию ревью идёт той же моделью, что и сессия. Отдельная модель для ревью полезна, когда основную работу вы делаете быстрой моделью.model_verbosityиmodel_reasoning_summary— длина ответов и подробность сводок рассуждений. Для скриптов имеет смыслmodel_reasoning_summary = "none".
Какую модель выбрать: на октябрь 2026
Линейка меняется каждые несколько месяцев, поэтому запоминайте принцип, а не названия.
| Модель | Слаг | Когда |
|---|---|---|
| GPT-6.1 Sol | gpt-6.1-sol |
Рекомендована документацией для сложного кодинга и агентной работы |
| GPT-6 Astra | gpt-6-astra |
Самая мощная, для самых трудных задач, расходует больше |
| GPT-6 Luna | gpt-6-luna |
Самая быстрая и экономная, для чётких повторяемых задач |
Модели семейства GPT-5.6 остаются доступны на время перехода. GPT-5.5 выведена из Codex для входа через ChatGPT с 14 октября 2026 года; при входе по API-ключу она по-прежнему работает — набор моделей там определяется вашей организацией в API. В Enterprise и Edu часть моделей сначала должен включить администратор.
Практичный подход из документации: начните с рекомендованной модели и уровня по умолчанию, а затем на одних и тех же задачах пробуйте более лёгкие настройки и оставьте самую лёгкую, которая проходит вашу планку качества. Частые автоматические прогоны съедают лимит быстрее редких — для них подбирайте модель особенно тщательно. Полный каталог моделей, который видит ваш клиент, выводит команда codex debug models (экспериментальная).
Скорость: Fast mode
Fast mode ускоряет поддерживаемые модели ценой более быстрого расхода лимита. В CLI он переключается командой /fast, по умолчанию включается так:
service_tier = "fast"
[features]
fast_mode = trueРаботает только при входе через ChatGPT. Есть ещё Ultrafast — для отдельных моделей и тарифов; доступность смотрите на странице Speed.
Свой адрес для OpenAI: прокси и резидентность данных
Если запросы к моделям в компании идут через LLM-прокси или шлюз, не нужно описывать новый провайдер — достаточно сменить базовый адрес встроенного:
openai_base_url = "https://llm-proxy.company.internal/v1"Создавать [model_providers.openai] нельзя: встроенные идентификаторы openai, ollama и lmstudio зарезервированы. Для рабочих пространств ChatGPT с резидентностью данных отдельная настройка не нужна — Codex учитывает её при входе через ChatGPT. Для корпоративных шлюзов у OpenAI есть отдельные руководства: вход через ChatGPT поверх шлюза и подключение с ключами провайдера.
Свои провайдеры
Провайдер описывает, куда и как Codex отправляет запросы: адрес, протокол, авторизацию, заголовки.
model_provider = "proxy"
model = "gpt-6.1-sol"
[model_providers.proxy]
name = "LLM-прокси компании"
base_url = "https://llm-proxy.company.internal/v1"
env_key = "COMPANY_LLM_KEY" # имя переменной окружения с ключом
wire_api = "responses"
http_headers = { "X-Team" = "web" }
env_http_headers = { "X-Project" = "CODEX_PROJECT_ID" }
request_max_retries = 4
stream_max_retries = 10
stream_idle_timeout_ms = 300000Главное ограничение 2026 года: провайдер должен поддерживать Responses API. wire_api = "responses" — единственное допустимое значение, а эндпоинты, которые умеют только Chat Completions, текущие версии Codex не поддерживают. Если вы находите в интернете конфиг с wire_api = "chat", он устарел.
Если ключ нужно не хранить в переменной, а получать у внешней утилиты (например, короткоживущий токен из корпоративного хранилища), используйте авторизацию через команду:
[model_providers.proxy.auth]
command = "/usr/local/bin/fetch-llm-token"
args = ["--audience", "codex"]
timeout_ms = 5000
refresh_interval_ms = 300000Команда печатает токен в stdout, Codex обновляет его по таймеру. Такой блок нельзя сочетать с env_key.
Для Azure описание провайдера выглядит так же, плюс query_params = { api-version = "..." } с версией API из вашей подписки. Для Amazon Bedrock есть встроенный провайдер amazon-bedrock с вложенной таблицей aws (profile, region), подробности — на странице Amazon Bedrock.
Помните из урока про config.toml: model_provider, model_providers и openai_base_url в проектном .codex/config.toml игнорируются. Провайдеры — только в личном конфиге или в профиле.
Локальные модели: Ollama и LM Studio
Codex умеет работать с локальной моделью через Ollama или LM Studio. Это режим --oss:
codex --oss --local-provider ollama
codex --oss -m имя-модели # провайдер возьмётся из oss_provider
codex exec --oss --local-provider lmstudio "Опиши структуру каталога src"Провайдер по умолчанию задаётся в конфиге:
oss_provider = "ollama" # или 1 Если ни флаг, ни ключ не заданы, интерактивный CLI спросит, а codex exec завершится с ошибкой — в скриптах указывайте провайдер явно. Локальный сервер тоже должен отвечать по Responses API, так что держите Ollama или LM Studio обновлёнными.
Когда это оправдано: эксперименты без отправки кода в облако, работа без интернета, разбор чувствительного фрагмента. Но учитывайте трезво: агентная работа требует уверенного вызова инструментов и длинного контекста, и небольшие локальные модели справляются с этим хуже облачных. Для реальных задач по проекту сравните результат на одной и той же задаче, прежде чем переводить на локальную модель что-то важное.
Попробуйте сами
10–15 мин на рабочем месте- Пропишите в
~/.codex/config.tomlмодель иreview_model, запустите/reviewна текущей ветке, а затем откройте/debug-configи найдите, из какого слоя взято каждое значение. - Возьмите одну типовую задачу из трекера (например, добавить поле в форму и валидацию) и выполните её дважды — на
gpt-6-lunaи наgpt-6.1-solс уровнем по умолчанию. Сравните дифф и время. - Если у вас стоит Ollama или LM Studio, запустите
codex --ossв учебном репозитории и попросите описать структуру проекта. Отметьте, где локальная модель ошибается в вызовах инструментов.
Коротко
- Модель и рассуждения:
model,model_reasoning_effort,plan_mode_reasoning_effort,review_model. - Названия моделей устаревают: на октябрь 2026 основная —
gpt-6.1-sol, быстрая —gpt-6-luna, самая мощная —gpt-6-astra. - Корпоративный прокси —
openai_base_url; другой сервис —[model_providers.<id>]с поддержкой Responses API. wire_api = "chat"больше не поддерживается.- Локальные модели —
--ossс--local-providerилиoss_provider; качество агентной работы проверяйте на своих задачах.