You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
# TechSmart Support Bot 🤖
Telegram бот для техподдержки онлайн-магазина TechSmart (электроника и гаджеты).
## Возможности
- 📦 Информация о доставке и возврате
- 🛡️ Гарантийная политика
- ❓ Ответы на часто задаваемые вопросы
- 🤖 AI-powered ответы на произвольные вопросы (RAG)
- 📞 Связь с оператором
## Установка
### 1. Клонирование и настройка
```bash
# Перейдите в директорию проекта
cd Sale_assistant
# Создайте виртуальное окружение (рекомендуется)
python -m venv venv
# Активируйте виртуальное окружение
# Windows:
venv\Scripts\activate
# Linux/Mac:
source venv/bin/activate
# Установите зависимости
pip install -r requirements.txt
```
### 2. Настройка переменных окружения
```bash
# Скопируйте пример файла конфигурации
copy .env.example .env # Windows
cp .env.example .env # Linux/Mac
# Отредактируйте .env файл и добавьте ваши ключи:
# TELEGRAM_BOT_TOKEN=ваш_токен_от_BotFather
# OPENAI_API_KEY=ваш_ключ_OpenAI
```
### 3. Получение токенов
#### Telegram Bot Token:
1. Откройте [@BotFather](https://t.me/BotFather) в Telegram
2. Отправьте команду `/newbot`
3. Следуйте инструкциям для создания бота
4. Скопируйте полученный токен
#### OpenAI API Key:
1. Зарегистрируйтесь на [OpenAI](https://platform.openai.com/)
2. Перейдите в раздел API Keys
3. Создайте новый ключ и скопируйте его
## Запуск
```bash
python bot.py
```
## Структура проекта
```
Sale_assistant/
├── bot.py # Основной файл бота
├── config.py # Конфигурация и сообщения
├── knowledge_base.py # Модуль базы знаний (RAG)
├── requirements.txt # Зависимости Python
├── .env.example # Пример файла конфигурации
├── .env # Ваши ключи (не коммитить!)
├── README.md # Документация
├── data/ # База знаний
│ ├── delivery_info.pdf # Информация о доставке
│ ├── faq_customers.txt # FAQ
│ └── warranty_policy.docx # Гарантийная политика
└── chroma_db/ # Векторная база данных (создаётся автоматически)
```
## Команды бота
| Команда | Описание |
|---------|----------|
| `/start` | Начать работу с ботом |
| `/help` | Показать справку |
| `/delivery` | Информация о доставке |
| `/warranty` | Гарантийная политика |
| `/faq` | Часто задаваемые вопросы |
| `/operator` | Связаться с оператором |
## Как это работает
1. **База знаний**: Бот загружает документы из папки `data/` (PDF, DOCX, TXT)
2. **Векторизация**: Тексты разбиваются на чанки и сохраняются в ChromaDB
3. **RAG**: При вопросе пользователя бот находит релевантные чанки и генерирует ответ с помощью GPT
4. **Прямой доступ**: Команды `/delivery`, `/warranty`, `/faq` показывают полные документы
## Добавление новых документов
1. Добавьте файлы в папку `data/` (поддерживаются .txt, .pdf, .docx)
2. Перезапустите бота
3. База знаний автоматически обновится
## Технологии
- **Python 3.10+**
- **python-telegram-bot** - Telegram Bot API
- **LangChain** - RAG framework
- **OpenAI GPT** - Генерация ответов
- **ChromaDB** - Векторная база данных
- **PyPDF2** - Чтение PDF
- **python-docx** - Чтение DOCX
## Лицензия
MIT License
## Поддержка
При возникновении проблем создайте Issue или свяжитесь с разработчиком.
# Sale_assistant
# Sale_assistant