Краткий вводный гайд без математики и программирования - если вы впервые слышите про это.
А вообще - не надо говорить, надо пробовать.
Чат Гпт на официальном сайте
Чат Гпт через всевозможных Телеграм ботов
Подобных ботов разной степени платности в телеграме огромное количество. От условно бесплатных до платных. Найти их в поиске не сложно. Конкретные ссылки приводить не буду. Но помните, владелец любого бота видит и скорее всего сохраняет все что вы спршиваете и какие данные передаете. Не доверяйте сомнительным сервисам.
Гигачат
Достойная альтернатива от Сбера, к котрой причастен и автор этих строк.
Ссылки действительны на момент написания статьи. Если в момент чтения что-то не работает, то вы всегда можете это нагуглить.
Открытые модели
Если вы айтишник или около - то можете поставить себе LLM локально - прямо на компьютер или телефон. Есть веса моделей в свободном доступе в России, есть бесплатные приложения для запуска. Но это уже условно продвинутый уровень и оставим его для другой статьи. Будут отдельные статьи про то, как запускать локальные модели и работать с ними.
Яндекс GPT
В целом все приведенные модели достаточно сильные. Можете пользоваться любой из них. Важно понимать что модели улучшаются. Условно каждый квартал-полгода у каждой из моделей выходит новая версия быстрее-выше-сильнее предшественницы.
Поэтому если сегодня какая-то из моделей лажает на вашем кейсе, вполне вероятно, что через полгода все поменяется.
Здесь мы будем говорить только о текстовых нейросетях - больших языковых моделях - LLM (Large Language Models). И рассмотрим мы только основные техники, которые позволят вам успешно решать свои задачи.
К таким текстовым нейросетям относятся:
Пока это основные нейросети LLM с которыми вы скорее всего столкнетесь в доступе в России. Также могут быть их модификации делаемые крупными компаниями типа МТС, Т-Технологии и др. Есть и другие нишевые модели, но эти на конец 2024 года основные.
Большие языковые модели (LLM, от англ. Large Language Models) — это сложные алгоритмы, обученные на огромных массивах текстовых данных. Но суть этих алгоритмов проста.
Итого в сухом остатке: текст на входе - текст на выходе
И это называется языковой моделью - этот алгоритм моделирует язык в его письменной форме. Вы скармливаете алгоритму текст, а он способен наиболее вероятным и правдоподобным способом продолжать текст.
Промптинг - это навык и набор техник, как давать на вход алгоритму такой текст, чтобы полученная генерация решала вашу задачу.
GPT - global pretrained transformer (глобальный предобученный трансформер).
Почему глобальный?
Потому что очень большой. Вычислительный алгоритм, который используется чтобы по входному тексту предсказать следующее слово использует внутри себя простые математические вычисления - сложения, вычитания, умножения, деления, возведения в степень - довольно простые операции с разными коэффициентами. Эти коэффициенты называются весами. И этих весов ооочень много.
Например в более менее "разумных моделях" этих весов от 7 до 100 миллиардов. Это очень много чисел, которые нужно перемножить и сложить, чтобы предсказать следующее слово.
Потому что обучен предсказывать слова на ооочень большом корпусе текстов. Обучающее количество текстов превышает количество весов модели.
Разные модели имеют разный состав обучающих корпусов текстов. Но общий принцип такой:
Про то как модель делают инструктивной и в чем магия системных промптов мы писали в статье Системные промпты, что такое system prompt
Почему трансформер?
Архитектура всех современных языковых моделей примерно одинакова и называется трансформер. Технический разбор данной архитектуры с картинками, схемами и программным кодом можно легко нагуглить и я в этой статье приводить его не буду.
Но очень упрощенно архитектуру модели трансформер можно понимать следующим образом:
И этот механизм трансормации, если его учить на хороших примерах, обладают впечатляющей способностью генерировать тексты, отвечать на вопросы и "продолжать ваши мысли". Сейчас на этом можно строить самые разные применения: от создания контента до автоматизации поддержки клиентов и программирования.
В сухом остатке
Промптинг — это процесс составления запросов (промптов), которые передаются модели для получения желаемого результата. Успех зависит от четкости, структуры и информативности запроса.
Если вы не работаете с этим глубоко и вам не надо вникать в продвинутые техники промптинга, типа:
То вам достаточно следущих принципов.
Основные элементы промпта:
Инструкция — конкретная задача, которую нужно выполнить.
Контекст — дополнительная информация, которая помогает модели.
Входные данные — текст, фактура или вопросы для анализа.
Индикатор вывода — ожидаемый формат ответа.
Например, чтобы создать статью, промпт может выглядеть так:
Напиши статью на тему "Искусство промптинга".
Промптинг — это процесс составления запросов (промптов), передаваемых языковой модели для получения желаемого результата.
Успех зависит от четкости, структуры и информативности запроса.
Основные элементы промпта включают инструкцию, контекст, входные данные и индикатор вывода.
Статья должна быть структурированная и информативная, включающая введение, основные разделы с подробным изложением темы и заключение.
Приводи в статье примеры конкретных задач и промптов, которые эти задачи решают.
Не менее 10 примеров.
А вот что получилось у GPT4o-mini на основе этого промпта с минимальной ручной правкой:
В последние годы искусственный интеллект (ИИ) и машинное обучение (МО) достигли значительных успехов, благодаря чему языковые модели, такие как GPT-3, стали мощным инструментом для решения разнообразных задач. Однако, чтобы получать от этих моделей желаемые ответы, необходимо правильно формулировать запросы, или промпты. Искусство промптинга заключается в умении составлять четкие, структурированные и информативные запросы, которые направляют модель к нужному результату. В этой статье мы рассмотрим основные элементы промпта, а также приведем примеры промптов для решения конкретных задач.
Инструкция указывает модели, что именно от нее требуется. Это может быть конкретная задача, которую необходимо выполнить, или формат ответа. Например, "Напиши короткое эссе о климатических изменениях" или "Переведи следующий текст на испанский язык".
Контекст помогает модели лучше понять задачу, предоставляя дополнительную информацию. Например, если нужно перевести текст, контекст может включать примеры переводов.
Входные данные - это конкретная информация, с которой модель будет работать. Это может быть текст, числовые данные или любые другие исходные материалы.
Индикатор вывода указывает модели, в каком виде, формате, последовательности или логике выдавать результат.
Не все элементы промпта обязательны, но правило простое чем точнее и лучше попросили - тем точнее и лучше получили.
Задача: Написать эссе о роли технологий в современном обществе. И нагнать жути и страху по этому поводу.
Промпт:
Напиши эссе о роли технологий в современном обществе.
Укажи важность социальной ответственности технологий и их риски.
Добавь побольше технопессимизма.
Закончи тезисом, что искусственный интеллект несет большую угрозу человечеству как виду.
Используй несколько раз мысль, что нужны регуляции применения технологий со стороным правительства
Задача: Перевести следующие предложения на французский язык.
Промпт:
Переведи следующие предложения на французский язык:
1. Привет, как дела?
2. Сегодня замечательная погода.
3. Я люблю читать книги.
Задача: Решить уравнения. (Будьте осторожны, модели плохо умеют в математику! Они не калькулятор, лучше попросите их сгенерировать программный код на языке python для решения уравнения)
Промпт:
Реши следующие уравнение
x^2 - 4x + 4 = 0
распиши все шаги подробно
Задача: Предложить идеи для вечеринки на Хэллоуин.
Промпт:
Предложи идеи для вечеринки на Хэллоуин. Варианты могут включать: темы костюмов, игры и угощения.
Задача: Создать резюме для позиции на основе входных данных
Промпт:
Создай структурированное резюме на английском языке на 1 страницу для позиции Data Scientist в компанию Google.
Включи разделы: образование, опыт работы, навыки и контакты.
Если у меня в информации не хватает данных для качественного резюме, задай мне вопросы, ответы на которые нужно добавить в информацию для более качественного резюме.
Вот информация обо мне:
Саша Иванов, 42 года владею технологиями ...
Задача: Написать стихотворение о зиме.
Промпт:
Напиши короткое стихотворение о зиме в стиле Бродского.
Отрази тяжелые мысли и депрессивное настроение
Начни с образа тревоги
Задача: Объяснить концепт квантовой физики простыми словами.
Промпт:
Объясни концепт квантовой физики простыми словами.
Ты специалист в области квантовой физики и умеешь объяснять сложные понятия простыми словами.
Не делай упрощений, но все сложные вещи объясняй наглядно и понятно.
Не приводи сложных формул, объясняй их смысл.
Задача: Написать рецепт шоколадного торта.
Промпт:
Напиши рецепт шоколадного торта. Включи ингредиенты и инструкции по приготовлению.
Задача: Описать вымышленного персонажа.
Промпт:
Опиши вымышленного персонажа Эльфа.
Укажи его имя, внешний вид, характер и историю жизни.
Он великий лекарь и разбирается в травах.
Он был на службе кородя Элронда, но был изгнан за проступок.
Длина описания - 1 страница.
Задача: Создать рекламное объявление для нового смартфона.
Промпт:
Создай рекламное объявление для нового смартфона.
Включи основные преимущества, цену и контактную информацию.
Размер объявления 200 символов.
Выбирай самое существенное из информации.
Вот информация о смартфоне:
... (технические характеристики)
Искусство промптинга требует умения четко формулировать задачи, чтобы получить от языковых моделей наиболее релевантные и качественные ответы. Важно учитывать, что каждый элемент промпта играет свою роль: инструкция задает направление, контекст добавляет ясность, входные данные предоставляют необходимую информацию, а индикатор вывода определяет вид и формат результата. Освоение этих принципов позволяет максимально эффективно использовать возможности ИИ.
Кажется получилось неплохо. Такую вставку с примерами промптов я бы писал без чата гпт не 20 минут, а пару часов.
На самом деле большие языковые модели это не толко наш компаньон для чата, написания текстов и генерации идей.
Это способ автоматизировать различные бизнес-задачи.
Основная сила здесь - генерация рассуждений. Буквально на днях вышла модель O3 от Open-AI. Это языковая модель, вся генерация которой построена на воспроизведение человеческих рассуждений. И эта штука настолько хорошо рассуждает, что уже ворвалась в ТОП рейтинга мировых программистов - вошла в ТОП-200 рейтинга codeforces по решению задач спортивного программирования.
Кроме навыков чата во все большие языковые модели на этапе обучения с помощью всех трех этапов обучения закладывают навыки:
С помощью этих навыков можно автомаизировать:
Это собственно и делает большие языковые модели такими крутыми. Если раньше чтобы обучить модель искусственного ителлекта решать конкретную задачу, вам надо было собрать несколько тысяч и десятков тысяч примеров, а затем обучать небольшую модель на эту конкретную задачу.
Теперь мир изменился, вам не надо собирать тысячи обучающих примеров, достаточно написать понятную инструкцию, показать 1-3-5 примеров как надо и LLM начнет решать вашу задачу.
Но бесплатных завтраков не бывает... И такие модели имеют минусы. Прямо сейчас этих минусов в основном 3.
Еще есть не минус, а ограничение - ограничение контекстного окна. Еще год-два назад у моделей было контекстное окно в 4 или 8 тысяч токенов. Если токен 3 символа, то это было 12000 символов или 24000 символов, что довольно много даже в таком виде - несколько страниц текста.
Сейчас модели научились работать с контекстным окном порядка 100 000 токенов или даже 1 млн токенов, что очень много. Но чем больше токенов вы используете, тем больше платить за вычисления.
Если убрать за скобки деньги и время, сейчас исследователи ведут модели к следующему прорывному использованию - Агентам.
Подробно в этой статье про агентов и агентность LLM говорить не будем. Про это будет отдельная статья. Но основную мысль покажу.
Если положиться на способность моделей генерировать рассуждения, проверять рассуждения, программный код и вызов инструментов, анализировать результаты поиска или выполненного кода, то мы можем создать программу, которорая инспектирует генерацию модели и выполняет то, что модель сказала сделать.
Тогда получаем следующий цикл.
Это мы описали пдход ReAct - Reasoning-Acting или Рассуждение-Действие. Пока это долго и дорого. Но в целом для многих задач приемлемо. А если вместо поиска гугла и sql прикрутить управление бовеыми дронами, получим Скайнет на минималках. Я думаю Американские военные коллеги уже что-то такое мутят.
А еще в агентах можно сделать не адного агента с Re-Act, а не несколько десятков и с разными инструментами, ролями, системными промптами, модеоями промптинга внутри цикла.
Например я видел на одной из закрытых презентаций браузерную игру, полностью написанную агентами. Точно не помню всех агентов, но в процессе работы были LLM-агента в ролях:
Модель использовалась мультимодальная, которая кроме текстов еще и картинки умеет анализировать (про такие модели также сделаю статью). И весь этот конгломерат агентов вызывал друг-друга как инструменты, анализирвал результат до тех пор, пока продуктолог не решил что игра написана и готова.
Это было по вычисления долго и дорого. Но в целом уже возможно.
Раз у нас появились агенты и есть вычислительные мощности, а модели могут генерировать рассуждения и анализировать результаты, то мы можем использовать их нечелоческие возможности.
Если один живой ученый может ставить 1 эксперимент в день, то сделав LLM агента, мы можем запустить 10000 его копий на кластере и получить 10000 экспериментов в день с анализом их результатов, которые следующие 10000 агентов просмотрят выберут каждый лучший на свой взгляд или ТОП 10 направлений и поставят следующие 10000 экспериментов за следующий день.
И так за месяц мы сможем пройти научный путь, для которого обычным людям могло бы понадобиться пара столетий.
Остается тут ровно одна проблема - то что оцифровано можно так параллелить в тысячи параллельных цепочек рассуждений и экспериментов. А вот то что требует офлайн действий и экспериментов пока еще нет.
Но наука оцифровывается быстро. Так что ждем научных прорывов.
Осваивайте эти болталки в виде чат-ботов и больших языковых моделей. Современное человечество уже научилось прикручивать к ним картинки и видео, использовать их как интеллект для генерации решений. И осталось только удешевить вычисления.
Так есть в них Интеллект? Они думают, чувствуют? Они живые? Они хотят захватить мир?
Я думаю, это ключевая технология ближайших пары десятилетий, вокруг которой будет много строиться и проникновение которой в нашу офлайновую жизнь будет существенно все вокруг менять.