LibreChat настраивается файлом librechat.yaml. В endpoints.custom вы объявляете name, apiKey и baseURL — ровно форма DaoXE. Подблок models решает, что могут выбирать пользователи, и LibreChat умеет подтянуть его живьём из GET /v1/models (гайд по дешёвым API).
Зачем направлять LibreChat через DaoXE#
- Self-hosted, много пользователей. Одна запись YAML обслуживает весь инстанс; ключи живут на сервере, а не в браузерах.
- Декларативные модели. Перечислите точные ID или включите
models.fetch: trueдля живого списка аккаунта. - Тюнинг на эндпоинт. Генерация заголовков, подстановка и удаление параметров — поля этого же эндпоинта.
Настройка в LibreChat#
- Правьте librechat.yaml. Откройте
librechat.yaml(тот, что смонтирован в docker-compose) и добавьте блок вendpoints.custom. - name, key, baseURL.
name: "DaoXE";apiKey: "{DAOXE_API_KEY}"(ссылка на env держит ключ вне файла);baseURL: "https://daoxe.com/v1". - Объявите модели. В
models.default— точные ID изGET /v1/models; добавьтеmodels.fetch: trueдля живого списка.defaultостаётся фолбэком при сбое загрузки. - Перезапуск и выбор. Перезапустите LibreChat, выберите DaoXE в селекторе эндпоинтов и модель в пикере, отправьте тестовое сообщение.
# librechat.yaml — custom OpenAI-compatible endpoint
endpoints:
custom:
- name: "DaoXE"
apiKey: "${DAOXE_API_KEY}"
baseURL: "https://daoxe.com/v1"
models:
default: ["YOUR_EXACT_MODEL_ID"]
fetch: true
titleConvo: true
titleModel: "current_model"Что важно учесть
baseURL заканчивается на /v1: приложение само дописывает /chat/completions; полный путь требует directEndpoint: true, чтобы использоваться дословно. titleModel: заголовки диалогов по умолчанию генерируются моделью gpt-3.5-turbo, которой у вашего ключа может не быть — задайте titleModel реальным ID из каталога (или current_model), иначе генерация заголовков падает. Не называйте как встроенное: кастомный эндпоинт с именем «openAI» или «anthropic» конфликтует со встроенными — для иконки используйте iconURL с ключом встроенного. addParams / dropParams: поля эндпоинта, добавляющие или убирающие параметры запроса — dropParams пригодится, если эндпоинт отвергает параметр по умолчанию. ID привязаны к аккаунту. Больше клиентов — в заметки по настройке клиентов.
Убедитесь, что отдают настоящую модель#
Сначала проверьте эндпоинт, а не клиент — если это не работает, настройки не помогут:
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}"Сначала проверьте эндпоинт вне LibreChat, затем сравните сложный промпт с официальным 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. Затем изучите, как поймать подмену модели, чтобы дешёвый эндпоинт не подменил вам модель на меньшую.
Частые вопросы#
LibreChat умеет DaoXE?
Да — запись endpoints.custom с baseURL: https://daoxe.com/v1, ключом через env и точными ID моделей.
Почему падают заголовки диалогов?
Дефолтный titleModel — gpt-3.5-turbo, которого у вашего ключа может не быть. Задайте реальный ID из GET /v1/models или current_model.
Включать ли /v1 в baseURL?
Да — LibreChat сам допишет /chat/completions. directEndpoint: true нужен только если вы дали полный путь.
Сколько стоит?
По моделям и аккаунту — актуальные цены; пополнение — фиксированные 1 ¥ = $1 квоты.
Попробуйте DaoXE — и проверьте его сами
Один ключ для GPT, Claude, Gemini, DeepSeek и других. Направьте открытый бенчмарк на нас и сравните — не верьте на слово.