From a11af98ee5df6c54317f1af2db6301dcdec95a02 Mon Sep 17 00:00:00 2001 From: maxmon <541182180@qq.com> Date: Wed, 17 Jan 2024 22:15:36 +0800 Subject: [PATCH] =?UTF-8?q?feat(=E8=87=AA=E5=8A=A8=E6=A0=87=E6=B3=A8):=20?= =?UTF-8?q?=E5=BC=95=E5=85=A5auto=5Fanno=5F2=EF=BC=8C=E6=94=AF=E6=8C=81?= =?UTF-8?q?=E6=96=87=E6=9C=AC=E5=88=86=E7=B1=BB=E3=80=81=E5=AE=9E=E4=BD=93?= =?UTF-8?q?=E6=8A=BD=E5=8F=96=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- be/app/api/v1/__init__.py | 3 ++- be/app/api/v1/ai.py | 55 +++++++++++++++++++++++++++++++++++++++ be/requirements.txt | 2 ++ 3 files changed, 59 insertions(+), 1 deletion(-) create mode 100644 be/app/api/v1/ai.py create mode 100644 be/requirements.txt diff --git a/be/app/api/v1/__init__.py b/be/app/api/v1/__init__.py index c07b19f..7f550dd 100644 --- a/be/app/api/v1/__init__.py +++ b/be/app/api/v1/__init__.py @@ -1,5 +1,5 @@ from flask import Blueprint -from ...api.v1 import index, project, files, anno +from ...api.v1 import index, project, files, anno, ai def create_blueprint_v1(): @@ -9,5 +9,6 @@ def create_blueprint_v1(): project.api.register(bp_v1, url_prefix='/project') anno.api.register(bp_v1, url_prefix='/anno') files.api.register(bp_v1, url_prefix='/files') + ai.api.register(bp_v1, url_prefix='/ai') return bp_v1 diff --git a/be/app/api/v1/ai.py b/be/app/api/v1/ai.py new file mode 100644 index 0000000..7bfec33 --- /dev/null +++ b/be/app/api/v1/ai.py @@ -0,0 +1,55 @@ +from app.libs.redprint import RedPrint +import time +from flask import request +import json +import os + +from ...libs.tools import read_file, write_json, read_json_file, make_dir + +import auto_anno_2 as aa + +api = RedPrint('ai') + +class ReturnInfo: + def __init__(self): + self.errCode = 0 + self.errMsg = '' + self.info = [] + +@api.route('/nlp/cls', methods=['POST']) +def nlp_cls(): + ret_info = ReturnInfo() + try: + j = request.get_json() + texts = j['texts'] + types = j['types'] + annos = [] + for text in texts: + anno = aa.cls(text, types) + annos.append(anno) + ret_info.info = annos + except Exception as e: + print(e) + ret_info.errCode = 404 + ret_info.errMsg = str(e) + + return ret_info.__dict__ + +@api.route('/nlp/ner', methods=['POST']) +def nlp_ner(): + ret_info = ReturnInfo() + try: + j = request.get_json() + texts = j['texts'] + types = j['types'] + annos = [] + for text in texts: + anno = aa.ner(text, types) + annos.append(anno) + ret_info.info = annos + except Exception as e: + print(e) + ret_info.errCode = 404 + ret_info.errMsg = str(e) + + return ret_info.__dict__ diff --git a/be/requirements.txt b/be/requirements.txt new file mode 100644 index 0000000..8c25f5f --- /dev/null +++ b/be/requirements.txt @@ -0,0 +1,2 @@ +flask +auto_anno_2