Образование в эпоху большого ИИ.
Часть 1. Заглядываем «под капот» ИИ-сервисов генерации текста
Начало эпохи активного использования искусственного интеллекта принято отсчитывать от даты объявления компанией OpenAI о старте сервиса ChatGPT 30 ноября 2022 года. Действительно, хотя понятие «искусственный интеллект» возникло в середине XX века, а сами технологии весьма бурно развивались с начала десятых годов XXI века, повседневное и массовое использование правильно отсчитывать от этой точки.
Ключевой особенностью ChatGPT, снявшей важный барьер при использовании ИИ-инструментов, стал чат-интерфейс, который позволяет общаться с сервисом на естественном языке. То есть для использования не нужно изучать какой-то (даже очень простой) язык программирования или хотя бы выяснять расположение кнопок в графическом интерфейсе. Всё предельно просто — напиши своими словами, что тебе нужно, и ты получишь результат.
Тем не менее, даже при такой простоте взаимодействия с ИИ, для получения более качественного результата важно понимать, как устроены ИИ-сервисы, хотя бы на принципиальном уровне.
Естественно, что для управления автомобилем совершенно не обязательно знать устройство двигателя внутреннего сгорания или помнить, что означают слова «цикл Карно» (особенно если у вас электромобиль 😉 ). Однако очень часто знание ключевых принципов, которые использованы в устройстве, сильно помогает в том, чтобы использовать устройство эффективно. То же самое относится и к генеративным сервисам — будь то ChatGPT (OpenAI), Claude (Anthropic), DeepSeek, Gemini (Google), Perplexity, YaGPT («Яндекс») или GigaChat («Сбер»).
Думаю, что сейчас практически все пользователи так или иначе используют сервисы, основанные на больших языковых моделях (даже если об этом и не подозревают). Постараюсь коротко рассказать «как это работает» — уверен, это поможет вам использовать ИИ продуктивнее.
Как устроены генеративные ИИ-сервисы?
Каждый такой сервис использует большую языковую модель — очень сложный алгоритм, настроенный или, как говорят специалисты, обученный на большом количестве текстов. Его задача, на первый взгляд, довольно проста: продолжить фразу. То есть, имея начало текста, угадать, чем этот текст лучше всего продолжить. Известная часть фразы при этом называется контекстом. Ключевая задача, которую решают разработчики алгоритмов продолжения текста, — сделать результат «максимально человеческим». То есть чтобы человек при чтении не мог бы уверенно сказать, написан текст алгоритмом или живым автором.
Конечно, продолжать текст можно по-разному. Например, можно проанализировать все тексты, когда-либо написанные человечеством, и всегда выбирать наиболее частый вариант для известного контекста. Такой «жадный» алгоритм хорош своей простотой (конечно, если не считать затраты на сбор всех текстов ;)), но всегда будет «двигаться по одним и тем же рельсам» — получить различные тексты для одного контекста будет очень сложно.
Более гибкий вариант — сэмплирование из распределения. Можно не просто найти самый популярный вариант продолжения текста, а посчитать частоты всех вариантов продолжения и делать выбор случайным образом в соответствии с частотой встречаемости. Такой способ позволяет получать на выходе разнообразные тексты для близкого контекста.
Контекст и механизм внимания
Важным параметром настроенной языковой модели является размер контекста. Понятно, что если контекст будет небольшим, то модель не сможет учитывать текст, который «находится далеко» от места продолжения. Модель с коротким контекстом будет «забывать», о чём писала раньше, и вполне может начать «ходить по кругу». Поэтому разработчики стремятся по возможности расширить контекст. Самые современные модели поддерживают работу с контекстом в сотни тысяч слов.
Другой важной особенностью современных языковых моделей является способ учёта контекста. Понятно, что слова контекста необходимо учитывать по-разному. Малозначимые слова можно игнорировать, а ключевые слова, наоборот, — хотелось бы учитывать обязательно и «с большим весом». Для этого используют механизм внимания.
Post #8
3.53K
- 👍 48
- 🔥 12
- ❤ 7
- ✍ 1
- 🆒 1