Бесплатный web search для ИИ-агентов

SIMURG Monolith
SIMURG Monolith

Неделю назад мой агент с уверенным лицом описывал трактат, которого не существует. С датой. С подписантами. С пафосом. Ноль записей в вебе.

Это и есть класс галлюцинаций, который убивает доверие к малым моделям: не заикания и не циклы, а уверенное выдумывание. Фикс простой: пусть модель проверит факт в вебе, прежде чем commit'ить ответ.

SIMURG (https://github.com/doofzoff/SIMURG), zero-leak стриминговый страж для вывода LLM который я писал в прошлой статье: ловит сбой декодирования прямо в потоке (репетитивные циклы, дрейф языка, мусор типа #REF!) и режет стрим до того, как пользователь увидит плохой токен. numpy единственный зависимости, работает с любым OpenAI-совместимым эндпоинтом (vLLM, llama.cpp, Ollama).

А в свежем v1.0.3 вышла та самая фича: бесплатный web search слой для агентов на TinyFish. В репо встроен бесплатный ключ, то есть нулевая настройка:

pip install simurg

python3 -m simurg.websearch "Что такое DTF?" --ground

Одна деталь, ради которой я это люблю: поисковик с удовольствием отдаст реальные доки на несуществующий субъект ("Zorbachian treaty of 1874" вернет реальные трактаты 1874 года). Поэтому ground() требует, чтобы сам субъект упомянут в evidence. Generic-хиты дают thin, а не бесплатную путевку в attested.

Цифры, которые важны: $0 на запрос, stdlib-only (urllib), на любые ошибки (таймаут, 429, битый JSON) отвечает пустым результатом, а не исключением. В наших внутренних замерах на фактологических промптах с этим слоем уровень галлюцинаций упал до 1-5%.

Код, примеры, тесты и 13-страничная paper: https://github.com/doofzoff/SIMURG

Дайте агенту интернет. Это бесплатно.

2