Отправить запрос к инстансу

Следуя данной инструкции, вы сможете отправить запрос к инстансу в AI Studio.

Получить код запроса и идентификатор модели вы также можете в интерфейсе AI Studio.

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

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

  1. Создайте сервисный аккаунт и назначьте ему роль ai.languageModels.user.
  2. Получите и сохраните API-ключ сервисного аккаунта, указав для него область действия yc.ai.foundationModels.execute.

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

    Примечание

    Если вы используете ОС Windows, рекомендуем предварительно установить оболочку WSL и выполнять дальнейшие действия в этой оболочке.

  3. Установите Python версии 3.10 или выше.

  4. (Опционально) Установите библиотеку Python venv для создания изолированных виртуальных окружений в Python.

  5. (Опционально) Создайте и войдите в новое виртуальное окружение Python:

    python3 -m venv new-env
            source new-env/bin/activate
            
  6. С помощью менеджера пакетов pip установите библиотеку AI SDK:

    pip install yandex-ai-studio-sdk
            

Отправьте запрос

  1. Создайте файл test_ml.py и добавьте в него следующий код:

    from yandex_ai_studio_sdk import AIStudio
            
            sdk = AIStudio(
                folder_id="<идентификатор_каталога>", auth="<API-ключ_или_IAM-токен>"
            )
            
            model = sdk.chat.completions("<идентификатор_модели>", model_version="<идентификатор_версии>")
            model = model.configure(temperature=0.3)
            result = model.run(
                [
                    {
                        "role": "system",
                        "text": "Ты умный ассистент"
                    },
                    {
                        "role": "user",
                        "text": "Привет! Какими науками занимался Альберт Эйнштейн?",
                    },
                ]
            )
            
            for alternative in result:
                print(result[0].text)
                # Раскомментируйте следующую строку, чтобы получить полный ответ:
                # print(alternative)
            

    Где:

    • folder_id — идентификатор каталога Yandex Cloud.
    • authAPI-ключ или IAM-токен сервисного аккаунта, полученный ранее и необходимый для аутентификации в API.
    • <идентификатор модели> — идентификатор модели выделенного инстанса.
    • model_version — идентификатор версии модели.
    • temperature — чем выше значение этого параметра, тем более креативными и случайными будут ответы модели. Принимает значения от 0 (включительно) до 1 (включительно).
  2. Выполните созданный файл:

    python3 test_ml.py
            

    Результат:

    Альберт Эйнштейн был выдающимся физиком, труды которого в области теоретической физики, теоретической механики и философии науки стали фундаментальными. Он посвятил свою карьеру изучению основ Вселенной, включая теорию относительности, специальную и общую теорию относительности. Кроме того, Альберт Эйнштейн изучал:\n\n* термодинамику,\n* статистическую механику,\n* электромагнетизм,\n* квантовую теорию,\n* специальную теорию относительности и др.\n\nЕго работы по общей теории относительности получили широкое признание и оказали глубокое влияние на развитие современной физики.