Как запустить яндекс gpt
Перейти к содержимому

Как запустить яндекс gpt

  • автор:

Яндекс Алиса и GPT нейросеть: пошаговая инструкция к использованию

Недавно компания Яндекс объявила о выходе собственной нейросети YaGPT — свой аналог ChatGPT, интегрированной в интеллектуальный голосовой помощник Алиса. Чтобы лучше понять принципы работы и применение нейросетей, мы рекомендуем пройти онлайн курс «Нейросети: от принципов к практике». Как и помощник от Googlе, ИИ поможет найти ответ на тот или иной запрос, собрать нужную информацию и систематизировать её в структурированный текст, найти решения проблемы и просто помочь с выбором досуга. В этой статье мы расскажем, как пользоваться YandexGPT, как дать Алисе правильную инструкцию и какие у ИИ преимущества.

Как запустить YaGPT?

Для использования нейросети вам в любом случае понадобится браузер Яндекс. После установки вам нужно будет запустить расширение с Яндекс Алисой и затем выполнить несколько простых шагов.

Для более глубоких знаний и практических навыков работы с нейросетями, вы также можете ознакомиться с онлайн-курсом «Симулятор ML».

Шаг 1: Откройте Яндекс Алису

Шаг 2: Задайте Яндекс Алисе команду: «Давай придумаем». Напишите этот запрос и нажмите «Отправить». После этого интеллектуальный помощник предложит вам включить функцию YaGPT и расскажет, что может искусственный интеллект.

Шаг 3: Сформулируйте в Яндекс запрос. Для первой команды Алиса предложит вам запросы на выбор, сгенерированные случайным образом. Вы можете выбрать их или написать свой вопрос. Выберите цель, для чего использовать ИИ, например, поиск сайтов для обучения иностранному языку.

Шаг 4: Отправьте в YandexGPT запрос и изучите результат

YandexGPT будет учитывать все введённые вами слова и фразы, проанализирует информацию и выдаст наилучший результат. Её сообщение может быть ответом на вопрос, решением проблемы или представлением продукта/ услуги. Также после каждого текста вы сможете дать разработчикам обратную связь. Ниже текста располагаются кнопки, которыми можно подтвердить качественную работу нейросети или оповестить разработчиков, что ответ на ваш запрос был некорректный.

Собрали полезные онлайн-курсы по ChatGPT-4, на которых вы легко научитесь использовать разные сервисы и углубите свою экспертизу в работе с нейросетями:

    t от Eduson Academy t от Нетологии

Сейчас мы дарим 10 000 ₽ на обучение в любой из школ-партнёров. При покупке через tutortop вы также получите курсы стоимостью 20 000 ₽ абсолютно бесплатно.

Получите промокод 10 000 ₽ на обучение и курсы стоимостью 20 000 ₽ в подарок!

Нажимая на кнопку «Получить», я соглашаюсь на обработку моих персональных данных.

Спасибо! Мы получили вашу заявку. Скоро с вами свяжемся.

Преимущества и недостатки YaGPT

В настоящее время, многие компании и исследовательские организации вкладывают большие средства в развитие нейронных сетей и их применение в бизнесе и общественной жизни. Если вы хотите понять эту технологию, рекомендуем пройти онлайн-курс по Deep Learning, который даст основу и практические аспекты работы с нейронными сетями. Как и у любой технологии, у YaGPT есть как плюсы, так и минусы. Рассмотрим их подробнее.

Преимущества нейросети

1. Возможность значительно ускорить работу с большим объёмом информации. Новая YaGPT, как и её аналоги — ChatGPT, может проанализировать огромное количество данных и предоставить точные ответы на вопросы в реальном времени, что настоящая находка для пользователей, которые вручную ищут необходимую информацию.

2. Интерактивность и доступность. YaGPT — удобный и простой в использовании чат-бот, который может общаться на разных языках. Расширение с интеллектуальным помощником идёт в комплекте с установкой браузера, и, если у вас есть доступ к Яндекс Алисе, у вас автоматически есть доступ к чату YaGPT. К тому же через Алису вы можете управлять чатом с помощью голоса. Занимайтесь своими делами и давайте помощнику команды, а он соберёт нужную информацию и озвучит её вслух.

