unicorn 日志都打不出来,提示10.254.52.76:8382 - “POST /run/predict HTTP/1.1“ 422 Unprocessable Entity

一、背景:

调用gradio生成的界面,通过unicorn.run执行。

提示POST /run/predict HTTP/1.1" 422 Unprocessable Entity,

在root里加logger.info和print都不能打印了

二、分析过程

1、以为是76服务器的原因,不是

2、日志打印不出来,以为是异步日志打不出来

3、可能是安装python某个包的版本产生的bug

三、解决方法

建立最小的框架代码,发现复现现象

import uvicorn
from fastapi import FastAPI
import gradio as gr
import logging

app = FastAPI()

# @app.get("/")
# async def root():
def root():
	logging.info("liu")
	print("@@@@")
	re_json ={"message": "Hello World liuh"}
	return re_json

def get_gradio_ui(my_app):
    with gr.Blocks() as demo:
    	text_button = gr.Button("画图")
    	text_button.click(root)
    return gr.mount_gradio_app(my_app, demo, path="/")
my = get_gradio_ui(app)
if __name__ == "__main__":
	# uvicorn.run(app, host="0.0.0.0", port=8000)
	uvicorn.run(app="liu2:my",host="0.0.0.0",port=9991,log_level="info")

2、google搜寻找到了蛛丝马迹,觉得可能最大的原因是版本问题。

        python3.8 然后是gradio==3.36.1,

可以打印日志出来了

你可能感兴趣的:(linux,运维,服务器)