genmux API теперь доступен всем. Читать документацию →
genmux API

genmux в вашем агенте для кода

Направьте агент для кода на один OpenAI-совместимый эндпоинт и выбирайте Qwen3, Claude, GPT или Doubao одним ключом. Чат-эндпоинт понимает вызов функций в формате OpenAI — tools, tool_choice, потоковые tool_calls, — поэтому агенты, которые правят файлы и запускают команды, работают без доработок; оплата за миллион токенов по ценам со страниц моделей.

Терминал · Aider в три строки
export OPENAI_API_BASE=https://api.genmux.tech/v1
export OPENAI_API_KEY=nb_live_...
aider --model openai/qwen3.8-max
# smaller models: aider --model openai/qwen3.8-max --edit-format whole
Работает с:OpenCodeAiderClineRoo CodeContinueClaude Code · Codex CLI — скоро

MCP-сервер: генерация изображений как инструмент в Claude, Cursor и OpenCode

Генерируйте изображения, смотрите баланс и оценивайте стоимость прямо из Claude Desktop, Claude Code, Cursor, OpenCode или Continue — npx -y @genmux/mcp локально или хостед-эндпоинт mcp.genmux.tech.

Настроить MCP-сервер →

Вопросы

Какие агенты для кода работают с genmux?
Любые, которые умеют говорить с OpenAI-совместимым эндпоинтом chat completions: OpenCode, Aider, Cline, Roo Code и Continue настроены и проверены выше, а обычные циклы на OpenAI SDK работают так же. Claude Code и Codex CLI используют другие API (Anthropic Messages и OpenAI Responses), которые пока не обслуживаются, — скоро.
Какие модели поддерживают вызов инструментов?
Текстовые модели с флагом tools: true в GET /v1/models — живая таблица выше показывает актуальный набор, среди них qwen3.8-max и модели Doubao Seed 2. Запрос с tools к любой другой модели возвращает 400 tools_unsupported, а не молча отбрасывает инструменты.
Вызов инструментов нативный или эмулированный?
Эмулируется на стороне genmux. Вышестоящий шлюз отбрасывает поле tools, поэтому API подставляет описания инструментов в системный промпт и разбирает ответ модели обратно в стандартные tool_calls OpenAI — для стримов инкрементально. Для клиента всё выглядит ровно как у OpenAI: те же поля запроса, та же форма ответа, finish_reason tool_calls.
Насколько это надёжно на практике?
В нашем агентском наборе из 20 задач модели из актуального списка набирают от 18/20 до 20/20 — в последнем прогоне Doubao Seed 2 Pro 19/20 и Doubao Seed 2 Code 18/20. Промахи — модель проигнорировала принудительный tool_choice или один раз написала псевдо-XML; ошибок разбора не было. Набор прогоняется перед каждым релизом, и флаг tools остаётся у модели только при результате выше 90 %.
Сколько стоит сессия агента?
За миллион токенов по входной и выходной ставкам модели — обе в таблице выше, живые из каталога. Агент пересылает всю переписку на каждом шаге, поэтому основная часть счёта — входные токены; подставленные описания инструментов добавляют около 40 входных токенов на инструмент плюс размер схемы (два десятка инструментов OpenCode — примерно 1,5 тыс. токенов на запрос). Блок usage в каждом ответе содержит точную стоимость.
С какой модели начать?
С qwen3.8-max: способная, с инструментами и хороший выбор по умолчанию для большинства агентских задач. Переходите на Doubao Seed 2 Code для сессий с большим объёмом кода или на другую модель из таблицы выше, когда нужно больше рассуждения. Смена модели — одно поле в конфиге; ключ и баланс те же.
Работают ли потоковые вызовы инструментов?
Да. При stream: true вызов приходит чанками delta.tool_calls — сначала id и имя, затем аргументы фрагментами, — а финальный чанк несёт finish_reason tool_calls: ровно та форма, которую собирают OpenAI SDK и агенты. Чанк usage со стоимостью следует как обычно.
Что будет, если агент отправит max_tokens: 32000?
Значение обрезается до max_output_tokens модели, а не отклоняется — большинство агентов шлют большое число для любой модели. Резерв делается на min(max_tokens, default_max_tokens) выходных токенов, у моделей с инструментами это 8192, и списывается по фактическому расходу.
Можно получить структурированный JSON вместо вызовов инструментов?
Да. response_format с json_object или json_schema ({name, schema}) инструктирует модель и проверяет непотоковый ответ по схеме (JSON Schema 2020-12). При неудачной проверке делается один автоматический повтор с текстом ошибки; вторая неудача — 502 json_invalid, и оплачиваются обе попытки. Стримы не проверяются, а response_format не сочетается с tools.
Ошибки приходят в формате OpenAI?
На чат-маршруте — да: {"error": {"message", "type", "code", "param", "request_id"}} с типами OpenAI (invalid_request_error, authentication_error, rate_limit_error, insufficient_quota, server_error, …), поэтому встроенная в SDK и агенты логика повторов и пауз ведёт себя так же, как с OpenAI. Остальные маршруты по-прежнему отвечают RFC 7807 problem+json.
Храните ли вы код, который отправляет агент?
Нет. В записи о генерации остаются превью последнего сообщения пользователя (до 200 символов), хеш, число сообщений, количество токенов и стоимость. Описания инструментов, их аргументы и результаты не сохраняются, имена инструментов не пишутся в логи.
Тем же ключом можно генерировать изображения?
Да — это один ключ и один баланс на весь каталог. Чат и вызов инструментов идут через /v1/chat/completions, изображения — через /v1/generations или прямо из ассистента через MCP-сервер genmux.