Оценщик обещаний депутатов и речей после избрания
UPD:
Всем привет! На этот раз — никакой теории, только практика. Публикую полностью рабочий инструмент в формате Google Colab, который позволяет анализировать тексты и речи на соответствие обещаниям.
⚠️ ВАЖНОЕ ПРЕДУПРЕЖДЕНИЕ ПЕРЕД ЗАПУСКОМ:
ЭТО МОЖЕТ СТОИТЬ ДЕНЕГ: Скрипт использует API от Google (Gemini). Выполнение кода будет расходовать средства с вашего аккаунта Google Cloud.
НУЖЕН ВАШ API-КЛЮЧ: Для работы кода вам потребуется вставить свой личный ключ в соответствующее поле.
ЭТО НЕ КОММЕРЧЕСКИЙ ПРОДУКТ: Код является экспериментальным (Proof-of-Concept) и предоставляется "как есть".
Пожалуйста, отнеситесь к этому ответственно. Все детали, правила и ограничения ответственности изложены в «УВЕДОМЛЕНИИ ОБ ИСПОЛЬЗОВАНИИ ПРОГРАММНОГО КОДА» в самом конце поста. Не запускайте код, не прочитав его.
УВЕДОМЛЕНИЕ ОБ ИСПОЛЬЗОВАНИИ ПРОГРАММНОГО КОДА (DISCLAIMER)
Относительно предоставленного Python-кода в среде Google Colaboratory («Оценщик обещаний»)
ВНИМАНИЕ: Перед запуском, изменением или любым другим использованием программного кода, опубликованного выше, вы обязаны прочитать, понять и принять все нижеследующие условия. Запуск любой ячейки кода означает ваше полное и безоговорочное согласие с данным уведомлением.
1. Статус и цель кода
1.1. Образовательный и экспериментальный характер: Данный код является исключительно учебным пособием и Proof-of-Concept (доказательством концепции). Он не является коммерческим, профессиональным или готовым к промышленному использованию продуктом. Его цель — демонстрация возможностей современных языковых моделей, а не предоставление точного и безошибочного аналитического инструмента.
1.2. Предоставление «КАК ЕСТЬ» (AS IS): Код предоставляется по принципу «КАК ЕСТЬ», без каких-либо явных или подразумеваемых гарантий. Автор не гарантирует работоспособность кода, отсутствие в нем ошибок, точность получаемых результатов или его совместимость с будущими версиями библиотек и API.
2. Ответственность пользователя (ВАЖНЕЙШИЙ РАЗДЕЛ)
2.1. Финансовые расходы (API и ресурсы): Код использует внешние сервисы (Google Gemini API), использование которых является платным. Вы используете свой собственный API-ключ и свой собственный аккаунт Google Cloud. Вы несете полную и единоличную ответственность за все расходы, которые могут возникнуть в результате выполнения этого кода. Автор не имеет никакого отношения к вашим счетам от Google и не несет ответственности за ваши траты.
2.2. Безопасность API-ключа: Вы несете полную ответственность за сохранность вашего API-ключа. Не публикуйте его, не передавайте третьим лицам и не сохраняйте в общедоступных местах. Автор не несет ответственности за любой ущерб, возникший в результате компрометации вашего ключа.
2.3. Обработка данных: Все данные, которые вы загружаете и обрабатываете (тексты, аудио, видеофайлы), отправляются для анализа напрямую на серверы компании Google. Автор кода не имеет доступа к вашим данным, не хранит их и не несет ответственности за их конфиденциальность и обработку третьей стороной (Google). Используя код, вы соглашаетесь с политикой конфиденциальности и условиями использования сервисов Google.
2.4. Результаты анализа: Результаты, генерируемые кодом, являются продуктом работы нейросети (LLM) и могут быть неточными, предвзятыми, ошибочными или бессмысленными. Не следует принимать решения или делать серьезные выводы на их основе.
3. Лицензирование и использование
3.1. Лицензия на использование: Код распространяется на условиях лицензии MIT. Это означает, что вы можете бесплатно использовать, копировать, изменять и распространять код в личных или коммерческих целях, но обязаны включать в него оригинальный текст лицензии и данный дисклеймер. Лицензия MIT также гласит, что программное обеспечение предоставляется «КАК ЕСТЬ», и авторы не несут никакой ответственности.
3.2. Запрет на противоправное использование: Запрещается использовать данный код для любых целей, нарушающих законодательство, включая, но не ограничиваясь: обработкой незаконно полученных данных, разжиганием розни, созданием клеветнических материалов или нарушением чьей-либо конфиденциальности.
ИТОГОВОЕ ПРЕДУПРЕЖДЕНИЕ: Вы используете этот код на свой страх и риск. Автор предоставил его в образовательных целях и не несет абсолютно никакой ответственности за любые возможные последствия его использования: финансовые, технические, юридические или любые иные. Если вы не согласны с этими условиями, не запускайте код.
Анализатор проверяет расхождение предвыборной программы со словами того или иного депутата. То есть совпадение программы и речи. Это Уровень 1: «Говорят ли они то, что обещали?».
Закинул рандомную программу партии, речь случайного депутата.
Спойлер: Программа соответствует речам у большинства кого проверял. Слова – не дела:) Плюс, это поверхностный анализ, а не создание полноценной базы утверждений.
Вот так это выглядит в интерфейсе.
Прицепиться к словам трудно, хотя они и содержат много полезной информации и их можно проверять в режиме стриминга агентами, но дела анализировать ещё полезнее.
Какие анализы провести над речами?
Можно посмотреть график мутации речей или сделать распознавание говорящих для разметки длинных выступлений(но надо спросить юристов можно ли подобное делать).
Ещё неплохо бы собрать обратную связь от лингвистов и Natural Language Processing спецов. Я бы хотел избавиться от зарубежных, но таких удобных LLM для сопоставления пунктов программы и тезисов речей.
В следующих колабах покажу Уровень 2: «Соответствуют ли действия депутатов их словам?».
Там более продвинутыми методами копнём «Законодательную активность», «Бюджетный анализ», «Использование реальных данных».

