Вы когда-нибудь задумывались, сколько денег налогоплательщика тратится на отдел? Что на самом деле делает правительственная схема, запущенная с большой помпой? Кто те люди, которые принимают решения о трате этих денег?

Если вы когда-нибудь задавались этими вопросами, то читайте дальше…

Orgpedia публикует приказы (постановления правительства), изданные правительством Махараштры за последние пять лет, в текстовом формате на маратхи и английском языках на GitHub. Надежда на раскрытие этих данных состоит в том, чтобы включить вышеупомянутый вариант использования для создания интерфейса чата над заказами, чтобы пользователи могли задавать любые вопросы, которые у них есть об отделе, и получать ответы от системы.

Извлечение информации сложно

Оргпедия была запущена 15 августа 2022 года (75 лет независимости) с целью облегчить людям понимание того, как работают государственные/общественные организации. Первоначальный подход заключался в том, чтобы взять все приказы/уведомления, выпущенные государственным ведомством, а затем извлечь из них данные, согласовать данные и представить полученные данные в удобной для понимания форме. Это включало передачу всех заказов через конвейер машинного обучения, который выполнял бы каждый из этих шагов в автоматическом режиме и производил данные, которые были бы полными, связанными и доступными для запросов.

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

Обеспечение возможности запроса данных ставит очень высокую планку для качества извлечения. Учитывая, что большинство запросов объединяют несколько точек данных, любая ошибка, даже в одной точке данных, приведет к неправильному ответу. Это упростило поиск неверных данных, но также означало, что, пока все неверные данные не будут удалены, набор данных нельзя будет опубликовать. Это еще больше осложнялось неотъемлемым характером данных о заказах, поскольку они были предназначены для потребления людьми, а не машинами.

ChatGPT в помощь

Примерно в конце прошлого года OpenAI выпустила свой инструмент chatGPT — инструмент, чат-бот, предоставляющий интерфейс вопросов и ответов для данных. Выпуск ChatGPT был революционным с точки зрения его способности понимать и отвечать на широкий круг вопросов и давать, казалось бы, точные ответы, которые соответствовали или превосходили то, что могли ответить люди.

Одной из первых вещей, которые я устал, было задавать ChatGPT некоторые вопросы, на которые Orgpedia пыталась ответить, особенно с учетом того, что данные, необходимые для ответа на эти вопросы, были общедоступны.

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

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

Чтобы решить эту проблему, Orgpedia выпускает документы в текстовом формате на маратхи и английском языках, а также в формате, понятном большинству чат-ботов. Есть надежда, что опубликованные данные окажутся в чат-ботах, чтобы они могли ответить на вопросы, на которые пытается ответить Orgpedia.

Конвейер Orgpedia выполняет следующие операции с PDF-файлами: 1) он сканирует веб-сайт с помощью сложного сканера 2) он выполняет распознавание документа, чтобы обойти проблему шрифтов 3) он извлекает таблицы из документов, большая часть ценной информации находится в таблицах, и крайне важно, чтобы они были правильно расположены в выходных данных, чтобы чат-боты могли анализировать таблицы 4) он извлекает абзацы данных, это включает разделение текстовых строк в абзацах, чтобы содержимое было сгруппировано вместе, и 5) он переводит документ на английский язык.

Мы используем Google Cloud Vision API для оптического распознавания символов и отличный набор инструментов Indictrans-2 от AI4Bhart для перевода документов с маратхи на английский.

Общение с государственными заказами

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

Более длинное видео можно посмотреть здесь.

На эти вопросы ответил чат-бот?

1. Каков бюджет публичных библиотек Махараштры на 2022–2023 финансовый год?

2. Чем занимается Фонд библиотеки Раджи Раммохан Роя (RRRLF)?

3. Какая часть вклада правительства Махараштры соответствует RRRLF?

4. Кто является членами комитета RRRLF и чем они занимаются?

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

Я бы назвал его чат-ботом первого уровня, поскольку он использует очень простой подход к ответам на задаваемые вопросы. Для каждого вопроса 1) он находит наиболее релевантный порядок (ы), в котором этот вопрос можно было найти, это делается путем запроса к базе данных, где все документы проиндексированы априори, 2) после того, как соответствующие документы найдены, он создает подсказку для ChatGPT, где документы публикуются и задаются вопросы пользователей, ограничивая ChatGPT отвечать на вопрос только из того, что было дано, 3) он представляет результат пользователю со ссылками на соответствующие документы.

Хотя этот подход работает на удивление хорошо для простых вопросов, однако, если ответ разбросан по нескольким документам, этот подход не сработает. Во-вторых, учитывая, что ChatGPT не понимает объекты, из которых состоят документы, его способность выводить концепции или понимание более высокого уровня ограничена.

Что дальше ?

Orgpedia продолжит регулярно публиковать данные о постановлениях правительства, чтобы гарантировать, что последние данные всегда доступны для чат-ботов. Также будут включены аналогичные конвейеры для дополнительных наборов данных, чтобы можно было создавать аналогичные чат-боты для дополнительных штатов и отделов.

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

Третья и последняя цель — сделать эти чат-боты доступными для всех, в настоящее время они используют API-интерфейсы чата OpenAI, что делает запуск этого чат-бота дорогим для всех. Цель состоит в том, чтобы эффективно использовать точно настроенные модели с открытым исходным кодом, чтобы снизить стоимость запуска этого сервиса. Еще один аспект стоимости заключается в том, что мы переводим документы с маратхи на английский, а затем запускаем эти модели, было бы здорово напрямую запустить языковую модель на самом маратхи.

Если это представляет интерес/вы хотели бы внести свой вклад, напишите по адресу [email protected]