Telegram бот для взаимодействия с локальным Ollama API. Поддерживает контекстные беседы, анализ изображений и различные модели.
- 🤖 Поддержка моделей (С Возможность добавления):
- Qwen 2.5 Coder (32B)
- Qwen 2.5
- Qwen 2.5 (32B)
- LLaVA (34B) для анализа изображений
- 💬 Контекстные беседы
- 🖼️ Анализ изображений
- 🔄 Автоматическая очистка старых контекстов
- ⚡ Асинхронная обработка запросов
- 🚀 Systemd интеграция
- Python 3.9+
- Ollama с установленными моделями
- Telegram Bot Token
- Linux с systemd
# Клонируем репозиторий
git clone https://github.com/yourusername/ollama-telegram-bot.git
cd ollama-telegram-bot
# Делаем скрипт установки исполняемым
chmod +x install.sh
# Запускаем установку
sudo ./install.sh
Скрипт установки:
- Установит все зависимости через pip
- Запустит setup.py для создания systemd сервиса
- Настроит все необходимые права доступа
- Создаст и активирует systemd сервис
# Клонируем репозиторий
git clone https://github.com/yourusername/ollama-telegram-bot.git
cd ollama-telegram-bot
# Устанавливаем зависимости и создаем сервис
pip install -r requirements.txt
sudo python3 setup.py develop
- Установите Ollama и модели:
ollama pull qwen2.5-coder:32b
ollama pull qwen2.5
ollama pull qwen2.5:32b
ollama pull llava:34b
- Настройте конфигурацию в config.py:
API_TOKEN = "YOUR_TELEGRAM_BOT_TOKEN"
ALLOWED_IDS = [your_telegram_id] # Список разрешенных ID пользователей
OLLAMA_API_URL: str = "http://localhost:11434/api/generate" # Адрес узла с Ollama
OLLAMA_CHAT_URL: str = "http://localhost:11434/api/chat" # Адрес узла с Ollama
# Включаем автозапуск
sudo systemctl enable ollama-bot
# Запускаем сервис
sudo systemctl start ollama-bot
python main.py
# Проверка статуса
sudo systemctl status ollama-bot
# Просмотр логов
sudo journalctl -u ollama-bot -f
# Перезапуск
sudo systemctl restart ollama-bot
# Остановка
sudo systemctl stop ollama-bot
-
Команды:
/start
- Начать работу/help
- Справка/reset
- Сбросить контекст
-
Кнопки меню:
- 🔄 Сбросить контекст
- ⚙️ Сменить модель
- ❓ Помощь
-
Возможности:
- Отправка текстовых сообщений
- Отправка изображений для анализа
- Контекстные беседы (сохранение истории)
- Выбор различных моделей
ollama-telegram-bot/
├── main.py # Основной файл бота
├── config.py # Конфигурация
├── database.py # База данных
├── setup.py # Установка и настройка systemd
├── install.sh # Скрипт автоматической установки
└── requirements.txt # Зависимости
- Проблемы с установкой:
# Просмотр логов установки
sudo ./install.sh
# Проверка сервиса
sudo systemctl status ollama-bot
sudo journalctl -u ollama-bot -f
# Проверка прав доступа
ls -la /etc/systemd/system/ollama-bot.service
sudo systemctl daemon-reload
- Проверка компонентов:
- Ollama запущен и доступен (
systemctl status ollama
) - Модели установлены (
ollama list
) - Конфигурация верная (токен, ID и адрес в config.py)
- База данных создана и доступна для записи
- Ollama запущен и доступен (