File size: 775 Bytes
54921ec
 
 
 
 
85ed553
 
 
 
 
 
54921ec
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
import gradio as gr
from fastapi import FastAPI, Request
from fastapi.responses import JSONResponse
from transformers import pipeline, AutoTokenizer

model = pipeline("token-classification",
    model="ckiplab/bert-base-chinese-ner",
    tokenizer=AutoTokenizer.from_pretrained("ckiplab/bert-base-chinese-ner"),
    aggregation_strategy="simple",
    use_safetensors=True
)

def analyze(sentence: str):
    result = model(sentence)
    return  

demo = gr.Interface(fn=analyze, inputs="text", outputs="text", title="實體辨識")

app = FastAPI()
app = gr.mount_gradio_app(app, demo, path="/")

@app.post("/analyze")
async def api_analyze(request: Request):
    payload = await request.json()
    return JSONResponse(content={"result": analyze(payload.get("sentence", ""))})