| from __future__ import annotations
|
| import asyncio
|
| import os
|
| import threading
|
| from protobuf2openai.app import app as openai_server
|
| from server import create_app, startup_tasks
|
| import uvicorn
|
|
|
|
|
| async def main():
|
|
|
| warp_app = create_app()
|
| await startup_tasks()
|
|
|
|
|
| warp_thread = threading.Thread(
|
| target=uvicorn.run,
|
| args=(warp_app,),
|
| kwargs={"host": "0.0.0.0", "port": 8000, "log_level": "info", "access_log": True},
|
| daemon=True
|
| )
|
| warp_thread.start()
|
|
|
| try:
|
| from warp2protobuf.core.auth import refresh_jwt_if_needed as _refresh_jwt
|
| await _refresh_jwt()
|
| except Exception:
|
| pass
|
|
|
|
|
| if __name__ == "__main__":
|
| asyncio.run(main())
|
| uvicorn.run(
|
| openai_server,
|
| host=os.getenv("HOST", "127.0.0.1"),
|
| port=int(os.getenv("PORT", "8010")),
|
| log_level="info",
|
| ) |