Telegram Group & Telegram Channel
Первые шаги при реализации умного поиска (AI Search) по документам компании.

Клиент - международная компания, обычный небольшой enterprise с историей в пару десятков лет, клиентами в дюжине стран и численностью сотрудников до 5000.

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

(см другие вариации этого кейса)

1. Identify scope and get statistics

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

2. Get data

Потом я выгрузил релевантную часть документации в файловую систему. В сумме ~8GB и 45344 документов. Причем выгружал я сам скрейпингом, предварительно согласовав с IT. Так оказалось проще и быстрее всего. Enterprise 🤣

Все документы сжаты в gzip и хранятся в content-addressable storage (CAS), ради дедупликации и простоты работы (выглядит, как содержимое .git/objects в ваших проектах). Там дикая смесь файлов, начиная от XLSX c PDF до MSG и PUB.

3. Basic data extraction

На следующем шаге мы прогоняем все документы через unstructured и сохраняем полученные фрагменты текста обратно в CAS. Потом эти фрагменты мы загрузим в БД с полнотекстовым поиском.

В ней будет две таблицы, первая - список всех документов и их иерархия, вторая - все фрагменты для каждого документа (общим счетом 6690323 штук). На вторую таблицу включаем full-text search.

Базу данных раздует при этом до 15GB. Скриншот с примером поиска в ручном режиме - в комментариях.

4. Knowledge map

На третьем шаге уже приделываем классификатор на базе GPT4. Он будет анализировать каждый запрос с учетом Knowledge Map, который описывает поисковые ограничения для разных типов запросов.

В него мы положим всю ту информацию, которую собрали на первом шаге. Например: “Информация по срокам поставки лежит в папке X, бери файлы не старше 2х недель” или “Про внутрикорпоративные соревнования смотри в папке Y, бери файлы не старше года. Если ищут определенный отдел - выбирай по заголовкам внутри файла в двухбуквенном формате” итп

5. Edge cases + GUI

На четвертов шаге прописываем вариант поиска для “не знаем, как искать” и приделываем GUI для демонстрации возможностей клиенту. В подобных кейсах я люблю использовать BulmaCSS для красоты и HTMX для динамичности c минимумом усилий. Спихиваем написание GUI на ChatGPT.

6. Gather feedback

Много ли можно сделать с подобным поиском? На самом деле он уже будет работать лучше существующего текстового поиска, т.к. GPT будет сильно сокращать список документов в выборке по эвристикам из knowledge map.

Но качество в этой итерации и не имеет значения. Главное показать клиенту как можно быстро и, главное, прозрачно улучшить качество поиска. Во время демки мы поковыряем вместе Knowledge Map и попробуем вместе “научить” систему находить новые типы документов.

Ну а дальше клиент попросит загрузить остальные 80% данных, подключить сторонние системы и вообще поглубже интегрировать ассистента во внутренние процессы.

Ваш, @llm_under_hood 🤗

Update: продолжение про агентов написано тут.
👍74🔥2411🎉1



tg-me.com/llm_under_hood/315
Create:
Last Update:

Первые шаги при реализации умного поиска (AI Search) по документам компании.

Клиент - международная компания, обычный небольшой enterprise с историей в пару десятков лет, клиентами в дюжине стран и численностью сотрудников до 5000.

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

(см другие вариации этого кейса)

1. Identify scope and get statistics

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

2. Get data

Потом я выгрузил релевантную часть документации в файловую систему. В сумме ~8GB и 45344 документов. Причем выгружал я сам скрейпингом, предварительно согласовав с IT. Так оказалось проще и быстрее всего. Enterprise 🤣

Все документы сжаты в gzip и хранятся в content-addressable storage (CAS), ради дедупликации и простоты работы (выглядит, как содержимое .git/objects в ваших проектах). Там дикая смесь файлов, начиная от XLSX c PDF до MSG и PUB.

3. Basic data extraction

На следующем шаге мы прогоняем все документы через unstructured и сохраняем полученные фрагменты текста обратно в CAS. Потом эти фрагменты мы загрузим в БД с полнотекстовым поиском.

В ней будет две таблицы, первая - список всех документов и их иерархия, вторая - все фрагменты для каждого документа (общим счетом 6690323 штук). На вторую таблицу включаем full-text search.

Базу данных раздует при этом до 15GB. Скриншот с примером поиска в ручном режиме - в комментариях.

4. Knowledge map

На третьем шаге уже приделываем классификатор на базе GPT4. Он будет анализировать каждый запрос с учетом Knowledge Map, который описывает поисковые ограничения для разных типов запросов.

В него мы положим всю ту информацию, которую собрали на первом шаге. Например: “Информация по срокам поставки лежит в папке X, бери файлы не старше 2х недель” или “Про внутрикорпоративные соревнования смотри в папке Y, бери файлы не старше года. Если ищут определенный отдел - выбирай по заголовкам внутри файла в двухбуквенном формате” итп

5. Edge cases + GUI

На четвертов шаге прописываем вариант поиска для “не знаем, как искать” и приделываем GUI для демонстрации возможностей клиенту. В подобных кейсах я люблю использовать BulmaCSS для красоты и HTMX для динамичности c минимумом усилий. Спихиваем написание GUI на ChatGPT.

6. Gather feedback

Много ли можно сделать с подобным поиском? На самом деле он уже будет работать лучше существующего текстового поиска, т.к. GPT будет сильно сокращать список документов в выборке по эвристикам из knowledge map.

Но качество в этой итерации и не имеет значения. Главное показать клиенту как можно быстро и, главное, прозрачно улучшить качество поиска. Во время демки мы поковыряем вместе Knowledge Map и попробуем вместе “научить” систему находить новые типы документов.

Ну а дальше клиент попросит загрузить остальные 80% данных, подключить сторонние системы и вообще поглубже интегрировать ассистента во внутренние процессы.

Ваш, @llm_under_hood 🤗

Update: продолжение про агентов написано тут.

BY LLM под капотом


Warning: Undefined variable $i in /var/www/tg-me/post.php on line 283

Share with your friend now:
tg-me.com/llm_under_hood/315

View MORE
Open in Telegram


telegram Telegram | DID YOU KNOW?

Date: |

Newly uncovered hack campaign in Telegram

The campaign, which security firm Check Point has named Rampant Kitten, comprises two main components, one for Windows and the other for Android. Rampant Kitten’s objective is to steal Telegram messages, passwords, and two-factor authentication codes sent by SMS and then also take screenshots and record sounds within earshot of an infected phone, the researchers said in a post published on Friday.

Dump Scam in Leaked Telegram Chat

A leaked Telegram discussion by 50 so-called crypto influencers has exposed the extraordinary steps they take in order to profit on the back off unsuspecting defi investors. According to a leaked screenshot of the chat, an elaborate plan to defraud defi investors using the worthless “$Few” tokens had been hatched. $Few tokens would be airdropped to some of the influencers who in turn promoted these to unsuspecting followers on Twitter.

telegram from in


Telegram LLM под капотом
FROM USA