Модель Text Bison Foundation в Vertex AI, как указано в документации, точно настроена для следования инструкциям на естественном языке и подходит для различных языковых задач, таких как:

  • Классификация
  • Анализ настроений
  • Извлечение сущности
  • Экстрактивный ответ на вопрос
  • Подведение итогов
  • Переписывание текста в другом стиле
  • Генерация рекламного текста
  • Идея концепции

Несколько демонстраций и руководств показывают, насколько легко начать использовать эту базовую модель. Например, я нахожусь в Vertex AI Generative Studio и запускаю образец приглашения I have a day to spare in Mumbai. Give me a day long itenary with places to visitдля модели, как показано ниже:

Я выбрал для модели значения по умолчанию и сейчас выбрал модель text-bison@001. Модель text-bison@001 model, как указано в документации, имеет следующие возможности:

Эквивалентная команда curl для

Например, вот команда curl для вызова модели тоже проста:

API_ENDPOINT="us-central1-aiplatform.googleapis.com"
PROJECT_ID="YOUR_GCP_PROJECT_ID"
MODEL_ID="text-bison@001"

curl \
-X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
"https://${API_ENDPOINT}/v1/projects/${PROJECT_ID}/locations/us-central1/publishers/google/models/${MODEL_ID}:predict" -d \
$'{
    "instances": [
        {
            "content": "I have a day to spare in Mumbai. Give me a day long itenary with places to visit?"
        }
    ],
    "parameters": {
        "candidateCount": 1,
        "maxOutputTokens": 256,
        "temperature": 0.2,
        "topP": 0.8,
        "topK": 40
    }
}'

Все идет нормально.

Давайте поговорим о ценах

Важно понимать как возможности модели, так и ее цену. Что касается возможностей, мы сделаем все проще с точки зрения модели.

На момент написания этого сообщения в блоге в документации говорилось следующее:

Max input token: 8192
Max output tokens: 1024
Training data: Up to Feb 2023

Обычно считается, что токен состоит из четырех символов. Давайте сохраним эту информацию при себе.

Итак, сколько вы собираетесь заплатить за ваш запрос. В запросе вы предоставили следующую подсказку:

У меня есть свободный день в Мумбаи. Дайте мне однодневный маршрут с местами для посещения?

Вы можете попытаться примерно выполнить токенизацию приведенных выше утверждений и подсчитать количество слов, а затем количество символов и т. д.

Есть лучший способ сделать это? Предоставляет ли Vertex AI метод определения этого для нашего анализа? Да, это так. Введите «Получить количество токенов и оплачиваемые символы».

Получите количество токенов и оплачиваемых персонажей

Эта функция доступна в Preview и хорошо документирована. В настоящее время эта функция поддерживается в следующих моделях:

  • text-bison
  • chat-bison
  • textembedding-gecko

Мы можем выполнить быстрый прогон (и я предлагаю вам сделать то же самое для интересующей вас подсказки). Мы рассмотрим следующую детальную подсказку:

У меня есть свободный день в Мумбаи. Не могли бы вы составить маршрут однодневной поездки в Мумбаи для тех, кто впервые приехал в город? Я бы хотел как можно больше пользоваться общественным транспортом.

Предполагая, что на вашем компьютере установлена ​​среда gcloud, или, что еще лучше, используйте Cloud Shell. Это команда, которую мы будем выполнять, чтобы получить токен и количество символов.

export GCP_PROJECT="Your GCP PROJECT ID"
export MODEL_ID="text-bison"


curl -X POST \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json; charset=utf-8" \
    -d @request.json \
    "https://us-central1-aiplatform.googleapis.com/v1beta1/projects/$GCP_PROJECT/locations/us-central1/publishers/google/models/$MODEL_ID:countTokens"

request.json, который мы передадим в приведенной выше команде curl, показан ниже:

{
 "instances": [
 { "prompt": "I have a day to spare in Mumbai. Could you build out an itenary for a single day trip in Mumbai for someone who is new to the city. I would like to use public transport as much as possible."}
 ],
}

Мы получаем следующий результат:

{
  "totalTokens": 45,
  "totalBillableCharacters": 150
}

Если я запущу приведенную выше подсказку в инструменте токенизатора Open AI, я смогу примерно то же самое:

Хороший ! Это хороший способ понять, за какие totalTokens и totalBillableCharacters в конечном итоге с вас будет взиматься плата.

Это еще не конец, поскольку с вас также взимается плата за выходные токены. Итак, на приведенный выше запрос я получил следующий ответ:

**Day 1:**

