Cloud Provider Registry

Deploy your agent to AWS, Azure or GCP with the same command — swap providers by name

Deploy your agent to AWS, Azure or GCP with the same command — swap providers by name.

python
from praisonaiagents import Agent

agent = Agent(name="deploy", instructions="Package this agent for cloud deployment.")
agent.start("Deploy to AWS with the default registry entry.")

The user picks AWS, Azure, or GCP by name; the registry resolves the same deploy command to the right cloud backend.

Diagram

Agent / deploy config

CloudProviderRegistry

AWS

Azure

GCP

How It Works

Diagram
Cloud Provider RegistryAgentUserCloud Provider RegistryAgentUserRequestProcess requestResult Agent–>>User: Response

Quick Start

  1. Deploy to a built-in provider

    Deploy with the CLI — provider name selects the backend:

    python
    from praisonaiagents import Agent
    
    agent = Agent(
        name="ProductionBot",
        instructions="You are a production assistant.",
    )
    bash
    praisonai deploy cloud --provider aws --file deploy.yaml
    praisonai deploy doctor --provider azure
  2. Register a custom cloud provider at runtime

    Override or add a provider without a pip package:

    python
    from praisonai.deploy.providers._registry import CloudProviderRegistry
    from praisonai.deploy.providers.base import BaseCloudProvider
    
    class MyCloudProvider(BaseCloudProvider):
        def deploy(self, config):
            ...
    
    registry = CloudProviderRegistry.default()
    registry.register("my-cloud", MyCloudProvider)
  3. Distribute as a pip plugin

    Ship a provider others can install:

    toml
    # pyproject.toml
    [project.entry-points."praisonai.deploy.providers"]
    my-cloud = "my_pkg.deploy:MyCloudProvider"
    bash
    pip install my-praisonai-cloud
    praisonai deploy cloud --provider my-cloud --file deploy.yaml

Built-in Providers

NameClassCLI flag
awsAWSProvider--provider aws
azureAzureProvider--provider azure
gcpGCPProvider--provider gcp

Entry-point group: praisonai.deploy.providers


Deploy Guides


Best Practices

Credential management

Use cloud-native secret stores (AWS Secrets Manager, Azure Key Vault, GCP Secret Manager) rather than embedding credentials in deploy.yaml.

Region selection

Pin regions in your deploy config to keep latency and data residency predictable. Run praisonai deploy doctor --provider aws before first deploy.

Cost guards

Set resource limits and autoscaling caps in provider-specific config blocks — the registry only selects which provider runs; cost control stays in your YAML.


Related