创建python项目

2024-11-21 17:12:30 阅读:1 编辑
cd /opt/py_test
requirements.txt
numpy
gevent

main.py

import json
import numpy as np
from flask import Flask, request,jsonify
from gevent.pywsgi import WSGIServer

app = Flask(__name__)

@app.route('/embedding', methods=['GET','POST'])
def health_check():
    doc_list = request.get_json().get("doc_list")
    model_name = request.get_json().get("model_name")
    data = request_parse(doc_list,model_name)
    return data, 200

class json_serialize(json.JSONEncoder):
    def default(self, obj):
        if isinstance(obj, np.integer):
            return int(obj)
        if isinstance(obj, np.floating):
            return float(obj)
        if isinstance(obj, np.ndarray):
            return obj.tolist()
        return json.JSONEncoder.default(self, obj)

def request_parse(doc_list,model_name):
    # 准备一些测试文本,用于生成文本向量
    # 调用模型生成文本向量
    embedding_path = '/huggingface/'
    embeddings = doc_list
    json_array = json.dumps({'data': embeddings}, cls=json_serialize)
    return json_array

if __name__ == "__main__":
    # app.run(debug=False, port=5000)
     http_server = WSGIServer(('0.0.0.0', 5123), app)
     http_server.serve_forever()
请使用python3
python3 -m venv tutorial-env
source tutorial-env/bin/activate
python3 main.py