Microsoft Agent Framework is Microsoft’s open-source SDK for building production AI agents — chat, tools, multi-agent orchestration. The framework emits raw OpenTelemetry spans using GenAI semantic conventions; theDocumentation Index
Fetch the complete documentation index at: https://arize-ax.mintlify.dev/docs/llms.txt
Use this file to discover all available pages before exploring further.
openinference-instrumentation-agent-framework span processor reshapes them into the OpenInference format Arize AX expects.
Microsoft Agent Framework is in active beta. The OpenInference processor pins against
agent-framework==1.0.0b260130; if you encounter API drift on a newer release, fix the version with pip install agent-framework==1.0.0b260130.Prerequisites
- Python 3.10+
- An Arize AX account (sign up)
- An
OPENAI_API_KEYfrom the OpenAI Platform
Launch Arize AX
- Sign in to your Arize AX account.
- From Space Settings, copy your Space ID and API Key. You will set them as
ARIZE_SPACE_IDandARIZE_API_KEYbelow.
Install
Configure credentials
Setup tracing
Run Microsoft Agent Framework
Expected output
Verify in Arize AX
- Open your Arize AX space and select project
microsoft-agent-framework-tracing-example. - You should see a new trace within ~30 seconds containing an
invoke_agentparent span (emitted by Agent Framework, reshaped by the OpenInference processor) wrapping a chat-completion LLM child span with the prompt, response, and token usage attached. - If no traces appear, see Troubleshooting.
Troubleshooting
- No traces in Arize AX. Confirm
ARIZE_SPACE_IDandARIZE_API_KEYare set in the same shell that runsexample.py. Enable OpenTelemetry debug logs withexport OTEL_LOG_LEVEL=debugand re-run. - Code ran but no spans appear.
enable_instrumentation()fromagent_framework.observabilitymust run after the global tracer provider is set. Confirmotel_trace.set_tracer_provider(tracer_provider)runs first, thenenable_instrumentation(enable_sensitive_data=True). - Spans missing message content. Pass
enable_sensitive_data=Truetoenable_instrumentation(). Without it, prompts and responses are stripped from the spans. 401from OpenAI. VerifyOPENAI_API_KEYis set and has access togpt-5. Swap for a model your key can call.- API breaking changes. Microsoft Agent Framework is in beta; pin
agent-framework==1.0.0b260130if a newer release breaks the example. - Other LLM providers. Use
agent_framework.azure.AzureOpenAIChatClientfor Azure OpenAI (setAZURE_OPENAI_API_KEY+AZURE_OPENAI_ENDPOINT+AZURE_OPENAI_API_VERSION) or other connectors per the framework docs.