Files
upo-app-agents/src/app/__main__.py
Giacomo Bertolazzi df14ae5bc6 Fix configs validation (#66)
* fix configs validation of models

* added validation for defaults configs

* better error handling in main if any of error occurs during setup
2025-10-30 15:47:07 +01:00

39 lines
1.2 KiB
Python

import asyncio
import logging
import sys
from dotenv import load_dotenv
from app.configs import AppConfig
from app.interface import *
if __name__ == "__main__":
try:
# =====================
load_dotenv()
configs = AppConfig.load()
# =====================
chat = ChatManager()
gradio = chat.gradio_build_interface()
_app, local_url, share_url = gradio.launch(server_name="0.0.0.0", server_port=configs.port, quiet=True, prevent_thread_lock=True, share=configs.gradio_share)
logging.info(f"UPO AppAI Chat is running on {share_url or local_url}")
try:
telegram = TelegramApp()
telegram.add_miniapp_url(share_url)
telegram.run()
except AssertionError as e:
try:
logging.warning(f"Telegram bot could not be started: {e}")
loop = asyncio.new_event_loop()
asyncio.set_event_loop(loop)
loop.run_forever()
except KeyboardInterrupt:
logging.info("Shutting down due to KeyboardInterrupt")
finally:
gradio.close()
except Exception as e:
logging.error(f"Application failed to start: {e}")
sys.exit(1)