123456789101112131415161718192021222324252627282930313233343536373839404142 |
- # -*- coding: utf-8 -*-
- from fastapi import FastAPI, Form, HTTPException, Request,status,APIRouter,Query,Path, Depends, BackgroundTasks
- from tools.loglog import logger,log_err_e
- from core.respone_format import *
- from gpt.article_annotation import Annotation
- from pydantic import BaseModel, ValidationError, conint,Field,conint
- from typing import List, Optional,Literal
- import asyncio
- router_article_annotation = APIRouter()
- annotation_obj = Annotation()
- class Annotation(BaseModel):
- english_text:str
- split_blank:bool = True
- @router_article_annotation.post("/article/meaning/annotation")
- def post_annotation(json_data:Annotation,request:Request,):
- """词义标注的同步接口"""
- json_data = json_data.model_dump()
- english_text = json_data.get("english_text")
- split_blank = json_data.get("split_blank")
- real_ip = request.headers.get("X-Real-IP","0.0.0.0")
- resp = annotation_obj.submit_task(
- english_text=english_text,
- split_blank=split_blank,
- real_ip=real_ip,
- )
- return resp_200(data=resp)
- @router_article_annotation.get("/article/query_annotation")
- async def query_annotation(task_id:int=Query(...)):
- resp = await annotation_obj.query_result_by_taskid(task_id)
- return resp
|