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.14.tar.gz (15.5 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.14-py3-none-any.whl (21.5 kB view details)

Uploaded Python 3

File details

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

File metadata

File hashes

Hashes for vision_agents_plugins_aws-0.1.14.tar.gz
Algorithm Hash digest
SHA256 b182f82a4b9ac743fcbbcfa769886efa71091d0355bcb0a2558bf776121c0d89
MD5 3cbb8102f8d0729aba8c54f437d6fea0
BLAKE2b-256 68eb44ab4c0d0532c09bac3b0c7521b3f0582d62ad19ab3cb87d301184839fc0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for vision_agents_plugins_aws-0.1.14-py3-none-any.whl
Algorithm Hash digest
SHA256 83525c7bd00c9af390d869f8d5066e1bba7c86b7feb4588366df20a31e22bef1
MD5 15a6c16f1508b0ef5d054d37b59df64d
BLAKE2b-256 d8514d323d5ce0464d3c489c368fb6a844a6646e6603ce4eddbf07490eb0cde1

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