Привет, Хабр! Я Сергей, продакт направления AI в Битрикс24. Последний год мы активно внедряем нейросети в наш продукт, и я хочу поделиться опытом, который может сэкономить вам время и деньги.
Оказалось, что выбор правильной модели нейросети — это целое искусство. Размеры контекста, лицензии, поддержка языков, способы доступа — от этих параметров голова идет кругом. Но разобраться в них критически важно, если вы не хотите потратить кучу времени и денег впустую.
Еще год назад казалось, что ChatGPT (на базе gpt-3.5 и gpt-4) — это вершина эволюции языковых моделей. Но рынок AI развивается с бешеной скоростью, и сейчас ситуация кардинально изменилась.
Появилась куча новых игроков: Claude, Gemini, Mistral, Qwen — и это только верхушка айсберга. Некоторые из них в определенных задачах уже обходят ChatGPT. Не отстает и российский рынок: YandexGPT, GigaChat, T-lite от T-Bank. И вот тут-то начинается самое интересное (читай: сложное). Как в этом зоопарке нейросетей выбрать ту, которая подойдет именно вам? В этой статье я расскажу, на что действительно стоит обращать внимание при выборе LLM для вашего бизнеса или проекта. Мы разберем ключевые характеристики моделей, их плюсы и минусы, а также подводные камни, о которых вы могли не подозревать.
1. Размер контекстного окна
Контекстное окно нейросети — наверное, самый известный параметр, про который все говорят. По факту это максимальный объём данных в виде текста или, точнее, токенов, на которые разбивается текст, обрабатываемых нейросетью за один запрос.
Примечание: 1000 токенов — примерно 750 английских слов (так было для gpt-3.5, подсчет для разных моделей может отличаться).
Есть модели, поддерживающие большое контекстное окно – лидер сейчас это Gemini 1.5, вмещающий 2 млн. токенов.
Есть нейросети, поддерживающие меньший объем контекста. Так, gemma-2-27b поддерживает контекстную длину всего до 8000 токенов.
Тут важно также учитывать то, КАК модели работают с длинными текстами и проходят так называемые тесты «иголка в стогу сена». Так, разработчики из команды Anthropic заточили под это Claude. При контекстном окне в 200 тыс. токенов - значительно меньше «теряет» информацию из середины, в отличие от других моделей.
Но и это не все. Важно обращать внимание на то - сколько токенов модель может выдавать в качестве ответа. Например, gpt-4o-mini отдает 16 тыс. токенов при общем контекстном окне - 128 тыс., а o1-preview - 32 тыс. токенов ответа, при общей вместимости 128 тыс. токенов.
В продукте: Для условного написания текста письма хватит стандартных 8000 токенов (многие решения имеют такую емкость). А если вам нужно, чтобы нейросеть могла взаимодействовать с большими файлами, к примеру, сценарием, длинным диалогом или книгой в PDF-формате, 8000 токенов уже маловато. Потребуется выбрать решения с большим контекстом.
2. Скорость обработки данных
Скорость обработки — это, грубо говоря, темп, с которым нейросеть выдает ответы на запросы.
Обычно в рамках вендора или группы моделей быстрые модели уступают по качеству, а «умные» — по скорости. Например, GPT-4o выдает около 80 токенов в секунду, Gemini Flash — 150 токенов. Получается, что ответ в 1000 токенов (например, шаблон вакансии для поиска промт-инженера) первая нейросеть напишет за 12 секунд, а вторая всего за 6.
В продукте: Для решения некоторых задач мгновенный ответ не так важен, как для других. Например, в сценариях обработки больших документов вы отправляете файл и ждете результат, 5 или 7 секунд продлится ожидание — не так важно. А вот в работе со сценариями чатов, синхронным переводом диалога или при создании субтитров пользователь ожидает увидеть мгновенный результат.
3. Поддержка языков
При выборе нейросети стоит учитывать, какие языки она поддерживает. Например, если вы собираетесь работать с китайским рынком, лучше специально выбирать сети, которые натренированы хорошо работать с китайским.
Обычно модели натренированы для определенных языков. Даже для gpt4o - это ограниченный набор языков (пусть и достаточно большой). А вот в недавно запущенной Llama 3.2 официально поддерживаются восемь: английский, немецкий, французский, итальянский, португальский, хинди, испанский и тайский. На этих языках нейросеть выдает наиболее качественные ответы. Это не значит, что на других работать ничего не будет, но:
Как правило, модели хуже воспринимают инструкции на языке, на который не были натренированы. Т. е. количество ошибок будет выше, а качество ответов - ниже.
Из-за неоптимального токенайзера (инструмента, который разбивает текст на токены) - на запросы на незнакомом языке тратится больше токенов. Т. е. помимо качества, это также скажется на стоимости использования модели.
В продукте: Если вы собираетесь работать с китайским рынком, лучше специально выбирать сети, которые натренированы хорошо работать с китайским. И наоборот, если выбираете модель не натренированную на целевой рынок – нужно брать эти риски в расчет.
4. Мультимодальность
Модальность в контексте LLM — тип или формат входных данных, которые модель способна обрабатывать. Например, текст — это одна модальность, изображения — другая. Некоторые модели, как gpt-3.5 Turbo, могут обрабатывать только текст, другие, такие, как gpt-4o — текст, изображения и аудио.
Еще год назад были распространены, в основном, модели с одной модальностью (текст, работа с изображениями или звуком). Сейчас многие крупные AI работают одновременно с изображениями, аудио, а некоторые — и с видео.
В продукте: Мультимодальные модели хороши для кейсов, когда подразумевается, например, анализ изображения и дальнейший диалог с LLM на основании «увиденного». Они удобны, поскольку для работы с разными типами данных не требуются дополнительные действия со стороны разработки. Однако обычно они стоят дороже.
5. Адаптация под решение задач определенного типа
Есть модели, заточенные под написание кода, высшую математику, работу с БД, документами. Есть хорошо показывающие себя в сценариях CRM, тех.поддержке или маркетинге.
Найти подходящее решение для вашего типа задач без штудирования форумов и профильных чатов – та еще задачка, но в целом можно ориентироваться на независимым бенчмарки. Например на LLM Benchmarks от Trustbit. В нем есть отдельные замеры по различным продуктовым сценариям. При этом слепо верить в оценку качества от разработчиков моделей не приходится, т. к. все мы знаем сколько в них «маркетинга».
В продукте: Ну тут все просто – определяем, какой тип задач нам нужно решать, и бежим смотреть бенчмарки.
Примечание: Если брать общий бенчмарк/лидерборд, по которому можно оценить «уровень модели», то тут эталоном считается Chatbot Arena LLM Leaderboard, в котором лидер выбирается на основании слепого голосования между пользователями за ответы от различных моделей.
6. Дополнительные функции, доступные «из коробки»
У некоторых моделей доступны различные фичи, которые могут быть реализованы дополнительной разработкой и с другими моделями, но тем не менее их наличие может повлиять на выбор, т. к. буквально упрощает реализацию некоторых задач.
К этому отнесем вызов функций, работу с файлами ака RAG, установка формата ответа, исполнение программного кода внутри.
Начнем с вызова функций, как у GPT-4, Claude и Gemini.
Мы описываем для модели определенный набор функций, их название, характеристики данных, которые нужны для их выполнения. Модель при обработке запросов самостоятельно решает, нужно ли вызвать какую-либо из указанных нами функций, и если решение положительно – формирует JSON с необходимыми данными для вызова этой функции. Мы, в свою очередь, функцию исполняем и отдаем результат модели.
Самый простой пример: пользователь спрашивает про погоду в Нижнем Новгороде.
Нейросеть видит, что есть подходящая функция, и сигнализирует нам о том, что нужно вызвать функцию «запрос погоды» с данными «Локация: Нижний Новгород». Мы (из кода) обращаемся к сервису погоды, отдаем ответ модели, она обрабатывает ответ сервиса и отвечает человеку на его вопрос.
Возможность добавить файлы для получения ответов по ним (Retrieval).
Позволяет модели извлекать информацию из загруженных файлов (например, базы знаний) во время диалога. Это возможность реализовать тот самый RAG, про который все говорят, только на минималках. Кладем в специальное хранилище (определенное вендором AI) файлы, а модель, например, gpt-4, отвечает, учитывая уже информацию в них.
Cтруктурированный формат ответа
Если модель поддерживает эту функцию, она может давать ответы, организованные определенным образом.
Пример: аутпут, который структурирован в формате JSON. Ответы в формате JSON удобно использовать, если планируется дальнейшая обработка данных в коде (т. е. почти всегда) — с такими ответами проще работать.
В новейших gpt-4o разработчики пошли дальше и дают возможность принудительно задать схему JSON ответа.
Что еще нужно учесть, но к параметрам отнести не хватило сил:
Совместимость с API Open Al
Это определяет, будет ли ваш продукт взаимодействовать с моделью с помощью того же API, что используется для gpt. Сейчас в решения часто добавляют совместимость с API Open Al, даже появился такой отраслевой стандарт. Если совместимости нет, возникают дополнительные трудности: придется описывать работу с API, не получится быстро переключиться на другую модель и т.д.
Следующий параметр оказался таким обширным, что его пришлось рассмотреть в деталях.
По типу доступа модели можно разделить на две большие группы:
MaaS (model as a service)
Самостоятельное развертывание
Поговорим о преимуществах и недостатках каждого варианта:
Если модель предоставлена вендором и реализуется как облачная услуга (MaaS)
Нейросеть, предоставленная вендором, реализуется как облачная услуга (MaaS, model as a service) и дает доступ к предобученным моделям ИИ через API. Пользователи платят за фактическое использование моделей, чаще всего — за использованные токены при запросах и ответах.
Когда нейросеть развернута на серверах вендора и обслуживается им, она предоставляет разработчикам API, через который можно отправить данные для обработки данных и получить результаты. Вендор обрабатывает и хранит пользовательские данные в рамках законодательства, а также может обучать модели на их основе. Дообучение происходит не всегда – нужно разбираться с тем, что декларирует вендор. (Например OpenAI везде упоминают что «мы не обучаем модели на ваших данных»).
Плюсы моделей от вендоров | Минусы таких моделей |
Пока все топовые модели выходят у вендоров. Можно сразу после релиза использовать улучшенную модель в продукте. | Ваши данные получает третья сторона. Это чувствительно для некоторых типов бизнеса и госкомпаний, боящихся утечки. |
Можно быстро и удобно работать с продуктом без настройки оборудования. | Есть зависимость от поставщика, его политики и деятельности. |
Легко масштабировать ресурсы и платить за каждый пользовательский запрос (pay as you go). | Ограниченные возможности настройки и оптимизации под нужды компании. Решение может не отвечать части уникальных требований бизнеса. |
Есть быстрый доступ к модели почти по всему миру. Можно получить квалифицированную техподдержку. | |
Происходит постоянное улучшение сервисов, в которое не нужно вкладываться деньгами. |
Мы можем сравнить MAAS-модели по нескольким параметрам:
1. Стоимость
Стоимость входящих и исходящих запросов может быть разной.
Например: при работе с Claude 3.5 Sonnet пользователь платит 3 доллара за 1 миллион входящих токенов и 15 долларов за 1 млн исходящих.
Это важно, потому что в ответ на большой input может приходить маленький output или наоборот.
В продукте:
Допустим, общий контекст у нас на 4000 токенов. Распределение может быть таким:
200 входящих токенов / 4800 исходящих токенов — например, если нужно написать драфт договора.
4800 входящих / 200 исходящих — если хотим сделать саммари договора.
2. Возможность отложенной обработки запросов
Если ваша задача не требует решения здесь и сейчас, можно постепенно отправлять запросы, которые нейросеть будет отрабатывать поэтапно. Т. е. запрос делаем сейчас, а ответ получаем, например, в течении 12/24 часов.
Да, это потребует больше времени, но позволит сэкономить до 50% бюджета — отличный вариант для негорящих задач.
3. Страна юрисдикции и другие правовые моменты
В зависимости от того, где юридически оформлена нейросеть, и где мы ей пользуемся, действуют разные нормы законодательства. Использование нейросетей также может попадать под санкционные ограничения, поэтому сейчас модель Claude не работает с РФ: блокирует запросы c IP и не принимает оплату с российских карт.
4. Возможность дообучать модели на своих данных (файн-тюнинг)
Файн-тюнинг позволяет делать тонкую настройку модели, адаптируя ее под свои нужды и снижая затраты. Такую возможность предоставляет, например, gpt-4o.
При условии правильной настройки и качественно собранных данных для дообучения модель выдает более точные и корректные ответы. Улучшенная версия модели стоит дороже, а для обучения требуется дополнительная оплата (стоимость зависит от объема данных, передаваемых для обучения).
Если нейросеть развертывают на своих серверах (hosted-модель)
Вы можете развернуть модель на своем сервере, если позволяют его мощности. Исходящие запросы не будут уходить дальше контура, в котором развернута модель, или облака. Такие модели опенсорсные, поэтому это чуть меньше похоже на «черный ящик» чем ChatGPT - веса есть в открытом доступе.
К затратам в таком случае нужно будет отнести плату за физический сервер или облако, а также на поддержку и на администрирование такой модели. Месячная аренда сервера с видеокартой A100 на 40 ГБ во многих крупных облачных сервисах в РФ сейчас стоит порядка 200 тысяч рублей.
Плюсы hosted-моделей | Минусы таких моделей |
Запросы не передаются третьей стороне на удаленные серверы, за счет чего данные проще контролировать. Можно защитить информацию от несанкционированного доступа и усилить защиту конфиденциальных сведений. | Такой вариант не всегда окупается. Он требует больших затрат на приобретение и установку серверов, создание и поддержку инфраструктуры. |
Можно использовать специфические инструменты и библиотеки, недоступные у вендоров. Вы можете внедрить узкоспециализированные модели и алгоритмы с учетом запросов бизнеса. | Требуются специалисты с высокой технической экспертизой. Нужно самостоятельно заниматься обновлением моделей. |
Если для бизнеса это рентабельно, то можно сэкономить деньги, используя собственные сервера. |
Нейросети, размещенные на своих серверах, отличаются:
1. По объему ресурсов, требуемому для работы (физические ограничения)
Сложно заранее сказать, какой объем ресурсов потребуется для работы нейросети. Однако при выборе модели можно оценить основные ее характеристики: количество параметров и уровень квантизации, скорость ответа. Если вы планируете использовать модели серверов с видеокартами, нужно тщательно оценить их стоимость и поколение.
Обычно в документации к моделям указывается, сколько ресурсов нужно для работы моделей на том или ином уровне сжатия (квантизация).
Так, чтобы запустить Qwen2.5 70B с квантизацией Int4 и скоростью выдачи 11,32 токена /сек, для одного потока понадобится — 48,86 GB GPU Memory (объем памяти видеокарты).
2. По лицензии — лицензия для модели может предполагать выполнение задач только в образовательных или культурных целях и не допускать коммерческого использования.
Примеры по лицензиям:
У Mistral Large 2 действует лицензия Mistral Research — ее можно использовать только для исследований и обучения. Для коммерческого использования - требуется отдельная покупка лицензии.
У Qwen2.5 лицензия подразумевает коммерческое использование, если у вас до 100 миллионов активных пользователей в месяц.
Китайская llm Yi-1.5-34B-Chat работает почти без ограничений.
И если с параметрами все понятно, то вот несколько трендов в развитии рынка llm которые будут менять рынок нейросетей в ближайшем будущем
Модели hosted приближаются по возможностям к моделям вендоров
Еще год назад об этом речи не шло, но постепенно модели на локальных серверах начали давать неплохие результаты, близкие к топовым решениям вендоров.
На рынке становятся популярными другие крупные игроки
Недавно все решения строились вокруг OpenAl. Теперь у сети появилось не менее двух крупных конкурентов — Gemini от Google и Claude от выходцев из OpenAI, Anthropic. Обе нейросети мелькают в топах новостей. Так, Claude 3 Opus в апреле на несколько недель вытеснила ChatGPT с первых строчек лидербордов. В начале августа случилось другое редкое событие: Gemini 1.5 Pro лидировала в рейтинге арены, обойдя ChatGPT-4 и Claude 3.5 Sonnet.
Тарифы для пользователей становятся более демократичными
Мы стабильно видим снижение стоимости платных тарифов для работы с нейросетями, что позволяет чаще задействовать их при решении задач. Например, постоянно сокращает косты OpenAI.
Вышедшая в начале августа версия ChatGPT-4o сейчас стоит 2,5 доллара за миллион входящих токенов и 10 долларов за миллион исходящих. Это на 30% меньше, чем было раньше. Gemini 1.5 Flash от Гугла также подешевела. Стоимость входящих токенов уменьшилась на 78%, а стоимость исходящих — на 71%.
Итак, мы разобрали ключевые параметры выбора LLM для бизнес-задач. Надеюсь, теперь вы сможете найти оптимальную модель, не потратив лишнего.
В завершении хочу оставить список вопросов на которые рекомендую ответить перед тем как выбирать модель для своей цели:
Какую задачу вы хотите решить с помощью LLM?
Подразумевает ли задача обработку больших объемов данных?
Насколько важна скорость ответа модели в задаче?
На каких языках должна работать модель? В каком регионе будет применяться?
Требуется ли обработка разных типов данных (мультимодальность)?
Насколько специфичной является задача?
Нужна ли возможность дообучения модели на ваших данных?
Насколько сильны требования по безопасности и конфиденциальности данных?
Каков ваш бюджет на внедрение и использование модели?
Требуется ли соответствие юридическим нормам и стандартам (юрисдикция, лицензии)?
Есть ли у вас необходимые технические ресурсы и экспертиза для самостоятельного развертывания?
Остались вопросы или есть чем поделиться? Буду рад обсудить в комментариях.
Если интересно узнать больше о практическом применении AI в рабочих(и не очень) задачах, приглашаю в свой Telegram-канал.