import os import sys import subprocess def check_dependencies(): """Проверяет, установлены ли все необходимые зависимости""" try: import flask import torch import transformers print("✅ Все необходимые зависимости установлены.") return True except ImportError as e: print(f"❌ Отсутствуют зависимости: {e}") return False def install_dependencies(): """Устанавливает необходимые зависимости из requirements.txt""" print("📦 Установка зависимостей...") try: subprocess.check_call([sys.executable, "-m", "pip", "install", "-r", "requirements.txt"]) print("✅ Зависимости успешно установлены!") return True except subprocess.CalledProcessError as e: print(f"❌ Ошибка при установке зависимостей: {e}") return False def run_app(): """Запускает Flask-приложение""" print("🚀 Запуск AI Assistant...") print("⚠️ Первый запуск может занять некоторое время, пока загружается модель.") try: from app import app app.run(debug=True, port=5000) except Exception as e: print(f"❌ Ошибка при запуске приложения: {e}") def main(): print("="*50) print("🤖 AI Assistant - Установка и запуск") print("="*50) # Проверяем зависимости if not check_dependencies(): print("\nНеобходимо установить зависимости.") choice = input("Установить зависимости сейчас? (y/n): ").lower() if choice == 'y': if not install_dependencies(): print("❌ Не удалось установить зависимости. Пожалуйста, установите их вручную.") return else: print("⚠️ Для работы приложения необходимо установить зависимости.") print("Выполните: pip install -r requirements.txt") return # Запускаем приложение run_app() if __name__ == "__main__": main()