Files
microdao-daarion/HELION-EMBEDDING-API.md
Apple 5290287058 feat: implement TTS, Document processing, and Memory Service /facts API
- 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)
2026-01-17 08:16:37 -08:00

111 lines
2.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 🔌 API для ембендінгу
**Дата:** 2026-01-12
---
## 📋 Знайдені API для ембендінгу
### 1. **Vision Encoder Service** (OpenCLIP)
**Призначення:** Текст та зображення embeddings
- **Порт:** 8001
- **Технологія:** OpenCLIP (ViT-L-14)
- **Модель:** OpenAI pretrained
- **Функції:**
- Текст embeddings
- Зображення embeddings
- Multimodal embeddings
- Інтеграція з Qdrant
**Endpoints:**
- `POST /embed` - генерація embeddings
- `GET /health` - health check
**Конфігурація:**
```yaml
vision-encoder:
ports:
- "8001:8001"
environment:
- DEVICE=cpu # або cuda для GPU
- MODEL_NAME=ViT-L-14
- MODEL_PRETRAINED=openai
- NORMALIZE_EMBEDDINGS=true
- QDRANT_HOST=qdrant
- QDRANT_PORT=6333
```
---
### 2. **Memory Service Embedding Layer** (Cohere)
**Призначення:** Текст embeddings через Cohere API
- **Технологія:** Cohere API
- **Модель:** `embed-multilingual-v3.0`
- **Розмірність:** 1024
- **Функції:**
- Текст embeddings
- Batch embeddings
- Search document embeddings
- Search query embeddings
**Використання:**
```python
from services.memory-service.app.embedding import get_embeddings
embeddings = await get_embeddings(
texts=["текст для embedding"],
input_type="search_document" # або "search_query"
)
```
---
### 3. **Memory Orchestrator Embedding Client**
**Призначення:** Простий клієнт для embeddings
- **Endpoint:** `http://localhost:8001/embed` (Vision Encoder)
- **Fallback:** Stub embeddings якщо сервіс недоступний
**Використання:**
```python
from services.memory-orchestrator.embedding_client import EmbeddingClient
client = EmbeddingClient(endpoint="http://vision-encoder:8001/embed")
embedding = await client.embed("текст")
```
---
## 🔄 Інтеграція з Helion
### Через Router:
Router має доступ до Vision Encoder через:
- `VISION_ENCODER_URL=http://vision-encoder:8001`
### Через Memory Service:
Memory Service використовує Cohere API для embeddings документів.
### Через Qdrant:
Vision Encoder автоматично зберігає embeddings в Qdrant для векторного пошуку.
---
## 📝 Конфігурація для НОДА1
В `docker-compose.node1.yml` додано:
```yaml
vision-encoder:
ports:
- "8001:8001"
environment:
- DEVICE=cpu # НОДА1 без GPU
- QDRANT_HOST=qdrant
- QDRANT_PORT=6333
```
---
**Оновлено:** 2026-01-12