1a02c979d00645226c917237f008fa83ed0de4db
Основные компоненты: - База данных (PostgreSQL) с моделями User, Vocabulary, Task - Интеграция с OpenAI API для перевода слов - Команды: /start, /add, /vocabulary, /help - Сервисы для работы с пользователями, словарем и AI Реализовано: ✅ Регистрация и приветствие пользователя ✅ Добавление слов в словарь с автоматическим переводом ✅ Просмотр личного словаря ✅ Архитектура проекта с разделением на слои 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
Telegram Бот для изучения языков
Интеллектуальный Telegram бот для изучения английского языка с использованием AI.
Возможности
- 📚 Управление словарным запасом с автоматическим переводом через AI
- ✍️ Ежедневные задания для практики (в разработке)
- 💬 Диалоговая практика с ИИ (в разработке)
- 📊 Статистика прогресса (в разработке)
Текущая версия (MVP)
Реализовано:
- ✅ Команда
/start- приветствие и регистрация пользователя - ✅ Команда
/add [слово]- добавление слов в словарь с AI-переводом - ✅ Команда
/vocabulary- просмотр словаря - ✅ Команда
/help- справка - ✅ База данных (PostgreSQL) для хранения пользователей и словарей
- ✅ Интеграция с OpenAI API для перевода слов
Установка и запуск
1. Клонирование репозитория
git clone http://103.137.249.134:3000/NANDI/tg_bot_language.git
cd tg_bot_language
2. Установка зависимостей
pip install -r requirements.txt
3. Настройка окружения
Скопируйте .env.example в .env:
cp .env.example .env
Отредактируйте .env и заполните необходимые параметры:
BOT_TOKEN=your_telegram_bot_token_here
OPENAI_API_KEY=your_openai_api_key_here
DATABASE_URL=postgresql+asyncpg://user:password@localhost:5432/language_bot
DEBUG=True
Получение токенов:
- Telegram Bot Token: создайте бота через @BotFather
- OpenAI API Key: получите на platform.openai.com
4. Настройка базы данных
Создайте PostgreSQL базу данных:
createdb language_bot
Или используйте Docker:
docker run --name language-bot-db -e POSTGRES_PASSWORD=password -e POSTGRES_DB=language_bot -p 5432:5432 -d postgres:15
5. Запуск бота
python main.py
Структура проекта
bot_tg_language/
├── bot/
│ ├── handlers/ # Обработчики команд
│ │ ├── start.py # /start, /help
│ │ └── vocabulary.py # /add, /vocabulary
│ └── keyboards/ # Клавиатуры (пока не используется)
├── database/
│ ├── models.py # Модели БД (User, Vocabulary, Task)
│ └── db.py # Подключение к БД
├── services/
│ ├── ai_service.py # Сервис для работы с OpenAI
│ ├── user_service.py # Сервис пользователей
│ └── vocabulary_service.py # Сервис словаря
├── config/
│ └── settings.py # Настройки приложения
├── main.py # Точка входа
├── requirements.txt # Зависимости
├── .env.example # Пример конфигурации
└── TZ.md # Техническое задание
Использование
Команды бота
/start- Начать работу с ботом/add [слово]- Добавить слово в словарь/vocabulary- Посмотреть свой словарь/help- Показать справку
Пример использования
- Запустите бота:
/start - Добавьте слово:
/add elephant - Бот переведёт слово через AI и предложит добавить в словарь
- Подтвердите добавление
- Просмотрите словарь:
/vocabulary
Roadmap
См. TZ.md для полного технического задания.
Следующие этапы:
- Ежедневные задания с разными типами упражнений
- Тематические подборки слов
- Импорт слов из текста
- Диалоговая практика с AI
- Статистика и прогресс
- Spaced repetition алгоритм
Технологии
- Python 3.11+
- aiogram 3.x - Telegram Bot framework
- SQLAlchemy 2.x - ORM для работы с БД
- PostgreSQL - База данных
- OpenAI API - AI для перевода и проверки
Лицензия
MIT
Description
Languages
Python
98.5%
Makefile
1.1%
Shell
0.3%
Dockerfile
0.1%