Делай RAG
178 subscribers
5 photos
14 links
Канал, посвященный развитию бота-помощника по проверке рекламных материалов @lastminute_legal_bot

👉🏻Github проекта https://github.com/ekaterina-ya/lastminute_legal

Связаться с автором через сообщения канала или [email protected]
加入频道
Ура, первое обновление! #commits
Ох, и тяжело же оно далось. И планировалось чуть раньше, и обновлялось вообще не то, что было задумано.

Что сделано:
🤩 при ошибке 500, которая появлялась в понедельник, бот теперь будет уведомлять пользователя о том, что есть проблема на стороне Google, и предлагать загрузить креатив попозже или почитать канал;
🤩 администратор бота будет получать сигнал о том, что кто-то из пользователей получил ошибку 500;
🤩 настроено сохранение загруженных картинок после ресайза на диск сервера;
🤩 расширено количество записей, которые вносятся в пользовательский лог:
содержимое пользовательского текстового сообщения;
количество потраченных токенов и метрики API;
полный стек-трейс при возникновении ошибок;
caseID и косинусное расстояние для top-10 релевантных дел, которые идут в Промпт 2 (тот промпт, что запрашивает итоговое заключение);
текст итогового Промпта 2;
путь к сохраненной после ресайза картинке.

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

Потестите, пожалуйста 😊
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6👏42
#commits! Все они были незапланированные и вынужденные страшным ханжеством Gemini, которая не пропускала безобидные вещи вплоть до бана одной пользовательницы.

🤩 улучшено логирование
Теперь ответ от API собирается в json, из которого видно и метрики API, и ошибки, и результаты работы модели (т.н. finish reasons, в которых отражается наличие ответа или его ошибочное отсутствие, блокировки из-за нарушения ограничений в промпте либо аутпуте).
Также там фиксируется оценка моделью вероятности нарушения контетом правил: она ставит баллы probability по каким-то категориям с номерами.
Убрано логирование Промпта 2, эту простыню на 8-9 тысяч токенов все равно читать не буду, а лог раздувает до адских размеров.

🤩 изменена система обработки ошибок и неблокирующих finish reasons
Оказалось, что изначально обрабатывающие контент функции содержали отлов ошибк и превращение их в ответ модели, поэтому, например, пользователи видели текст с ошибкой 500. Первый патч этой проблемы был совсем неправильным.
Сейчас т.н. HTTP-ошибки, все finish reasons, кроме блокирующих, пустые ответы и прочие непредвиденные реакции нейросети обрабатываются в отдельном блоке except, общем для всех функций.
Если происходит ошибка, бот сообщает пользователю о проблемах на стороне Google, предлагает вернуться позже и не уменьшает ежедневный лимит, а администратору посылает работающее (а не как в прошлый раз) уведомление об аварии.

🤩 доведена до ума система обработки непристойного контента и блокировок
Здесь несколько изменений, тесно связанных с предыдущими. «Блокирующие» finish reasons обрабатываются отдельно. Думаю написать об этом подробный пост, цензура у нейросетей — многослойная тема.
Если модель отказывается работать по цензурным причинам, добавляется счетчик нарушений. 7 нарушений подряд или 15 всего ведут к блокировке (я по-прежнему надеюсь, что это не понадобится, так как фильтры на цензуру входящего контента вообще сняты вообще, и больше необоснованных отказов не должно быть).
Тем не менее, для забаненных пользователей добавлена возможность связаться с администратором, а администратору — команда для разбана.

🤩 улучшение коммуникации с пользователем
Поправила и унифицировала все окна, которые получает пользователь от бота, сделала их более человечными (до этого местами был отмороженный текст, который накодила AI Studio), пояснила, что нейросеть может ошибаться в своей оценке пристойности креативов.

В целом Gemini не должна больше жестить так, как раньше. А если начнет, то мы точно будем знать причины ее поведения.

Как всегда прошу 🥹 попробовать. Попробуйте послать боту картинок и слоганов на грани с nsfw и шовинизмом 😊
А я на пару недель завязываю с кодингом и буду уже делать RAG (хочу добить до тысячи кейсов в базе), писать посты и готовиться к митапу.
Все эти испытания лажовой исходной архитектурой кода очевидно посланы мне для того, чтобы было о чем порассказывать 28 августа. Всем хороших выходных и не забудьте зарегистрироваться на тусовку!)
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5👏43