- TTS: xtts-v2 integration with voice cloning support
- Document: docling integration for PDF/DOCX/PPTX processing
- Memory Service: added /facts/upsert, /facts/{key}, /facts endpoints
- Added required dependencies (TTS, docling)
3.5 KiB
3.5 KiB
🚀 Datalab Chandra - Швидкий старт
Дата: 2026-01-12
✅ Підтверджено: Це нормально!
Так, встановлення Datalab Chandra для обробки документів та таблиць — відмінна ідея!
📋 Що вже зроблено
- ✅ Створено
chandra-service— API wrapper для Chandra - ✅ Додано в
docker-compose.node1.yml:chandra-inference— контейнер для inference (потрібен реальний образ)chandra-service— API wrapper сервіс
- ✅ Оновлено Router:
OCR_URL→http://chandra-service:8002- Додано
CHANDRA_URL
🔧 Що потрібно зробити
1. Отримати Docker образ Chandra
Варіант A: Офіційний Datalab (потрібна ліцензія)
# Потрібно отримати доступ до Datalab registry
docker pull datalab/chandra-inference:latest
Варіант B: HuggingFace модель (open-source)
- Використати модель з HuggingFace
- Створити власний Dockerfile
2. Оновити docker-compose.node1.yml
Замінити placeholder:
chandra-inference:
image: python:3.11-slim # ← Замінити на реальний образ
На реальний образ:
chandra-inference:
image: datalab/chandra-inference:latest # або ваш образ
3. Налаштувати ліцензію (якщо потрібна)
Додати в .env:
CHANDRA_LICENSE_KEY=your_license_key_here
CHANDRA_MODEL=chandra-small # або chandra
4. Запустити сервіси
cd /opt/microdao-daarion
docker compose -f docker-compose.node1.yml up -d chandra-inference chandra-service
5. Перевірити
# Health check
curl http://localhost:8002/health
# Список моделей
curl http://localhost:8002/models
📊 Вимоги
- GPU: NVIDIA RTX 4000 SFF Ada (20GB VRAM) — достатньо для
chandra-small - VRAM:
chandra-small: ~8GBchandra: ~16GB
- Ліцензія: Потрібна для комерційного використання
🔗 Інтеграція
Router:
- Використовує
CHANDRA_URLдля обробки документів - Автоматично маршрутизує OCR запити
Gateway:
doc_service.pyможе викликати Chandra через Router- Або напряму через
chandra-service:8002
📝 Приклад використання
import httpx
async with httpx.AsyncClient() as client:
response = await client.post(
"http://chandra-service:8002/process",
files={"file": ("document.pdf", file_data)},
data={
"output_format": "markdown",
"accurate_mode": "false"
}
)
result = response.json()
markdown = result["result"]["markdown"]
⚠️ Важливо
- Docker образ: Потрібно замінити placeholder на реальний образ
- Ліцензія: Для повної версії потрібна ліцензія Datalab
- VRAM: Переконайтеся, що GPU має достатньо пам'яті
Готово до встановлення!
Оновлено: 2026-01-12