Codex CLI на ваших власних GPU.
LM Warden як власний постачальник моделей для Codex CLI, одна модель, що обслуговується.
Текстовий опис: Codex CLI надсилає запити до LM Warden: base_url вказує на LM Warden, а env_key містить ключ LM Warden. LM Warden перевіряє ключ, приймає запит у форматі OpenAI Responses, ставить його в чергу за пріоритетом ключа й передає маршрутизатору реплік, який тримає кожен сеанс на тій репліці, де вже є його кеш (по одній копії моделі на кожен GPU).
- Протокол
- OpenAI Responses
- Підтримка
- Лише локальні моделі
Лише локальні моделі. Codex підтримує лише Responses API; LM Warden перекладає POST /v1/responses у Chat Completions для моделі, що обслуговується, тож відповідь, виклики інструментів і дані про використання доходять до Codex як події Responses. Стан не зберігається: Codex у кожному раунді надсилає store:false і всю розмову, а previous_response_id відхиляється. Міркування ввімкнено за замовчуванням (Codex запитує підсумки міркувань, і міркування моделі показуються як підсумок; щоб вимкнути їх, задайте model_reasoning_effort = "none" в config.toml), хмарний вебпошук відкидається (задайте web_search = "disabled"), а правила маршрутизатора не застосовуються. Задайте в model_context_window справжнє вікно моделі: для невідомих назв Codex припускає 272 тис. токенів. Рушію потрібен увімкнений виклик інструментів (vLLM: --enable-auto-tool-choice і --tool-call-parser). Запит до незавантаженої моделі отримує 404, і Codex кілька секунд повторює спроби, перш ніж припинити.
Вимоги
- Потрібна модель із викликом інструментів (агентні правки).
- Найкраще працює з контекстом щонайменше 32 768 токенів.
Налаштування
У консолі Connect записує ці файли з адресою вашого LM Warden, вашим ключем і вибраною моделлю. Тут вони наведені із заповнювачами.
Локальні моделі
Додайте LM Warden як постачальника моделей у ~/.codex/config.toml.
config.toml (~/.codex/config.toml)model = "your-served-model-name" model_provider = "lmwarden" # Codex assumes a 272k window for models it does not know; set the real one. model_context_window = 32768 [model_providers.lmwarden] name = "LM Warden" base_url = "https://your-warden/v1" env_key = "LMWARDEN_KEY" wire_api = "responses" # The model's context window is unknown: 32768 is a guess. Set it to the model's real window.
export LMWARDEN_KEY=vw_YOUR_KEY codex exec "Reply with the single word OK."
Офіційна документація: https://learn.chatgpt.com/docs/config-file/config-reference (переглянуто 2026-10-04).