Middleware for Azure AI LangChain/LangGraph agent integrations.
This module provides middleware classes powered by Microsoft Foundry.
Pass a Content Safety guardrail policy to LangChain create_agent to
apply its configured controls at agent, model, and tool boundaries:
.. code-block:: python
from langchain.agents import create_agent
from langchain_azure_ai.agents.middleware import (
AzureContentSafetyPolicyMiddleware,
)
policy_agent = create_agent(
model="azure_ai:gpt-4.1",
middleware=[
AzureContentSafetyPolicyMiddleware(
policy_id="your-guardrail-id",
endpoint="https://your-resource.cognitiveservices.azure.com",
),
],
)
Alternatively, compose individual Content Safety middleware:
.. code-block:: python
from langchain.agents import create_agent
from langchain_azure_ai.agents.middleware import (
AzureContentModerationMiddleware,
AzureContentModerationForImagesMiddleware,
AzureGroundednessMiddleware,
AzureProtectedMaterialMiddleware,
AzurePromptShieldMiddleware,
)
agent = create_agent(
model="azure_ai:gpt-4.1",
middleware=[
# Block harmful text in both input and output
AzureContentModerationMiddleware(
exit_behavior="error",
),
# Block harmful images in user input
AzureContentModerationForImagesMiddleware(
exit_behavior="error",
),
# Block protected/copyrighted content in AI output
AzureProtectedMaterialMiddleware(
exit_behavior="continue",
apply_to_input=False,
apply_to_output=True,
),
# Block prompt injection attacks in user input and tool outputs
AzurePromptShieldMiddleware(
exit_behavior="error",
),
],
)