tgoop.com/eboutdatascience/256
Last Update:
SGR - Ликвидация галлюцинаций в LLM
Надоело, что LLM-ка на один и тот же запрос выдаёт то стихи, то рецепт борща, то вообще уходит в астрал? Ловит постоянно галлюны и никакого структурированного ответа, как будто обожралась грибов с Бали?
Но есть решение, которое уже набирает обороты и становится must have — SGR (Schema Guided Reasoning). Это подход, который превращает LLM из капризного «чёрного ящика» под грибами в управляемый и предсказуемый инструмент.
Как это работает?
SGR заставляет модель рассуждать по заранее определённым схемам. Вместо того чтобы дать ей полную свободу творчества, мы даём ей чёткий чертёж, по которому она должна построить свой ответ. Это жёстко снижает количество галлюцинаций и повышает предсказуемость
На практике: вместо того чтобы просто попросить LLM «по-братски проанализировать документ», мы даем ей строгую схему, которая заставляет её выполнить последовательный и логичный мыслительный процесс:
Вся магия работает через Structured Output (SO) с помощью JSON Schema. Если не душить терминами, то мы просто описываем чёткую структуру, которую хотим получить на выходе из каждого этапа
Простейший пример на Pydantic смотри на 1 картинке.
Дальше мы просто говорим модели: «Твой ответ должен соответствовать схеме ComplianceAnalysis, или я умру». И на выходе получаем чистенький, структурированный JSON, с которым уже можно нормально работать.
Базовые паттерны SGR
Для практического применения удобно использовать несколько базовых паттернов:
задач, где важен чёткий порядок действий (например, создание отчета).
зависимости от условий.
через этот паттерн можно реализовать ReAct-агента, где повторяются шаги
«Reasoning → Action».
Итог
SGR — это мощный инструмент, который превращает LLM из «творческого» генератора текста в надёжный и предсказуемый инструмент для анализа, чей процесс принятия решений прозрачен и легко проверяется. Короче, это мощный инструмент, который заставляет LLM работать по твоим правилам, а не генерировать рандомный грибной бред.
Почитать подробнее можно здесь, а про паттерны здесь