Перейти к содержанию

Использование моделей эмбеддингов

Эмбеддинги текста — это числовые представления текста, отражающие его семантический смысл и позволяющие компьютеру определять связи и сходство между фрагментами текста. Они преобразуют текст в векторы в непрерывном пространстве, где близкие по смыслу тексты располагаются ближе друг к другу. Эмбеддинги широко применяются в обработке естественного языка, информационном поиске и рекомендательных системах.

В этом руководстве показано, как развертывать модели эмбеддингов в GPUStack и создавать векторные представления текста с помощью развернутых моделей.

Предварительные условия

Прежде чем начать, убедитесь, что у вас есть следующее:

  • GPUStack установлен и работает. Если нет, обратитесь к Краткому руководству.
  • Доступ к Hugging Face для загрузки файлов модели.

Шаг 1. Развертывание модели

Выполните следующие шаги, чтобы развернуть модель из каталога:

  1. Перейдите на страницу Catalog в пользовательском интерфейсе GPUStack.
  2. На странице списка моделей используйте раскрывающийся список для фильтрации с помощью Embedding.
  3. Просмотрите описание модели, максимальную длину контекста и поддерживаемые размеры.

Развернуть модель

После развертывания вы можете отслеживать состояние развертывания модели на странице Deployments.

Список моделей

Шаг 2. Создайте ключ API.

Для создания эмбеддингов текста будем использовать API GPUStack. Для этого нужен ключ API:

  1. Перейдите на страницу Access Control > API Keys.
  2. Нажмите кнопку New API Key.
  3. Введите имя ключа API и нажмите кнопку Save.
  4. Скопируйте сгенерированный ключ API. Вы можете просмотреть ключ API только один раз, поэтому обязательно сохраните его.

Шаг 3. Создание эмбеддингов текста

После развертывания модели и получения ключа API можно создавать эмбеддинги текста через API GPUStack. Пример с использованием curl:

export SERVER_URL=<your-server-url>
export GPUSTACK_API_KEY=<your-api-key>
curl $SERVER_URL/v1/embeddings \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${GPUSTACK_API_KEY}" \
-d '{
  "model": "qwen3-embedding-4b",
  "input": "The food was delicious and the waiter...",
  "encoding_format": "float"
}'

Замените <your-server-url> URL-адресом вашего сервера GPUStack и <your-api-key> ключом API, который вы сгенерировали на предыдущем шаге.

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

{
  "data": [
    {
      "embedding": [
        -0.012189436703920364, 0.016934078186750412, 0.003965042531490326,
        -0.03453584015369415, -0.07623119652271271, -0.007116147316992283,
        0.11278388649225235, 0.019714849069714546, 0.010370955802500248,
        -0.04219457507133484, -0.029902394860982895, 0.01122555136680603,
        0.022912170737981796, 0.031186765059828758, 0.006303929258137941,
        # ... additional values
      ],
      "index": 0,
      "object": "embedding"
    }
  ],
  "model": "qwen3-embedding-4b",
  "object": "list",
  "usage": {
    "prompt_tokens": 9,
    "total_tokens": 9,
    "completion_tokens": 0,
    "prompt_tokens_details": null
  }
}