Конфигурация
Переменные окружения
Backend (.env.backend)
| Переменная | Описание | Пример |
|---|---|---|
SECRET_KEY | Django secret key | your-secret-key |
DEBUG | Режим отладки | 1 или 0 |
DATABASE_USER | Пользователь БД | postgres |
DATABASE_PASSWORD | Пароль БД | change-password |
DATABASE_NAME | Имя БД | db |
DATABASE_HOST | Хост БД | db |
DATABASE_PORT | Порт БД | 5432 |
OCR_URL_DOC | URL OCR сервиса | http://ocr:8080/api/ocr |
DIFY_BASE_URL | URL Dify API | http://dify.example.com |
DOC_TYPE | Тип документа по умолчанию | Invoice |
Frontend (.env.frontend)
| Переменная | Описание | Пример |
|---|---|---|
NEXTAUTH_SECRET | Секрет NextAuth | openssl rand -base64 32 |
NEXTAUTH_URL | URL приложения | http://localhost:3000 |
API_URL | URL Backend API | http://api:8000 |
Настройка ИИ агентов
ИИ агенты настраиваются через Django Admin:
- Откройте http://localhost:8000/admin/
- Перейдите в раздел AI Agents → Настройки ИИ Агента
- Создайте новую запись
Провайдеры
Dify:
- Укажите IP/Domain вашего Dify сервера
- Создайте приложения в Dify и добавьте их токены
n8n:
- Укажите IP/Domain вашего n8n сервера
- Создайте webhook workflows в n8n
Типы документов
Типы документов настраиваются в Admin:
- AI Agents → Типы Документов
- Создайте типы (Invoice, Contract, etc.)
- Для каждого типа создайте Поля Документа
Пример структуры
Invoice (код: 1404)
├── invoice_number (string)
├── date (date)
├── amount (decimal)
└── vendor_name (string)
Contract (код: 2001)
├── contract_number (string)
├── parties (string)
├── effective_date (date)
└── expiration_date (date)
Celery
Настройки в settings.py
CELERY_BROKER_URL = "redis://redis:6379/0"
CELERY_RESULT_BACKEND = "redis://redis:6379/0"
CELERY_ACCEPT_CONTENT = ["application/json"]
CELERY_TASK_SERIALIZER = "json"
CELERY_TIMEZONE = "Asia/Bishkek"
Мониторинг задач
# Активные задачи
docker compose exec api uv run celery -A api inspect active
# Зарезервированные задачи
docker compose exec api uv run celery -A api inspect reserved
# Статистика
docker compose exec api uv run celery -A api inspect stats
Логирование
Логи пишутся в /api/log/logging/:
general.log- общие логиcelery.log- логи Celery
Уровни логирования
LOGGING = {
"loggers": {
"app_documents": {
"level": "DEBUG", # DEBUG, INFO, WARNING, ERROR
},
}
}