MorphogenДокументация
API

Embeddings

POST /v1/embeddings: векторы для текста.

POST/v1/embeddings

Возвращает векторное представление текста. Формат совместим с OpenAI Embeddings: работает client.embeddings.create(...). Нужна модель категории «Эмбеддинги»: text-embedding-3-small, text-embedding-3-large или bge-m3. Маскирования ПДн и потокового режима у этого эндпоинта нет.

Заголовки

ЗаголовокЗначение
AuthorizationBearer <ключ>. Обязателен. Вместо него принимается x-api-key: <ключ>
Content-Typeapplication/json
X-Morphogen-Spacespc_…: пространство расхода. Необязательный

Тело запроса

modelstringобязательный

Модель эмбеддингов из GET /v1/models. Текстовая модель даёт 400 model_category_mismatch.

inputstring | arrayобязательный

Строка или массив строк.

encoding_formatstring

float (по умолчанию) или base64.

dimensionsinteger

Размерность вектора. Поддерживают не все модели.

Размерность по умолчанию: 1536 у text-embedding-3-small, 3072 у text-embedding-3-large, 1024 у bge-m3. Для русского текста подходит bge-m3.

Пример запроса

curl https://api.morphogen.ru/v1/embeddings \
  -H "Authorization: Bearer $MORPHOGEN_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "bge-m3",
    "input": ["Как вернуть товар?", "Условия возврата"]
  }'

Пример ответа

{
  "object": "list",
  "model": "baai/bge-m3",
  "data": [
    { "object": "embedding", "index": 0, "embedding": [0.0123, -0.0456, 0.0789] },
    { "object": "embedding", "index": 1, "embedding": [0.0101, -0.0399, 0.0812] }
  ],
  "usage": { "prompt_tokens": 12, "total_tokens": 12 }
}

В примере вектор сокращён до трёх чисел, настоящий содержит 1024 значения. Расход считается по usage.prompt_tokens.

Ошибки

400model_category_mismatchМодель не из категории эмбеддингов.
400pii_masking_unsupported_endpointВ запросе X-PII-Masking: on.
401invalid_api_keyКлюч не передан, неверный, отозван или истёк.
402insufficient_fundsНа балансе не хватает денег на резерв запроса.
403model_not_allowedМодели нет в списке ключа.
404model_not_foundТакой модели нет в каталоге.
413request_too_largeТело запроса больше 32 МиБ.
429rate_limit_exceededПревышен лимит запросов или токенов в минуту.

Остальные коды: Ошибки.

На этой странице