Skip to main content

Roboflow object detection plugin for Vision Agents

Project description

Roboflow Plugin

Object detection using Roboflow's hosted inference API for vision-agents.

Installation

uv add vision-agents-plugins-roboflow

Quick Start

from vision_agents.plugins import roboflow
from vision_agents.core import Agent

# A Roboflow processor for cloud inference and
# pre-trained models from Roboflow Universe https://universe.roboflow.com/.
processor = roboflow.RoboflowCloudDetectionProcessor(
    api_key="your_api_key",  # or set ROBOFLOW_API_KEY env var
    api_url="https://detect.roboflow.com",  # or set ROBOFLOW_API_URL env var
    model_id="football-players-detection-3zvbc/20",
    classes=["player"],
    conf_threshold=0.5,
    fps=3,
)

# You can also use a Roboflow processor with local inference and RF-DETR models.
processor = roboflow.RoboflowLocalDetectionProcessor(
    model_id="rfdetr-seg-preview",
    conf_threshold=0.5,
    classes=["person"],
    fps=3,
    # You can pass a custom model as "model" parameter here.
    # The model must be an instance of `rfdetr.RFDETR()` class.
    # model=MyRF_DETRModel()
)

# Use in an agent
agent = Agent(
    processors=[processor],
    llm=your_llm,
    # ... other components
)

Full Example

See example/roboflow_example.py for a complete working example with a video call agent that uses Roboflow detection.

RoboflowCloudDetectionProcessor Configuration

  • model_id: Roboflow Universe model id. Example - "football-players-detection-3zvbc/20".
  • api_key: Roboflow API key. If not provided, will use ROBOFLOW_API_KEY env variable.
  • api_url: Roboflow API url. If not provided, will use ROBOFLOW_API_URL env variable.
  • conf_threshold: Confidence threshold for detections (0 - 1.0). Default - 0.5.
  • fps: Frame processing rate. Default - 5.
  • classes: an optional list of class names to be detected. Example - ["person", "sports ball"] Verify that the classes a supported by the given model. Default - None (all classes are detected). annotate: if True, annotate the detected objects with boxes and labels. Default - True.
  • dim_background_factor: how much to dim the background around detected objects from 0 to 1.0. Effective only when annotate=True. Default - 0.0 (no dimming).
  • client: an optional custom instance of inference_sdk.InferenceHTTPClient.

RoboflowLocalDetectionProcessor Configuration

  • model_id: identifier of the model to be used. Available models are: "rfdetr-base", "rfdetr-large", "rfdetr-nano", "rfdetr-small", "rfdetr-medium", " rfdetr-seg-preview". Default - "rfdetr-seg-preview".

  • conf_threshold: Confidence threshold for detections (0 - 1.0). Default - 0.5.

  • fps: Frame processing rate. Default - 10.

  • classes: optional list of class names to be detected. Example: ["person", "sports ball"] Verify that the classes a supported by the given model. Default - None (all classes are detected).

  • annotate: if True, annotate the detected objects with boxes and labels. Default - True.

  • dim_background_factor: how much to dim the background around detected objects from 0 to 1.0. Effective only when annotate=True. Default - 0.0 (no dimming).

  • model: optional instance of RFDETRModel to be used for detections. Use it provide a model of choosing with custom parameters.

Testing

# Run all tests
pytest plugins/roboflow/tests/ -v

# Run specific tests
pytest plugins/roboflow/tests/test_roboflow.py -v

Dependencies

  • vision-agents - Core framework
  • numpy>=2.0.0 - Array operations
  • rfdetr>=1.3.0 - RF-DETR models for local object detection
  • inference-sdk>=0.26.1 - Roboflow SDK for cloud inference

Links

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

vision_agents_plugins_roboflow-0.4.0.tar.gz (11.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

File details

Details for the file vision_agents_plugins_roboflow-0.4.0.tar.gz.

File metadata

  • Download URL: vision_agents_plugins_roboflow-0.4.0.tar.gz
  • Upload date:
  • Size: 11.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.6 {"installer":{"name":"uv","version":"0.10.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for vision_agents_plugins_roboflow-0.4.0.tar.gz
Algorithm Hash digest
SHA256 1717ede836f3b8c74f86bf67440f54eccdd14326724f5cd3ad55a7ab82b79ce2
MD5 5d1635bc1747f7ccfd9e3cdedb49387e
BLAKE2b-256 11d892ed6a398821118df57b8636ed77c2a1b82c0c0a4653edb5c23b0449aa62

See more details on using hashes here.

File details

Details for the file vision_agents_plugins_roboflow-0.4.0-py3-none-any.whl.

File metadata

  • Download URL: vision_agents_plugins_roboflow-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 31.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.6 {"installer":{"name":"uv","version":"0.10.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for vision_agents_plugins_roboflow-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 509ebd2ef8a0d85e772a45749bab5cda62060ceea6626ae0237f3e1c2348e630
MD5 e82444513bf621d45036542fe4f7b273
BLAKE2b-256 5148d997949a9004e7a7e95b01f75676e143bfe549b860bc61d3467e0af6950e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page