Skip to main content
Pixano

Pixano-Inference is an inference library for Pixano.

Under active development, subject to API change

GitHub version PyPI version Tests Documentation Python version License


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)

Source distribution for pixano-inference 0.6.0
File Size Uploaded
pixano_inference-0.6.0.tar.gz 64.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for pixano-inference 0.6.0
File Interpreter ABI Platform
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 log

Release 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
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page