1
0
Fork 0
lazy/README.md
2026-03-02 05:11:22 +03:00

2.6 KiB
Raw Blame History

lazy

lazy - репозиторий-обертка для одновременного запуска двух сервисов:

  • ai - AI Router (OpenAI-compatible API роутер)
  • megapt - URL-провайдер токена для codex-responses (/chatgpt/token)

Сервисы запускаются вместе через compose.yml.

Что здесь находится

  • ai/ - git-submodule с AI Router
  • megapt/ - git-submodule с token URL provider
  • compose.yml - оркестрация обоих сервисов
  • data/ - персистентные данные контейнеров

Быстрый старт

  1. Инициализируйте submodules:
git submodule update --init --recursive
  1. Подготовьте конфиги для роутера в data/ai/:
  • data/ai/config.yml
  • data/ai/auth.yml
  • data/ai/users.yml
  1. Убедитесь, что в auth.yml для провайдера openai указан URL на megapt:
providers:
  openai:
    url: http://megapt/chatgpt/token
  1. Поднимите оба сервиса:
docker compose -f compose.yml up -d --build
  1. Проверьте, что все работает:
curl http://127.0.0.1:8239/v1/models
curl http://127.0.0.1:8239/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{"model":"openai/gpt-5.3-codex","messages":[{"role":"user","content":"hi"}],"stream":false}'

Как это работает

  • megapt поднимает HTTP endpoint GET /chatgpt/token.
  • ai при обращении к codex-responses берет токен по URL из auth.yml.
  • Пользователь ходит только в ai, который маршрутизирует запросы в нужные апстримы.

Compose сервисы

compose.yml поднимает:

  • ai

    • build: ai
    • порт: 8239:80
    • volume: ./data/ai:/data
    • restart: unless-stopped
  • megapt

    • build: megapt
    • env: USAGE_REFRESH_THRESHOLD=85
    • volume: ./data/megapt:/data

Полезные команды

docker compose -f compose.yml ps
docker compose -f compose.yml logs -f ai
docker compose -f compose.yml logs -f megapt
docker compose -f compose.yml down

Примечания

  • Секреты и токены не коммитьте в git.
  • Директория data/ должна быть персистентной.
  • Если меняете код в submodule, не забудьте закоммитить изменения в самом submodule и обновить его ссылку в lazy.