35 lines
975 B
Python
35 lines
975 B
Python
import json
|
|
import logging.config
|
|
|
|
from flask import Flask, request
|
|
from paddlenlp import Taskflow
|
|
|
|
from __init__ import PATIENT_NAME, ADMISSION_DATE, DISCHARGE_DATE, MEDICAL_EXPENSES
|
|
from log import LOGGING_CONFIG
|
|
from utils import process_request
|
|
|
|
app = Flask(__name__)
|
|
COST_LIST_SCHEMA = PATIENT_NAME + ADMISSION_DATE + DISCHARGE_DATE + MEDICAL_EXPENSES
|
|
COST = Taskflow('information_extraction', schema=COST_LIST_SCHEMA, model='uie-x-base',
|
|
task_path='model/cost_list_model', layout_analysis=False, precision='fp16')
|
|
|
|
|
|
@app.route('/', methods=['POST'])
|
|
@process_request
|
|
def main():
|
|
img_path = request.form.get('img_path')
|
|
layout = request.form.get('layout')
|
|
return COST({'doc': img_path, 'layout': json.loads(layout)})
|
|
|
|
|
|
@app.route('/text', methods=['POST'])
|
|
@process_request
|
|
def text():
|
|
t = request.form.get('text')
|
|
return COST(t)
|
|
|
|
|
|
if __name__ == '__main__':
|
|
logging.config.dictConfig(LOGGING_CONFIG)
|
|
app.run('0.0.0.0', 5004)
|