Deployments Operations Reference
Overview
Deployments represent AI model deployments in your Azure AI Foundry project.
List Deployments
List All Deployments
deployments = project_client.deployments.list()
for deployment in deployments:
print(f"Name: {deployment.name}")
print(f"Model: {deployment.model_name}")
print(f"Publisher: {deployment.model_publisher}")
print("---")Filter by Publisher
# List only OpenAI model deployments
for deployment in project_client.deployments.list(model_publisher="OpenAI"):
print(f"{deployment.name}: {deployment.model_name}")Filter by Model Name
# List deployments of a specific model
for deployment in project_client.deployments.list(model_name="gpt-4o"):
print(f"{deployment.name}: {deployment.model_version}")Get Deployment
from azure.ai.projects.models import ModelDeployment
deployment = project_client.deployments.get("my-deployment-name")
if isinstance(deployment, ModelDeployment):
print(f"Type: {deployment.type}")
print(f"Name: {deployment.name}")
print(f"Model Name: {deployment.model_name}")
print(f"Model Version: {deployment.model_version}")
print(f"Model Publisher: {deployment.model_publisher}")
print(f"Capabilities: {deployment.capabilities}")Deployment Properties
deployment = project_client.deployments.get("gpt-4o-mini")
# Available properties
print(f"Name: {deployment.name}") # Deployment name
print(f"Model: {deployment.model_name}") # e.g., "gpt-4o-mini"
print(f"Version: {deployment.model_version}") # e.g., "2024-07-18"
print(f"Publisher: {deployment.model_publisher}") # e.g., "OpenAI"
print(f"Type: {deployment.type}") # Deployment type
print(f"Capabilities: {deployment.capabilities}") # Model capabilitiesUsing Deployments
Dynamic Model Selection
# Find available GPT-4 deployments
gpt4_deployments = [
d for d in project_client.deployments.list()
if "gpt-4" in d.model_name.lower()
]
if gpt4_deployments:
deployment_name = gpt4_deployments[0].name
agent = project_client.agents.create_agent(
model=deployment_name,
name="dynamic-agent",
instructions="You are helpful.",
)Capability Checking
deployment = project_client.deployments.get("my-deployment")
# Check if deployment supports certain capabilities
if deployment.capabilities:
supports_vision = deployment.capabilities.get("vision", False)
supports_functions = deployment.capabilities.get("function_calling", False)
print(f"Vision: {supports_vision}")
print(f"Function Calling: {supports_functions}")Environment Variables Pattern
# Store deployment name in environment
AZURE_AI_MODEL_DEPLOYMENT_NAME=gpt-4o-miniimport os
# Use deployment from environment
agent = project_client.agents.create_agent(
model=os.environ["AZURE_AI_MODEL_DEPLOYMENT_NAME"],
name="my-agent",
instructions="You are helpful.",
)List Available Models
# Print all available models grouped by publisher
from collections import defaultdict
deployments_by_publisher = defaultdict(list)
for deployment in project_client.deployments.list():
deployments_by_publisher[deployment.model_publisher].append(deployment)
for publisher, deployments in deployments_by_publisher.items():
print(f"\n{publisher}:")
for d in deployments:
print(f" - {d.name} ({d.model_name} v{d.model_version})")