Как повысить качество ответов моделей LLM в ваших AI-продуктах: лайфхак

Как продуктовый менеджер, отвечающий за SaaS на основе AI, я часто сталкиваюсь с тем, что модели не всегда выполняют задачи так как ты/клиент ожидаешь. А достижение максимальной точности и надежности (читай "предсказуемости качества") – одна из главных задач в управлении AI-продуктами.

В рамках экспериментов, я нашел (ок, кого я обманываю, меня натолкнул на это пост в Твиттере) простой лайфхак, который значительно улучшает качество ответов моделей. Хочу поделиться этим этой находкой с вами. Возможно, кто-то тоже делает продукты на базе AI и это вам сэкономит кучу времени и нервов, и вы не будете так часто получать негативного от клиентов фидбек.

Но перед этим хочу сказать, что я веду канал (куда ж на VC без этого) про работу продакт менеджером в американском AI стартапе, рассказываю про опыт собесов в разные западные компание. А еще про свои проекты/стартапы. В общем не подписаться причин не вижу. Ссылка на канал:

Проблема

Когда вы просите модель выполнить сложную задачу, существует высокая вероятность, что модель может пропустить важные детали. Или выполнить задачу не целиком. Эта проблема особенно заметна, когда задача включает несколько шагов, например, добавление нескольких терминов из глоссария в текст. То есть вам надо, чтобы в тексте использовалась нужная вам формулировка для предмета/продукта/действия, а не то, как это назовет модель. Такая задача часто возникает у крупных энтерпрайз компаний при переводе инструкций к продуктам, например.

Модель может применить не все термины, поэтому компании тратят много времени и денег на вычитывание и постредактирование. Как сделать так, чтобы модель точно применяла все необходимые термины к тексту.

Как улучшить стабильность ответа?

Ключ к улучшению стабильности заключается что бы попросить модель разбить задачу на более мелкие, последовательные шаги. То есть выполнить так называемый подход цепочки рассуждений. Например, если нужно добавить в текст четыре термина из глоссария, попросите модель вставлять каждый термин поочередно и показывать обновленный текст после каждого добавления. Такой подход позволяет модели внутренне генерировать промпты для каждого шага, что значительно улучшает качество выполнения задания.

А чтобы можно было легче распарсить итоговый результат, попросите модель вывести полный/финальный ответ, отделив его определенным маркером, например ###. Таким образом, вы сможете извлечь только итоговый результат размышления модели.

Результаты измерений

Такой подход можно применять к разным логическим многошаговым задачам. По моим замерам в кейсам с глоссариями, точность выполнения задач при обычной реализации составляет около 85%. Однако при использовании подхода цепочки рассуждений точность достигает 97%+. Особенно разница заметна, когда в одном предложение надо вставить более трех терминов, каждый из которых состоит более, чем из одного слова.

Прося модель структурировать выполнение задачи в виде последовательных шагов и выделять итоговый результат, можно легко значительно повысить надежность и качество ответов моделей LLM в ваших AI-продуктах. Не забудьте поставить лайк, если этот совет оказался полезным! Ну а, если интересно читать про менеджмент AI продуктов, работу на собственными стартапами, то подписывайтесь на мой телеграмм канал!

PS На всякий случай скажу, что в своих продуктах мы строим пайплайны с оценкой качество, разными параметрами и условиями ветвления на основе результатов предыдущих шагов. Плюс сейчас переходим на агентский подход, который дает еще лучше результат. Но об этом позже в телеге расскажу.

33
Начать дискуссию