39.95K

Презентация_Лабораторные_работы_ИТИС-ИИС

1.

Разработка интеллектуального
Telegram-бота
Лабораторные работы №1–№5
Курс: «Интеллектуальные
информационные системы»
Студент группы ИТИС-ИИС: [Ваше

2.

Общая цель проекта
• Создать многофункционального Telegram-бота с ИИ-возможностями
• Пройти путь от простого эхо-ответа до интеллектуального ассистента
Этапы:
1. ЛР №1 — Базовый бот с командами и эхо-ответом
2. ЛР №2–3 — Интеграция с SQLite: хранение, статистика, история
3. ЛР №4 — Интеграция LLM через Hugging Face
4. ЛР №5 — Анализ тональности текста с использованием ML

3.

ЛР №1 — Первый Telegram-бот
Что сделано:
• Создан бот через @BotFather
• Реализованы команды: /start, /help
• Эхо-ответ на любое сообщение
Самостоятельная работа:
• Команда /info — описание бота
• Специальная реакция на слово «привет»
• Улучшенный ответ: «Вы сказали: [сообщение]. Это очень интересно!»

4.

ЛР №2 — Введение SQLite
Технологии:
• Локальная СУБД без сервера
• Таблицы: users, user_messages
• Поддержка внешних ключей и временных меток
Самостоятельные задания:
• Таблица users с полями: user_id, username, first_name,
registration_date
• Автоматическая регистрация при первом сообщении
• Функции: user_exists(), add_user(), insert_message_with_user_check()

5.

ЛР №3 — Статистика и история
Новые возможности:
• Команда /stats — количество сообщений, дата регистрации и
последнего сообщения
• Команда /history — последние 5 сообщений
• Расчёт активности: сколько дней пользователь взаимодействует с
ботом
Использованы SQL-функции: COUNT(), MIN(), MAX(), julianday()

6.

ЛР №4 — Интеграция LLM
Технологии:
• Hugging Face Inference API
• Модели: SmolLM3-3B, DeepSeek-R1-Distill-Qwen-1.5B
• Контекстный диалог с ограничением истории
Самостоятельная работа:
• Команда /info — статус, модель, длина истории
• Сравнение моделей: DeepSeek лучше рассуждает, SmolLM —
быстрее

7.

ЛР №5 — Анализатор настроения
Подход:
• Синтетический датасет: 10 позитивных + 10 негативных отзывов
• Bag of Words + Multinomial Naive Bayes
• Pipeline: CountVectorizer → MultinomialNB
Функции:
• /stats — последние 5 предсказаний
• Логирование: user_id, текст, предсказание, уверенность

8.

Расширения в ЛР №5
Реализовано:
• Команда /last N — показывает последние N записей
• Нейтральный класс (метка = 2) — добавлены 5 нейтральных отзывов
• Команда /clear — очистка таблицы sentiment_logs
Пример кода:
neutral_reviews = [
"Фильм обычный, ничего особенного",
"Нормально, но не более того",
...
]

9.

Архитектура системы
Многоуровневая архитектура:
1. Telegram Bot API — взаимодействие
2. Обработчики команд — маршрутизация
3. Бизнес-логика — анализ, диалог, предсказание
4. Хранилище — SQLite (сообщения, статистика, логи)
5. Интеллектуальные модули — LLM / ML

10.

Итоги и навыки
✅ Разработка и запуск Telegram-ботов
✅ Работа с SQLite: проектирование, запросы, агрегация
✅ Интеграция внешних API (Hugging Face)
✅ Обучение и применение ML-моделей (scikit-learn, joblib)
✅ Модульная архитектура и расширяемость кода

11.

Заключение
От «эхо» — к интеллектуальному помощнику
Вывод:
За пять лабораторных работ создан единый многофункциональный бот,
сочетающий:
• Хранение и анализ данных
• Генерацию текста с контекстом
• Классификацию эмоций
Перспективы: RAG, Docker, веб-интерфейс, мультиязычность
Спасибо за внимание!
Готов(а) ответить на вопросы.
English     Русский Rules