Langfuse: платформа для версионирования и управления промтами в разработке БЯМ

Langfuse — это open-source платформа, разработанная для отслеживания, версионирования и управления промтами (затравками) при работе с большими языковыми моделями (БЯМ). Она позволяет командам разработчиков контролировать эксперименты, сохранять метаданные и обеспечивает возможность воспроизводимости результатов. Langfuse поддерживает self-hosting, что важно для сохранения контроля над данными, и предоставляет инструменты для совместной работы.
Langfuse: платформа для версионирования и управления промтами в разработке БЯМ
Изображение носит иллюстративный характер

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

Система позволяет логировать запросы к БЯМ, обертывая функции, взаимодействующие с моделями, декоратором @observe(). Это автоматически отслеживает ход выполнения и отправляет информацию в Langfuse. Также можно создавать наборы данных (dataset) для тестирования промтов. Каждый элемент набора данных содержит входные параметры и ожидаемые результаты. Langfuse предоставляет функции для оценки ответов БЯМ, например, сравнение с ожидаемым результатом. Для более сложных случаев возможно подключение LLM-as-a-judge.

В Langfuse есть возможность сравнивать результаты различных экспериментов и аннотировать запросы вручную, что полезно для анализа. Платформа предоставляет различные типы оценки: числовой, категориальный и булевый. Langfuse также поддерживает сохранение контекста в чатах, что позволяет создавать более сложные и интерактивные приложения с БЯМ. История сообщений сохраняется и передается модели при каждом запросе, обеспечивая контекст для диалога.


Новое на сайте