Skip to main content

AWS (Bedrock) LLM integration for Vision Agents

Project description

AWS Plugin for Vision Agents

AWS (Bedrock) LLM integration for Vision Agents framework with support for both standard and realtime interactions.

Installation

pip install vision-agents-plugins-aws

Usage

Standard LLM Usage

This example shows how to use qwen3 on bedrock for the LLM.

agent = Agent(
    edge=getstream.Edge(),
    agent_user=User(name="Friendly AI"),
    instructions="Be nice to the user",
    llm=aws.LLM(model="qwen.qwen3-32b-v1:0"),
    tts=cartesia.TTS(),
    stt=deepgram.STT(),
    turn_detection=smart_turn.TurnDetection(buffer_duration=2.0, confidence_threshold=0.5),
)

The full example is available in example/aws_qwen_example.py

Realtime Audio Usage

Nova Sonic audio realtime STS is also supported:

agent = Agent(
    edge=getstream.Edge(),
    agent_user=User(name="Story Teller AI"),
    instructions="Tell a story suitable for a 7 year old about a dragon and a princess",
    llm=aws.Realtime(),
)

Function Calling

Standard LLM (aws.LLM)

The standard LLM implementation fully supports function calling. Register functions using the @llm.register_function decorator:

from vision_agents.plugins import aws

llm = aws.LLM(
    model="qwen.qwen3-32b-v1:0",
    region_name="us-east-1"
)

@llm.register_function(
    name="get_weather",
    description="Get the current weather for a given city"
)
def get_weather(city: str) -> dict:
    """Get weather information for a city."""
    return {
        "city": city,
        "temperature": 72,
        "condition": "Sunny"
    }

Realtime (aws.Realtime)

The Realtime implementation fully supports function calling with AWS Nova Sonic. Register functions using the @llm.register_function decorator:

from vision_agents.plugins import aws

llm = aws.Realtime(
    model="amazon.nova-sonic-v1:0",
    region_name="us-east-1"
)

@llm.register_function(
    name="get_weather",
    description="Get the current weather for a given city"
)
def get_weather(city: str) -> dict:
    """Get weather information for a city."""
    return {
        "city": city,
        "temperature": 72,
        "condition": "Sunny"
    }

# The function will be automatically called when the model decides to use it

See example/aws_realtime_function_calling_example.py for a complete example.

Running the examples

Create a .env file, or cp .env.example to .env and fill in

STREAM_API_KEY=your_stream_api_key_here
STREAM_API_SECRET=your_stream_api_secret_here

AWS_BEARER_TOKEN_BEDROCK=
AWS_ACCESS_KEY_ID=
AWS_SECRET_ACCESS_KEY=

FAL_KEY=
CARTESIA_API_KEY=
DEEPGRAM_API_KEY=

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_aws-0.1.13.tar.gz (15.2 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_aws-0.1.13-py3-none-any.whl (21.2 kB view details)

Uploaded Python 3

File details

Details for the file vision_agents_plugins_aws-0.1.13.tar.gz.

File metadata

File hashes

Hashes for vision_agents_plugins_aws-0.1.13.tar.gz
Algorithm Hash digest
SHA256 eeebcc81dc86d0905b028ed1dd0be55330198f4df4485f1ef3a854be261aeb66
MD5 b8e9864cc0c488a260224631624c9f29
BLAKE2b-256 10feb3952ae64f2e03d931e30369782ea2e9cbd7c6b615145d7511ef5650882d

See more details on using hashes here.

File details

Details for the file vision_agents_plugins_aws-0.1.13-py3-none-any.whl.

File metadata

File hashes

Hashes for vision_agents_plugins_aws-0.1.13-py3-none-any.whl
Algorithm Hash digest
SHA256 750eb0f8c9fdd1a113df380ee673b751eb3c763128484cc7c237eea467aab844
MD5 18d5956fa3385457c8f39edc5643ca6f
BLAKE2b-256 1f40608d14ba8cc683cccfb2c67d7cda18c04dab49fc87d6b67749e76f7565d4

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