DaoXE в gptel

gptel — свободный LLM-клиент для Emacs: чат из любого буфера, ответы в Markdown/Org, клиентские elisp-инструменты. Он говорит на проводном формате OpenAI, поэтому DaoXE — это одна регистрация бэкенда.

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

gptel — LLM-клиент для Emacs: спрашивайте из любого буфера, получайте Markdown/Org, давайте модели elisp-инструменты. OpenAI-совместимый путь — это gptel-make-openai, так что DaoXE — одна регистрация: host, endpoint, ключ и объявленные модели (гайд по дешёвым API).

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

  • AI в любом буфере. Дописывайте, переписывайте и спрашивайте из org-mode, кода, magit — ответ появляется там, где вы работаете.
  • Клиентские инструменты. elisp-инструменты gptel и интеграция с MCP шлют function calls по OpenAI-совместимому пути — модели DaoXE с настоящим function calling ведут себя как сами.
  • Ключи живут в Emacs. auth-source, переменные окружения или функция, возвращающая ключ, — секрет не обязан лежать в конфиге открытым текстом.

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

  1. Зарегистрируйте бэкенд. В init.el: (gptel-make-openai "DaoXE" :host "daoxe.com" :endpoint "/v1/chat/completions" :key "sk-you…-key" :stream t :models '("YOUR_EXACT_MODEL_ID")).
  2. :host — без пути. В :host идёт только DNS — daoxe.com, без https:// и без /v1. Протокол по умолчанию https; путь живёт в :endpoint.
  3. Объявите модели. :models — ручной список: gptel не ходит за GET /v1/models. Копируйте точные ID; plist на модель объявляет media/tool-способности.
  4. Выберите и отправьте. M-x gptel-menu → DaoXE и модель (в меню они с префиксом имени бэкенда); отправляйте из любого буфера.
elisp
;; init.el — register DaoXE as an OpenAI-compatible gptel backend
(gptel-make-openai "DaoXE"
  :host "daoxe.com"                  ; DNS only — no scheme, no path
  :endpoint "/v1/chat/completions"   ; gptel joins protocol://host + endpoint
  :key "sk-you…-key"                 ; or an authinfo entry / a key-returning fn
  :stream t                          ; streaming defaults to nil
  :models '("YOUR_EXACT_MODEL_ID"))  ; gptel does not fetch /v1/models

;; ~/.authinfo alternative:
;; machine daoxe.com login apikey password sk-you…-key

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

Правило :host перевёрнуто: gptel ждёт только DNS — daoxe.com, без схемы и пути; часть /v1/chat/completions кладётся в :endpoint (это и его значение по умолчанию, так что минимальный конфиг может его опустить). Стриминг по умолчанию выключен: добавьте :stream t, иначе ответ приходит одним асинхронным куском. Запроса /models нет: :models — ровно то, что вы объявили; опечатка падает на первом сообщении, а media/tool-use задаются plist'ом на модель, не определяются автоматически. Ключи: auth-source берёт DNS эндпоинта как HOST и пользователя apikey — machine daoxe.com login apikey password sk-…. Больше клиентов — в заметки по настройке клиентов.

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

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

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}"

Проверьте эндпоинт вне Emacs, затем сравните сложный промпт с официальным 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. Затем изучите, как поймать подмену модели, чтобы дешёвый эндпоинт не подменил вам модель на меньшую.

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

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

Да — gptel-make-openai с :host daoxe.com и :endpoint /v1/chat/completions превращает DaoXE в бэкенд gptel.

Почему бэкенд отдаёт 404 или «connection refused»?

Обычно https:// или путь внутри :host. Оставьте только DNS, протокол https по умолчанию, путь — в :endpoint.

Работают ли tools и reasoning?

gptel шлёт tools по OpenAI-совместимому пути для моделей с function calling; reasoning-блоки читаются из полей reasoning/reasoning_content и показываются согласно gptel-include-reasoning.

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

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

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

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