3. Гибкость. YaGPT постоянно улучшается благодаря функциям на основе постоянно обновляемых данных. Плюс возможность сразу оповестить разработчиков о неточности ответа на запрос.

Недостатки нейросети

1. Недостаточная точность. YaGPT может выдавать неправильные ответы на вопросы, особенно если вопрос состоит из сложных запросов. Чтобы получить наиболее точный результат, вам нужно формулировать его максимально просто и понятно, словно вы объясняете его ребёнку.

2. ИИ может «сбоить». Иногда в YandexGPT могут возникнуть ошибки или сбои, которые требуют времени на поиск и исправления, но, если у вас в запасе есть время, это скорее нюанс, чем недостаток.

3. YaGPT в процессе обучения. На данный момент технология не имеет функции запоминания контекста запросов. Если вам потребуется дополнить полученный запрос, она может отвечать теми же формулировками, что писала вам ранее. Сервис активно работает над функционалом, потому данный минус можно считать временным.

4. Возможность злоупотребления. Такие технологии, как YaGPT, могут использоваться злоумышленниками для создания мошеннических или вредоносных программ и сайтов. Вам может попадаться разная сомнительная реклама, которая вполне может быть сгенерирована ИИ, но используемая в корыстных целях мошенников. Помните, если реклама содержит данные, которые вызывают сомнения, лучше не вводить на рекламируемую платформу личные данные.

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

Разные компании, такие как Microsoft, Google, Amazon активно внедряют искусственный интеллект и близкие к нему системы в работу. Компании таким образом стремятся сохранить работоспособность коллектива, снижая с сотрудников нагрузку.

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

Как подружить Алису с ChatGPT

О ChatGPT сейчас не говорит только ленивый. Но ему чего-то не хватает, например голоса. Давайте попробуем соединить голосовой помощник Алиса и ChatGPT. Таким образом мы сможем взаимодействовать с ChatGPT с помощью голоса. А он с помощью голоса может нам отвечать. Конечно тут будут ограничения. Я подробно опишу их дальше. Данная статья не столько о ChatGPT, сколько о том, как писать навыки для Алисы. Было интересно разобраться и написать такой навык за вечер.

ChatGPT API

Официальное API ChatGPT открыто и для его использования нужен только API_KEY c сайта OpenAI https://platform.openai.com/account/api-keys. Апи платное, есть триал и лимит бесплатного использования на первые три месяца. Сейчас,похоже, чтобы зайти туда нужен VPN.

Для взаимодействия будем пользоваться официальной питоновской библиотекой openai.

Код взаимодействия с chatGPT моделью:

aquery принимает текст запроса к chatGPT, а также опционально список предыдущих запросов prev_messages. Так мы сможем держать chatGPT в контексте наших предыдущих сообщений и можем поддерживать диалог.
openai.ChatCompletion.acreate функция запроса к chatGPT.
model это модель которую надо использовать.
messages список объектов запросов.

Вот по сути и весь код взаимодействия с ChatGPT API.

Навыки для Алисы

Что же такое навык для Алисы? Навык можно рассматривать как какую-то подпрограмму которая Алиса запускает, когда произносишь специальную фразу активации. Далее общение происходит напрямую с навыком, минуя Алису. Единственная фраза, которую она обрабатывает в этом режиме «Алиса, хватит».

Технически навык это выделенный post https endpoint. Алиса посылает POST запрос с текстом озвученным пользователем и ожидает ответ с тем текстом, который она должна озвучить. Навыки можно создавать и на платформе Yandex Cloud Functions. Для этого надо зарегистрироваться на Yandex Cloud и создать платежный аккаунт. Но Cloud Functions для навыков Алисы не тарифицируется. К сожалению создание платежного аккаунта доступно только для пользователей из России и Казахстана. Поэтому мы будем делать наш собственный сервер. Для этого надо иметь сервер с IP доступным извне, доменом и включенным https. Будем считать что все это у нас уже есть, настроено и работает.

