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.3.1.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.

vision_agents_plugins_roboflow-0.3.1-py3-none-any.whl (31.4 kB view details)

Uploaded Python 3

File details

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

File metadata

File hashes

Hashes for vision_agents_plugins_roboflow-0.3.1.tar.gz
Algorithm Hash digest
SHA256 8192fa45b3e3fdbe178dba279faa5e6949250e927c078faa427de7745327a913
MD5 fa22f9feae090805d8558f33348a9a5e
BLAKE2b-256 9aee7e67587e200682cb425ffe503f0970c98811b9535e7ff3fd838f00677f0a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for vision_agents_plugins_roboflow-0.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 aaf08b54195e50126421e190dae4af64c7773a2cacb2bac10b318a37d5153273
MD5 3872c4a12b15cce4326d5791824acf36
BLAKE2b-256 c71e7e020f0a50d8d5b2a522161653d15e7e368256ff047e21c45ee9c66aaf2f

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