Skip to content

About

Интеллектуальная система для обработки отзывов на базе GPT

Topics

Resources

Contributing

Stars

1 star

Watchers

0 watching

Forks

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🤖 E-Ассистент для обработки отзывов

Интеллектуальная система для автоматизации работы с отзывами клиентов на базе GPT

Python 3.8+ License: MIT OpenAI

Автоматизируйте обработку отзывов клиентов с помощью искусственного интеллекта! Система анализирует тональность, генерирует персонализированные ответы и моментально уведомляет о негативных отзывах.

✨ Возможности

  • 🧠 Умный анализ тональности - GPT определяет позитивные, негативные и нейтральные отзывы с точностью ~95%
  • 💬 Генерация ответов - персонализированные, профессиональные ответы на каждый отзыв
  • 📱 Telegram бот - принимает отзывы 24/7 и обрабатывает автоматически
  • 🚨 Негатив-хендлер - моментальные уведомления о негативных отзывах
  • 💾 Сохранение данных - структурированное хранение в CSV
  • 📊 Детальная аналитика - отчеты и статистика по отзывам
  • 🎯 Гибкая настройка - легко адаптируется под ваш бизнес

🚀 Быстрый старт

Требования

  • Python 3.8 или выше
  • API ключ от ProxyAPI.ru или OpenAI
  • (Опционально) Telegram бот для уведомлений

Установка

  1. Клонируйте репозиторий:
git clone https://github.com/larik7lolik/review-assistant.git
cd review-assistant
  1. Создайте виртуальное окружение:
python -m venv venv

# Windows
venv\Scripts\activate

# Linux/Mac
source venv/bin/activate
  1. Установите зависимости:
pip install -r requirements.txt
  1. Настройте переменные окружения:

Создайте файл .env на основе config.example.env:

cp config.example.env .env

Откройте .env и заполните:

# Proxy API Configuration (обязательно)
PROXY_API_KEY=ваш_ключ_здесь
PROXY_API_URL=https://api.proxyapi.ru/openai/v1
MODEL_NAME=gpt-3.5-turbo

# Telegram Bot (опционально)
TELEGRAM_BOT_TOKEN=ваш_токен_бота
TELEGRAM_CHAT_ID=ваш_chat_id
  1. Запустите тест:
# Демо-режим (без API)
python demo.py

# С вашим API
python main.py

📖 Использование

1. Обработка тестовых отзывов

from main import ReviewAssistant

# Инициализация
assistant = ReviewAssistant()

# Тестовые отзывы
reviews = [
    {
        'review_id': 'R001',
        'author': 'Иван Петров',
        'review_text': 'Отличный сервис! Всё понравилось!'
    }
]

# Обработка
assistant.process_all_reviews(reviews)

2. Telegram бот

Запустите бота для приема отзывов 24/7:

python telegram_bot.py

Клиенты отправляют отзывы боту в Telegram → Бот автоматически анализирует и отвечает!

3. Обработка отзывов с сайтов

# Отзывы отеля
python process_hotel_reviews.py

# Отзывы магазина
python process_pyaterochka_reviews.py

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

review-assistant/
├── main.py                           # Основное приложение
├── proxy_api_client.py               # Клиент для работы с GPT API
├── csv_manager.py                    # Управление CSV
├── telegram_bot.py                   # Telegram бот
├── notifications.py                  # Система уведомлений
├── negative_handler.py               # Обработчик негативных отзывов
├── demo.py                           # Демо без API
├── requirements.txt                  # Зависимости
├── config.example.env                # Пример конфигурации
├── .gitignore                        # Игнорируемые файлы
└── README.md                         # Документация

🎯 Примеры

Пример 1: Позитивный отзыв

Вход:

"Потрясающий отель! Персонал очень внимателен, номера чистые. Обязательно вернемся!"

Анализ:

  • 😊 Тональность: Позитивный
  • 📊 Уверенность: 98%
  • 💡 Причина: Использованы положительные эпитеты, выражено намерение вернуться

