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#
- Объявите провайдера. В
~/.config/gptme/config.tomlдобавьте[[providers]]сname = "daoxe",base_url = "https://daoxe.com/v1"(примеры кастомных провайдеров в доках все сохраняют суффикс/v1) иapi_key_env = "DAOXE_API_KEY". - Задайте ключ.
export DAOXE_API_KEY="sk-you…-key"— порядок разрешения: инлайновыйapi_key, затемapi_key_env, затем${PROVIDER_NAME}_API_KEY(здесьDAOXE_API_KEYнайдётся любым путём). - Выберите модель.
gptme 'hello' -m daoxe/YOUR_EXACT_MODEL_ID— модель задаётся какprovider_name/model, ID скопирован точно изGET /v1/models. - Проверьте цикл инструментов. Запустите настоящую команду, например
gptme 'list the files in the current directory' -m daoxe/YOUR_EXACT_MODEL_ID— если gptme исполняет команду шелла и показывает реальные имена файлов, tool calling работает целиком.
# ~/.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'ом. Больше клиентов — в заметки по настройке клиентов.
Убедитесь, что отдают настоящую модель#
Сначала проверьте эндпоинт, а не клиент — если это не работает, настройки не помогут:
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:
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 и других. Направьте открытый бенчмарк на нас и сравните — не верьте на слово.