Yandex Cloud
Поиск
Связаться с намиПодключиться
  • Истории успеха
  • Документация
  • Блог
  • Все сервисы
  • Статус работы сервисов
    • Популярные
    • Инфраструктура и сеть
    • Платформа данных
    • Контейнеры
    • Инструменты разработчика
    • Бессерверные вычисления
    • Безопасность
    • Мониторинг и управление ресурсами
    • ИИ для бизнеса
    • Бизнес-инструменты
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Облако для интеграторов
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Контент-программа
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Калькулятор цен
    • Тарифы
    • Промоакции и free tier
    • Правила тарификации
  • Истории успеха
  • Документация
  • Блог
Проект Яндекса
© 2025 ООО «Яндекс.Облако»
Yandex AI Studio
  • Начало работы с Model Gallery
    • О сервисе Yandex AI Studio
    • Yandex Workflows
    • Квоты и лимиты
    • Термины и определения
    • Все инструкции
    • Отключить логирование запросов
    • Получить API-ключ
      • Генерация изображений
      • Пакетная обработка данных
        • Дообучить модель генерации текста
        • Дообучить модель классификации текста
        • Дообучить модель эмбеддингов
  • Переход с AI Assistant API на Responses API
  • Совместимость с OpenAI
  • Управление доступом
  • Правила тарификации
  • Аудитные логи Audit Trails
  • Публичные материалы
  • История изменений

В этой статье:

  • Перед началом работы
  • Подготовьте данные
  • Запустите дообучение
  • Обращение к дообученной модели
  1. Пошаговые инструкции
  2. Model Gallery
  3. Дообучение моделей
  4. Дообучить модель эмбеддингов

Дообучить модель эмбеддингов

Статья создана
Yandex Cloud
Улучшена
Danila N.
Обновлена 28 октября 2025 г.
  • Перед началом работы
  • Подготовьте данные
  • Запустите дообучение
    • Обращение к дообученной модели

Дообучение моделей по методу LoRA находится на стадии Preview.

Этот пример показывает, как дообучить модель эмбеддингов по методу LoRA в AI Studio. Ссылки на другие примеры доступны в разделе См. также.

Перед началом работыПеред началом работы

Чтобы воспользоваться примерами:

Консоль управления
SDK
cURL

Для работы из консоли управления подготовительные действия не требуются.

  1. Создайте сервисный аккаунт и назначьте ему роль ai.editor.

  2. Получите и сохраните API-ключ сервисного аккаунта.

    В примерах используется аутентификация с помощью API-ключа. Yandex Cloud ML SDK также поддерживает аутентификацию с помощью IAM-токена и OAuth-токена. Подробнее см. в разделе Аутентификация в Yandex Cloud ML SDK.

  3. С помощью менеджера пакетов pip установите библиотеку ML SDK:

    pip install yandex-cloud-ml-sdk
    
  1. Получите данные для аутентификации в API, как описано в разделе Аутентификация в API Yandex AI Studio.

  2. Чтобы воспользоваться примерами, установите cURL.

  3. Установите gRPCurl.

  4. (Опционально) Установите утилиту jq для потоковой обработки JSON-файлов.

  5. Получите IAM-токен для аутентификации в API.

    Примечание

    У IAM-токена короткое время жизни — не более 12 часов.

Подготовьте данныеПодготовьте данные

  1. Подготовьте данные в необходимом формате. Для дообучения модели эмбеддингов используйте датасеты пар TextEmbeddingPairParams или триплетов TextEmbeddingTripletParams.
  2. Создайте датасет любым удобным способом. В консоли управления вы также сможете создать датасет позднее на этапе создания дообучения.

Запустите дообучениеЗапустите дообучение