Ответ:

"Спасибо большое за такой замечательный отзыв! Мы всегда стараемся создать комфортную атмосферу для наших гостей. Будем ждать вас снова!"

Пример 2: Негативный отзыв

Вход:

"Ужасный сервис! Долго ждали, персонал грубый. Больше не приду."

Анализ:

  • 😠 Тональность: Негативный
  • 📊 Уверенность: 95%
  • 💡 Причина: Резко негативные слова, претензии по нескольким аспектам

Действия:

  • 🚨 Предупреждение в консоль
  • 📱 Уведомление в Telegram
  • 📝 Запись в лог negative_reviews.log

Ответ:

"Приносим искренние извинения за доставленные неудобства. Мы обязательно разберемся в ситуации. Пожалуйста, свяжитесь с нами для решения проблемы."

📊 Результаты

Все отзывы сохраняются в CSV файл с полной информацией:

Поле Описание
review_id Уникальный ID
author Автор отзыва
review_text Текст отзыва
sentiment Тональность (positive/negative/neutral)
confidence Уверенность (0-1)
sentiment_reason Объяснение тональности
generated_response Сгенерированный ответ
published_to_telegram Опубликовано в Telegram
status Статус обработки

🔧 Конфигурация

Модели GPT

В .env можно выбрать модель:

# Экономичная (рекомендуется)
MODEL_NAME=gpt-3.5-turbo

# Более продвинутая
MODEL_NAME=gpt-4o-mini

# Премиум
MODEL_NAME=gpt-4-turbo

Демо-режим

Работает без API ключа для тестирования:

python demo.py

Использует простой анализ по ключевым словам (~70% точность).

🤖 Telegram бот

Настройка бота

  1. Найдите @BotFather в Telegram
  2. Отправьте /newbot и следуйте инструкциям
  3. Получите токен и добавьте в .env
  4. Узнайте Chat ID через @userinfobot

Команды бота

  • /start - Начать работу
  • /help - Справка
  • /stats - Статистика

Использование

Клиенты просто отправляют текст отзыва боту → Бот автоматически:

  1. Анализирует тональность
  2. Генерирует ответ
  3. Сохраняет в CSV
  4. Уведомляет при негативе

💰 Стоимость

С GPT-3.5-Turbo (рекомендуется)

  • ~$0.002 за отзыв (анализ + ответ)
  • При балансе 300₽ (~$3): ~1500 отзывов

Демо-режим

  • Бесплатно ✅
  • Хорошо для тестирования и небольших объемов

🛠️ Troubleshooting

Ошибка 401: Invalid API Key

Решение:

  1. Проверьте что ключ активен на ProxyAPI.ru
  2. Убедитесь что баланс > 0
  3. Проверьте что в .env нет лишних пробелов

Ошибка 403: Forbidden

Решение:

  1. Измените PROXY_API_URL с /openrouter/v1 на /openai/v1
  2. Измените MODEL_NAME с openai/gpt-3.5-turbo на gpt-3.5-turbo

Не приходят Telegram уведомления

Решение:

  1. Отправьте боту /start
  2. Проверьте TELEGRAM_BOT_TOKEN и TELEGRAM_CHAT_ID
  3. Убедитесь что бот не заблокирован

📚 Документация

🤝 Вклад в проект

Мы приветствуем вклад в проект!

  1. Fork репозитория
  2. Создайте feature branch (git checkout -b feature/AmazingFeature)
  3. Commit изменения (git commit -m 'Add some AmazingFeature')
  4. Push в branch (git push origin feature/AmazingFeature)
  5. Откройте Pull Request

📝 Лицензия

Этот проект распространяется под лицензией MIT. См. файл LICENSE для подробностей.

🙏 Благодарности

📧 Контакты

Вопросы и предложения: создайте issue


Сделано с ❤️ для автоматизации работы с отзывами

⭐ Поставьте звезду, если проект оказался полезным!

About

Интеллектуальная система для обработки отзывов на базе GPT

Topics

Resources

Contributing

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages