Pixano-Inference is an inference library for Pixano.
Under active development, subject to API change
Pixano-Inference
A Ray Serve inference server for the Pixano annotation tool, with a REST API and a Python client.
Models are independent Python packages with their own code, dependencies, and environments. The server discovers installed models automatically; the core requires no ML framework.
Quickstart
Requires Python 3.10–3.13. Install Pixano-Inference with the Grounding DINO model:
pip install "pixano-inference[grounding-dino]"
Create models.py:
from pixano_inference.configs import DeploymentConfig, ModelConfig
from pixano_inference_grounding_dino import GroundingDINOParams
models = [
ModelConfig(
name="grounding-dino",
model_class="GroundingDINOModel",
model_params=GroundingDINOParams(path="IDEA-Research/grounding-dino-tiny"),
deployment=DeploymentConfig(num_gpus=0), # Set to 1 to use a GPU
),
]
Start the server. The first run downloads the model weights.
pixano-inference --config models.py
Check readiness, then save this request as predict.py:
from pixano_inference_client import DetectionRequest, SyncPixanoInferenceClient
client = SyncPixanoInferenceClient("http://localhost:7463")
result = client.detection(
DetectionRequest(
model="grounding-dino",
image="https://raw.githubusercontent.com/pixano/pixano-inference/main/docs/assets/examples/sam2/bedroom/00000.jpg",
classes=["bed", "lamp"],
box_threshold=0.3,
text_threshold=0.25,
)
)
print(result.data.classes, result.data.boxes, result.data.scores)
Run it in another terminal, using the same Python environment:
python predict.py
Applications calling an existing server only need pixano-inference-client. See the documentation for the API, Docker deployment, and autoscaling.
Model packages
Choose a model with an extra, for example pip install "pixano-inference[sam]":
| Extra | Package | Supports |
|---|---|---|
sam |
SAM | SAM2 image segmentation and video tracking |
clip |
CLIP | Image/text embeddings, including MobileCLIP2 |
grounding-dino |
Grounding DINO | Object detection from text prompts |
transformers-vlm |
Transformers VLM | Hugging Face vision-language models |
vllm |
vLLM | Vision-language models on Linux GPUs |
Each extra installs an independent model package. SAM also needs the upstream sam-2
library; follow its package's installation instructions.
Development
For source development, clone the repository and use uv:
git clone https://github.com/pixano/pixano-inference.git
cd pixano-inference
uv sync
uv run pytest -m "not integration" tests/ # Core unit tests
uv run --project packages/pixano-inference-sam pytest packages/pixano-inference-sam/tests
Develop and test each model in its own package, with its own pyproject.toml, uv.lock,
and tests. To build a custom model, start with the numpy detector
and follow the guide and
package specification.
License
Pixano-Inference is released under the terms of the CeCILL-C license.
Release files for pixano-inference 0.6.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pixano_inference-0.6.0.tar.gz | 64.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pixano_inference-0.6.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 151.8 kB
Release files / pixano_inference-0.6.0.tar.gz
| Download URL | pixano_inference-0.6.0.tar.gz |
|---|---|
| Size | 64.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
a8becb8c02a4cb8054f95df5195243ee6d84fb7d15f7646918cb62420c4c87dd
|
|
BLAKE2b-256 checksum How to use checksums |
df01c1c015724ee0c005396526de115f6243118b6a1b016a774d2649df56ee06
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 23, 2026.
Transparency logRelease files / pixano_inference-0.6.0-py3-none-any.whl
| Download URL | pixano_inference-0.6.0-py3-none-any.whl |
|---|---|
| Size | 87.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
5928d650eea033fd62e01b0faa422022505215b10872affec0981e41821ee841
|
|
BLAKE2b-256 checksum How to use checksums |
5f16441d0f786a422c6c4144f6f9cdfe4f9b9bb2fbe132b1eb55d26c2c093fc3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 23, 2026.
Transparency log