This is a Python project contains the gRPC server for recognizing the entities in the IoT pictures.
You may need to install rye to run the server.
You also need to download a model in GitHub and put it in the model folder.
You also need to generate the Python code from the proto file by:
task generateThen, you can run the server by:
rye run iot-recognition-serviceIOT_RECOGNITION_MODEL: Specify the path to the model file. Default ismodel/yolov10x.pt.IOT_RECOGNITION_DEVICE: Specify the PyTorch device to run the model. Default iscuda.IOT_RECOGNITION_SERVER_PORT: Specify the path to the TLS certificate file. Default is50051.IOT_RECOGNITION_SERVER_TLS_CERT: Specify the path to the TLS certificate file. Default is empty (insecure).IOT_RECOGNITION_SERVER_TLS_KEY: Specify the path to the TLS key file. Default is empty (insecure).IOT_RECOGNITION_SERVER_TLS_CA: Specify the path to the CA key file. Default is empty (require_client_auth=false).IOT_RECOGNITION_EXPORTER_CONSOLE: Specify whether to export the traces to the console. Default isfalse. Settrueforces the exporter to export the traces to the console.OTEL_EXPORTER_OTLP_ENDPOINT: Specify the OTLP HTTP endpoint (for example, the Grafana Alloy endpoint). Default islocalhost:4318.
This project is licensed under the AGPL-3.0-or-later license. See the LICENSE file for details.