❌

Normal view

Как сделать RAG по профессиональной документации

Привет, Хабр! Хотелось бы начать статью с такого вопроса: кто из нас еще не использовал чат ассистентов в своей работе и повседневной жизни? Вот и мы, команда Джеймикс, постоянно используем ИИ-агентов и ассистентов в своей рутине. Кто с нами не знаком — мы (Джеймикс, Jmix) open-source  платформа с ИИ-инструментами для стандартизации разработки корпоративных приложений на Java. И так уж вышло, что у нас есть потребность в постоянной поддержке нашего сообщества в эксплуатации и разработке на нашей же технологии. На это мы постоянно выделяли одного разработчика-дежурного, который отвечал на все вопросы наших клиентов. Понимаете куда ведет это повествование? Конечно же, как только появились языковые модели, которые научились сносно отвечать на технические темы — сразу же возникла идея о делегировании самых базовых и простых вопросов ИИ. Ну и, конечно же, мы на поезде хайпа еще в конце 2023-го года создали собственного ИИ-ассистента на базе ChatGPT 4, который отвечал на темы, связанные только с платформой Джеймикса.

Время шло, мы вводили небольшие продуктовые изменения и наш ассистент стал что-то вроде системы индексатора и поисковика для мозга-нейросети. Нас устраивала точность ответов нашего ассистента — но был нюанс. Индексатор-поисковик был нужен еще для внешних агентов, которые вызывали его через отдельный MCP — и тут было больше подводных камней.

И вот прошло 3 года, и мы решили задать вопрос с подвохом (ну бывает же такое, когда хочется спросить что-то каверзное у ИИ). Звучал вопрос так: “какое значение repeatCount заставит таймер сработать пять раз”. Ассистент уверенно выдал готовый XML, хотя такого атрибута в Jmix нет. Чтобы ИИ-ассистент отвечал точнее, мы перестроили поиск. 

Читать далее

[Перевод] Ловушка декогеренции

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

Иными словами, это то, что происходит, когда низкопробная мешанина заглушает полезный сигнал в бескрайнем море шума.

Читать далее

Условия, в которых рождаются системы. Средовой подход для ИИ‑агентов

Вечером вы оставили агентам задачу, а утром перед вами готовая реализация: код, тесты, все проверки зелёные. Вы будете это релизить? Наверняка у вас сразу появилось своё «смотря что». Написание кода мы уже умеем автоматизировать, а решение о том, что считать пригодным результатом, осталось за нами.

Эта статья о предлагаемой мной новой методологии — о средовом подходе: как проектировать условия, в которых агенты создают системы, и на каком основании потом принимать их результат.

Читать далее

Эй, девелопер, дизайн твоего кода никуда не годится

Вы когда-нибудь читали такое сообщение от кодинг-агента? Мне не приходилось, а жаль.

Каждый раз, когда я довожу код, сгенерированный AI по моему ТЗ, я прогоняю его через ревью несколькими агентами с разными ролями и точками зрения — что-то вроде взгляда нескольких людей с разным опытом. И почти всегда получаю пачку разнокалиберных замечаний, от мелких до критических. Казалось бы, что сложного: открой новую сессию, скорми ей замечания, дай исправить, прогони ревью снова.

У этой замечательной стратегии, однако, есть одно слабое место: а мы уверены, что такой процесс сходится?

Читать далее
❌