用fastapi写的前后端,确实是好代码,没用webui了,这样可以直接在内网就打开页面,还是非常实用的,以往用FastAPI封的很简单,这块值得学习。
prepare_environment()->
- prepare_submodules()
- check_dirs()
- validate_requirements()
- setup_windows_bitsandbytes()
- setup_onnxruntime()
run_tag_editor()->
run_tensorboard()->
uvicorn.run()->mikazuki.app->
- mikazuki.app.application->
-- app=FastAPI(lifespan)
-- app.include_router(proxy_router) # 可以处理该路由器定义的http请求
-- app.include_router(api_router,prefix="/api")->
--- router = APIRouter()
--- @router.post("/interrogate")
---- async def run_interrogate(req:TaggerInterrogateRequest,background_task)->
---- interrogator = available_interrogators.get(req.interrogator_model