Консоль управления
SDK
cURL
  1. В консоли управления выберите каталог, на который у вашего аккаунта есть роли ai.playground.user, ai.datasets.user и ai.models.editor или выше.

  2. В списке сервисов выберите AI Studio.

  3. На панели слева нажмите Дообучение моделей.

  4. Нажмите Дообучить модель.

  5. Введите имя и описание дообученной модели. Требования к имени:

    • длина — от 2 до 63 символов;
    • может содержать строчные буквы латинского алфавита, цифры и дефисы;
    • первый символ — буква, последний — не дефис.
  6. (Опционально) Добавьте или удалите метки дообучения. Они позволяют разделить и сгруппировать ресурсы на логические группы.

  7. В поле Задача выберите Эмбеддинг.

  8. Выберите Тип эмбеддингов, соответствующий подготовленному датасету.

  9. В поле Модель выберите нужную модель.

  10. В поле Датасет нажмите Добавить.

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

  12. Нажмите Дополнительные параметры, чтобы провести тонкую настройку дообучения.

  13. Нажмите Начать дообучение.

  1. Создайте файл start-tuning.py и добавьте в него код:

    #!/usr/bin/env python3
    
    from __future__ import annotations
    import uuid
    from yandex_cloud_ml_sdk import YCloudML
    
    # Конфигурация
    folder = "<идентификатор_каталога>"
    token = "<API-ключ>"
    type = "<тип_датасета>"
    dataset_id = "<идентификатор_датасета>"
    
    
    def main():
        sdk = YCloudML(
            folder_id=folder,
            auth=token,
        )
    
        # Зададим датасет для обучения и базовую модель
        train_dataset = sdk.datasets.get(dataset_id)
        base_model = sdk.models.text_embeddings("text-embeddings")
    
        # Запускаем дообучение
        # Дообучение может длиться до нескольких часов
        tuning_task = base_model.tune_deferred(
            train_dataset, name=str(uuid.uuid4()), embeddings_tune_type=type
        )
        tuned_model = tuning_task.wait()
        print(f"Resulting {tuned_model}")
    
    
    if __name__ == "__main__":
        main()
    

    Где:

    • <идентификатор_каталога> — идентификатор каталога, в котором создан сервисный аккаунт.

    • <API-ключ> — API-ключ сервисного аккаунта, полученный ранее и необходимый для аутентификации в API.

      В примерах используется аутентификация с помощью API-ключа. Yandex Cloud ML SDK также поддерживает аутентификацию с помощью IAM-токена и OAuth-токена. Подробнее см. в разделе Аутентификация в Yandex Cloud ML SDK.

    • <тип_датасета> — тип созданного ранее датасета. Возможные значения: pair (пара) и triplet (триплет).

    • <идентификатор_датасета> — идентификатор созданного ранее датасета для обучения.

  2. Выполните созданный файл:

    python3 start-tuning.py
    

    Дообучение модели может занять до 1 суток в зависимости от объема датасета и загрузки системы.

    Используйте полученный URI дообученной модели (значение поля uri) при обращении к ней.

  3. Метрики дообучения доступны в формате TensorBoard. Загруженный файл можно открыть, например, в проекте Yandex DataSphere:

    metrics_url = new_model.get_metrics_url()
    download_tensorboard(metrics_url)
    
  1. Запустите дообучение.

    • С датасетом пар:

      grpcurl \
        -H "Authorization: Bearer <IAM-токен>" \
        -d @ \
        llm.api.cloud.yandex.net:443 yandex.cloud.ai.tuning.v1.TuningService/Tune <<EOM
        {
          "base_model_uri": "emb://<идентификатор_каталога>/text-embeddings/latest",
          "train_datasets": [{"dataset_id": "<идентификатор_датасета>", "weight": 1.0}],
          "name": "train-embeddings",
          "text_embedding_pair_params": {}
        } 
      EOM
      
    • С датасетом триплетов:

      grpcurl \
        -H "Authorization: Bearer <IAM-токен>" \
        -d @ \
        llm.api.cloud.yandex.net:443 yandex.cloud.ai.tuning.v1.TuningService/Tune <<EOM
        {
          "base_model_uri": "emb://<идентификатор_каталога>/text-embeddings/latest",
          "train_datasets": [{"dataset_id": "<идентификатор_датасета>", "weight": 1.0}],
          "name": "train-embeddings",
          "text_embedding_triplet_params": {}
        } 
      EOM
      

    Где:

    • <IAM-токен> — IAM-токен сервисного аккаунта, полученный перед началом работы.
    • <идентификатор_каталога> — идентификатор каталога, в котором дообучается модель.
    • <идентификатор_датасета> — идентификатор датасета, сохраненный ранее.

    Результат:

    {
      "id": "ftna7bps63gh********",
      "createdAt": "2025-07-16T10:44:57Z",
      "modifiedAt": "2025-07-16T10:44:57Z",
      "metadata": {
        "@type": "type.googleapis.com/yandex.cloud.ai.tuning.v1.TuningMetadata",
        "status": "CREATED",
        "tuningTaskId": "ftna7bps63gh********"
      }
    }
    

    В ответе сервис вернет объект Operation. Сохраните идентификатор (id) операции, полученный в ответе.

  2. Дообучение модели может занять до 1 суток в зависимости от объема датасета и степени загрузки системы. Чтобы проверить готовность дообучения, запросите статус операции:

    grpcurl \
      -H "Authorization: Bearer <IAM-токен>" \
      -d '{"operation_id": "<идентификатор_операции>"}' \
      llm.api.cloud.yandex.net:443 yandex.cloud.operation.OperationService/Get
    

    Где:

    • <IAM-токен> — IAM-токен сервисного аккаунта, полученный перед началом работы.
    • <идентификатор_операции> — идентификатор операции дообучения модели, полученный на предыдущем шаге.

    Если дообучение завершилось, объект Operation будет содержать URI дообученной модели в поле targetModelUri:

    {
      "id": "ftna7bps63gh********",
      "createdAt": "2025-07-16T10:44:57Z",
      "modifiedAt": "2025-07-16T10:48:07Z",
      "done": true,
      "metadata": {
        "@type": "type.googleapis.com/yandex.cloud.ai.tuning.v1.TuningMetadata",
        "status": "COMPLETED",
        "tuningTaskId": "ftna7bps63gh********"
      },
      "response": {
        "@type": "type.googleapis.com/yandex.cloud.ai.tuning.v1.TuningResponse",
        "status": "COMPLETED",
        "targetModelUri": "emb://b1gt6g8ht345********/text-embeddings/latest@tamr0j6m2crpi********",
        "tuningTaskId": "ftna7bps63gh********"
      }
    }
    

    Используйте полученный URI дообученной модели (значение поля targetModelUri) при обращении к ней.

  3. Метрики дообучения доступны в формате TensorBoard. Получите ссылку, чтобы загрузить файл:

    grpcurl \
      -H "Authorization: Bearer <IAM-токен>" \
      -d '{"task_id": "<идентификатор_задания>"}' \
      llm.api.cloud.yandex.net:443 yandex.cloud.ai.tuning.v1.TuningService/GetMetricsUrl
    

    Загруженный файл можно открыть, например, в проекте Yandex DataSphere.

Обращение к дообученной моделиОбращение к дообученной модели

После завершения операции дообучения сохраните URI дообученной модели вида emb://<идентификатор_каталога>/text-embeddings/latest@<суффикс_дообучения>. Используйте его в качестве пользовательской модели эмбеддингов, если это необходимо. Например, можно указать model_uri при построении поискового индекса.

См. такжеСм. также

  • Дообучение моделей
  • Дообучить модель генерации текста
  • Дообучить модель классификации текста
  • Дообучение моделей в DataSphere Notebooks
  • Больше примеров SDK доступно в репозитории на GitHub.

Была ли статья полезна?

Предыдущая
Дообучить модель классификации текста
Следующая
Создать голосового агента с помощью Realtime API
Проект Яндекса
© 2025 ООО «Яндекс.Облако»