REST API¶
Overview¶
Pinferencia has two built-in API sets:
from pinferencia import Server
service = Server()
# or
service = Server(api="default")
from pinferencia import Server
service = Server(api="kserve")
Are you using other serving tools now?
If you also use other model serving tools, here are the Kserve API versions the tools support:
Name | API |
---|---|
Pinferencia | Kserve V1 & V2 |
TF Serving | Kserve V1 |
TorchServe | Kserve V1 or V2 |
Triton | Kserve V2 |
KServe | Kserve V1 |
No Pain, Just Gain¶
As you can see
- You can switch between Pinferencia and other tools with almost no code changes in client.
- If you want to use Pinferencia for prototyping and client building, then use other tools in production, you got it supported out of the box.
- You can use Pinferencia in production with other tools with the same API set.
- If you're switching from Kserve V1 to Kserve V2 and you need a server supporting both during the transition, you got Pinferencia.
So, no pain, just gain.
Default API¶
Path | Method | Summary |
---|---|---|
/v1/healthz | GET | Healthz |
/v1/models | GET | List Models |
/v1/models/{model_name} | GET | List Model Versions |
/v1/models/{model_name}/ready | GET | Model Is Ready |
/v1/models/{model_name}/versions/{version_name}/ready | GET | Model Version Is Ready |
/v1/models/{model_name}/load | POST | Load Model |
/v1/models/{model_name}/versions/{version_name}/load | POST | Load Version |
/v1/models/{model_name}/unload | POST | Unload Model |
/v1/models/{model_name}/versions/{version_name}/unload | POST | Unload Version |
/v1/models/{model_name}/predict | POST | Model Predict |
/v1/models/{model_name}/versions/{version_name}/predict | POST | Model Version Predict |
Kserve API¶
Path | Method | Summary |
---|---|---|
/v1/healthz | GET | Healthz |
/v1/models | GET | List Models |
/v1/models/{model_name} | GET | List Model Versions |
/v1/models/{model_name}/ready | GET | Model Is Ready |
/v1/models/{model_name}/versions/{version_name}/ready | GET | Model Version Is Ready |
/v1/models/{model_name}/load | POST | Load Model |
/v1/models/{model_name}/versions/{version_name}/load | POST | Load Version |
/v1/models/{model_name}/unload | POST | Unload Model |
/v1/models/{model_name}/versions/{version_name}/unload | POST | Unload Version |
/v1/models/{model_name}/infer | POST | Model Predict |
/v1/models/{model_name}/versions/{version_name}/infer | POST | Model Version Predict |
/v2/healthz | GET | Healthz |
/v2/models | GET | List Models |
/v2/models/{model_name} | GET | List Model Versions |
/v2/models/{model_name}/ready | GET | Model Is Ready |
/v2/models/{model_name}/versions/{version_name}/ready | GET | Model Version Is Ready |
/v2/models/{model_name}/load | POST | Load Model |
/v2/models/{model_name}/versions/{version_name}/load | POST | Load Version |
/v2/models/{model_name}/unload | POST | Unload Model |
/v2/models/{model_name}/versions/{version_name}/unload | POST | Unload Version |
/v2/models/{model_name}/infer | POST | Model Predict |
/v2/models/{model_name}/versions/{version_name}/infer | POST | Model Version Predict |