OpenVINO开发小组
直播中

jsqueh

9年用户 1297经验值
私信 关注
[问答]

请问是否可以在模型服务器中使用REST请求OpenVINO™预测?

是否可以在模型服务器中使用 REST 请求OpenVINO™预测?

回帖(2)

张淑兰

2025-3-5 10:50:22
使用以下代码 请求在模型服务器中使用 REST 进行预测OpenVINO™:
from ovmsclient import make_http_client
client = make_http_client("localhost:8000")
with open("img.jpeg", "rb") as f:
data = f.read()
inputs = {"input_name": data}
results = client.predict(inputs=inputs, model_name="my_model")
举报

abdkjshd

2025-3-5 16:51:55

是的,您可以在模型服务器中使用 REST 请求来执行 OpenVINO™ 推理。OpenVINO™ 是一个由英特尔开发的工具套件,用于优化和加速深度学习模型的推理。它支持多种硬件平台,包括 CPU、GPU、VPU 和 FPGA 等。


要在模型服务器中使用 REST 请求进行 OpenVINO™ 推理,您可以通过以下几种方式实现:


1. 使用 OpenVINO™ Model Server


OpenVINO™ 提供了一个专门的模型服务器,称为 OpenVINO™ Model Server(OVMS)。它支持通过 REST API 和 gRPC API 来访问和推理模型。



  • REST API: OVMS 提供了一个 RESTful 接口,允许您通过 HTTP 请求发送推理请求并接收结果。


  • gRPC API: 如果您需要更高的性能,还可以使用 gRPC 接口。


    主要步骤



    1. 安装并启动 OpenVINO™ Model Server。

    2. 将模型部署到服务器上。

    3. 使用 REST API 发送推理请求。


    示例


    curl -X POST "http://localhost:8001/v1/models/my_model:predict" 
        -H "Content-Type: application/json"
        -d '{"instances": [{"input": [1.0, 2.0, 3.0]}]}'



2. 自定义 REST API


如果您需要更灵活的控制,您可以自己构建一个 REST API 服务,使用 OpenVINO™ 的 Python 或 C++ API 进行推理。



  • Python: 使用 Flask 或 FastAPI 等框架构建 REST API,并在后端调用 OpenVINO™ 的推理引擎。


  • C++: 使用 C++ 构建高性能的 REST API 服务,调用 OpenVINO™ 的 C++ API。


    示例(Python + Flask):


    from flask import Flask, request, jsonify
    from openvino.runtime import Core

    app = Flask(__name__)

    # 加载模型
    core = Core()
    model = core.read_model("model.xml")
    compiled_model = core.compile_model(model, "CPU")

    @app.route('/predict', methods=['POST'])
    def predict():
       data = request.json['data']
       result = compiled_model.infer_new_request({0: data})
       return jsonify(result)

    if __name__ == '__main__':
       app.run(host='0.0.0.0', port=8000)



3. 使用 OpenVINO™ 的 HTTP 插件


OpenVINO™ 还提供了一个 HTTP 插件,允许您通过 HTTP 请求直接与 OpenVINO™ 推理引擎进行交互。这种方式适合需要快速集成和测试的场景。


总结


您可以通过 OpenVINO™ Model Server 或自定义 REST API 来实现通过 REST 请求进行 OpenVINO™ 推理。具体选择哪种方式取决于您的需求和应用场景。OpenVINO™ Model Server 提供了开箱即用的解决方案,而自定义 REST API 则提供了更高的灵活性和控制能力。

举报

更多回帖

发帖
×
20
完善资料,
赚取积分