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 generate
Then, you can run the server by:
rye run iot-recognition-service
IOT_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
. Settrue
forces 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.