Skip to content

NSO-Clio/AppAssistantBot

Repository files navigation

QnA-Bot для работы с приложением

Заказчик

photo_2024-10-27_03-10-27

ООО "Сила" сделанно в рамках хакатона Цифровой Прорыв сезон: Искусственный Интеллект

Проблема

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

Как наше решение помогает

  • Сокращение затрат: Мгновенная доступность ответов снижает необходимость в технической поддержке и обучении.
  • Увеличение точности ответов: Применяя ML-алгоритмы, бот подбирает наиболее релевантные ответы, что минимизирует ошибки в восприятии и снижает вероятность необходимости повторного обращения за поддержкой.

ML Решение

  • Используются LLM - большие языковые модели - для создания ответов на вопросы, YandexGPT
  • Модель не выдумывает и не додумывает факты
  • Модель SentenceTransformer используется для создания эмбеддингов, SentenceTransformer ('BAAI/bge-m3’)

Наши Плюсы

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

Архитектура

image

Структура проекта

  • Clio_Yandex_GPT.ipynb - ноутбук с применением модели YandexGPT и сравнением ответов, настройкой промпта, а также подсчётом метрики
  • documentation - папка с файлами .docx и тд
  • img_data - папка с изображениями из .docx файла
  • documentation/data_quastions.json - набор частых вопросов и ответов, его можно саморучно составить через Clio_Yandex_GPT.ipynb
  • config.py - файл в котором храняться все ключи и ссылки
  • model.py - файл с классом модели и классом генератора промпта через Embeddings, а также составлением базы QnA
  • preproc_text.py - файл с функциями по предобработке документации формата .docx
  • db.py - SQL база данных
  • bot.py - код самого бота
  • initialization.py - файл со всеми инициализациями
  • keyboards.py - класс с кнопками бота

Запуск проекта

  • файл формата .docx должен находитьмя в папке documentation
  • в файле config.py указываем свои ссылки и ключи
TG_BOT_TOKEN = 'YOUR_TOKEN'
YANDEX_PASSPORT_O_AUTH_TOKEN = 'YOUR_TOKEN'
MODEL_URI = 'YOUR_URI'

Запуск с docx файлом, который дан изначально

Тут ничего сложного

  • скачиваем библиотеки pip install -r requirements.txt
  • потом запускаем бота python bot.py

Запуск со своим docx файлом

Здесь чуть больше пунктов

  • Для начала нужно, чтобы в файле docx было поле СОДЕРЖАНИЕ и оно было оформлено похожим образом, как и в изначальном docx, который находится в репозитории
  • Так же если в файле есть рисунки/картинки/фото то оно должны помичаться как в примере а именно " (Рисунок 1) "
  • После чего нужно заполнить папку img_data изображениями, если они есть, создавать файлы нужно как img_data/imgs<номер по счету рисунка>.jpg
  • после скачиваем библиотеки pip install -r requirements.txt
  • и запускаем бота python bot.py

Команда

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •