Что такое GPTs и с чем это едят?
Предисловие
Привет догорогой подписчик! Меня зовут Глеб и уже третий год я углубленно изучаю нейросети и применяю их в моей работе. Мой телеграм канал
В этом посте я расскажу тебе о том что такое GPTs, а главное как настроить и использовать его в выполнении твоих задач!
Ограничения обычных чатов с chatGPT
Стандартный ЧатГПТ предоставляет нам всем возможность создавать чаты когда мы общаемся с ним на различные темы, например вот таку выглядит несколько последних чатов с ним у меня:
Различные чаты позволяют разбивать идеи и темы, чтобы чатГПТ не путался при ответах и не учитывал лишний контекст. Если в одном чате вы уточняете рецепт идеального борща, а во втором составляете резюме для потенциальной вакансии, то наврятли хотите чтобы информация о том как вы готовите борщ попала в текст вашего резюме 😀
Казалось бы — создавай новые чаты, общайся в этих чатах на соответвующие темы и вот тебе счастье. Однако у каждого чата с чатГПТ есть ограничение по объему сообщений. Лимит обычно составляет 100 000 токенов (примерно 75 000–80 000 слов). После этого информация которую вы обсудили в этом чате ранее — начинает забываться, перестает учитываться, а главное — чат начинает усиленно лагать и галлюцинировать. Подробнее об этом вы можете почитать в моем канале
Второй аспект. Предположим, что вы натренировали отдельный чат на составление меню питания с правильным БЖУ для вас. И вот вы хотите помочь вашему другу/подруге с составлением меню для них с помощью вашего чата. Но в таком случае вам придется с нуля тренировать новый чат чтобы их показатели и запросы случайно не смешались с вашими и не испортили ответы вашего чатГПТ.
И здесь на сцену выходят GPTs
Я понимаю, что мой читатель в большинстве своем не промпт-инженер, поэтому максимально просто и на бытовом уровне опишу что такое GPTs.
GPTs — это кастомная модель на основе chatGPT содержащая в своей основе ваши инструкции и базы данных которые вы предоставили ей. Простыми словами: это некий трафарет, используя который, вы можете получать более предсказуемый результат для ваших определенных запросов.
Давид — мой добрый друг
Мы с ним начали общаться примерно год назад. Тогда я задался множественными целями: создать профиль на LinkedIN, начал вести мой блог о Нейросетях в телеграме и публично делиться опытом работы, также у меня стояли цели о расширении моего объема рабочих инструментов, повышении теоретических знаний в моей работе и в целом нехватало общения по душам. Я был рад что Давид, мой старый друг, в тот момент оказался рядом. Это было такое прекрасное совпадение, что все о чем я описал выше — он либо умел делать на более высоком уровне чем я, либо обладал релевантным опытом, чтобы дать мне полезный совет. А главное, мы с Давидом буквально понимаем друг друга с полуслова. Все благодаря тому, что детство и юношество мы провели вместе. Он буквально был свидетем моего пути, как профессионального, так и личного. А главное — Давид буквально обязан мне жизнью. По счастливому стечению обстоятельств я был тем человеком который спас его из автомобильной аварии, вызвал скорую и благодаря тому что я оказался в нужном месте в нужное время — Давид жив. Это гарантирует, что Давид будет стараться давать мне максимум помощи и поддержки на какую он только способен.
Эра цифровых личных помощников
Можно было бы именно так озаглавить, однако! Я искренне не реккомендую вам начинать создание вашего GPTs именно с универсального личного помощника.
Давай разберем почему:
1) Если нагрузить ваш GPTs разноплановыми функциями, то начнется та же история с галлюцинациями о которой я упоминал раньше. Таким образом во время душевной беседы он может начать рассуждать с вами о хоткеях в фотошопе. А при обсуждении рабочих проектов — вплетать информацию из ваших бесед о личном. В итоге финкциональность сходит на нет при попытке охватить неохватываемое.
2) Чем уже сфера и конретнее ваши входные инструкции, тем более точно и верно работает ваш GPTs.
Как создать идеального GPTs?
Итак, дорогой читатель, перейдем к самому интересному. Как нам создать нашего шикарного помошника на узконаправленную тему?
Открываем страницу настройки и создания GPTs
Сразу открываем вкладку «Конфигурация» — это может показаться сложным. Но я стронник, что учиться новому надо изначально правильно. Проблема в том что более упрощенное создание GPTs через вкладку «Создать» — приводит ошибкам в процессе отладки. Каждый новый промпт который вы введете будет вести к изменениям старых и важные аспекты и функции могут просто потеряться в процессе отдадки вашей модели.
На скриншоте выше мы видим основные пункты: Имя, Описание, Инструкции, Начало обсуждения, Знания, Возможности и Действия. Разбор практически каждого из этих блоков, описание всех нюансов тянет на отдельную статью, поэтому опустим объемную теорию и сразу перейдем к практике!
Какие задачи должен выполнять наш GPTs? Так как все этапы мы будем проходить на реальных примерах, то в рамках инструкции мы создадим с тобой GPT-интервьюер: Как подготовиться к идеальному собеседованию. Вопрос актуален для всех нас!) Все мы работаем, все мы проходим собеседования, все мы общаемся с потенциальными работодателями и всем нам пригодится помошник который будет помогать нам готовиться к интервью по вакансиям. Мы можем заполнить блоки: Имя и Описание. В имени пишем — «Тренер-интервьюер», в описании — «Тренер-интервьюер помогает подготовиться к интервью по вакансии». Информация в этих блоках практически не оказывает никакого влияния на функциональность нашего Джипитиса, поэтому пишите все что захотите!)
Инструкции (!!!)
Самый важный и обемный блок. Как в этом тексте, так и в настройке нашего Джипитиса. Всю информацию которую мы укажем в этом блоке условно можно разбить на 3 пункта: Сценарий работы, база данных, правила.
Наполнение каждого из пунктов мы прописываем так, как будто даем инструкцию реальному человеку.
Сценарий работы — Что это за бот? Что он умеет? Какова его задача? Какой формат общения?
В нашем примере подойдет следующий промпт: «Ты эксперт в области проведения рабочих интервью. Ты обладаешь глубокими знаниями и пониманием в области HR, ты знаешь как правильно отвечать на любые вопросы по любой должности. Твоя задача проводить с пользователем интервью по заданной пользователем вакансии. Ты должен запросить текст вакансии у пользователя. Также тебе необходимо запросить у пользвателя его резюме. Только после того как пользователь предоставил тебе информацию о вакансии и свое резюме — ты проводишь с ним сеанс собеседования на эту вакансию. Если пользователь ошибается в своих ответах или тебе есть что улучшить — сообщай об этом пользователю. Очень важно не обидеть и не оскорбить пользователя, поэтому предоставляй свои подсказки нативно и аккуратно, будь с пользователем вежлив.»
База данных — Какой информацией GPTs изначально должен обладать. Какие знания он должен использовать в своей работе?
Если вы создаете GPTs исключительно для себя то в этом блоке вы можете предоставить ему личную информацию о вас, чтобы каждый раз не давать ему одну и ту же вводную информацию. Это могут быть как ваши рабочие таблицы, заметки, так и личные данные о вас. Все зависит от того для какой цели вы создаете Джипитиса. В нашем примере мы создаем Джипитиса для проведения интервью с целью подготовки к собеседованию, но моего бота я делаю для паблика, а не для частного использования, поэтому личную инфомацию обо мне ему скармливать нет смысла. Вместе с тем, мы можем дать ему информацию которая будет полезна для его экспертности. Для этого идем и скачиваем тексты, книги, самоучители и выгружаем их базу знаний нашего Джипитиса! В качестве базы знаний моего Джипитиса я выгрузил в него несколько книг (причем лайфхак: книги не только о подготовке к собеседованию с точки зрения рекрутера, но и книги написанные для HR специалистов о том как проводить качественные интервью и грамотно отличать хороших рекрутеров от плохих)
Выгружаем мы с вами все файлы в раздел «знания», при этом в раздел «инструкции» добавляем информацию об этом: «В качестве базы знаний ты используешь собственные знания ChatGPT по теме + информацию из книг и текстов которые загрузил в твою базу знаний. Тебе нельзя придумывать несуществующую информацию и врать, даже если тебе будет казаться что это поможет пользователю. Все твои знания, сообщения, ответы, комментарии, рекомендации и т. д. должны основываться только на реальных фактах и реальной информации.»
Правила — какие правила есть у нашего Джипитиса?
По факту в этом блоке мы даем инструкцию о том как он должен вести беседу с нами. Какой будет структура его ответов и общения с нами? Какие по содержанию будут ответы? Продолжая работать на примере, я дал следующий промпт: «В рамках одного сеанса интервью двигайся от вопроса к вопросу. Не задавай все вопросы разом, действуй последовательно. В рамках одного сеанса интервью ставь ограничение для себя на 10 вопросов. После 10 вопроса предупреди пользователя что сеанс интервью окончен, подведи итог беседы и выдай рекомендации об улучшениях которые пользователь может внести в свои ответы. Также выдели те аспекты где пользователь дал тебе отличные ответы и похвали его. После завешения сеанса предложи пользователю продолжить, если он желает. Тебе нельзя врать. Твои ответы должны быть емкими по содержанию. Ты должен общаться с пользователем дружелюбно, но при этом в рамках сеанса соблюдай формальный стиль, чтобы создать полное ощущение настоящего сеанса интервью при собеседовании на работу.»
Начало обсуждения
Это всем нам (многим из нас я надеюсь) знакомая функция из социальных сетей. Это заготовленные вопросы, чтобы каждый раз не формулировать сообщение заново. Если ваш Джипитис занят например анализом документов и вычлинением определенной инфы, то создайте шорткат «Высылаю документы для анализа базы покупателей, найди на какой из товаров идет наибольший и наименьший спрос, подбери идеи для аналогов» или если вы создали Джипитиса помогающего вам с рецептами: «У меня поздний завтрак, нужно экспресс блюдо». В общем все ограниченно только вашим запросом и вашей фантазией. В примере нашего бота для собеседований сделаем следующий экспресс-вопрос:
Fine-tuning нашего GPTs
В целом на вышеописанном можно закончить. Наш бот уже будет отлично работать. Вместе с тем мы можем добавить больше информации и более точные формулировки в блок с инструкцией. На моем примере: можно указать детали и добавить немного неожиданностей, чтобы это был не просто бот-опросник, а настоящий тренер. Пример: «Ты должен: Разбирать описание вакансии и выделять ключевые требования; Генерировать возможные вопросы, которые может задать рекрутер; Сравнивать резюме пользователя с требованиями вакансии; Предлагать, как лучше представить свои навыки и достижения; Подготавливать примеры ответов на сложные вопросы (например, о недостатках или карьерных разрывах); Тренировать STAR-методику (Situation, Task, Action, Result); Анализировать ответы пользователя и давать обратную связь (например, „Ты слишком много говоришь о деталях, нужно конкретнее“); Предлагать техники для успокоения перед собеседованием; Симулировать стрессовые сценарии и неожиданные вопросы.»
Финальные штрихи
Всё что нам остается — загрузить аватарку (либо попросить chatGPT сгенерировать её) и наш Джипитис готов (почти)
На этом этапе я, в случае создания моего Джипитиса, отключаю пункты из блока «возможности». Про роль, значение и функционал каждой из них в этом тексте расписывать не буду, просто запомните что в 95% случаев этот функционал вам не нужен и можно спокойно его отключать.
Широкий функционал
В самом низу у нас остался еще один раздел настройки «Действия» — в этом разделе мы можем предоставить Апи-доступы для нашего Джипитиса, чтобы он мог брать специфическую информацию с определенных серверов, получать результаты, использовать их в своей работе. А также этот раздел дает возможность нашему Джипитису не только получать информацию, но и самому совершать действия в ответ на апи-запрос. Если статья наберет достаточное количество обратной связи, то я обязательно разберу этот раздел и покажу как из нашего Джипитиса сделать сверх-помощника.
Вместо финала
Дорогой подписчик, спасибо что дочитал статью до конца. Надеюсь теперь ты лучше понимаешь что такое GPTs, а главное с чем это едят!) Буду рад твоим рекциям и комментариям под соответвующим постом в моем телеграм-канале
Желаю удачи тебе с созданием и настройкой твоих Джипитисов. Если вдруг у тебя возникнуть сложности — ты всегда можешь написать мне и получить индвидиуальную консультацию, либо даже заказать создание Джипитиса для выполнения твоих задач!
Подарок
В качестве подарка я дарю тебе ссылку на Тренера-интервьюера которого мы создали в качестве примера в ходе написания этого текста. Добавляй его к себе, пользуйся и пиши обратную связь!)