Точная структура из любого LLM-завершения.
Что это за инструмент
ReLLM — это библиотека для Python, которая гарантирует, что вывод языковой модели (LLM) будет строго соответствовать заданному регулярному выражению.
Зачем нужен
Инструмент решает проблему неконтролируемого формата ответов LLM, фильтруя токены на этапе генерации. Это позволяет получать структурированные данные (JSON, XML, даты, числа) без необходимости пост-обработки и парсинга, что упрощает интеграцию моделей в программные системы.
Что можно реализовать
- Генерация строго валидного JSON или XML для парсинга в коде
- Получение ответов в формате 'Да/Нет' или выбора из фиксированного списка вариантов
- Извлечение и форматирование конкретных данных, таких как даты или числа
- Заполнение текстовых шаблонов с соблюдением синтаксических правил
Ключевые возможности
- Предварительная фильтрация токенов: маскировка логитов для токенов, не подходящих под паттерн
- Поддержка любых регулярных выражений, включая сложные синтаксические структуры
- Совместимость с библиотекой transformers (поддержка моделей типа GPT-2 и других)
- Улучшение качества вывода даже для небольших моделей за счет ограничения пространства токенов
- Возможность использования через API (Thiggle Regex Completion API) для хостинга
👤 Кому подойдёт: разработчики, использующие LLM в продакшене, инженеры по машинному обучению, исследователи, работающие с генеративными моделями