Меня зовут Елена Загибалова. Я работаю в IT уже 15 лет и за это время прошла путь от сервисного инженера до руководителя отдела.
Сейчас моя деятельность связана с разработкой новых решений, в том числе с использованием искусственного интеллекта. В первую очередь мы сосредоточились на работе с языковыми моделями, и у нас накопился достаточно солидный опыт. С радостью поделюсь с вами тем, как все это работает на практике.
Во-первых, мы разберемся с аббревиатурами LLM и MLLM. Затем посмотрим, какие сервисы позволяют получить доступ к современным моделям, сравним, как они работают на разных задачах. Особое внимание уделим вопросам конфиденциальности – это крайне важный аспект. И, конечно, обсудим последние тенденции и перспективы развития: что нового и интересного происходит в этом мире прямо сейчас.
Что такое LLM и MLLM
Итак, первое – аббревиатуры LLM и MLLM. Что они означают? Все модели, которые начали появляться изначально, такие как GPT-2, GPT-3 и им подобные, относились к категории LLM – Large Language Model, то есть большие языковые модели. Их основная функция – работа с текстом: генерация контента, перевод на другие языки, ведение диалогов, анализ текстовых файлов и так далее. Для пользователя такие системы выглядят как черный ящик, на вход которого подается текст, а на выходе формируется другой текст.
Со временем модели стали развиваться и приобретать новые способности. Появились мультимодальные модели, получившие обозначение MLLM – Multimodal Large Language Model. Это уже не просто одна модель, а целый комплекс взаимосвязанных систем, способных обрабатывать разные типы данных. Под капотом у таких моделей находятся отдельные компоненты для анализа текста, распознавания объектов на изображениях, обработки видео и аудиозаписей. Теперь на вход можно подавать любой вид контента – фото, видео, звук или текст, – а на выходе модель возвращает текстовый ответ.
Такие модели значительно расширяют возможности взаимодействия с искусственным интеллектом, делая его более универсальным и гибким.
Что такое контекст и почему он важен
И здесь нам важно разобраться с тем, как это вообще работает. Важный аспект – это контекст. Что это такое? Это суммарная длина того текста, который модель получает на входе, и того, который она генерирует на выходе. По историческим причинам контекст измеряется в токенах. Если говорить о русском языке, то один токен – это примерно 2–3 буквы. Разные модели обладают разной длиной контекста, и сейчас у самых продвинутых GPT-моделей он достигает 128 тысяч токенов, что считается очень хорошим показателем, особенно если вспомнить, что еще пару лет назад этот лимит составлял всего 4 тысячи.
Для сравнения, например, у GigaChat контекст составляет 32 тысячи токенов. Однако сами по себе токены не дают четкого представления о реальном объеме информации, поэтому переведем их в привычные единицы. Условно 128 тысяч токенов – это около 80 страниц сплошного русского текста. Это значит, что модель одновременно может оперировать только таким объемом информации. Например, если взять ChatGPT с поддержкой 128 тысяч токенов, он способен обрабатывать за один раз не более 80 страниц текста.
Другими словами, при диалоге с вами его «оперативная память» ограничена этим объемом. Здесь возникает закономерный вопрос, так как многие уже работали с такими моделями и загружали файлы, значительно превышающие по объему эти 80 страниц. Как же тогда модель справляется? Ведь кажется, что она анализирует весь документ целиком.
Происходит это благодаря технологии RAG – Retrieval-Augmented Generation, или генерации с расширенным поиском. Вот как это работает: когда вы загружаете в модель, например, большой файл и задаете по нему вопрос, она сначала анализирует весь документ, но не сохраняет его полностью в контексте. Вместо этого она извлекает из него наиболее релевантные фрагменты – такие, которые максимально связаны с вашим запросом, – и укладывает их в доступный лимит контекста, условно те же 80 страниц. Затем на основе этих фрагментов формируется ответ.
Таким образом, ChatGPT в режиме взаимодействия с документами функционирует скорее как умный поисковик, а не как система, которая запоминает или обучается на ваших данных. Ему передается информация, он находит в ней нужные части, анализирует и выдает человекопонятный ответ. Именно поэтому такая технология эффективна для работы с большими объемами текста, даже если они не помещаются в контекст целиком.
Пример практического применения: создание нейропродавца
Для ряда задач такой технологии оказывается вполне достаточно. Например, сейчас активно обсуждаются так называемые нейропродавцы – автоматизированные системы, которые ведут диалог с клиентами и продают продукт без участия человека. Именно так они и работают.
Допустим, вы хотите создать своего нейропродавца на базе ChatGPT. В этом случае вы загружаете в модель документ с инструкцией, как правильно продавать ваш товар, и говорите: «Теперь ты менеджер по продажам. Общайся с пользователем, опираясь на эту инструкцию при формировании ответов».
Затем вы подключаете ChatGPT через API, например, к Telegram-боту. На этом все – решение готово. Реализуется оно буквально за 10–20 строк кода, и у вас уже есть функционирующий нейропродавцы. Такой подход удобно использовать, когда речь идет о массовых продажах, где каждый клиент не требует персонального подхода.
Когда поток обращений большой, а рук не хватает, чтобы отвечать всем, такая система становится настоящим помощником. Технология действительно проста в реализации. Вы можете найти программиста, который за пару тысяч рублей быстро соберет вам такого бота, и он будет работать круглосуточно, отвечая на типовые вопросы и предлагая продукт.
Дообучение моделей (fine-tuning): сложности и нюансы
Однако для некоторых задач одного лишь использования контекста и технологии RAG недостаточно. В случаях, когда требуется более глубокая интеграция специфических знаний, например при создании узкоспециализированных помощников, необходимо полноценное дообучение модели. Возьмем тот же ChatGPT – его можно дообучить, используя технологию fine-tuning. На сайте OpenAI для этого предусмотрен отдельный раздел, где нужно загрузить подготовленные данные в формате вопрос-ответ и запустить процесс обучения. Только после этого вы получаете собственную версию модели, которая будет опираться именно на ваши материалы.
Часто возникает ожидание, что достаточно просто передать данные, и модель сразу начнет «знать» новую информацию. Но на практике все не так просто. Скорее всего, такой подход даже не сработает. Проблема в том, что ChatGPT уже обучен на огромном объеме информации, и когда вы добавляете свои данные, между старыми и новыми знаниями может возникнуть конфликт. Например, если модель изначально знает, что на желтый свет нужно двигаться вперед, а вы в новых данных указываете, что на красный свет тоже нужно идти вперед, система может оказаться в ситуации противоречия. И поведение модели в таком случае предсказать сложно.
Поэтому просто загрузить датасет – это только начало. Процесс дообучения требует нескольких итераций: нужно пробовать разные форматы данных, экспериментировать с их структурой, проверять результаты и корректировать подход.
У ChatGPT есть удобный интерфейс, который позволяет сравнивать дообученную модель с оригинальной, задавая одинаковые вопросы и анализируя, насколько точнее или полезнее стал ответ. Это помогает понять, достигнут ли нужный эффект.
Технология fine-tuning доступна не только в ChatGPT. Она поддерживается во многих других системах – как в платных, так и в открытых open-source решениях. Есть множество менее мощных, но зато более гибких моделей, которые можно самостоятельно обучить под конкретную задачу. В целом сама технология выглядит достаточно понятной, но, как и в любой сложной системе, здесь есть множество нюансов, которые влияют на конечный результат.
Обзор доступных моделей и сервисов
Теперь давайте посмотрим, какие модели вообще существуют и как к ним можно подключиться. Начнем с отечественных решений. Первое, что приходит на ум – GigaChat.
Для разработчиков он доступен бесплатно в режиме тестирования. Если же вы хотите использовать его в бизнесе, подключить через API, то это уже платная услуга. Минимальный тариф составляет менее тысячи рублей в месяц. Работает стабильно, интеграция возможна, но я все же использую его выборочно.
Дальше – Яндекс. Они интегрировали языковую модель GPT, известную как Яндекс.Нейро, прямо в свой браузер. Вы можете его скачать, установить, и сразу получить доступ к чату через поисковик. В целом система работает, интерфейс удобный. Я иногда им пользуюсь, хотя, честно говоря, крайне редко. Признаюсь, я фанат ChatGPT и позже объясню, почему именно он мне ближе. Еще одно решение, которое стоит упомянуть, – Perplexity. Оно тоже достаточно известное. Работает без необходимости использовать VPN: заходите на сайт, задаете вопрос – и получаете ответ. В целом справляется неплохо, а в некоторых случаях, по моему мнению, даже лучше, чем тот же GigaChat.
Что касается зарубежных систем, то основные игроки (актуально на 2024 год – Прим. ред.) – это Gemini от Google, ChatGPT от OpenAI и модель Claude.
Тест №1. Контент-маркетинг
Когда я бываю на конференциях, часто слышу от спикеров восторженные речи: мол, за языковыми моделями будущее, скоро можно будет уволить всех аналитиков и разработчиков, потому что все будут делать нейросети. При этом мне всегда хочется задать им один вопрос: а вы видели, как это работает на практике?
Давайте посмотрим, как обстоят дела в реальности. Начнем с достаточно простой задачи, которая часто возникает у маркетологов, в том числе и в нашей компании – задача по контент-маркетингу. Представьте, что нам нужно написать текст для сайта. У нас есть четкие ограничения: 500 символов, определенная целевая аудитория – в нашем случае это аналитики и разработчики. Текст должен быть релевантным именно этой группе, а не просто общим потоком слов. Также есть требования к стилистике и конкретный набор фактов, которые обязательно нужно включить.
То, что мы передаем модели – промт – это и есть наш запрос: «Напиши текст на сайт, соблюдая длину, аудиторию, стиль и используй следующие факты». Рассмотрим сначала ChatGPT. До недавнего времени последней версией считалась GPT-4, но буквально неделю или две назад появилась новая модель – O1 Preview (актуально на 2024 год – Прим. ред.). Она позиционируется как более продвинутая: способна к логическому рассуждению, лучше справляется с задачами, где нужно анализировать и делать выводы.
Я проверила ее на этой простой задаче по генерации текста – разницы практически не заметила.
Что, впрочем, ожидаемо. Сам OpenAI говорит, что на таких типах задач различий вы не увидите, и советует использовать обычную версию ChatGPT, так как она справляется вполне хорошо. И действительно, в данном случае и обычная модель, и O1 Preview справились отлично: объем в 500 символов соблюден, целевая аудитория учтена, стиль соответствует задаче, все требуемые факты корректно включены.
Теперь посмотрим, что получилось у GigaChat.
Первое, что бросается в глаза – объем не соблюден. Вместо 500 символов текст значительно длиннее. Второе – нарушена целевая аудитория. Часть текста адресована не аналитикам и разработчикам, а клиентам компании, что противоречит исходному заданию. Хотя, стоит отметить, факты из промта переданы правильно.
Ситуация с Яндекс.Нейро примерно такая же.
Объем снова не выдержан, аудитория не учтена – часть текста явно ориентирована на клиентов. Но здесь проявился еще один интересный момент: Яндекс.Нейро самостоятельно вышел в интернет и подтянул дополнительную информацию о компании, которой не было в исходных данных. Он добавил, что компания занимается складской логистикой, закупками, продажами – и в целом эти сведения верны. Однако я этого не просила, и такие «инициативы» нарушают контролируемость процесса.
Более того, при проверке оказалось, что некоторые из этих фактов он исказил. Это вызывает серьезные вопросы к достоверности. Что касается других систем – ни Claude, ни Gemini не справились с ограничением в 500 символов. Только ChatGPT точно выдержал объем. Причина проста: модели оперируют токенами, а не символами, и понятие «500 символов» для них не такое однозначное, как для человека.
По целевой аудитории тоже чистый результат показал только ChatGPT. Остальные, включая Gemini и Claude, частично переключались на другую аудиторию. Со стилистикой проблем почти не возникло – все системы справились. Моя просьба сделать текст «сочно-привлекательным» – субъективная задача – была выполнена примерно одинаково. Если результат не понравится, всегда можно переформулировать промт и получить другой вариант.
А вот по точности информации меня ждало удивление. Лишь три системы – GigaChat, Claude и ChatGPT – использовали только те факты, которые были указаны. Яндекс.Нейро и Gemini, как уже говорилось, добавляли свое, причем Яндекс исказил часть данных. Но самый любопытный момент произошел, когда я сравнила начало текстов. У меня в промте не было никаких шаблонных фраз, однако все три модели – Яндекс.Нейро, GigaChat и ChatGPT – начали с почти одинаковой строки: «Компания CИTEK – ваш надежный партнер в мире автоматизации бизнеса».
Это показывает, что даже при одинаковом, простом промте разные модели могут выдавать схожий контент. Вероятно, это связано с тем, что многие из них изначально обучались на базе одной и той же архитектуры – GPT-2. Поэтому важно понимать: если вы используете ИИ для маркетинга, ваши тексты рискуют быть шаблонными как под копирку. Будущее, скорее всего, будет за теми, кто умеет правильно формулировать запросы и выжимать уникальность из стандартных инструментов.
Тест №2. Подсчет количества людей на фото
Перейдем ко второй задаче – подсчету количества людей на фотографии. В целом, современные модели уже достаточно неплохо справляются с распознаванием объектов на изображениях.
Возьмем в качестве примера фотографию с конференции Инфостарт. Был задан простой вопрос: что изображено на фото и сколько на нем людей? Модель в целом корректно описала обстановку – рассказала, что это конференция, семинар, люди сидят и смотрят на презентацию. С оценкой количества она предположила, что на фото находится от 150 до 200 человек. Звучит правдоподобно, хотя я не пересчитывала, так что плюс-минус ситуация вполне приемлемая.
Многие системы сегодня действительно умеют работать с изображениями, но есть одно существенное «но» – точность. На практике они справляются правильно лишь в половине случаев. Возьмем тот же ChatGPT: если вы зададите один и тот же вопрос про количество людей несколько раз, он каждый раз может дать разный ответ. Например, спустя пару минут после оценки в 150–200 человек, он уже заявил, что на этой же фотографии всего 8 человек.
Понятно, что использовать систему, которая ошибается в 50% случаев, крайне затруднительно. Это говорит о том, что технологии пока находятся на стадии развития. На момент подготовки этой статьи многие модели, включая GigaChat, еще не поддерживали работу с изображениями, но буквально неделю назад появилось объявление, что теперь и GigaChat умеет анализировать фото и считать людей. Однако, судя по тестам, результаты у него, как и у других систем – ChatGPT, Claude, Gemini – остаются нестабильными. В целом, ни одна из них не справилась с задачей по-настоящему надежно.
Тест №3. 1С и Gherkin
Следующий тест, который мы рассмотрим, касается работы с языками программирования – тема, которая особенно близка аудитории этого сайта. Я начала с задачи по написанию сценария для Vanessa Automation. В этот раз в тесте участвует также система Copilot, которая сейчас довольно широко известна и активно используется.
В целом, код генерируется, причем и ChatGPT, и Copilot выдают примерно одинаковый результат.
Но любой, кто знаком с языком Gherkin, сразу поймет, что в таком виде эти сценарии работать не будут – их обязательно нужно переписывать и дорабатывать.
Что касается 1С, изначально я хотела показать пример, где модели явно не справляются с этой платформой, демонстрируя их слабые стороны. Но у меня это не получилось. Я дала достаточно простую задачу, и, на удивление, им удалось с ней справиться.
Есть моменты, которые требуют правок, но базовая структура корректна. В целом ChatGPT-4 справился.
Copilot тоже показал хороший результат, особенно если сравнивать с тем, как он работал полгода назад – тогда результаты были намного хуже.
Это говорит о том, что системы постепенно начинают лучше понимать 1С, хотя ранее с этим было очень сложно. Можно сказать, что все современные ИИ-ассистенты справляются с генерацией кода, по крайней мере, на базовом уровне.
При этом зарубежные модели, такие как ChatGPT и Copilot, работают с 1С и Gherkin лучше, чем отечественные аналоги (актуально на 2024 год – Прим. ред.). Однако если сравнивать с более популярными языками, например Python, разница становится очевидной – с ними они справляются еще качественнее. Дело в том, что эти системы обучались на огромных объемах открытых данных, включая миллионы строк кода на Python, JavaScript, Java и других распространенных языках.
А вот с 1С ситуация сложнее: во-первых, этот язык менее популярен в глобальном масштабе, во-вторых, большинство решений на 1С находятся в закрытом доступе, что сильно ограничивает количество обучающих данных. Именно поэтому обучение моделей на 1С остается трудной задачей, и прогресс здесь хоть и есть, но идет медленнее.
Тест №4. Работа с таблицами
Следующий тест, который мы рассмотрим – это работа с таблицами. В этом случае эксперимент проводился на ChatGPT. У нас была реальная задача: мы провели опрос среди сотрудников компании по принципу оценки различных критериев по 10-балльной шкале.
Каждый сотрудник должен был указать, насколько для него важны такие аспекты, как карьерный рост, условия работы и другие параметры. Оценка выставлялась от 1 до 10, где 1 означает низкую значимость, а 10 – максимальную удовлетворенность и готовность рекомендовать компанию.
Опрос проводился через систему «Как дела» от HeadHunter, и результат пришел в довольно неудобном формате.
Вместо одного вопроса с диапазоном оценок от 1 до 10 система разбила его на десять отдельных столбцов. Получилось, что у нас было десять колонок с названиями вроде «Перспективы карьерного роста – 1 балл», «Перспективы карьерного роста – 2 балла» и так далее. Это делало анализ данных крайне затруднительным – такой формат практически невозможно использовать для дальнейшей обработки.
Мы загрузили эту таблицу в ChatGPT и дали четкий запрос: преобразовать все эти десять колонок в одну, где каждому участнику соответствует одна цифра – его оценка по данному критерию. ChatGPT справился. Множество столбцов превратилось в один, где теперь легко можно было видеть, какую именно оценку поставил каждый сотрудник. Если стоял 0, это означало, что человек не выбрал этот балл – он просто не заполнял данный критерий, то есть для него он не имел значения. Во всех остальных случаях данные были корректно объединены и пересчитаны.
Правда, получить такой результат удалось не сразу. Как и во многих других случаях, пришлось потратить около пятнадцати минут, пробуя разные формулировки промта, чтобы добиться нужного формата. Но даже с учетом этих итераций, весь процесс занял меньше времени, чем если бы мы обрабатывали таблицу вручную в Excel. Для этой конкретной задачи использование ИИ оказалось явно выгоднее. Хотя для более сложных или чувствительных случаев такой подход может потребовать больше усилий, и тогда автоматизация уже будет не столь однозначно эффективна.
Вопросы конфиденциальности и безопасность данных
Следующий важный момент, на который я хочу обратить внимание, – это конфиденциальность. Все модели, с которыми мы работаем, в той или иной степени обучаются на тех данных, которые вы им передаете. Вот, например, соглашение GigaChat – оно типичное, но аналогичные условия есть у всех подобных систем.
Любая информация, которую вы загружаете, может использоваться для обучения модели. Именно поэтому крайне не рекомендуется передавать какие-либо конфиденциальные данные, включая персональную информацию сотрудников, коммерческие секреты или внутренние документы. Это просто небезопасно.
В предыдущем примере с опросом среди сотрудников мы могли спокойно загрузить данные, потому что вся информация была полностью обезличена – там были только вопросы и ответы без привязки к конкретным людям. Поэтому риска не было. Но в целом нужно быть очень внимательными.
Что касается ChatGPT, то в платной версии у него есть специальная настройка, которая отключает использование ваших данных для обучения.
Даже если вы дообучаете свои модели, ваши данные якобы не попадают в общую базу. Насколько это действительно соблюдается – вопрос доверия. Проверить невозможно, но хотя бы официально так заявляется.
Перспективы развития ИИ: 5 уровней по OpenAI
Компания OpenAI разработала концепцию, в которой выделяется пять ступеней развития ИИ.
Первый уровень – это простой чат-бот, диалоговая система, способная отвечать на вопросы.
Второй уровень – система, которая уже не просто отвечает, а умеет рассуждать, анализировать и делать логические выводы.
Третий уровень – это модель, способная на основе этих выводов предпринимать конкретные действия.
Четвертый уровень – система-инноватор, способная генерировать принципиально новые решения.
И пятый, высший уровень – это полностью автономный искусственный интеллект, который может заменить целую команду специалистов и работать в организации без участия человека. Как вы думаете, на каком из этих уровней сейчас находятся современные модели?
Отмечу интересный момент: сама OpenAI заявляет, что их текущие модели, включая ChatGPT, находятся на первом уровне – это все еще диалоговые системы, продвинутые чат-боты. Однако новая модель O1 Preview позиционируется как система второго уровня – та, что способна к рассуждению. На нее делают серьезные ставки. Например, если сравнить ее эффективность в задачах по написанию кода с ChatGPT 4.0, то прогресс колоссальный – по некоторым шкалам оценок результаты выросли с примерно 11 до 89 баллов. Это скачок в восемь раз. Просто безумный темп развития.
Очень любопытно наблюдать, как эти технологии будут развиваться дальше. Что касается других систем, например Gemini, то и она тоже движется вперед, но ее прогресс менее стремителен по сравнению с тем же ChatGPT.
Во-первых, Google четко позиционирует Gemini как инструмент, оптимизированный под работу с популярными языками программирования: Python, Java, C++, JavaScript и Go. С другими языками она будет справляться хуже. Во-вторых, если смотреть на показатели способности к рассуждению, то цифры пока скромные – около 41–50%. Это говорит о том, что даже лидеры рынка только начинают осваивать этот уровень.
В этом направлении OpenAI действительно делает уверенные шаги и активно заявляет о своем лидерстве. Рейтинги различных платформ, такие как Chat Bot Arena или Hugging Face, подтверждают это: сейчас лидером по большинству задач является именно O1 Preview, обгоняя стандартную версию ChatGPT. Gemini в общем рейтинге находится примерно на четвертом месте.
Однако если посмотреть на категорию работы с кодом, картина меняется: там снова впереди O1 Preview, Gemini выпадает из топа, а на поверхность выходит Claude Sonnet. Эта модель тоже заслуживает внимания и может быть хорошим вариантом для тестирования, особенно в задачах, связанных с программированием.
Выводы и рекомендации
Подводя итог всему, о чем шла речь выше, можно сделать несколько выводов. Простые задачи, такие как написание поздравлений или простого текста для сайта без строгих требований к объему, стилю или аудитории, спокойно решаются любой из современных языковых моделей. С этим справится и отечественная, и зарубежная система – разница в качестве будет минимальной.
Когда речь заходит о более сложных задачах, картина меняется. По моему личному опыту, анализ изображений лучше всего получается у ChatGPT. То же самое касается работы с таблицами – здесь он снова показывает хорошие результаты. Что касается написания кода, особенно на специфических языках вроде 1С или Gherkin, то здесь явное преимущество остается у зарубежных моделей. Особенно интересно выглядит новая модель O1 Preview – именно ее стоит ближе протестировать, потому что по всем признакам она должна показать значительно лучший результат (актуально на 2024 год – Прим. ред.).
А если говорить о Python и других популярных языках программирования, то с ними справляются уже все ведущие системы, причем достаточно уверенно. Главный вывод, который напрашивается, – модели стремительно развиваются. При этом у нас часто завышенные ожидания: мы ждем от них поведения систем четвертого или даже пятого уровня автономности, способных заменять целые команды. Но по факту, согласно заявлениям самих разработчиков, мы пока находимся на первом-втором уровне, где ИИ – это все еще продвинутый чат-бот, диалоговая система, а не полноценный автономный интеллект.
При этом развитие идет настолько быстро, что за те полторы недели, которые ушли на подготовку этой статьи, ситуация уже изменилась: появились новые версии моделей, сместились рейтинги, обновились возможности. Поэтому важно не просто использовать эти технологии, а постоянно следить за их эволюцией, изучать, экспериментировать. Ждем выхода новых, более эффективных моделей!
*************
Статья написана по итогам доклада (видео), прочитанного на конференции INFOSTART TECH EVENT.
Вступайте в нашу телеграмм-группу Инфостарт