* Morning:
    * Start your day with a visit to the Chhatrapati Shivaji Maharaj Terminus (CST), a UNESCO World Heritage Site and one of the busiest railway stations in the world. Take some time to explore the station's beautiful architecture, including its soaring dome and intricate carvings.
    * After visiting the CST, head to the nearby Haji Ali Dargah, a Muslim shrine that is one of the most popular tourist destinations in Mumbai. Take a walk along the seashore and enjoy the views of the Arabian Sea.
* Afternoon:
    * In the afternoon, visit the Dharavi slum, the largest slum in Asia. Learn about the lives of the people who live in Dharavi and see how they have made a home for themselves in this challenging environment.
    * After visiting Dharavi, take a rickshaw ride through the city's streets. This is a great way to get a feel for the city and see some of its most iconic landmarks, such as the Gateway of India and the Taj Mahal Palace Hotel.
* Evening:
    * In the evening, head to the Colaba Causeway, a popular shopping street. Browse the stalls for souvenirs and gifts, or grab a bite to eat at one of the many restaurants.
    * After dinner, catch a Bollywood movie at a local theater. This is a great way to experience Indian culture and see some of the country's most popular films.

This is just a suggested itinerary, of course, and you can customize it to fit your interests and time constraints. But no matter how you spend your day in Mumbai, you're sure to have a memorable experience.

Используя инструмент Open AI, все сводится к следующему:

Цены на Vertex AI

Добавьте в закладки страницу Цены на поддержку генеративного ИИ на Vertex AI.

Прежде чем мы перейдем к особенностям режима Text Bison, несколько общих замечаний, упомянутых в документации:

  • Плата взимается за каждые 1000 символов ввода (подсказки) и за каждые 1000 символов вывода (ответа).
  • Символы подсчитываются по кодовым точкам UTF-8, а пробелы исключаются из подсчета.
  • Запросы прогнозирования, которые приводят к отфильтрованным ответам, оплачиваются только за ввод.

Теперь давайте посмотрим на цену модели Text Bison, и вы заметите, что указана цена за 1000 символов (0,0010 доллара США на момент написания этой статьи в блоге).

Давайте посмотрим на наш предыдущий пример и возвращаемые токены/символы ввода/вывода:

Ввод: ~ 150 символов
Вывод: ~ 1500 символов

Предполагая, что выполнено 10 вызовов, мы видим следующее общее количество символов (с помощью шаблона, предоставленного официальной документацией):

Input cost:
150 input characters x 10 prompts = 1,500 total input characters;
1,500 total input characters x ($0.001 / 1000) = $0.0015 input cost.

Output cost:
1500 output characters x 10 prompts = 15,000 total output characters;
15,000 total output characters x ($0.001 / 1000) = $0.015 output cost.

Total cost:
$0.0015 input cost + $0.015 output cost = $0.0165 total cost.

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

Несколько соображений

Здесь важно понять несколько моментов. Прежде всего, это то, как могут варьироваться токен и символы, если они не на английском языке. Например, то же самое приглашение, если я передам на хинди и получу результат на языке хинди, мы увидим следующие числа:

Подсказка на хинди выглядит следующим образом:

मुंबई में मेरे पास एक दिन खाली है। क्या आप किसी ऐसे व्यक्ति के लिए मुंबई की एक दिवसीय यात्रा की योजना बना सकते हैं जो शहर में नया है। मैं यथासंभव सार्वजनिक परिवहन का उपयोग करना चाहूँगा।

Конечная точка счетчика токенов Vertex AI возвращает мне следующий вывод:

{
 “totalTokens”: 62,
 “totalBillableCharacters”: 148
}

Попробуйте использовать разные языки, и вы обнаружите, что totalTokens и totalBillableCharacters будут различаться в зависимости от языка (из-за плотности языка и других факторов). Это также поднимает интересный вопрос, является ли оплата жетонами или символами более выгодной, но это совершенно другая дискуссия, и я рекомендую вам поэкспериментировать с этим, особенно если вам нужно поддерживать несколько языков.

Следующим стоит рассмотреть только что анонсированную модель Text Bison 32K. Свойства этой модели следующие:

Вы видите огромный скачок в поддерживаемых лимитах токенов. Всего 32 КБ в токенах (при этом как входные, так и выходные токены учитываются при общем максимальном объеме 32 КБ). Здесь следует отметить следующее:

  1. Это отличная демонстрация, позволяющая вставить весь 40–50-страничный документ в саму подсказку и напрямую запросить документ.
  2. Если вы собираетесь это сделать — подумайте сначала о том, какой будет ваша стоимость за звонок. Тысячи символов среди сотен пользователей могут быстро суммироваться.

Надеюсь, это поможет прояснить модель ценообразования. Вышеупомянутое — всего лишь мое мнение как разработчика о том, как я пришел к пониманию цен на модель Text Bison. Я не эксперт по ценообразованию и хотел бы услышать ваши отзывы и другие моменты, которые могут быть интересны всем нам.

Рекомендации