POST Embeddings
Создание векторных представлений текста
POST Embeddings
Создание векторных представлений текста.
Доступные модели
| Модель | ID | Размерность |
|---|---|---|
| text-embedding-3-large | text-embedding-3-large | 3072 |
| text-embedding-3-small | text-embedding-3-small | 1536 |
Параметры запроса
| Параметр | Тип | Обязательный | Описание |
|---|---|---|---|
model | string | Да | ID модели |
input | string/array | Да | Текст или массив текстов |
encoding_format | string | Нет | Формат: float, base64 |
dimensions | integer | Нет | Размерность вывода |
user | string | Нет | Идентификатор конечного пользователя |
Примеры
curl -X POST "https://api.usellm.ru/v1/embeddings" \
-H "Authorization: Bearer <USELLM_API_KEY>" \
-H "Content-Type: application/json" \
-d '{
"model": "text-embedding-3-large",
"input": ["Пример текста для поиска", "Второй пример"]
}'
Ответ (200)
{
"id": "emb_123456",
"object": "list",
"data": [
{
"object": "embedding",
"embedding": [0.01, -0.02, 0.03, "..."],
"index": 0
},
{
"object": "embedding",
"embedding": [0.03, 0.11, -0.05, "..."],
"index": 1
}
],
"model": "text-embedding-3-large",
"usage": {
"prompt_tokens": 42,
"total_tokens": 42,
"cost_rub": 0.05,
"cost": 0.05
}
}
Работа с изображениями
Некоторые модели эмбеддингов поддерживают изображения на входе — это даёт мультимодальные эмбеддинги, которые улавливают визуальный контент вместе с текстом. Полезно для поиска по изображениям, определения визуального сходства и кросс-модального поиска.
Чтобы передать изображение, оберните входные данные в мультимодальный формат с массивом content, содержащим объекты image_url. В одном блоке ввода можно комбинировать текст и изображения.
| Модель | ID | Мультимодальная |
|---|---|---|
| Google: Gemini Embedding 2 Preview | google/gemini-embedding-2-preview | мультимодальная (текст + изображения) |
curl https://api.usellm.ru/v1/embeddings \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <USELLM_API_KEY>" \
-d '{
"model": "google/gemini-embedding-2-preview",
"input": [
{
"content": [
{
"type": "image_url",
"image_url": {
"url": "data:image/png;base64,..."
}
}
]
}
],
"encoding_format": "float"
}'
Текст и изображения можно совместить в одном входе, чтобы получить объединённый эмбеддинг:
curl https://api.usellm.ru/v1/embeddings \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <USELLM_API_KEY>" \
-d '{
"model": "google/gemini-embedding-2-preview",
"input": [
{
"content": [
{"type": "text", "text": "Деревянный настил среди зелёного луга"},
{"type": "image_url", "image_url": {"url": "https://example.com/example.jpg"}}
]
}
],
"encoding_format": "float"
}'
Возможность передавать изображения зависит от модели. Полный список моделей с поддержкой image input см. в каталоге моделей.
Все доступные модели
- YandexGPT Embeddings — Query:
yandex/text-search-query - YandexGPT Embeddings — Doc:
yandex/text-search-doc - Google: Gemini Embedding 001:
google/gemini-embedding-001 - Google: Gemini Embedding 2 Preview:
google/gemini-embedding-2-preview(мультимодальная) - Qwen: Qwen3 Embedding 8B:
qwen/qwen3-embedding-8b - Qwen: Qwen3 Embedding 4B:
qwen/qwen3-embedding-4b - OpenAI: Text Embedding Ada 002:
openai/text-embedding-ada-002 - OpenAI: Text Embedding 3 Small:
openai/text-embedding-3-small - OpenAI: Text Embedding 3 Large:
openai/text-embedding-3-large
Применения
- Семантический поиск — поиск по смыслу, а не по ключевым словам
- RAG — Retrieval-Augmented Generation для LLM
- Кластеризация — группировка похожих документов
- Классификация — категоризация текстов
Рекомендации
- Нормализуйте тексты — приведите тексты к единому формату перед получением эмбеддингов
- Разделяйте на чанки — оптимальный размер чанка: 200-800 токенов
- Используйте косинусное сходство — для сравнения эмбеддингов применяйте cosine similarity или dot-product
- Кэшируйте результаты — сохраняйте эмбеддинги и кэшируйте повторяющиеся по хешу текста