DaoXE в gptme

gptme — открытый агент в вашем терминале: шелл, браузер и редактор в локальном цикле. Именованные записи [[providers]] принимают любой OpenAI-совместимый base URL — DaoXE это один блок в config.toml.

Обновлено 2026-09-15

gptme гоняет агентный цикл в терминале — пишет код, пользуется шеллом, ходит в веб. Кастомные эндпоинты приходят через именованные записи [[providers]] в ~/.config/gptme/config.toml либо префикс local/ с OPENAI_BASE_URL; обе формы подходят DaoXE (гайд по дешёвым API).

Зачем направлять gptme через DaoXE#

  • Настоящий инструментальный цикл. gptme исполняет команды шелла и правит файлы в рабочей области — модели DaoXE с настоящим function calling ведут его от начала до конца.
  • Ключи не попадают в конфиг. api_key_env указывает имя переменной окружения — сам секрет в config.toml не попадает.
  • Дефолты на провайдера. default_model на провайдера означает, что после создания блока один -m daoxe — уже валидный выбор.

Настройка в gptme#

  1. Объявите провайдера. В ~/.config/gptme/config.toml добавьте [[providers]] с name = "daoxe", base_url = "https://daoxe.com/v1" (примеры кастомных провайдеров в доках все сохраняют суффикс /v1) и api_key_env = "DAOXE_API_KEY".
  2. Задайте ключ. export DAOXE_API_KEY="sk-you…-key" — порядок разрешения: инлайновый api_key, затем api_key_env, затем ${PROVIDER_NAME}_API_KEY (здесь DAOXE_API_KEY найдётся любым путём).
  3. Выберите модель. gptme 'hello' -m daoxe/YOUR_EXACT_MODEL_ID — модель задаётся как provider_name/model, ID скопирован точно из GET /v1/models.
  4. Проверьте цикл инструментов. Запустите настоящую команду, например gptme 'list the files in the current directory' -m daoxe/YOUR_EXACT_MODEL_ID — если gptme исполняет команду шелла и показывает реальные имена файлов, tool calling работает целиком.
toml
# ~/.config/gptme/config.toml — register DaoXE as a named provider
[[providers]]
name = "daoxe"
base_url = "https://daoxe.com/v1"
api_key_env = "DAOXE_API_KEY"
default_model = "YOUR_EXACT_MODEL_ID"

# then: gptme 'hello' -m daoxe/YOUR_EXACT_MODEL_ID

Что важно учесть

Стриминг безусловный: в доках сказано, что транспорт шлёт stream=True независимо от метаданных — эндпоинт, отвергающий стриминг, здесь сломается; OpenAI-совместимый путь DaoXE принимает потоковые chat completions. ID моделей с префиксом: в доках форма без префикса названа антипаттерном — daoxe/YOUR_EXACT_MODEL_ID, никогда голый ID; незнакомое имя даёт предупреждение «unknown model», но работает. Префикс local/ живёт на env: OPENAI_BASE_URL + OPENAI_API_KEY тоже сработают, но эти переменные общие со встроенным провайдером openai у gptme — именованный блок изолирует чище. Токенизатор может ходить в сеть: gptme подтягивает токенизатор OpenAI cl100k_base и офлайн может упереться в таймаут; в PyPI-релизах фолбэка на оценку по символам нет, так что при работе без сети прогрейте кэш tiktoken'ом. Больше клиентов — в заметки по настройке клиентов.

Убедитесь, что отдают настоящую модель#

Сначала проверьте эндпоинт, а не клиент — если это не работает, настройки не помогут:

bash
export DAOXE_API_KEY="your_api_key"

# List the exact model IDs your account can call
curl --fail-with-body --show-error --silent \
  https://daoxe.com/v1/models \
  -H "Authorization: Bearer ${DAOXE_API_KEY}"

Проверьте эндпоинт вне агента, затем сравните сложный промпт с официальным API при temperature 0:

bash
curl --fail-with-body --show-error --silent \
  https://daoxe.com/v1/chat/completions \
  -H "Authorization: Bearer ${DAOXE_API_KEY}" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "YOUR_EXACT_MODEL_ID",
    "max_tokens": 64,
    "messages": [{"role": "user", "content": "Say hello in one sentence."}]
  }'

Проверяйте нас, а не верьте на слово

Направьте открытый бенчмарк на DaoXE и на официальный API и сравните при temperature 0. Затем изучите, как поймать подмену модели, чтобы дешёвый эндпоинт не подменил вам модель на меньшую.

Частые вопросы#

gptme работает с DaoXE?

Да — блок [[providers]] с base_url = "https://daoxe.com/v1" и api_key_env = "DAOXE_API_KEY", затем -m daoxe/YOUR_EXACT_MODEL_ID.

Нужен ли OPENAI_BASE_URL?

Для именованного блока — нет: это путь префикса local/ (OPENAI_BASE_URL + OPENAI_API_KEY). Запись [[providers]] держит base URL и ключ в области провайдера daoxe.

Почему tool calling зацикливается или падает?

Доки gptme связывают сбои цикла с моделями, не следующими его tool-протоколу — берите модель с настоящим function calling или попробуйте --tool-format xml. Тест с выводом списка файлов подтвердит, что цикл исполняется.

Сколько стоит?

По моделям и аккаунту — актуальные цены; пополнение — фиксированные 1 ¥ = $1 квоты.

Попробуйте DaoXE — и проверьте его сами

Один ключ для GPT, Claude, Gemini, DeepSeek и других. Направьте открытый бенчмарк на нас и сравните — не верьте на слово.