Разработка сервера

Первая проблема вытекает именно из того что Алиса посылает запрос на наш сервер и ждет. Алиса ждет ровно 3 секунды. Если ответ не приходит за это время, Алиса скажет «Навык не отвечает» и просто выкинет вас из навыка. В это время входит и время отправки запроса и получения ответа, так что на обработку запроса остается совсем мало времени.
Понятно что генерация ответа у GPT займет больше. На этот случай после запроса пользователя мы просто просим подождать и позвать нас позже. Чтобы пользователю было не скучно можно, например, проиграть музыку, которую мы загрузили в навык. Однако навык не может инициализировать разговор, потому пользователь должен сказать что-то, чтобы активировать навык позже. Да, это достаточно неудобно и приходится каждый раз спрашивать навык о том готов ли ответ.

Начнем с запуска сервера. Будем использовать FastAPI.

Запускаем сервер вот так

Тут мы просто написали обработчик POST json запросов. Получаем запрос
(https://yandex.ru/dev/dialogs/alice/doc/request.html). Подготавливаем словарь, который будем возвращать с нашим ответом (https://yandex.ru/dev/dialogs/alice/doc/response.html).
Подробнее о запросах и ответах можно прочитать по данным ссылкам. Скажу только что в большинстве случаев нам будет нужен только текст запроса пользователя. request[‘request’][‘original_utterance’]. А ответ мы вернем в response[‘response’][‘text’]. Конечно в запросе есть и другие поля. Яндекс проводит обработку текста запроса и возвращает это нам, например можно получить именованные сущности которые назвал пользователь в своем запросе, например имена или адреса, или интенты.
session_state позволяет хранить данным между запросами к навыку, на первое время этого будет достаточно и так мы сможем сохранять контекст и поддерживать беседу с пользователем.

Функция handle_dialog будет отвечать за обработку запроса и отправку ответа от chatGPT.

req[‘request’][‘original_utterance’] может быть пустым. Это значит что пользователь только активировал навык. Приветствуем его.

Мы завели словарь answer. В этом словаре ключ — вопрос пользователя, а значение — ответ нейросети. Конечно, лучше хранить сессии пользователя вместо этого и не памяти а, например, на Redis.

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

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

Если при повторном запросе ответ все еще не готов мы снова просим повторить запрос позже.

Также мы храним историю предыдущих запросов.

Если с момента предыдущего запроса к навыку прошло достаточно времени лампочка на Алисе тухнет и чтобы задать следующий вопрос мы должны ее разбудить. Очевидно единственный способ это позвать колонку и после этого задать вопрос. Однако, если мы не смотрим на колонку, мы не узнаем активирована она еще или нет. Именно поэтому мы используем CUT_WORD. Мы просто удаляем Имя колонки из начала запроса. ChatGPT это видеть незачем.

Ну и последняя функция.

Это обертка над нашей функцией обращения к GPT-3 модели. Обрабатывает ошибки и обновляет наш словарь answers.

В принципе это весь код, его можно найти на Github.

Публикация навыка

Дальше нам надо опубликовать навык. Наш обработчик должен быть доступен с серверов яндекса по https. Кроме того сервер должен иметь публичный IP.

Подробнее о том как подключить новый навык на платформе диалогов Яндекса хорошо написано в инструкции

В качестве Webhook URL используем URL нашего обработчика

Адрес обработчика

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

Создание приватного навыка

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

Вот и все,наш первый навык готов.

В конце прикреплю пару примеров работы навыка.

Скриншоты из мобильного приложения

Заключение

Вот несколько выводов которые хотелось бы указать в заключении.

Делать навыки для алисы очень просто, мы просто должны правильно обрабатывать запросы.

Алиса имеет ограничение на время запроса в три секунды. Если не укладываемся на UX взаимодействия сильно падает и мы должны просить пользователя активировать нас позже.

Имеется ограничение на длину ответа в 1024 символов. Мы должны сделать пагинацию для длинных ответов.

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

Навык должен отвечать быстро и кратко, голосовое взаимодействие занимает много времени и не надо отнимать его у пользователя еще больше

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *