Облачная функция, которая оборачивает модели PaLM Text Bison

1. Введение

В этом практическом задании показано, как вызвать облачную функцию, которая инициализирует модуль Vertex AI, а затем предоставляет конечную точку для вызова модели PaLM Text Bison. Эта облачная функция написана на Python. Ниже приведен список используемых сервисов:

  • Облачные функции
  • Vertex AI PaLM API

Что вы построите

Вам предстоит создать и развернуть облачную функцию, которая предоставляет конечную точку для вызова модели PaLM Text Bison.

2. Требования

  • Браузер, например Chrome или Firefox.
  • Проект Google Cloud с включенной функцией выставления счетов.

3. Прежде чем начать

  1. В консоли Google Cloud на странице выбора проекта выберите или создайте проект Google Cloud.
  2. Убедитесь, что для вашего проекта Google Cloud включена функция выставления счетов. Узнайте, как проверить, включена ли функция выставления счетов для проекта.
  3. Активируйте Cloud Shell из консоли Google Cloud, следуя инструкциям здесь.
  4. Если ваш проект не задан, используйте следующую команду для его настройки:
gcloud config set project <YOUR_PROJECT_ID>
  1. В оболочке Cloud Shell установите следующие переменные среды:
export GCP_PROJECT=<YOUR_PROJECT_ID>
export GCP_REGION=us-central1
  1. Для активации необходимых API Google Cloud выполните следующие команды в терминале Cloud Shell:
gcloud services enable cloudbuild.googleapis.com cloudfunctions.googleapis.com run.googleapis.com logging.googleapis.com storage-component.googleapis.com aiplatform.googleapis.com

4. Развертывание облачной функции

Для создания и развертывания облачных функций выполните следующие действия:

  1. Клонируйте код из репозитория https://github.com/rominirani/genai-apptemplates-googlecloud , выполнив следующую команду в терминале Cloud Shell:
git clone https://github.com/rominirani/genai-apptemplates-googlecloud
  1. Эта команда клонирует содержимое репозитория в папку genai-templates-googlecloud.
  2. Перейдите в папку нужного нам проекта, выполнив следующую команду в терминале Cloud Shell:
cd genai-apptemplates-googlecloud/text-predict-cloudfunction
  1. Файлы main.py и requirements.txt должны находиться в папке text-predict-cloudfunction, если вы выполните команду dir или перейдете в редактор Cloud Shell.
  2. Для развертывания облачной функции выполните команду ` gcloud functions deploy` :
gcloud functions deploy predictText --gen2 --runtime=python311 --region=$GCP_REGION --source=. --entry-point=predictText --trigger-http --set-env-vars=GCP_PROJECT=$GCP_PROJECT,GCP_REGION=$GCP_REGION --allow-unauthenticated --max-instances=1

После развертывания облачной функции URL-адрес развернутой функции отображается в терминале Cloud Shell. URL-адрес имеет следующий формат:

https://$GCP_REGION-$GCP_PROJECT.cloudfunctions.net/predictText

5. Запустите облачную функцию.

Поскольку эта облачная функция развернута с использованием HTTP-триггера, вы можете вызывать её напрямую. Вот пример вызова:

curl -m 70 -X POST https://$GCP_REGION-$GCP_PROJECT.cloudfunctions.net/predictText \
-H "Content-Type: application/json" \
-d '{
  "prompt": "What are the best places to visit in the United States?"
}'

Результат выглядит следующим образом:

3470e0a6d0a30b37.png

6. Уборка

Чтобы избежать списания средств с вашего аккаунта Google Cloud за ресурсы, использованные в этой статье, выполните следующие действия:

  1. В консоли Google Cloud перейдите на страницу «Управление ресурсами» .
  2. В списке проектов выберите проект, который хотите удалить, и нажмите кнопку «Удалить».
  3. В диалоговом окне введите идентификатор проекта, а затем нажмите «Завершить» , чтобы удалить проект.
  4. Если вы хотите сохранить свой проект, пропустите описанные выше шаги и удалите облачную функцию, перейдя в раздел «Облачные функции», выбрав в списке функций ту, которую хотите удалить, и нажав кнопку «УДАЛИТЬ».

7. Поздравляем!

Поздравляем! Вы успешно использовали облачную функцию, которая является оболочкой для модели PaLM Text Bison. Для получения дополнительной информации о доступных моделях ознакомьтесь с документацией по продукту Vertex AI LLM .