Commit 1d9c745b authored by Tang Ziya's avatar Tang Ziya
Browse files

fix: replace deprecated on_event with lifespan

parent 90503be2
import sys import sys
from contextlib import asynccontextmanager
from fastapi import FastAPI, Depends, HTTPException from fastapi import FastAPI, Depends, HTTPException
from fastapi.routing import APIRoute from fastapi.routing import APIRoute
...@@ -46,7 +47,16 @@ import asyncio ...@@ -46,7 +47,16 @@ import asyncio
import subprocess import subprocess
import yaml import yaml
app = FastAPI()
@asynccontextmanager
async def lifespan(app: FastAPI):
log.info("startup_event")
# TODO: Check config.yaml file and create one
asyncio.create_task(start_litellm_background())
yield
app = FastAPI(lifespan=lifespan)
origins = ["*"] origins = ["*"]
...@@ -141,13 +151,6 @@ async def shutdown_litellm_background(): ...@@ -141,13 +151,6 @@ async def shutdown_litellm_background():
background_process = None background_process = None
@app.on_event("startup")
async def startup_event():
log.info("startup_event")
# TODO: Check config.yaml file and create one
asyncio.create_task(start_litellm_background())
app.state.ENABLE_MODEL_FILTER = ENABLE_MODEL_FILTER app.state.ENABLE_MODEL_FILTER = ENABLE_MODEL_FILTER
app.state.MODEL_FILTER_LIST = MODEL_FILTER_LIST app.state.MODEL_FILTER_LIST = MODEL_FILTER_LIST
......
from contextlib import asynccontextmanager
from bs4 import BeautifulSoup from bs4 import BeautifulSoup
import json import json
import markdown import markdown
...@@ -92,7 +93,19 @@ https://github.com/open-webui/open-webui ...@@ -92,7 +93,19 @@ https://github.com/open-webui/open-webui
""" """
) )
app = FastAPI(docs_url="/docs" if ENV == "dev" else None, redoc_url=None)
@asynccontextmanager
async def lifespan(app: FastAPI):
if ENABLE_LITELLM:
asyncio.create_task(start_litellm_background())
yield
if ENABLE_LITELLM:
await shutdown_litellm_background()
app = FastAPI(
docs_url="/docs" if ENV == "dev" else None, redoc_url=None, lifespan=lifespan
)
app.state.ENABLE_MODEL_FILTER = ENABLE_MODEL_FILTER app.state.ENABLE_MODEL_FILTER = ENABLE_MODEL_FILTER
app.state.MODEL_FILTER_LIST = MODEL_FILTER_LIST app.state.MODEL_FILTER_LIST = MODEL_FILTER_LIST
...@@ -211,12 +224,6 @@ async def check_url(request: Request, call_next): ...@@ -211,12 +224,6 @@ async def check_url(request: Request, call_next):
return response return response
@app.on_event("startup")
async def on_startup():
if ENABLE_LITELLM:
asyncio.create_task(start_litellm_background())
app.mount("/api/v1", webui_app) app.mount("/api/v1", webui_app)
app.mount("/litellm/api", litellm_app) app.mount("/litellm/api", litellm_app)
...@@ -381,9 +388,3 @@ else: ...@@ -381,9 +388,3 @@ else:
log.warning( log.warning(
f"Frontend build directory not found at '{FRONTEND_BUILD_DIR}'. Serving API only." f"Frontend build directory not found at '{FRONTEND_BUILD_DIR}'. Serving API only."
) )
@app.on_event("shutdown")
async def shutdown_event():
if ENABLE_LITELLM:
await shutdown_litellm_background()
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment