From 5c8aa9a2da1f08e92055426ae62f9a2dbefa4568 Mon Sep 17 00:00:00 2001 From: Nick Brady Date: Wed, 8 Jul 2026 09:28:18 -0700 Subject: [PATCH] Update Foundry branding Replace user-facing Azure AI Foundry branding with Microsoft Foundry across docs, samples, comments, and display text while preserving technical identifiers. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> --- .../prompts/SemanticKernelToAgentFramework.md | 20 ++++++++-------- .github/workflows/dotnet-build-and-test.yml | 4 ++-- .github/workflows/dotnet-verify-samples.yml | 2 +- TRANSPARENCY_FAQ.md | 4 ++-- docs/decisions/0002-agent-tools.md | 16 ++++++------- docs/decisions/0006-userapproval.md | 2 +- .../0009-support-long-running-operations.md | 14 +++++------ .../0021-provider-leading-clients.md | 4 ++-- .../0023-foundry-evals-integration.md | 8 +++---- .../decisions/0025-foundry-toolbox-support.md | 2 +- dotnet/eng/verify-samples/AgentsSamples.cs | 2 +- dotnet/eng/verify-samples/Program.cs | 2 +- dotnet/eng/verify-samples/WorkflowSamples.cs | 2 +- .../Program.cs | 2 +- .../Program.cs | 2 +- .../Agent_Step02_StructuredOutput/Program.cs | 2 +- .../Agent_Step05_Observability/Program.cs | 2 +- .../Program.cs | 2 +- .../Agents/Agent_Step11_Middleware/Program.cs | 4 ++-- .../Program.cs | 2 +- dotnet/samples/02-agents/Agents/README.md | 2 +- .../Evaluation_SimpleEval/README.md | 2 +- .../Harness/Harness_Step01_Research/README.md | 6 ++--- .../README.md | 2 +- .../Harness_Step03_DataProcessing/README.md | 4 ++-- .../Harness_Step04_CodeExecution/README.md | 4 ++-- .../Harness/Harness_Step05_Loop/README.md | 4 ++-- .../Agents/CustomAgentExecutors/Program.cs | 2 +- .../Agents/WorkflowAsAnAgent/Program.cs | 2 +- .../01_EdgeCondition/Program.cs | 2 +- .../ConditionalEdges/02_SwitchCase/Program.cs | 2 +- .../03_MultiSelection/Program.cs | 2 +- .../WorkflowAsAnAgent/Program.cs | 2 +- .../Orchestration/Magentic/Program.cs | 2 +- .../Orchestration/Magentic/README.md | 2 +- .../02_AgentsInWorkflows/Program.cs | 4 ++-- .../03_AgentWorkflowPatterns/Program.cs | 4 ++-- .../Program.cs | 4 ++-- .../07_WriterCriticWorkflow/Program.cs | 2 +- .../Hosted-Workflow-Handoff/Pages.cs | 2 +- .../DevUIAspireIntegration/README.md | 8 +++---- .../Evaluation_FoundryRubric/Program.cs | 4 ++-- .../Evaluation_FoundryRubric/README.md | 4 ++-- .../Evaluation/FoundryEvals.cs | 24 +++++++++---------- .../Evaluation/RubricScore.cs | 2 +- .../src/Shared/Samples/TestConfiguration.cs | 2 +- .../McpToolboxHostedAgentTests.cs | 2 +- .../Memory/FoundryMemoryProviderTests.cs | 6 ++--- python/AGENTS.md | 2 +- python/CHANGELOG.md | 4 ++-- python/README.md | 4 ++-- .../packages/ag-ui/getting_started/README.md | 2 +- python/packages/anthropic/AGENTS.md | 2 +- python/packages/anthropic/README.md | 2 +- .../_context_provider.py | 4 ++-- .../_file_search.py | 2 +- .../_models.py | 2 +- .../samples/01-get-started/01_document_qa.py | 2 +- .../01-get-started/02_multi_turn_session.py | 2 +- .../01-get-started/03_multimodal_chat.py | 2 +- .../01-get-started/04_invoice_processing.py | 2 +- .../05_large_doc_file_search.py | 2 +- .../02-devui/01-multimodal_agent/agent.py | 2 +- .../azure_openai_backend/agent.py | 2 +- .../foundry_backend/agent.py | 4 ++-- python/packages/azure-cosmos/README.md | 2 +- python/packages/core/AGENTS.md | 2 +- python/packages/core/README.md | 2 +- .../core/agent_framework/_evaluation.py | 4 ++-- .../core/agent_framework/observability.py | 4 ++-- .../_workflows/_executors_agents.py | 4 ++-- .../agent_framework_devui/ui/assets/index.js | 2 +- .../src/data/gallery/sample-entities.ts | 4 ++-- .../_memory_provider.py | 2 +- .../tests/foundry/test_foundry_chat_client.py | 2 +- .../tests/test_responses_int.py | 2 +- python/packages/foundry_local/AGENTS.md | 2 +- .../samples/01-get-started/01_hello_agent.py | 2 +- .../a2a/a2a_agent_as_function_tools.py | 2 +- .../samples/02-agents/chat_client/README.md | 2 +- .../chat_client/chat_response_cancellation.py | 2 +- .../02-agents/context_providers/README.md | 8 +++---- .../azure_ai_search/README.md | 10 ++++---- .../azure_ai_search/search_context_agentic.py | 4 ++-- .../search_context_semantic.py | 4 ++-- .../context_providers/code_act/README.md | 2 +- .../file_access_data_processing/README.md | 2 +- .../data_processing.py | 2 +- .../context_providers/redis/README.md | 4 ++-- .../redis/azure_redis_conversation.py | 2 +- .../samples/02-agents/conversations/README.md | 10 ++++---- .../conversations/file_history_provider.py | 2 +- ...story_provider_conversation_persistence.py | 2 +- .../samples/02-agents/declarative/README.md | 8 +++---- .../02-agents/declarative/mcp_tool_yaml.py | 4 ++-- python/samples/02-agents/devui/README.md | 2 +- .../devui/agent_foundry/.env.example | 2 +- .../02-agents/devui/agent_foundry/agent.py | 4 ++-- .../devui/agent_weather/.env.example | 2 +- .../harness/harness_data_processing.py | 2 +- .../02-agents/harness/harness_research.py | 2 +- .../middleware/agent_loop_middleware_judge.py | 2 +- .../agent_loop_middleware_refinement.py | 2 +- .../agent_loop_middleware_report.py | 2 +- .../middleware/agent_loop_middleware_todos.py | 2 +- .../middleware/runtime_context_delegation.py | 2 +- .../02-agents/observability/.env.example | 2 +- .../02-agents/providers/custom/README.md | 2 +- .../02-agents/providers/foundry/README.md | 2 +- .../providers/foundry/foundry_agent_basic.py | 4 ++-- .../foundry/foundry_agent_custom_client.py | 2 +- .../providers/foundry/foundry_agent_hosted.py | 4 ++-- .../foundry_agent_with_function_tools.py | 2 +- .../providers/foundry/foundry_chat_client.py | 2 +- python/samples/02-agents/skills/README.md | 2 +- .../skills/class_based_skill/README.md | 4 ++-- .../skills/code_defined_skill/README.md | 4 ++-- .../skills/file_based_skill/README.md | 4 ++-- .../skills/mcp_based_skill/README.md | 2 +- .../skills/script_approval/README.md | 4 ++-- .../skills/script_approval/script_approval.py | 2 +- .../skills/skills_auto_approval/README.md | 4 ++-- .../skills_auto_approval.py | 2 +- .../tools/local_code_interpreter/README.md | 2 +- .../tools/monty_code_interpreter/README.md | 2 +- python/samples/03-workflows/README.md | 2 +- .../_start-here/step2_agents_in_a_workflow.py | 2 +- .../_start-here/step3_streaming.py | 2 +- .../agents/azure_ai_agents_streaming.py | 2 +- .../azure_ai_agents_with_shared_session.py | 2 +- .../agents/azure_chat_agents_and_executor.py | 2 +- .../agents/azure_chat_agents_streaming.py | 2 +- ...re_chat_agents_tool_calls_with_feedback.py | 2 +- .../agents/concurrent_workflow_as_agent.py | 2 +- .../agents/custom_agent_executors.py | 2 +- .../agents/group_chat_workflow_as_agent.py | 2 +- .../agents/handoff_workflow_as_agent.py | 2 +- .../agents/magentic_workflow_as_agent.py | 2 +- .../workflow_as_agent_human_in_the_loop.py | 2 +- .../agents/workflow_as_agent_kwargs.py | 2 +- .../workflow_as_agent_reflection_pattern.py | 2 +- .../agents/workflow_as_agent_with_session.py | 2 +- .../cosmos_workflow_checkpointing_foundry.py | 10 ++++---- .../workflow_as_agent_checkpoint.py | 2 +- .../composition/sub_workflow_kwargs.py | 2 +- .../control-flow/edge_condition.py | 2 +- .../multi_selection_edge_group.py | 2 +- .../03-workflows/control-flow/simple_loop.py | 2 +- .../control-flow/switch_case_edge_group.py | 2 +- .../declarative/marketing/README.md | 2 +- .../declarative/student_teacher/README.md | 2 +- .../declarative/student_teacher/main.py | 2 +- .../human-in-the-loop/agents_with_HITL.py | 2 +- .../agents_with_approval_requests.py | 2 +- .../agents_with_declaration_only_tools.py | 2 +- .../concurrent_request_info.py | 2 +- .../group_chat_request_info.py | 2 +- .../guessing_game_with_human_input.py | 2 +- .../sequential_request_info.py | 2 +- .../03-workflows/orchestrations/README.md | 2 +- .../orchestrations/concurrent_agents.py | 2 +- .../concurrent_custom_agent_executors.py | 2 +- .../concurrent_custom_aggregator.py | 2 +- .../group_chat_agent_manager.py | 2 +- .../group_chat_philosophical_debate.py | 2 +- .../group_chat_simple_selector.py | 2 +- .../orchestrations/handoff_autonomous.py | 2 +- .../orchestrations/handoff_simple.py | 2 +- .../handoff_with_code_interpreter_file.py | 2 +- ...ff_with_tool_approval_checkpoint_resume.py | 2 +- .../03-workflows/orchestrations/magentic.py | 2 +- .../orchestrations/magentic_checkpoint.py | 2 +- .../magentic_human_plan_review.py | 2 +- .../orchestrations/sequential_agents.py | 2 +- .../sequential_chain_only_agent_responses.py | 2 +- .../sequential_custom_executors.py | 2 +- .../parallelism/fan_out_fan_in_edges.py | 2 +- .../state-management/state_with_agents.py | 2 +- .../workflow_kwargs_global.py | 2 +- .../workflow_kwargs_per_agent.py | 2 +- .../concurrent_builder_tool_approval.py | 2 +- .../group_chat_builder_tool_approval.py | 2 +- .../sequential_builder_tool_approval.py | 2 +- .../concurrent_with_visualization.py | 2 +- python/samples/04-hosting/README.md | 6 ++--- python/samples/04-hosting/a2a/.env.example | 2 +- python/samples/04-hosting/a2a/README.md | 2 +- python/samples/04-hosting/a2a/a2a_server.py | 2 +- .../08_mcp_server/function_app.py | 4 ++-- .../04-hosting/azure_functions/README.md | 2 +- .../durabletask/08_workflow/README.md | 2 +- .../durabletask/08_workflow/worker.py | 2 +- .../durabletask/09_workflow_hitl/README.md | 2 +- .../durabletask/09_workflow_hitl/worker.py | 2 +- .../10_workflow_streaming/README.md | 2 +- .../10_workflow_streaming/worker.py | 2 +- .../durabletask/11_subworkflow/README.md | 2 +- .../durabletask/11_subworkflow/worker.py | 2 +- .../foundry-hosted-agents/README.md | 2 +- .../scripts/list-foundry-connectors.ps1 | 2 +- .../responses/08_azure_search_rag/README.md | 2 +- .../responses/09_foundry_skills/README.md | 2 +- .../responses/10_foundry_memory/README.md | 4 ++-- .../10_foundry_memory/agent.manifest.yaml | 2 +- .../responses/10_foundry_memory/main.py | 2 +- .../provision_memory_store.py | 2 +- .../12_foundry_toolbox_mcp_skills/README.md | 2 +- .../responses/using_deployed_agent.py | 2 +- .../evaluation/foundry_evals/README.md | 2 +- .../foundry_evals/evaluate_agent_sample.py | 4 ++-- .../foundry_evals/evaluate_mixed_sample.py | 2 +- .../evaluate_multiturn_sample.py | 2 +- .../evaluate_tool_calls_sample.py | 4 ++-- .../foundry_evals/evaluate_traces_sample.py | 4 ++-- .../evaluate_with_rubric_sample.py | 2 +- .../foundry_evals/evaluate_workflow_sample.py | 6 ++--- .../evaluation/red_teaming/README.md | 2 +- .../evaluation/self_reflection/README.md | 4 ++-- .../05-end-to-end/neo4j_graphrag/README.md | 2 +- .../05-end-to-end/neo4j_graphrag/main.py | 6 ++--- .../05-end-to-end/purview_agent/README.md | 2 +- .../purview_agent/sample_purview_agent.py | 2 +- python/samples/AGENTS.md | 6 ++--- python/samples/SAMPLE_GUIDELINES.md | 4 ++-- 224 files changed, 332 insertions(+), 332 deletions(-) diff --git a/.github/upgrades/prompts/SemanticKernelToAgentFramework.md b/.github/upgrades/prompts/SemanticKernelToAgentFramework.md index 6ff09846099..f5ef878fea1 100644 --- a/.github/upgrades/prompts/SemanticKernelToAgentFramework.md +++ b/.github/upgrades/prompts/SemanticKernelToAgentFramework.md @@ -23,16 +23,16 @@ For each project that needs to be migrated, you need to do the following: - Identify the specific Semantic Kernel agent types being used: - `ChatCompletionAgent` → `ChatClientAgent` - `OpenAIAssistantAgent` → `assistantsClient.CreateAIAgent()` (via OpenAI Assistants client extension) - - `AzureAIAgent` → `persistentAgentsClient.CreateAIAgent()` (via Azure AI Foundry client extension) + - `AzureAIAgent` → `persistentAgentsClient.CreateAIAgent()` (via Microsoft Foundry client extension) - `OpenAIResponseAgent` → `responsesClient.CreateAIAgent()` (via OpenAI Responses client extension) - `A2AAgent` → `AIAgent` (via A2A card resolver) - `BedrockAgent` → Custom implementation required (not supported) - Determine if agents are being created new or retrieved from hosted services: - **New agents**: Use `CreateAIAgent()` methods - - **Existing hosted agents**: Use `GetAIAgent(agentId)` methods for OpenAI Assistants and Azure AI Foundry + - **Existing hosted agents**: Use `GetAIAgent(agentId)` methods for OpenAI Assistants and Microsoft Foundry -- Determine the AI provider being used (OpenAI, Azure OpenAI, Azure AI Foundry, etc.) +- Determine the AI provider being used (OpenAI, Azure OpenAI, Microsoft Foundry, etc.) - Analyze tool/function registration patterns - Review thread management and invocation patterns @@ -90,7 +90,7 @@ below in wrong order or skip any of them): you generate report when migration complete. Report should contain: - all project dependencies changes (mention what was changed, added or removed, including provider-specific packages) - all code files that were changed (mention what was changed in the file, if it was not changed, just mention that the file was not changed) - - provider-specific migration patterns used (OpenAI, Azure OpenAI, Azure AI Foundry, A2A, ONNX, etc.) + - provider-specific migration patterns used (OpenAI, Azure OpenAI, Microsoft Foundry, A2A, ONNX, etc.) - all cases where you could not convert the code because of unsupported features and you were unable to find a workaround - unsupported providers that require custom implementation (Bedrock, CopilotStudio) - breaking glass pattern migrations (InnerContent → RawRepresentation) and any CodeInterpreter or advanced tool usage @@ -223,7 +223,7 @@ using Microsoft.Agents.AI; // Provider-specific namespaces (add only if needed): using OpenAI; // For OpenAI provider using Azure.AI.OpenAI; // For Azure OpenAI provider -using Azure.AI.Agents.Persistent; // For Azure AI Foundry provider +using Azure.AI.Agents.Persistent; // For Microsoft Foundry provider using Azure.Identity; // For Azure authentication ``` @@ -499,7 +499,7 @@ For every thread created if there's intent to cleanup, the caller should track a var assistantClient = new OpenAIClient(apiKey).GetAssistantClient(); await assistantClient.DeleteThreadAsync(thread.ConversationId); -// For Azure AI Foundry (when cleanup is needed): +// For Microsoft Foundry (when cleanup is needed): var persistentClient = new PersistentAgentsClient(endpoint, credential); await persistentClient.Threads.DeleteThreadAsync(thread.ConversationId); @@ -514,7 +514,7 @@ await persistentClient.Threads.DeleteThreadAsync(thread.ConversationId); 1. Remove `thread.DeleteAsync()` calls 2. Use provider-specific client for cleanup when required 3. Access thread ID via `thread.ConversationId` property -4. Only implement cleanup for providers that require it (Assistants, Azure AI Foundry) +4. Only implement cleanup for providers that require it (Assistants, Microsoft Foundry) ### Provider-Specific Creation Patterns @@ -550,13 +550,13 @@ AIAgent agent = new AzureOpenAIClient(endpoint, credential) .CreateAIAgent(instructions: instructions); ``` -**Azure AI Foundry (New):** +**Microsoft Foundry (New):** ```csharp AIAgent agent = new PersistentAgentsClient(endpoint, credential) .CreateAIAgent(model: deploymentName, instructions: instructions); ``` -**Azure AI Foundry (Existing):** +**Microsoft Foundry (Existing):** ```csharp AIAgent agent = await new PersistentAgentsClient(endpoint, credential) .GetAIAgentAsync(agentId); @@ -1079,7 +1079,7 @@ AgentThread thread = agent.GetNewThread(); ``` -### 4. Azure AI Foundry (AzureAIAgent) Migration +### 4. Microsoft Foundry (AzureAIAgent) Migration **Remove Semantic Kernel Packages:** diff --git a/.github/workflows/dotnet-build-and-test.yml b/.github/workflows/dotnet-build-and-test.yml index 2b85cb266a0..98daa32ae09 100644 --- a/.github/workflows/dotnet-build-and-test.yml +++ b/.github/workflows/dotnet-build-and-test.yml @@ -312,7 +312,7 @@ jobs: AZURE_OPENAI_DEPLOYMENT_NAME: ${{ vars.AZURE_OPENAI_DEPLOYMENT_NAME }} AZURE_OPENAI_CHAT_DEPLOYMENT_NAME: ${{ vars.AZURE_OPENAI_DEPLOYMENT_NAME }} AZURE_OPENAI_ENDPOINT: ${{ vars.AZURE_OPENAI_ENDPOINT }} - # Azure AI Foundry + # Microsoft Foundry AZURE_AI_PROJECT_ENDPOINT: ${{ vars.AZURE_AI_PROJECT_ENDPOINT }} AZURE_AI_MODEL_DEPLOYMENT_NAME: ${{ vars.AZURE_AI_MODEL_DEPLOYMENT_NAME }} AZURE_AI_BING_CONNECTION_ID: ${{ vars.AZURE_AI_BING_CONNECTION_ID }} @@ -528,7 +528,7 @@ jobs: AZURE_OPENAI_DEPLOYMENT_NAME: ${{ vars.AZURE_OPENAI_DEPLOYMENT_NAME }} AZURE_OPENAI_CHAT_DEPLOYMENT_NAME: ${{ vars.AZURE_OPENAI_DEPLOYMENT_NAME }} AZURE_OPENAI_ENDPOINT: ${{ vars.AZURE_OPENAI_ENDPOINT }} - # Azure AI Foundry + # Microsoft Foundry AZURE_AI_PROJECT_ENDPOINT: ${{ vars.AZURE_AI_PROJECT_ENDPOINT }} AZURE_AI_MODEL_DEPLOYMENT_NAME: ${{ vars.AZURE_AI_MODEL_DEPLOYMENT_NAME }} AZURE_AI_BING_CONNECTION_ID: ${{ vars.AZURE_AI_BING_CONNECTION_ID }} diff --git a/.github/workflows/dotnet-verify-samples.yml b/.github/workflows/dotnet-verify-samples.yml index aabc9c93cd4..6204edee8eb 100644 --- a/.github/workflows/dotnet-verify-samples.yml +++ b/.github/workflows/dotnet-verify-samples.yml @@ -105,7 +105,7 @@ jobs: AZURE_OPENAI_DEPLOYMENT_NAME: ${{ vars.AZURE_OPENAI_DEPLOYMENT_NAME }} AZURE_OPENAI_CHAT_DEPLOYMENT_NAME: ${{ vars.AZURE_OPENAI_DEPLOYMENT_NAME }} AZURE_OPENAI_ENDPOINT: ${{ vars.AZURE_OPENAI_ENDPOINT }} - # Azure AI Foundry + # Microsoft Foundry AZURE_AI_PROJECT_ENDPOINT: ${{ vars.AZURE_AI_PROJECT_ENDPOINT }} AZURE_AI_MODEL_DEPLOYMENT_NAME: ${{ vars.AZURE_AI_MODEL_DEPLOYMENT_NAME }} AZURE_AI_BING_CONNECTION_ID: ${{ vars.AZURE_AI_BING_CONNECTION_ID }} diff --git a/TRANSPARENCY_FAQ.md b/TRANSPARENCY_FAQ.md index 3a09f191eb2..3ec22fd18fc 100644 --- a/TRANSPARENCY_FAQ.md +++ b/TRANSPARENCY_FAQ.md @@ -2,7 +2,7 @@ **What is Microsoft Agent Framework?** -Microsoft Agent Framework is a comprehensive multi-language (C#/.NET and Python) framework for building, orchestrating, and deploying AI agents and multi-agent workflows. The system takes user instructions and conversation inputs and produces intelligent responses through AI agents that can integrate with various LLM providers (OpenAI, Azure OpenAI, Azure AI Foundry). It provides both simple chat agents and complex multi-agent workflows with graph-based orchestration. +Microsoft Agent Framework is a comprehensive multi-language (C#/.NET and Python) framework for building, orchestrating, and deploying AI agents and multi-agent workflows. The system takes user instructions and conversation inputs and produces intelligent responses through AI agents that can integrate with various LLM providers (OpenAI, Azure OpenAI, Microsoft Foundry). It provides both simple chat agents and complex multi-agent workflows with graph-based orchestration. **What can Microsoft Agent Framework do?** @@ -12,7 +12,7 @@ The framework offers: - **Multi-Agent Orchestration**: Group chat, sequential, concurrent, and handoff patterns - **Graph-based Workflows**: Connect agents and deterministic functions using data flows with streaming, checkpointing, time-travel, and Human-in-the-loop - **Extensibility Framework**: Extend with native functions, A2A, Model Context Protocol (MCP) -- **LLM Integration**: Support for OpenAI, Azure OpenAI, Azure AI Foundry, and other providers +- **LLM Integration**: Support for OpenAI, Azure OpenAI, Microsoft Foundry, and other providers - **Runtime Support**: Both in-process and distributed agent execution **What is/are Microsoft Agent Framework's intended use(s)?** diff --git a/docs/decisions/0002-agent-tools.md b/docs/decisions/0002-agent-tools.md index e08ff21afa1..0f0cb85abfd 100644 --- a/docs/decisions/0002-agent-tools.md +++ b/docs/decisions/0002-agent-tools.md @@ -113,7 +113,7 @@ Implement a hybrid strategy where common tools use generic `AITool`-derived abst ### AI Agent Tool Types Availability -Tool Type | Azure AI Foundry Agent Service | OpenAI Assistant API | OpenAI ChatCompletion API | OpenAI Responses API | Amazon Bedrock Agents | Google | Anthropic | Description +Tool Type | Microsoft Foundry Agent Service | OpenAI Assistant API | OpenAI ChatCompletion API | OpenAI Responses API | Amazon Bedrock Agents | Google | Anthropic | Description -- | -- | -- | -- | -- | -- | -- | -- | -- Function Calling | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | Enables custom, stateless functions to define specific agent behaviors. Code Interpreter | ✅ | ✅ | ❌ | ✅ | ✅ | ✅ | ✅ | Allows agents to execute code for tasks like data analysis or problem-solving. @@ -132,7 +132,7 @@ Image Generation | ❌ | ❌ | ❌ | ✅ | ❌ | ❌ | ❌ | Generates or edits #### Function Calling
- Azure AI Foundry Agent Service + Microsoft Foundry Agent Service Source: https://learn.microsoft.com/en-us/azure/ai-foundry/agents/how-to/tools/function-calling?pivots=rest Message Request: @@ -401,7 +401,7 @@ Image Generation | ❌ | ❌ | ❌ | ✅ | ❌ | ❌ | ❌ | Generates or edits #### Code Interpreter
- Azure AI Foundry Agent Service + Microsoft Foundry Agent Service

Source: https://learn.microsoft.com/en-us/azure/ai-foundry/agents/how-to/tools/code-interpreter-samples?pivots=rest-api

.NET Support: ✅

@@ -709,7 +709,7 @@ Image Generation | ❌ | ❌ | ❌ | ✅ | ❌ | ❌ | ❌ | Generates or edits #### Search and Retrieval
- Azure AI Foundry Agent Service + Microsoft Foundry Agent Service Source: https://learn.microsoft.com/en-us/azure/ai-foundry/agents/how-to/tools/file-search-upload-files?pivots=rest File Search Request: @@ -1083,7 +1083,7 @@ Image Generation | ❌ | ❌ | ❌ | ✅ | ❌ | ❌ | ❌ | Generates or edits #### Web Search
- Azure AI Foundry Agent Service + Microsoft Foundry Agent Service Source: https://learn.microsoft.com/en-us/azure/ai-foundry/agents/how-to/tools/bing-code-samples?pivots=rest Bing Search Message Request: @@ -1630,7 +1630,7 @@ Image Generation | ❌ | ❌ | ❌ | ✅ | ❌ | ❌ | ❌ | Generates or edits #### OpenAPI Spec Tool
- Azure AI Foundry Agent Service + Microsoft Foundry Agent Service Source: https://learn.microsoft.com/en-us/azure/ai-foundry/agents/how-to/tools/openapi-spec-samples?pivots=rest-api
Source: https://learn.microsoft.com/en-us/rest/api/aifoundry/aiagents/run-steps/get-run-step?view=rest-aifoundry-aiagents-v1&tabs=HTTP#runstepopenapitoolcall @@ -1712,7 +1712,7 @@ Image Generation | ❌ | ❌ | ❌ | ✅ | ❌ | ❌ | ❌ | Generates or edits #### Stateful Functions
- Azure AI Foundry Agent Service + Microsoft Foundry Agent Service Source: https://learn.microsoft.com/en-us/azure/ai-foundry/agents/how-to/tools/azure-functions-samples?pivots=rest Message Request: @@ -1832,7 +1832,7 @@ Image Generation | ❌ | ❌ | ❌ | ✅ | ❌ | ❌ | ❌ | Generates or edits #### Microsoft Fabric
- Azure AI Foundry Agent Service + Microsoft Foundry Agent Service Source: https://learn.microsoft.com/en-us/azure/ai-foundry/agents/how-to/tools/fabric?pivots=rest Message Request: diff --git a/docs/decisions/0006-userapproval.md b/docs/decisions/0006-userapproval.md index 7823ab4de44..b3e6310c3c8 100644 --- a/docs/decisions/0006-userapproval.md +++ b/docs/decisions/0006-userapproval.md @@ -25,7 +25,7 @@ See various features that would need to be supported via this type of mechanism, - Also see [the openai human-in-the-loop guide](https://openai.github.io/openai-agents-js/guides/human-in-the-loop/#approval-requests). - Also see [the openai MCP guide](https://openai.github.io/openai-agents-js/guides/mcp/#optional-approval-flow). - Also see [MCP Approval Requests from OpenAI](https://platform.openai.com/docs/guides/tools-remote-mcp#approvals). -- Also see [Azure AI Foundry MCP Approvals](https://learn.microsoft.com/en-us/azure/ai-foundry/agents/how-to/tools/model-context-protocol-samples?pivots=rest#submit-your-approval). +- Also see [Microsoft Foundry MCP Approvals](https://learn.microsoft.com/en-us/azure/ai-foundry/agents/how-to/tools/model-context-protocol-samples?pivots=rest#submit-your-approval). - Also see [MCP Elicitation requests](https://modelcontextprotocol.io/specification/draft/client/elicitation) ## Decision Drivers diff --git a/docs/decisions/0009-support-long-running-operations.md b/docs/decisions/0009-support-long-running-operations.md index a62a0385531..d622aa62cf2 100644 --- a/docs/decisions/0009-support-long-running-operations.md +++ b/docs/decisions/0009-support-long-running-operations.md @@ -57,7 +57,7 @@ This section describes different options for various aspects required to add lon ### 1. Methods for Working with Long-Running Operations -Based on the analysis of existing APIs that support long-running operations (such as OpenAI Responses, Azure AI Foundry Agents, and A2A), +Based on the analysis of existing APIs that support long-running operations (such as OpenAI Responses, Microsoft Foundry Agents, and A2A), the following operations are used for working with long-running operations: - Common operations: - **Start Long-Running Execution**: Initiates a long-running operation and returns its Id. @@ -757,7 +757,7 @@ Some of them natively support resuming streaming from a specific point in the st | API | Can Resume Streaming | Model | |-------------------------|--------------------------------------|------------------------------------------------------------------------------------------------------------| | OpenAI Responses | Yes | StreamingResponseUpdate.**SequenceNumber** + GetResponseStreamingAsync(responseId, **startingAfter**, ct) | -| Azure AI Foundry Agents | Emulated2 | RunStep.**Id** + custom pseudo code: client.Runs.GetRunStepsAsync(...).AllStepsAfter(**stepId**) | +| Microsoft Foundry Agents | Emulated2 | RunStep.**Id** + custom pseudo code: client.Runs.GetRunStepsAsync(...).AllStepsAfter(**stepId**) | | A2A | Implementation dependent1 | | 1 The [A2A specification](https://github.com/a2aproject/A2A/blob/main/docs/topics/streaming-and-async.md#1-streaming-with-server-sent-events-sse) @@ -765,7 +765,7 @@ allows an A2A agent implementation to decide how to handle streaming resumption: a task is still active (and the server hasn't sent a final: true event for that phase), the client can attempt to reconnect to the stream using the tasks/resubscribe RPC method. The server's behavior regarding missed events during the disconnection period (e.g., whether it backfills or only sends new updates) is implementation-dependent._ -2 The Azure AI Foundry Agents API has an API to start a streaming run but does not have an API to resume streaming from a specific point in the stream. +2 The Microsoft Foundry Agents API has an API to start a streaming run but does not have an API to resume streaming from a specific point in the stream. However, it has non-streaming APIs to access already started runs, which can be used to emulate streaming resumption by accessing a run and its steps and streaming all the steps after a specific step. #### Required Changes @@ -828,7 +828,7 @@ Sequence of updates from OpenAI Responses API to answer the question "What time | resp_2 | 10 | resp.output_item.done | - | InProgress | | | resp_2 | 11 | resp.completed | Completed | Completed | | -Sequence of updates from Azure AI Foundry Agents API to answer the question "What time is it?" using a function call: +Sequence of updates from Microsoft Foundry Agents API to answer the question "What time is it?" using a function call: | Id | SN | UpdateKind | Run.Status | Step.Status | Message.Status | ChatResponseUpdate.Status | Description | |--------|---------|-------------------|----------------|-------------|-----------------|---------------------------|---------------------------------------------------| | run_1 | - | RunCreated | Queued | - | - | Queued | | @@ -852,7 +852,7 @@ Sequence of updates from Azure AI Foundry Agents API to answer the question "Wha To support long-running operations, the following values need to be returned by the GetResponseAsync and GetStreamingResponseAsync methods: - `ResponseId` - identifier of the long-running operation or an entity representing it, such as a task. -- `ConversationId` - identifier of the conversation or thread the long-running operation is part of. Some APIs, like Azure AI Foundry Agents, use +- `ConversationId` - identifier of the conversation or thread the long-running operation is part of. Some APIs, like Microsoft Foundry Agents, use this identifier together with the ResponseId to identify a run. - `SequenceNumber` - identifier of an update within a stream of updates. This is required to support streaming resumption by the GetStreamingResponseAsync method only. - `Status` - status of the long-running operation: whether it is queued, running, failed, cancelled, completed, etc. @@ -1203,7 +1203,7 @@ response = await agent.CancelRunAsync(response.ResponseId, new AgentCancelRunOpt In case an agent supports either or both cancellation and deletion of long-running operations, it will override the corresponding methods. Otherwise, it won't override them, and the base implementations will return null by default. -Some agents, for example Azure AI Foundry Agents, require the thread identifier to cancel a run. To accommodate this requirement, the `CancelRunAsync` method +Some agents, for example Microsoft Foundry Agents, require the thread identifier to cancel a run. To accommodate this requirement, the `CancelRunAsync` method accepts an optional `AgentCancelRunOptions` parameter that allows callers to specify the thread associated with the run they want to cancel. ```csharp @@ -1574,7 +1574,7 @@ the thread is provided with background operations consistently for all runs.
-Azure AI Foundry Agents +Microsoft Foundry Agents - Create a thread and run the agent against it and wait for it to complete using polling: ```csharp diff --git a/docs/decisions/0021-provider-leading-clients.md b/docs/decisions/0021-provider-leading-clients.md index 7f958021616..d019db31496 100644 --- a/docs/decisions/0021-provider-leading-clients.md +++ b/docs/decisions/0021-provider-leading-clients.md @@ -34,11 +34,11 @@ Key changes: 1. **New `agent-framework-openai` package** with dependencies on `agent-framework-core`, `openai`, and `packaging` only. 2. **Class renames**: `OpenAIResponsesClient` → `OpenAIChatClient` (Responses API), `OpenAIChatClient` → `OpenAIChatCompletionClient` (Chat Completions API). Old names remain as deprecated aliases. 3. **Deprecated classes**: `OpenAIAssistantsClient`, all `AzureOpenAI*Client` classes, `AzureAIClient`, `AzureAIAgentClient`, and `AzureAIProjectAgentProvider` are marked deprecated. -4. **New `FoundryChatClient`** in azure-ai for Azure AI Foundry Responses API access, built on `RawFoundryChatClient(RawOpenAIChatClient)`. +4. **New `FoundryChatClient`** in azure-ai for Microsoft Foundry Responses API access, built on `RawFoundryChatClient(RawOpenAIChatClient)`. 5. **All deprecated `AzureOpenAI*` classes** consolidated into a single file (`_deprecated_azure_openai.py`) in the azure-ai package for clean future deletion. 6. **Core's `agent_framework.openai` and `agent_framework.azure` namespaces** become lazy-loading gateways, preserving backward-compatible import paths while removing hard dependencies. 7. **Unified `model` parameter** replaces `model_id` (OpenAI), `deployment_name` (Azure OpenAI), and `model_deployment_name` (Azure AI) across all client constructors. The term `model` is intentionally generic: it naturally maps to an OpenAI model name *and* to an Azure OpenAI deployment name, making it straightforward to use `OpenAIChatClient` with either OpenAI or Azure OpenAI backends (via `AsyncAzureOpenAI`). Environment variables are similarly unified (e.g., `OPENAI_MODEL` instead of separate `OPENAI_CHAT_MODEL_ID` / `OPENAI_CHAT_COMPLETION_MODEL_ID`). -8. **`FoundryAgent`** replaces the pattern of `Agent(client=AzureAIClient(...))` for connecting to pre-configured agents in Azure AI Foundry (PromptAgents and HostedAgents). The underlying `RawFoundryAgentChatClient` is an implementation detail — most users interact only with `FoundryAgent`. `AzureAIAgentClient` is separately deprecated as it refers to the V1 Agents Service API. See below for design rationale. +8. **`FoundryAgent`** replaces the pattern of `Agent(client=AzureAIClient(...))` for connecting to pre-configured agents in Microsoft Foundry (PromptAgents and HostedAgents). The underlying `RawFoundryAgentChatClient` is an implementation detail — most users interact only with `FoundryAgent`. `AzureAIAgentClient` is separately deprecated as it refers to the V1 Agents Service API. See below for design rationale. ### Foundry Agent Design: `FoundryAgentClient` vs `FoundryAgent` diff --git a/docs/decisions/0023-foundry-evals-integration.md b/docs/decisions/0023-foundry-evals-integration.md index ea9d2f3c694..e2534020871 100644 --- a/docs/decisions/0023-foundry-evals-integration.md +++ b/docs/decisions/0023-foundry-evals-integration.md @@ -7,11 +7,11 @@ consulted: Pratyush Mishra, Shivam Shrivastava, Manni Arora (Centrica eval scena informed: Agent Framework team, Foundry Evals team --- -# Agent Evaluation Architecture with Azure AI Foundry Integration +# Agent Evaluation Architecture with Microsoft Foundry Integration ## Context and Problem Statement -Azure AI Foundry provides a rich evaluation service for AI agents — built-in evaluators for agent behavior (task adherence, intent resolution), tool usage (tool call accuracy, tool selection), quality (coherence, fluency, relevance), and safety (violence, self-harm, prohibited actions). Results are viewable in the Foundry portal with dashboards and comparison views. +Microsoft Foundry provides a rich evaluation service for AI agents — built-in evaluators for agent behavior (task adherence, intent resolution), tool usage (tool call accuracy, tool selection), quality (coherence, fluency, relevance), and safety (violence, self-harm, prohibited actions). Results are viewable in the Foundry portal with dashboards and comparison views. However, using Foundry Evals with an agent-framework agent today requires significant manual effort. Developers must: @@ -445,7 +445,7 @@ These factorings produce different scores for the same conversation. The framewo ### Azure AI: FoundryEvals -`Evaluator` implementation backed by Azure AI Foundry: +`Evaluator` implementation backed by Microsoft Foundry: ```python class FoundryEvals: @@ -812,4 +812,4 @@ public sealed class EvalItem ## More Information -- [Foundry Evals documentation](https://learn.microsoft.com/azure/ai-foundry/concepts/evaluation-approach-gen-ai) — Azure AI Foundry evaluation overview +- [Foundry Evals documentation](https://learn.microsoft.com/azure/ai-foundry/concepts/evaluation-approach-gen-ai) — Microsoft Foundry evaluation overview diff --git a/docs/decisions/0025-foundry-toolbox-support.md b/docs/decisions/0025-foundry-toolbox-support.md index a68b98b3bfc..12eb23b5e58 100644 --- a/docs/decisions/0025-foundry-toolbox-support.md +++ b/docs/decisions/0025-foundry-toolbox-support.md @@ -9,7 +9,7 @@ deciders: evmattso ## What is the goal of this feature? -Enable Agent Framework users to consume Foundry **toolboxes** — named, versioned bundles of tool definitions stored server-side in an Azure AI Foundry project — directly from `FoundryChatClient`, without dropping to the raw `azure-ai-projects` SDK. +Enable Agent Framework users to consume Foundry **toolboxes** — named, versioned bundles of tool definitions stored server-side in a Microsoft Foundry project — directly from `FoundryChatClient`, without dropping to the raw `azure-ai-projects` SDK. A user who has configured a toolbox in the Foundry portal (or via the raw SDK) should be able to load it into an agent with a single call: diff --git a/dotnet/eng/verify-samples/AgentsSamples.cs b/dotnet/eng/verify-samples/AgentsSamples.cs index 2f36405002b..21fd74b54a7 100644 --- a/dotnet/eng/verify-samples/AgentsSamples.cs +++ b/dotnet/eng/verify-samples/AgentsSamples.cs @@ -837,7 +837,7 @@ internal static class AgentsSamples ProjectPath = "samples/02-agents/Agents/Agent_Step15_DeepResearch", RequiredEnvironmentVariables = ["AZURE_AI_PROJECT_ENDPOINT", "AZURE_AI_MODEL_DEPLOYMENT_NAME", "AZURE_AI_BING_CONNECTION_ID"], OptionalEnvironmentVariables = ["AZURE_AI_REASONING_DEPLOYMENT_NAME"], - SkipReason = "Requires Azure AI Foundry project with Bing search connection.", + SkipReason = "Requires Microsoft Foundry project with Bing search connection.", }, new SampleDefinition diff --git a/dotnet/eng/verify-samples/Program.cs b/dotnet/eng/verify-samples/Program.cs index f0233a5c9e1..3ac92ac80f0 100644 --- a/dotnet/eng/verify-samples/Program.cs +++ b/dotnet/eng/verify-samples/Program.cs @@ -19,7 +19,7 @@ // Pre-build the solution before running, or pass --build to avoid missing build output failures. // // Required environment variables (for AI-powered verification): -// FOUNDRY_PROJECT_ENDPOINT — Your Azure AI Foundry project endpoint +// FOUNDRY_PROJECT_ENDPOINT — Your Microsoft Foundry project endpoint // FOUNDRY_MODEL — Model deployment name (optional, defaults to gpt-5.4-mini) using System.Diagnostics; diff --git a/dotnet/eng/verify-samples/WorkflowSamples.cs b/dotnet/eng/verify-samples/WorkflowSamples.cs index cf9ccdb12e5..fa07cdd9e56 100644 --- a/dotnet/eng/verify-samples/WorkflowSamples.cs +++ b/dotnet/eng/verify-samples/WorkflowSamples.cs @@ -130,7 +130,7 @@ internal static class WorkflowSamples ProjectPath = "samples/03-workflows/Agents/FoundryAgent", RequiredEnvironmentVariables = ["FOUNDRY_PROJECT_ENDPOINT"], OptionalEnvironmentVariables = ["FOUNDRY_MODEL"], - SkipReason = "Requires Azure AI Foundry project endpoint.", + SkipReason = "Requires Microsoft Foundry project endpoint.", }, new SampleDefinition diff --git a/dotnet/samples/02-agents/AgentWithRAG/AgentWithRAG_Step01_BasicTextRAG/Program.cs b/dotnet/samples/02-agents/AgentWithRAG/AgentWithRAG_Step01_BasicTextRAG/Program.cs index f2ad6c54091..3b54f4f92c1 100644 --- a/dotnet/samples/02-agents/AgentWithRAG/AgentWithRAG_Step01_BasicTextRAG/Program.cs +++ b/dotnet/samples/02-agents/AgentWithRAG/AgentWithRAG_Step01_BasicTextRAG/Program.cs @@ -24,7 +24,7 @@ new Uri(endpoint), new DefaultAzureCredential()); -// Create an In-Memory vector store that uses the Azure AI Foundry embedding model to generate embeddings. +// Create an In-Memory vector store that uses the Microsoft Foundry embedding model to generate embeddings. VectorStore vectorStore = new InMemoryVectorStore(new() { EmbeddingGenerator = aiProjectClient.GetProjectOpenAIClient().GetEmbeddingClient(embeddingDeploymentName).AsIEmbeddingGenerator() diff --git a/dotnet/samples/02-agents/AgentWithRAG/AgentWithRAG_Step02_CustomVectorStoreRAG/Program.cs b/dotnet/samples/02-agents/AgentWithRAG/AgentWithRAG_Step02_CustomVectorStoreRAG/Program.cs index ac0577bc977..573911275dc 100644 --- a/dotnet/samples/02-agents/AgentWithRAG/AgentWithRAG_Step02_CustomVectorStoreRAG/Program.cs +++ b/dotnet/samples/02-agents/AgentWithRAG/AgentWithRAG_Step02_CustomVectorStoreRAG/Program.cs @@ -25,7 +25,7 @@ new Uri(endpoint), new DefaultAzureCredential()); -// Create a Qdrant vector store that uses the Azure AI Foundry embedding model to generate embeddings. +// Create a Qdrant vector store that uses the Microsoft Foundry embedding model to generate embeddings. QdrantClient client = new("localhost"); VectorStore vectorStore = new QdrantVectorStore(client, ownsClient: true, new() { diff --git a/dotnet/samples/02-agents/Agents/Agent_Step02_StructuredOutput/Program.cs b/dotnet/samples/02-agents/Agents/Agent_Step02_StructuredOutput/Program.cs index 8152a97e242..cab07be55eb 100644 --- a/dotnet/samples/02-agents/Agents/Agent_Step02_StructuredOutput/Program.cs +++ b/dotnet/samples/02-agents/Agents/Agent_Step02_StructuredOutput/Program.cs @@ -3,7 +3,7 @@ // Structured Output — Configure agents to return typed JSON // // This sample shows how to configure a ChatClientAgent to produce -// structured output using JSON schema constraints with Azure AI Foundry. +// structured output using JSON schema constraints with Microsoft Foundry. using System.ComponentModel; using System.Text.Json; diff --git a/dotnet/samples/02-agents/Agents/Agent_Step05_Observability/Program.cs b/dotnet/samples/02-agents/Agents/Agent_Step05_Observability/Program.cs index 07816897a8d..383038191ad 100644 --- a/dotnet/samples/02-agents/Agents/Agent_Step05_Observability/Program.cs +++ b/dotnet/samples/02-agents/Agents/Agent_Step05_Observability/Program.cs @@ -1,6 +1,6 @@ // Copyright (c) Microsoft. All rights reserved. -// Agent Observability — OpenTelemetry tracing with Azure AI Foundry +// Agent Observability — OpenTelemetry tracing with Microsoft Foundry // // This sample shows how to instrument an AI agent with OpenTelemetry // for distributed tracing and telemetry logging. diff --git a/dotnet/samples/02-agents/Agents/Agent_Step06_DependencyInjection/Program.cs b/dotnet/samples/02-agents/Agents/Agent_Step06_DependencyInjection/Program.cs index 4a19a42784b..628d8ddd37b 100644 --- a/dotnet/samples/02-agents/Agents/Agent_Step06_DependencyInjection/Program.cs +++ b/dotnet/samples/02-agents/Agents/Agent_Step06_DependencyInjection/Program.cs @@ -19,7 +19,7 @@ // Create a host builder that we will register services with and then run. HostApplicationBuilder builder = Host.CreateApplicationBuilder(args); -// Create the AI agent from the Azure AI Foundry project client. +// Create the AI agent from the Microsoft Foundry project client. // WARNING: DefaultAzureCredential is convenient for development but requires careful consideration in production. // In production, consider using a specific credential (e.g., ManagedIdentityCredential) to avoid // latency issues, unintended credential probing, and potential security risks from fallback mechanisms. diff --git a/dotnet/samples/02-agents/Agents/Agent_Step11_Middleware/Program.cs b/dotnet/samples/02-agents/Agents/Agent_Step11_Middleware/Program.cs index 545f82459b5..92cbe6bc440 100644 --- a/dotnet/samples/02-agents/Agents/Agent_Step11_Middleware/Program.cs +++ b/dotnet/samples/02-agents/Agents/Agent_Step11_Middleware/Program.cs @@ -2,7 +2,7 @@ // Middleware — Chain multiple middleware layers on an agent // -// This sample shows multiple middleware layers working together with Azure AI Foundry: +// This sample shows multiple middleware layers working together with Microsoft Foundry: // chat client (global/per-request), agent run (PII filtering and guardrails), // function invocation (logging and result overrides), human-in-the-loop // approval workflows for sensitive function calls, and MessageAIContextProvider @@ -15,7 +15,7 @@ using Microsoft.Agents.AI; using Microsoft.Extensions.AI; -// Get Azure AI Foundry configuration from environment variables +// Get Microsoft Foundry configuration from environment variables var endpoint = Environment.GetEnvironmentVariable("FOUNDRY_PROJECT_ENDPOINT") ?? throw new InvalidOperationException("FOUNDRY_PROJECT_ENDPOINT is not set."); var deploymentName = Environment.GetEnvironmentVariable("FOUNDRY_MODEL") ?? "gpt-5.4-mini"; diff --git a/dotnet/samples/02-agents/Agents/Agent_Step14_BackgroundResponses/Program.cs b/dotnet/samples/02-agents/Agents/Agent_Step14_BackgroundResponses/Program.cs index 11fda7fdceb..b1b0e106982 100644 --- a/dotnet/samples/02-agents/Agents/Agent_Step14_BackgroundResponses/Program.cs +++ b/dotnet/samples/02-agents/Agents/Agent_Step14_BackgroundResponses/Program.cs @@ -3,7 +3,7 @@ // Background Responses — Asynchronous agent execution with polling // // This sample shows how to use background responses with ChatClientAgent -// and Azure AI Foundry for non-blocking agent execution. +// and Microsoft Foundry for non-blocking agent execution. using Azure.AI.Projects; using Azure.Identity; diff --git a/dotnet/samples/02-agents/Agents/README.md b/dotnet/samples/02-agents/Agents/README.md index fff6e8a3b6f..1ac3718821e 100644 --- a/dotnet/samples/02-agents/Agents/README.md +++ b/dotnet/samples/02-agents/Agents/README.md @@ -18,7 +18,7 @@ Before you begin, ensure you have the following prerequisites: - Azure CLI installed and authenticated (for Azure credential authentication) - User has the required role to invoke models in the Foundry project. -**Note**: These samples use models hosted through Microsoft Foundry. For more information, see [Azure AI Foundry documentation](https://learn.microsoft.com/en-us/azure/ai-foundry/). +**Note**: These samples use models hosted through Microsoft Foundry. For more information, see [Microsoft Foundry documentation](https://learn.microsoft.com/en-us/azure/ai-foundry/). **Note**: These samples use Azure CLI credentials for authentication. Make sure you're logged in with `az login` and have access to the Foundry project. For more information, see the [Azure CLI documentation](https://learn.microsoft.com/cli/azure/authenticate-azure-cli-interactively). diff --git a/dotnet/samples/02-agents/Evaluation/Evaluation_SimpleEval/README.md b/dotnet/samples/02-agents/Evaluation/Evaluation_SimpleEval/README.md index d130661fae3..748ec5359a3 100644 --- a/dotnet/samples/02-agents/Evaluation/Evaluation_SimpleEval/README.md +++ b/dotnet/samples/02-agents/Evaluation/Evaluation_SimpleEval/README.md @@ -12,7 +12,7 @@ The simplest agent evaluation: create a Foundry agent, run it against test quest - .NET 10 SDK or later - Azure authentication available to `DefaultAzureCredential` (for local development, run `az login`) -- A deployed model in your Azure AI Foundry project +- A deployed model in your Microsoft Foundry project Set the following environment variables: diff --git a/dotnet/samples/02-agents/Harness/Harness_Step01_Research/README.md b/dotnet/samples/02-agents/Harness/Harness_Step01_Research/README.md index 00f4a40881e..6c1259e3527 100644 --- a/dotnet/samples/02-agents/Harness/Harness_Step01_Research/README.md +++ b/dotnet/samples/02-agents/Harness/Harness_Step01_Research/README.md @@ -1,6 +1,6 @@ # What this sample demonstrates -This sample demonstrates how to use a `HarnessAgent` with the Harness `AIContextProviders` (`TodoProvider` and `AgentModeProvider`) for interactive research tasks with web search capabilities powered by Azure AI Foundry. The `HarnessAgent` pre-configures function invocation, per-service-call chat history persistence, and context-window compaction. +This sample demonstrates how to use a `HarnessAgent` with the Harness `AIContextProviders` (`TodoProvider` and `AgentModeProvider`) for interactive research tasks with web search capabilities powered by Microsoft Foundry. The `HarnessAgent` pre-configures function invocation, per-service-call chat history persistence, and context-window compaction. Key features showcased: @@ -19,7 +19,7 @@ Key features showcased: Before running this sample, ensure you have: -1. An Azure AI Foundry project with a deployed model (e.g., `gpt-5.4`) +1. A Microsoft Foundry project with a deployed model (e.g., `gpt-5.4`) 2. Azure CLI installed and authenticated (`az login`) ## Environment Variables @@ -27,7 +27,7 @@ Before running this sample, ensure you have: Set the following environment variables: ```bash -# Required: Your Azure AI Foundry OpenAI endpoint +# Required: Your Microsoft Foundry OpenAI endpoint export AZURE_FOUNDRY_OPENAI_ENDPOINT="https://your-project.services.ai.azure.com/openai/v1/" # Optional: Model deployment name (defaults to gpt-5.4) diff --git a/dotnet/samples/02-agents/Harness/Harness_Step02_Research_WithBackgroundAgents/README.md b/dotnet/samples/02-agents/Harness/Harness_Step02_Research_WithBackgroundAgents/README.md index 0d7e359ee84..894db25a417 100644 --- a/dotnet/samples/02-agents/Harness/Harness_Step02_Research_WithBackgroundAgents/README.md +++ b/dotnet/samples/02-agents/Harness/Harness_Step02_Research_WithBackgroundAgents/README.md @@ -32,7 +32,7 @@ A parent agent receives a list of stock tickers and uses a web-search background ## Prerequisites -- An Azure AI Foundry endpoint with an OpenAI model deployment +- A Microsoft Foundry endpoint with an OpenAI model deployment - Set the following environment variables: - `AZURE_FOUNDRY_OPENAI_ENDPOINT` — Your Foundry OpenAI endpoint URL - `FOUNDRY_MODEL` — Model deployment name (defaults to `gpt-5.4`) diff --git a/dotnet/samples/02-agents/Harness/Harness_Step03_DataProcessing/README.md b/dotnet/samples/02-agents/Harness/Harness_Step03_DataProcessing/README.md index d06348fa728..ec2c8a48e4a 100644 --- a/dotnet/samples/02-agents/Harness/Harness_Step03_DataProcessing/README.md +++ b/dotnet/samples/02-agents/Harness/Harness_Step03_DataProcessing/README.md @@ -15,7 +15,7 @@ Key features showcased: Before running this sample, ensure you have: -1. An Azure AI Foundry project with a deployed model (e.g., `gpt-5.4`) +1. A Microsoft Foundry project with a deployed model (e.g., `gpt-5.4`) 2. Azure CLI installed and authenticated (`az login`) ## Environment Variables @@ -23,7 +23,7 @@ Before running this sample, ensure you have: Set the following environment variables: ```bash -# Required: Your Azure AI Foundry OpenAI endpoint +# Required: Your Microsoft Foundry OpenAI endpoint export AZURE_FOUNDRY_OPENAI_ENDPOINT="https://your-project.services.ai.azure.com/openai/v1/" # Optional: Model deployment name (defaults to gpt-5.4) diff --git a/dotnet/samples/02-agents/Harness/Harness_Step04_CodeExecution/README.md b/dotnet/samples/02-agents/Harness/Harness_Step04_CodeExecution/README.md index daebc0a19b6..fc572dcac11 100644 --- a/dotnet/samples/02-agents/Harness/Harness_Step04_CodeExecution/README.md +++ b/dotnet/samples/02-agents/Harness/Harness_Step04_CodeExecution/README.md @@ -10,14 +10,14 @@ The agent can plan tasks, manage modes, store memories, read/write files, search ## Prerequisites - .NET 10 SDK -- An Azure AI Foundry project endpoint +- A Microsoft Foundry project endpoint - KVM-capable host (the Hyperlight sandbox runs code in micro-VMs) ## Environment Variables | Variable | Description | |----------|-------------| -| `FOUNDRY_PROJECT_ENDPOINT` | Your Azure AI Foundry project endpoint | +| `FOUNDRY_PROJECT_ENDPOINT` | Your Microsoft Foundry project endpoint | | `FOUNDRY_MODEL` | Model deployment name (default: `gpt-5.4`) | ## Running diff --git a/dotnet/samples/02-agents/Harness/Harness_Step05_Loop/README.md b/dotnet/samples/02-agents/Harness/Harness_Step05_Loop/README.md index 6a3d4a10c82..ea5b3421e01 100644 --- a/dotnet/samples/02-agents/Harness/Harness_Step05_Loop/README.md +++ b/dotnet/samples/02-agents/Harness/Harness_Step05_Loop/README.md @@ -32,7 +32,7 @@ The Python sample in [microsoft/agent-framework#6174](https://github.com/microso Before running this sample, ensure you have: -1. An Azure AI Foundry project with a deployed model (e.g., `gpt-5.4`) +1. A Microsoft Foundry project with a deployed model (e.g., `gpt-5.4`) 2. Azure CLI installed and authenticated (`az login`) ## Environment Variables @@ -40,7 +40,7 @@ Before running this sample, ensure you have: Set the following environment variables: ```bash -# Required: Your Azure AI Foundry project endpoint +# Required: Your Microsoft Foundry project endpoint export AZURE_AI_PROJECT_ENDPOINT="https://your-project.services.ai.azure.com/api/projects/your-project" # Optional: Model deployment name (defaults to gpt-5.4) diff --git a/dotnet/samples/03-workflows/Agents/CustomAgentExecutors/Program.cs b/dotnet/samples/03-workflows/Agents/CustomAgentExecutors/Program.cs index 6251bcea268..386fb57dce4 100644 --- a/dotnet/samples/03-workflows/Agents/CustomAgentExecutors/Program.cs +++ b/dotnet/samples/03-workflows/Agents/CustomAgentExecutors/Program.cs @@ -31,7 +31,7 @@ public static class Program { private static async Task Main() { - // Set up the Azure AI Foundry client + // Set up the Microsoft Foundry client var endpoint = Environment.GetEnvironmentVariable("FOUNDRY_PROJECT_ENDPOINT") ?? throw new InvalidOperationException("FOUNDRY_PROJECT_ENDPOINT is not set."); var deploymentName = Environment.GetEnvironmentVariable("FOUNDRY_MODEL") ?? "gpt-5.4-mini"; AIProjectClient aiProjectClient = new(new Uri(endpoint), new DefaultAzureCredential()); diff --git a/dotnet/samples/03-workflows/Agents/WorkflowAsAnAgent/Program.cs b/dotnet/samples/03-workflows/Agents/WorkflowAsAnAgent/Program.cs index cf0fc4a9323..6155fcf6287 100644 --- a/dotnet/samples/03-workflows/Agents/WorkflowAsAnAgent/Program.cs +++ b/dotnet/samples/03-workflows/Agents/WorkflowAsAnAgent/Program.cs @@ -37,7 +37,7 @@ public static class Program { private static async Task Main() { - // Set up the Azure AI Foundry client + // Set up the Microsoft Foundry client var endpoint = Environment.GetEnvironmentVariable("FOUNDRY_PROJECT_ENDPOINT") ?? throw new InvalidOperationException("FOUNDRY_PROJECT_ENDPOINT is not set."); var deploymentName = Environment.GetEnvironmentVariable("FOUNDRY_MODEL") ?? "gpt-5.4-mini"; AIProjectClient aiProjectClient = new(new Uri(endpoint), new DefaultAzureCredential()); diff --git a/dotnet/samples/03-workflows/ConditionalEdges/01_EdgeCondition/Program.cs b/dotnet/samples/03-workflows/ConditionalEdges/01_EdgeCondition/Program.cs index 83b5c0b5b07..bd559b0bed9 100644 --- a/dotnet/samples/03-workflows/ConditionalEdges/01_EdgeCondition/Program.cs +++ b/dotnet/samples/03-workflows/ConditionalEdges/01_EdgeCondition/Program.cs @@ -34,7 +34,7 @@ public static class Program { private static async Task Main() { - // Set up the Azure AI Foundry client + // Set up the Microsoft Foundry client var endpoint = Environment.GetEnvironmentVariable("FOUNDRY_PROJECT_ENDPOINT") ?? throw new InvalidOperationException("FOUNDRY_PROJECT_ENDPOINT is not set."); var deploymentName = Environment.GetEnvironmentVariable("FOUNDRY_MODEL") ?? "gpt-5.4-mini"; AIProjectClient aiProjectClient = new(new Uri(endpoint), new DefaultAzureCredential()); diff --git a/dotnet/samples/03-workflows/ConditionalEdges/02_SwitchCase/Program.cs b/dotnet/samples/03-workflows/ConditionalEdges/02_SwitchCase/Program.cs index b3e0d09a0d0..3fccbb17270 100644 --- a/dotnet/samples/03-workflows/ConditionalEdges/02_SwitchCase/Program.cs +++ b/dotnet/samples/03-workflows/ConditionalEdges/02_SwitchCase/Program.cs @@ -35,7 +35,7 @@ public static class Program { private static async Task Main() { - // Set up the Azure AI Foundry client + // Set up the Microsoft Foundry client var endpoint = Environment.GetEnvironmentVariable("FOUNDRY_PROJECT_ENDPOINT") ?? throw new InvalidOperationException("FOUNDRY_PROJECT_ENDPOINT is not set."); var deploymentName = Environment.GetEnvironmentVariable("FOUNDRY_MODEL") ?? "gpt-5.4-mini"; AIProjectClient aiProjectClient = new(new Uri(endpoint), new DefaultAzureCredential()); diff --git a/dotnet/samples/03-workflows/ConditionalEdges/03_MultiSelection/Program.cs b/dotnet/samples/03-workflows/ConditionalEdges/03_MultiSelection/Program.cs index 14022fff755..2f5e8abae5f 100644 --- a/dotnet/samples/03-workflows/ConditionalEdges/03_MultiSelection/Program.cs +++ b/dotnet/samples/03-workflows/ConditionalEdges/03_MultiSelection/Program.cs @@ -37,7 +37,7 @@ public static class Program private static async Task Main() { - // Set up the Azure AI Foundry client + // Set up the Microsoft Foundry client var endpoint = Environment.GetEnvironmentVariable("FOUNDRY_PROJECT_ENDPOINT") ?? throw new InvalidOperationException("FOUNDRY_PROJECT_ENDPOINT is not set."); var deploymentName = Environment.GetEnvironmentVariable("FOUNDRY_MODEL") ?? "gpt-5.4-mini"; AIProjectClient aiProjectClient = new(new Uri(endpoint), new DefaultAzureCredential()); diff --git a/dotnet/samples/03-workflows/Observability/WorkflowAsAnAgent/Program.cs b/dotnet/samples/03-workflows/Observability/WorkflowAsAnAgent/Program.cs index b2a13b64c82..b6b67c6cf34 100644 --- a/dotnet/samples/03-workflows/Observability/WorkflowAsAnAgent/Program.cs +++ b/dotnet/samples/03-workflows/Observability/WorkflowAsAnAgent/Program.cs @@ -70,7 +70,7 @@ private static async Task Main() using var traceProvider = traceProviderBuilder.Build(); - // Set up the Azure AI Foundry client + // Set up the Microsoft Foundry client var endpoint = Environment.GetEnvironmentVariable("FOUNDRY_PROJECT_ENDPOINT") ?? throw new InvalidOperationException("FOUNDRY_PROJECT_ENDPOINT is not set."); var deploymentName = Environment.GetEnvironmentVariable("FOUNDRY_MODEL") ?? "gpt-5.4-mini"; AIProjectClient aiProjectClient = new(new Uri(endpoint), new DefaultAzureCredential()); diff --git a/dotnet/samples/03-workflows/Orchestration/Magentic/Program.cs b/dotnet/samples/03-workflows/Orchestration/Magentic/Program.cs index 0382745d7d4..380ba1daa16 100644 --- a/dotnet/samples/03-workflows/Orchestration/Magentic/Program.cs +++ b/dotnet/samples/03-workflows/Orchestration/Magentic/Program.cs @@ -18,7 +18,7 @@ namespace WorkflowMagenticOrchestrationSample; /// /// /// Pre-requisites: -/// - An Azure AI Foundry project endpoint and model deployment must be configured. +/// - A Microsoft Foundry project endpoint and model deployment must be configured. /// - Run az login before executing the sample. /// public static class Program diff --git a/dotnet/samples/03-workflows/Orchestration/Magentic/README.md b/dotnet/samples/03-workflows/Orchestration/Magentic/README.md index 739229df26d..5aa1a7fa034 100644 --- a/dotnet/samples/03-workflows/Orchestration/Magentic/README.md +++ b/dotnet/samples/03-workflows/Orchestration/Magentic/README.md @@ -15,7 +15,7 @@ This sample showcases the Magentic Orchestration Pattern in .NET, setting up a t ## Prerequisites -- `FOUNDRY_PROJECT_ENDPOINT` set to your Azure AI Foundry project endpoint +- `FOUNDRY_PROJECT_ENDPOINT` set to your Microsoft Foundry project endpoint - `FOUNDRY_MODEL` set to your model deployment name (defaults to `gpt-5.4-mini`) - `az login` completed before running the sample diff --git a/dotnet/samples/03-workflows/_StartHere/02_AgentsInWorkflows/Program.cs b/dotnet/samples/03-workflows/_StartHere/02_AgentsInWorkflows/Program.cs index bfa9e49b235..0aa1c40c36f 100644 --- a/dotnet/samples/03-workflows/_StartHere/02_AgentsInWorkflows/Program.cs +++ b/dotnet/samples/03-workflows/_StartHere/02_AgentsInWorkflows/Program.cs @@ -21,13 +21,13 @@ namespace WorkflowAgentsInWorkflowsSample; /// /// /// Pre-requisites: -/// - An Azure AI Foundry project endpoint and model must be configured. +/// - A Microsoft Foundry project endpoint and model must be configured. /// public static class Program { private static async Task Main() { - // Set up the Azure AI Foundry client + // Set up the Microsoft Foundry client var endpoint = Environment.GetEnvironmentVariable("FOUNDRY_PROJECT_ENDPOINT") ?? throw new InvalidOperationException("FOUNDRY_PROJECT_ENDPOINT is not set."); var deploymentName = Environment.GetEnvironmentVariable("FOUNDRY_MODEL") ?? "gpt-5.4-mini"; AIProjectClient aiProjectClient = new(new Uri(endpoint), new DefaultAzureCredential()); diff --git a/dotnet/samples/03-workflows/_StartHere/03_AgentWorkflowPatterns/Program.cs b/dotnet/samples/03-workflows/_StartHere/03_AgentWorkflowPatterns/Program.cs index 58146fbd7f8..0017cba52c6 100644 --- a/dotnet/samples/03-workflows/_StartHere/03_AgentWorkflowPatterns/Program.cs +++ b/dotnet/samples/03-workflows/_StartHere/03_AgentWorkflowPatterns/Program.cs @@ -16,13 +16,13 @@ namespace WorkflowAgentsInWorkflowsSample; /// /// /// Pre-requisites: -/// - An Azure AI Foundry project endpoint and model must be configured. +/// - A Microsoft Foundry project endpoint and model must be configured. /// public static class Program { private static async Task Main() { - // Set up the Azure AI Foundry client. + // Set up the Microsoft Foundry client. var endpoint = Environment.GetEnvironmentVariable("FOUNDRY_PROJECT_ENDPOINT") ?? throw new InvalidOperationException("FOUNDRY_PROJECT_ENDPOINT is not set."); var deploymentName = Environment.GetEnvironmentVariable("FOUNDRY_MODEL") ?? "gpt-5.4-mini"; AIProjectClient aiProjectClient = new(new Uri(endpoint), new DefaultAzureCredential()); diff --git a/dotnet/samples/03-workflows/_StartHere/06_MixedWorkflowAgentsAndExecutors/Program.cs b/dotnet/samples/03-workflows/_StartHere/06_MixedWorkflowAgentsAndExecutors/Program.cs index da18dcc7b4d..4a6dd63519b 100644 --- a/dotnet/samples/03-workflows/_StartHere/06_MixedWorkflowAgentsAndExecutors/Program.cs +++ b/dotnet/samples/03-workflows/_StartHere/06_MixedWorkflowAgentsAndExecutors/Program.cs @@ -31,7 +31,7 @@ namespace MixedWorkflowWithAgentsAndExecutors; /// /// Pre-requisites: /// - Previous foundational samples should be completed first. -/// - An Azure AI Foundry project endpoint and model must be configured. +/// - A Microsoft Foundry project endpoint and model must be configured. /// public static class Program { @@ -40,7 +40,7 @@ private static async Task Main() { Console.WriteLine("\n=== Mixed Workflow: Agents and Executors ===\n"); - // Set up the Azure AI Foundry client + // Set up the Microsoft Foundry client var endpoint = Environment.GetEnvironmentVariable("FOUNDRY_PROJECT_ENDPOINT") ?? throw new InvalidOperationException("FOUNDRY_PROJECT_ENDPOINT is not set."); var deploymentName = Environment.GetEnvironmentVariable("FOUNDRY_MODEL") ?? "gpt-5.4-mini"; AIProjectClient aiProjectClient = new(new Uri(endpoint), new DefaultAzureCredential()); diff --git a/dotnet/samples/03-workflows/_StartHere/07_WriterCriticWorkflow/Program.cs b/dotnet/samples/03-workflows/_StartHere/07_WriterCriticWorkflow/Program.cs index 063fdb69703..cb04069d4ed 100644 --- a/dotnet/samples/03-workflows/_StartHere/07_WriterCriticWorkflow/Program.cs +++ b/dotnet/samples/03-workflows/_StartHere/07_WriterCriticWorkflow/Program.cs @@ -47,7 +47,7 @@ private static async Task Main() Console.WriteLine("\n=== Writer-Critic Iteration Workflow ===\n"); Console.WriteLine($"Writer and Critic will iterate up to {MaxIterations} times until approval.\n"); - // Set up the Azure AI Foundry client + // Set up the Microsoft Foundry client string endpoint = Environment.GetEnvironmentVariable("FOUNDRY_PROJECT_ENDPOINT") ?? throw new InvalidOperationException("FOUNDRY_PROJECT_ENDPOINT is not set."); string deploymentName = Environment.GetEnvironmentVariable("FOUNDRY_MODEL") ?? "gpt-5.4-mini"; AIProjectClient aiProjectClient = new(new Uri(endpoint), new DefaultAzureCredential()); diff --git a/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Workflow-Handoff/Pages.cs b/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Workflow-Handoff/Pages.cs index 916b0fdf176..6e66639b240 100644 --- a/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Workflow-Handoff/Pages.cs +++ b/dotnet/samples/04-hosting/FoundryHostedAgents/responses/Hosted-Workflow-Handoff/Pages.cs @@ -119,7 +119,7 @@ All demos share the same /responses endpoint.
- +
diff --git a/dotnet/samples/05-end-to-end/DevUIAspireIntegration/README.md b/dotnet/samples/05-end-to-end/DevUIAspireIntegration/README.md index 2711f444816..2fe479c2cbd 100644 --- a/dotnet/samples/05-end-to-end/DevUIAspireIntegration/README.md +++ b/dotnet/samples/05-end-to-end/DevUIAspireIntegration/README.md @@ -13,12 +13,12 @@ The WriterAgent is configured with HTTPS redirection so the Aspire DevUI integra - [.NET 10 SDK](https://dotnet.microsoft.com/en-us/download/dotnet/10.0) - [Aspire CLI](https://learn.microsoft.com/dotnet/aspire/fundamentals/setup-tooling) -- An Azure subscription with access to [Azure AI Foundry](https://learn.microsoft.com/azure/ai-studio/) +- An Azure subscription with access to [Microsoft Foundry](https://learn.microsoft.com/azure/ai-studio/) - Azure CLI authenticated (`az login`) -## Azure AI Foundry configuration +## Microsoft Foundry configuration -The sample requires an Azure AI Foundry resource with a deployed `gpt-4.1` model. You have two options: +The sample requires a Microsoft Foundry resource with a deployed `gpt-4.1` model. You have two options: ### Option 1: Connect to an existing Foundry resource @@ -54,7 +54,7 @@ Remove or comment out the `AsExisting` block in `DevUIIntegration.AppHost/Progra // foundry.AsExisting(existingFoundryName, existingFoundryResourceGroup); ``` -Aspire will provision a new Azure AI Foundry resource on startup. The DevUI resource uses `.WaitFor(foundry)` transitively through the agent services, so the frontend won't become available until provisioning completes. This can take several minutes on first run. +Aspire will provision a new Microsoft Foundry resource on startup. The DevUI resource uses `.WaitFor(foundry)` transitively through the agent services, so the frontend won't become available until provisioning completes. This can take several minutes on first run. You still need to fill in the `Azure` section of `appsettings.json` (subscription, location, etc.) so Aspire knows where to create the resource. diff --git a/dotnet/samples/05-end-to-end/Evaluation/Evaluation_FoundryRubric/Program.cs b/dotnet/samples/05-end-to-end/Evaluation/Evaluation_FoundryRubric/Program.cs index 5e1aef17365..20982d0da21 100644 --- a/dotnet/samples/05-end-to-end/Evaluation/Evaluation_FoundryRubric/Program.cs +++ b/dotnet/samples/05-end-to-end/Evaluation/Evaluation_FoundryRubric/Program.cs @@ -1,6 +1,6 @@ // Copyright (c) Microsoft. All rights reserved. -// This sample evaluates a pre-existing Azure AI Foundry agent against a rubric evaluator +// This sample evaluates a pre-existing Microsoft Foundry agent against a rubric evaluator // that was authored in the Foundry portal. // // Rubric evaluators are LLM-as-judge evaluators with custom scoring dimensions you define @@ -9,7 +9,7 @@ // here by name and version. // // Prerequisites: -// - An Azure AI Foundry project with a deployed model. +// - A Microsoft Foundry project with a deployed model. // - A registered Foundry agent in that project (the rubric was created against this agent). // - A rubric evaluator already created in the Foundry portal. // - .env (or environment) populated with the FOUNDRY_* variables below. diff --git a/dotnet/samples/05-end-to-end/Evaluation/Evaluation_FoundryRubric/README.md b/dotnet/samples/05-end-to-end/Evaluation/Evaluation_FoundryRubric/README.md index a05cfca5e6c..c87d264967d 100644 --- a/dotnet/samples/05-end-to-end/Evaluation/Evaluation_FoundryRubric/README.md +++ b/dotnet/samples/05-end-to-end/Evaluation/Evaluation_FoundryRubric/README.md @@ -1,6 +1,6 @@ # Evaluation — Foundry Rubric -This sample evaluates a pre-existing Azure AI Foundry agent against a **rubric evaluator** +This sample evaluates a pre-existing Microsoft Foundry agent against a **rubric evaluator** authored in the Foundry portal. Rubric evaluators are LLM-as-judge evaluators with custom scoring dimensions you define for your domain; agent-framework references them by name and version, mixes them with built-in evaluators, and exposes per-dimension scores you can gate @@ -20,7 +20,7 @@ CI on. - .NET 10 SDK or later. - Azure CLI installed and authenticated (`az login`). -- An Azure AI Foundry project with a deployed model. +- A Microsoft Foundry project with a deployed model. - A registered Foundry agent in that project (the agent the rubric was created against). - A rubric evaluator created in the Foundry portal. Creating rubrics through the portal currently requires picking a Foundry agent as the generation context, so this diff --git a/dotnet/src/Microsoft.Agents.AI.Foundry/Evaluation/FoundryEvals.cs b/dotnet/src/Microsoft.Agents.AI.Foundry/Evaluation/FoundryEvals.cs index d1542fc4df8..5ea493fc36f 100644 --- a/dotnet/src/Microsoft.Agents.AI.Foundry/Evaluation/FoundryEvals.cs +++ b/dotnet/src/Microsoft.Agents.AI.Foundry/Evaluation/FoundryEvals.cs @@ -19,7 +19,7 @@ namespace Microsoft.Agents.AI.Foundry; /// -/// Azure AI Foundry evaluator provider that calls the Foundry Evals API. +/// Microsoft Foundry evaluator provider that calls the Foundry Evals API. /// /// /// @@ -28,7 +28,7 @@ namespace Microsoft.Agents.AI.Foundry; /// (quality, safety, agent behavior, tool usage) are supported. /// /// -/// Results appear in the Azure AI Foundry portal with a report URL for detailed analysis. +/// Results appear in the Microsoft Foundry portal with a report URL for detailed analysis. /// /// [UnconditionalSuppressMessage("Trimming", "IL2026", Justification = "Serializing Dictionary for eval API payloads.")] @@ -55,7 +55,7 @@ public sealed class FoundryEvals : IAgentEvaluator /// /// Initializes a new instance of the class. /// - /// The Azure AI Foundry project client. + /// The Microsoft Foundry project client. /// Model deployment name for the LLM judge evaluator. /// /// Evaluator specs to use. Each entry can be a built-in evaluator name (string, for example @@ -80,7 +80,7 @@ public FoundryEvals(AIProjectClient projectClient, string model, params FoundryE /// /// Initializes a new instance of the class with a conversation splitter. /// - /// The Azure AI Foundry project client. + /// The Microsoft Foundry project client. /// Model deployment name for the LLM judge evaluator. /// /// Default conversation splitter for multi-turn conversations. @@ -104,7 +104,7 @@ public FoundryEvals( /// /// Initializes a new instance of the class with full configuration. /// - /// The Azure AI Foundry project client. + /// The Microsoft Foundry project client. /// Model deployment name for the LLM judge evaluator. /// /// Default conversation splitter for multi-turn conversations. @@ -141,7 +141,7 @@ public FoundryEvals( /// Initializes a new instance of the class using built-in evaluator /// names. Preserves source compatibility for callers that pass a array. /// - /// The Azure AI Foundry project client. + /// The Microsoft Foundry project client. /// Model deployment name for the LLM judge evaluator. /// Built-in evaluator names (for example ). public FoundryEvals(AIProjectClient projectClient, string model, string[] evaluators) @@ -153,7 +153,7 @@ public FoundryEvals(AIProjectClient projectClient, string model, string[] evalua /// Initializes a new instance of the class with a splitter and /// built-in evaluator names. /// - /// The Azure AI Foundry project client. + /// The Microsoft Foundry project client. /// Model deployment name for the LLM judge evaluator. /// Default conversation splitter for multi-turn conversations. /// Built-in evaluator names. @@ -170,7 +170,7 @@ public FoundryEvals( /// Initializes a new instance of the class with full configuration /// and built-in evaluator names. /// - /// The Azure AI Foundry project client. + /// The Microsoft Foundry project client. /// Model deployment name for the LLM judge evaluator. /// Default conversation splitter for multi-turn conversations. /// Seconds between status polls. @@ -355,7 +355,7 @@ public async Task EvaluateAsync( /// Source-compat overload of /// that accepts a array of built-in evaluator names. /// - /// The Azure AI Foundry project client. + /// The Microsoft Foundry project client. /// Model deployment name for the LLM judge evaluator. /// Evaluate specific Responses API response IDs. /// Evaluate specific OTel trace IDs from App Insights. @@ -403,7 +403,7 @@ public static Task EvaluateTracesAsync( /// to evaluate recent activity. /// /// - /// The Azure AI Foundry project client. + /// The Microsoft Foundry project client. /// Model deployment name for the LLM judge evaluator. /// Evaluate specific Responses API response IDs. /// Evaluate specific OTel trace IDs from App Insights. @@ -560,7 +560,7 @@ public static async Task EvaluateTracesAsync( /// Source-compat overload of /// that accepts a array of built-in evaluator names. /// - /// The Azure AI Foundry project client. + /// The Microsoft Foundry project client. /// Model deployment name for the LLM judge evaluator. /// Target configuration (must include a "type" key). /// Queries for Foundry to send to the target. @@ -598,7 +598,7 @@ public static Task EvaluateFoundryTargetAsync( /// Foundry invokes the target, captures the output, and evaluates it. /// Use this for scheduled evaluations, red teaming, and CI/CD quality gates. /// - /// The Azure AI Foundry project client. + /// The Microsoft Foundry project client. /// Model deployment name for the LLM judge evaluator. /// Target configuration (must include a "type" key, e.g. "azure_ai_agent"). /// Queries for Foundry to send to the target. diff --git a/dotnet/src/Microsoft.Agents.AI/Evaluation/RubricScore.cs b/dotnet/src/Microsoft.Agents.AI/Evaluation/RubricScore.cs index d873af26442..51957064c52 100644 --- a/dotnet/src/Microsoft.Agents.AI/Evaluation/RubricScore.cs +++ b/dotnet/src/Microsoft.Agents.AI/Evaluation/RubricScore.cs @@ -7,7 +7,7 @@ namespace Microsoft.Agents.AI; /// /// /// -/// Rubric evaluators (such as the generated rubric evaluators produced by Azure AI Foundry's +/// Rubric evaluators (such as the generated rubric evaluators produced by Microsoft Foundry's /// adaptive evals) emit one per dimension per item, alongside an /// overall weighted score. Attach instances to as /// a typed view of the per-dimension breakdown returned by the provider diff --git a/dotnet/src/Shared/Samples/TestConfiguration.cs b/dotnet/src/Shared/Samples/TestConfiguration.cs index ec85a97a1e6..8bb08c60fc8 100644 --- a/dotnet/src/Shared/Samples/TestConfiguration.cs +++ b/dotnet/src/Shared/Samples/TestConfiguration.cs @@ -49,7 +49,7 @@ public class AzureOpenAIConfig /// Represents the configuration settings required to interact with the Azure AI service. public sealed class AzureAIConfig { - /// Gets or sets the endpoint of Azure AI Foundry project. + /// Gets or sets the endpoint of Microsoft Foundry project. public string? Endpoint { get; set; } /// Gets or sets the name of the model deployment. diff --git a/dotnet/tests/Foundry.Hosting.IntegrationTests/McpToolboxHostedAgentTests.cs b/dotnet/tests/Foundry.Hosting.IntegrationTests/McpToolboxHostedAgentTests.cs index b45dd3582db..c73805f618c 100644 --- a/dotnet/tests/Foundry.Hosting.IntegrationTests/McpToolboxHostedAgentTests.cs +++ b/dotnet/tests/Foundry.Hosting.IntegrationTests/McpToolboxHostedAgentTests.cs @@ -24,7 +24,7 @@ public async Task McpTool_IsInvokedSuccessfullyAsync() var agent = this._fixture.Agent; // Act - var response = await agent.RunAsync("Use the Microsoft Learn MCP tool to look up 'Azure AI Foundry'. Reply with one short paragraph."); + var response = await agent.RunAsync("Use the Microsoft Learn MCP tool to look up 'Microsoft Foundry'. Reply with one short paragraph."); // Assert Assert.False(string.IsNullOrWhiteSpace(response.Text)); diff --git a/dotnet/tests/Foundry.IntegrationTests/Memory/FoundryMemoryProviderTests.cs b/dotnet/tests/Foundry.IntegrationTests/Memory/FoundryMemoryProviderTests.cs index 2904d207cd9..86a090469cf 100644 --- a/dotnet/tests/Foundry.IntegrationTests/Memory/FoundryMemoryProviderTests.cs +++ b/dotnet/tests/Foundry.IntegrationTests/Memory/FoundryMemoryProviderTests.cs @@ -15,15 +15,15 @@ namespace Foundry.IntegrationTests.Memory; /// -/// Integration tests for against a configured Azure AI Foundry Memory service. +/// Integration tests for against a configured Microsoft Foundry Memory service. /// /// -/// These integration tests are skipped by default and require a live Azure AI Foundry Memory service. +/// These integration tests are skipped by default and require a live Microsoft Foundry Memory service. /// The tests need to be updated to use the new AIAgent-based API pattern. /// public sealed class FoundryMemoryProviderTests : IDisposable { - private const string SkipReason = "Requires an Azure AI Foundry Memory service configured"; // Set to null to enable. + private const string SkipReason = "Requires a Microsoft Foundry Memory service configured"; // Set to null to enable. private readonly AIProjectClient? _client; private readonly string? _memoryStoreName; diff --git a/python/AGENTS.md b/python/AGENTS.md index ffb62d2b7ff..8fe6365bd6e 100644 --- a/python/AGENTS.md +++ b/python/AGENTS.md @@ -82,7 +82,7 @@ python/ - [anthropic](packages/anthropic/AGENTS.md) - Anthropic Claude API - [bedrock](packages/bedrock/AGENTS.md) - AWS Bedrock - [claude](packages/claude/AGENTS.md) - Claude Agent SDK -- [foundry_local](packages/foundry_local/AGENTS.md) - Azure AI Foundry Local +- [foundry_local](packages/foundry_local/AGENTS.md) - Microsoft Foundry Local - [ollama](packages/ollama/AGENTS.md) - Local Ollama inference ### Azure Integrations diff --git a/python/CHANGELOG.md b/python/CHANGELOG.md index 338e2678b56..68d43e35b23 100644 --- a/python/CHANGELOG.md +++ b/python/CHANGELOG.md @@ -425,7 +425,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added - **agent-framework-openai**: New package extracted from core for OpenAI and Azure OpenAI provider support ([#4818](https://github.com/microsoft/agent-framework/pull/4818)) -- **agent-framework-foundry**: New package for Azure AI Foundry integration ([#4818](https://github.com/microsoft/agent-framework/pull/4818)) +- **agent-framework-foundry**: New package for Microsoft Foundry integration ([#4818](https://github.com/microsoft/agent-framework/pull/4818)) - **agent-framework-core**: Support `structuredContent` in MCP tool results and fix sampling options type ([#4763](https://github.com/microsoft/agent-framework/pull/4763)) - **agent-framework-core**: Include reasoning messages in `MESSAGES_SNAPSHOT` events ([#4844](https://github.com/microsoft/agent-framework/pull/4844)) - **agent-framework-core**: [BREAKING] Add context mode to `AgentExecutor` ([#4668](https://github.com/microsoft/agent-framework/pull/4668)) @@ -1250,7 +1250,7 @@ Release candidate for **agent-framework-core** and **agent-framework-azure-ai** - First release of Agent Framework for Python - agent-framework-core: Main abstractions, types and implementations for OpenAI and Azure OpenAI -- agent-framework-azure-ai: Integration with Azure AI Foundry Agents +- agent-framework-azure-ai: Integration with Microsoft Foundry Agents - agent-framework-copilotstudio: Integration with Microsoft Copilot Studio agents - agent-framework-a2a: Create A2A agents - agent-framework-devui: Browser-based UI to chat with agents and workflows, with tracing visualization diff --git a/python/README.md b/python/README.md index c721feb8cd0..2a672e5f3c3 100644 --- a/python/README.md +++ b/python/README.md @@ -24,13 +24,13 @@ If you only need specific integrations, you can install at a more granular level # also includes workflows and orchestrations pip install agent-framework-core -# Core + Azure AI Foundry integration +# Core + Microsoft Foundry integration pip install agent-framework-foundry # Core + Microsoft Copilot Studio integration (preview package) pip install agent-framework-copilotstudio --pre -# Core + both Microsoft Copilot Studio and Azure AI Foundry integration +# Core + both Microsoft Copilot Studio and Microsoft Foundry integration pip install --pre agent-framework-copilotstudio agent-framework-foundry ``` diff --git a/python/packages/ag-ui/getting_started/README.md b/python/packages/ag-ui/getting_started/README.md index 587baa1f351..e22cdd778c0 100644 --- a/python/packages/ag-ui/getting_started/README.md +++ b/python/packages/ag-ui/getting_started/README.md @@ -175,7 +175,7 @@ Before you begin, ensure you have the following: - Azure CLI installed and authenticated (for DefaultAzureCredential) - User has the `Cognitive Services OpenAI Contributor` role for the Azure OpenAI resource -**Note**: These samples use Azure OpenAI models. For more information, see [how to deploy Azure OpenAI models with Azure AI Foundry](https://learn.microsoft.com/en-us/azure/ai-foundry/how-to/deploy-models-openai). +**Note**: These samples use Azure OpenAI models. For more information, see [how to deploy Azure OpenAI models with Microsoft Foundry](https://learn.microsoft.com/en-us/azure/ai-foundry/how-to/deploy-models-openai). **Note**: These samples use `DefaultAzureCredential` for authentication. Make sure you're authenticated with Azure (e.g., via `az login`, or environment variables). For more information, see the [Azure Identity documentation](https://learn.microsoft.com/python/api/azure-identity/azure.identity.defaultazurecredential). diff --git a/python/packages/anthropic/AGENTS.md b/python/packages/anthropic/AGENTS.md index ce70e9d9a0e..0b7fcf8dcf4 100644 --- a/python/packages/anthropic/AGENTS.md +++ b/python/packages/anthropic/AGENTS.md @@ -5,7 +5,7 @@ Integration with Anthropic's Claude API. ## Main Classes - **`AnthropicClient`** - Chat client for Anthropic Claude models -- **`AnthropicFoundryClient`** - Anthropic chat client for Azure AI Foundry's Anthropic-compatible endpoint +- **`AnthropicFoundryClient`** - Anthropic chat client for Microsoft Foundry's Anthropic-compatible endpoint - **`AnthropicBedrockClient`** - Anthropic chat client for Amazon Bedrock - **`AnthropicVertexClient`** - Anthropic chat client for Google Vertex AI - **`AnthropicChatOptions`** - Options TypedDict for Anthropic-specific parameters diff --git a/python/packages/anthropic/README.md b/python/packages/anthropic/README.md index 41aec96e698..8f05c37a7c8 100644 --- a/python/packages/anthropic/README.md +++ b/python/packages/anthropic/README.md @@ -12,7 +12,7 @@ The Anthropic integration enables communication with the Anthropic API, allowing The package also includes Anthropic-hosted transport wrappers for: -- Azure AI Foundry via `AnthropicFoundryClient` +- Microsoft Foundry via `AnthropicFoundryClient` - Amazon Bedrock via `AnthropicBedrockClient` - Google Vertex AI via `AnthropicVertexClient` diff --git a/python/packages/azure-contentunderstanding/agent_framework_azure_contentunderstanding/_context_provider.py b/python/packages/azure-contentunderstanding/agent_framework_azure_contentunderstanding/_context_provider.py index 02d16d4f413..22b5cef5797 100644 --- a/python/packages/azure-contentunderstanding/agent_framework_azure_contentunderstanding/_context_provider.py +++ b/python/packages/azure-contentunderstanding/agent_framework_azure_contentunderstanding/_context_provider.py @@ -90,7 +90,7 @@ class ContentUnderstandingSettings(TypedDict, total=False): ``AZURE_CONTENTUNDERSTANDING_``. Keys: - endpoint: Azure AI Foundry endpoint URL. + endpoint: Microsoft Foundry endpoint URL. Can be set via environment variable ``AZURE_CONTENTUNDERSTANDING_ENDPOINT``. """ @@ -108,7 +108,7 @@ class ContentUnderstandingContextProvider(ContextProvider): support it. Args: - endpoint: Azure AI Foundry endpoint URL + endpoint: Microsoft Foundry endpoint URL (e.g., ``"https://.services.ai.azure.com/"``). Can also be set via environment variable ``AZURE_CONTENTUNDERSTANDING_ENDPOINT``. diff --git a/python/packages/azure-contentunderstanding/agent_framework_azure_contentunderstanding/_file_search.py b/python/packages/azure-contentunderstanding/agent_framework_azure_contentunderstanding/_file_search.py index 51ec31a5497..08096a03d6c 100644 --- a/python/packages/azure-contentunderstanding/agent_framework_azure_contentunderstanding/_file_search.py +++ b/python/packages/azure-contentunderstanding/agent_framework_azure_contentunderstanding/_file_search.py @@ -87,7 +87,7 @@ class OpenAIFileSearchBackend(_OpenAICompatBackend): class FoundryFileSearchBackend(_OpenAICompatBackend): - """File search backend for Azure AI Foundry. + """File search backend for Microsoft Foundry. Use with ``FoundryChatClient``. Requires the OpenAI-compatible client obtained from ``FoundryChatClient.client`` (i.e., diff --git a/python/packages/azure-contentunderstanding/agent_framework_azure_contentunderstanding/_models.py b/python/packages/azure-contentunderstanding/agent_framework_azure_contentunderstanding/_models.py index aa896fbcbbb..652b5403d20 100644 --- a/python/packages/azure-contentunderstanding/agent_framework_azure_contentunderstanding/_models.py +++ b/python/packages/azure-contentunderstanding/agent_framework_azure_contentunderstanding/_models.py @@ -107,7 +107,7 @@ def from_foundry( vector_store_id: str, file_search_tool: Any, ) -> FileSearchConfig: - """Create a config for Azure AI Foundry (``FoundryChatClient``). + """Create a config for Microsoft Foundry (``FoundryChatClient``). Args: client: The OpenAI-compatible client from ``FoundryChatClient.client``. diff --git a/python/packages/azure-contentunderstanding/samples/01-get-started/01_document_qa.py b/python/packages/azure-contentunderstanding/samples/01-get-started/01_document_qa.py index c0261a10ba8..e77794e1e02 100644 --- a/python/packages/azure-contentunderstanding/samples/01-get-started/01_document_qa.py +++ b/python/packages/azure-contentunderstanding/samples/01-get-started/01_document_qa.py @@ -30,7 +30,7 @@ scanned PDFs, handwritten content, and complex layouts. Environment variables: - FOUNDRY_PROJECT_ENDPOINT — Azure AI Foundry project endpoint + FOUNDRY_PROJECT_ENDPOINT — Microsoft Foundry project endpoint FOUNDRY_MODEL — Model deployment name (e.g. gpt-4.1) AZURE_CONTENTUNDERSTANDING_ENDPOINT — CU endpoint URL """ diff --git a/python/packages/azure-contentunderstanding/samples/01-get-started/02_multi_turn_session.py b/python/packages/azure-contentunderstanding/samples/01-get-started/02_multi_turn_session.py index f95c81943a1..8f61109e191 100644 --- a/python/packages/azure-contentunderstanding/samples/01-get-started/02_multi_turn_session.py +++ b/python/packages/azure-contentunderstanding/samples/01-get-started/02_multi_turn_session.py @@ -37,7 +37,7 @@ history (injected in Turn 1) to answer precisely Environment variables: - FOUNDRY_PROJECT_ENDPOINT — Azure AI Foundry project endpoint + FOUNDRY_PROJECT_ENDPOINT — Microsoft Foundry project endpoint FOUNDRY_MODEL — Model deployment name (e.g. gpt-4.1) AZURE_CONTENTUNDERSTANDING_ENDPOINT — CU endpoint URL """ diff --git a/python/packages/azure-contentunderstanding/samples/01-get-started/03_multimodal_chat.py b/python/packages/azure-contentunderstanding/samples/01-get-started/03_multimodal_chat.py index 19aecf8f69b..3ff2c19e7eb 100644 --- a/python/packages/azure-contentunderstanding/samples/01-get-started/03_multimodal_chat.py +++ b/python/packages/azure-contentunderstanding/samples/01-get-started/03_multimodal_chat.py @@ -35,7 +35,7 @@ - Video → prebuilt-videoSearch Environment variables: - FOUNDRY_PROJECT_ENDPOINT — Azure AI Foundry project endpoint + FOUNDRY_PROJECT_ENDPOINT — Microsoft Foundry project endpoint FOUNDRY_MODEL — Model deployment name (e.g. gpt-4.1) AZURE_CONTENTUNDERSTANDING_ENDPOINT — CU endpoint URL """ diff --git a/python/packages/azure-contentunderstanding/samples/01-get-started/04_invoice_processing.py b/python/packages/azure-contentunderstanding/samples/01-get-started/04_invoice_processing.py index 9d2ea24581b..3cb80b4b2cc 100644 --- a/python/packages/azure-contentunderstanding/samples/01-get-started/04_invoice_processing.py +++ b/python/packages/azure-contentunderstanding/samples/01-get-started/04_invoice_processing.py @@ -34,7 +34,7 @@ fields, not summarize document text. Environment variables: - FOUNDRY_PROJECT_ENDPOINT — Azure AI Foundry project endpoint + FOUNDRY_PROJECT_ENDPOINT — Microsoft Foundry project endpoint FOUNDRY_MODEL — Model deployment name (e.g. gpt-4.1) AZURE_CONTENTUNDERSTANDING_ENDPOINT — CU endpoint URL """ diff --git a/python/packages/azure-contentunderstanding/samples/01-get-started/05_large_doc_file_search.py b/python/packages/azure-contentunderstanding/samples/01-get-started/05_large_doc_file_search.py index ba3802bf54c..0520414bf25 100644 --- a/python/packages/azure-contentunderstanding/samples/01-get-started/05_large_doc_file_search.py +++ b/python/packages/azure-contentunderstanding/samples/01-get-started/05_large_doc_file_search.py @@ -55,7 +55,7 @@ https://learn.microsoft.com/azure/ai-services/content-understanding/service-limits#input-file-limits Environment variables: - FOUNDRY_PROJECT_ENDPOINT — Azure AI Foundry project endpoint + FOUNDRY_PROJECT_ENDPOINT — Microsoft Foundry project endpoint FOUNDRY_MODEL — Model deployment name (e.g. gpt-4.1) AZURE_CONTENTUNDERSTANDING_ENDPOINT — CU endpoint URL """ diff --git a/python/packages/azure-contentunderstanding/samples/02-devui/01-multimodal_agent/agent.py b/python/packages/azure-contentunderstanding/samples/02-devui/01-multimodal_agent/agent.py index 904ff3080e6..8f49a6c49ad 100644 --- a/python/packages/azure-contentunderstanding/samples/02-devui/01-multimodal_agent/agent.py +++ b/python/packages/azure-contentunderstanding/samples/02-devui/01-multimodal_agent/agent.py @@ -10,7 +10,7 @@ handwritten content, audio transcription, and video analysis. Required environment variables: - FOUNDRY_PROJECT_ENDPOINT — Azure AI Foundry project endpoint + FOUNDRY_PROJECT_ENDPOINT — Microsoft Foundry project endpoint FOUNDRY_MODEL — Model deployment name (e.g. gpt-4.1) AZURE_CONTENTUNDERSTANDING_ENDPOINT — CU endpoint URL diff --git a/python/packages/azure-contentunderstanding/samples/02-devui/02-file_search_agent/azure_openai_backend/agent.py b/python/packages/azure-contentunderstanding/samples/02-devui/02-file_search_agent/azure_openai_backend/agent.py index aae18261738..2e3161fabd6 100644 --- a/python/packages/azure-contentunderstanding/samples/02-devui/02-file_search_agent/azure_openai_backend/agent.py +++ b/python/packages/azure-contentunderstanding/samples/02-devui/02-file_search_agent/azure_openai_backend/agent.py @@ -22,7 +22,7 @@ - Video → prebuilt-videoSearch Required environment variables: - FOUNDRY_PROJECT_ENDPOINT — Azure AI Foundry project endpoint + FOUNDRY_PROJECT_ENDPOINT — Microsoft Foundry project endpoint FOUNDRY_MODEL — Model deployment name (e.g. gpt-4.1) AZURE_CONTENTUNDERSTANDING_ENDPOINT — CU endpoint URL diff --git a/python/packages/azure-contentunderstanding/samples/02-devui/02-file_search_agent/foundry_backend/agent.py b/python/packages/azure-contentunderstanding/samples/02-devui/02-file_search_agent/foundry_backend/agent.py index b02cda256b1..9b9c3820c15 100644 --- a/python/packages/azure-contentunderstanding/samples/02-devui/02-file_search_agent/foundry_backend/agent.py +++ b/python/packages/azure-contentunderstanding/samples/02-devui/02-file_search_agent/foundry_backend/agent.py @@ -1,5 +1,5 @@ # Copyright (c) Microsoft. All rights reserved. -"""DevUI Multi-Modal Agent — CU extraction + file_search RAG via Azure AI Foundry. +"""DevUI Multi-Modal Agent — CU extraction + file_search RAG via Microsoft Foundry. This agent combines Azure Content Understanding with Foundry's file_search for token-efficient RAG over large or multi-modal documents. @@ -21,7 +21,7 @@ - Video → prebuilt-videoSearch Required environment variables: - FOUNDRY_PROJECT_ENDPOINT — Azure AI Foundry project endpoint + FOUNDRY_PROJECT_ENDPOINT — Microsoft Foundry project endpoint FOUNDRY_MODEL — Model deployment name (e.g. gpt-4.1) AZURE_CONTENTUNDERSTANDING_ENDPOINT — CU endpoint URL diff --git a/python/packages/azure-cosmos/README.md b/python/packages/azure-cosmos/README.md index a03c5c6f93e..e458bcd9eb7 100644 --- a/python/packages/azure-cosmos/README.md +++ b/python/packages/azure-cosmos/README.md @@ -123,4 +123,4 @@ portal with this partition key configuration. See `samples/03-workflows/checkpoint/cosmos_workflow_checkpointing.py` for a standalone example, or `samples/03-workflows/checkpoint/cosmos_workflow_checkpointing_foundry.py` for an end-to-end -example with Azure AI Foundry agents. +example with Microsoft Foundry agents. diff --git a/python/packages/core/AGENTS.md b/python/packages/core/AGENTS.md index d8161022b7e..6c7fae3c769 100644 --- a/python/packages/core/AGENTS.md +++ b/python/packages/core/AGENTS.md @@ -172,7 +172,7 @@ agent_framework/ ### Foundry (`foundry/`) -- **`FoundryChatClient`** - Chat client for Azure AI Foundry project endpoints +- **`FoundryChatClient`** - Chat client for Microsoft Foundry project endpoints ## Key Patterns diff --git a/python/packages/core/README.md b/python/packages/core/README.md index b4039e69500..5ac622551f7 100644 --- a/python/packages/core/README.md +++ b/python/packages/core/README.md @@ -14,7 +14,7 @@ Highlights ```bash pip install agent-framework-core -# Optional: Add Azure AI Foundry integration +# Optional: Add Microsoft Foundry integration pip install agent-framework-foundry # Optional: Add OpenAI integration pip install agent-framework-openai diff --git a/python/packages/core/agent_framework/_evaluation.py b/python/packages/core/agent_framework/_evaluation.py index 19e6c0f12b8..0cb58034673 100644 --- a/python/packages/core/agent_framework/_evaluation.py +++ b/python/packages/core/agent_framework/_evaluation.py @@ -3,7 +3,7 @@ """Provider-agnostic evaluation framework for Microsoft Agent Framework. Defines the core evaluation types and orchestration functions that work with -any evaluation provider (Azure AI Foundry, local evaluators, third-party +any evaluation provider (Microsoft Foundry, local evaluators, third-party libraries, etc.). Also includes ``LocalEvaluator`` and built-in check functions for fast, API-free evaluation during inner-loop development and CI smoke tests. @@ -683,7 +683,7 @@ class RubricScore: class Evaluator(Protocol): """Protocol for evaluation providers. - Any evaluation backend (Azure AI Foundry, local LLM-as-judge, custom + Any evaluation backend (Microsoft Foundry, local LLM-as-judge, custom scorers, etc.) implements this protocol. The provider encapsulates all connection details, evaluator selection, and execution logic. diff --git a/python/packages/core/agent_framework/observability.py b/python/packages/core/agent_framework/observability.py index cc6aa771f8a..192f8c585f7 100644 --- a/python/packages/core/agent_framework/observability.py +++ b/python/packages/core/agent_framework/observability.py @@ -709,7 +709,7 @@ class ObservabilitySettings: Can be set via environment variable ENABLE_SENSITIVE_DATA. enable_console_exporters: Enable console exporters for traces, logs, and metrics. Default is False. Can be set via environment variable ENABLE_CONSOLE_EXPORTERS. - vs_code_extension_port: The port the AI Toolkit or Azure AI Foundry VS Code extensions are listening on. + vs_code_extension_port: The port the AI Toolkit or Microsoft Foundry VS Code extensions are listening on. Default is None. Can be set via environment variable VS_CODE_EXTENSION_PORT. @@ -1225,7 +1225,7 @@ def configure_otel_providers( views: Optional list of OpenTelemetry views for metrics configuration. Views allow filtering and customizing which metrics are collected. Default is None (empty list). - vs_code_extension_port: The port the AI Toolkit or Azure AI Foundry VS Code + vs_code_extension_port: The port the AI Toolkit or Microsoft Foundry VS Code extensions are listening on. When set, additional OTEL exporters will be created with endpoint `http://localhost:{vs_code_extension_port}`. Overrides the environment variable VS_CODE_EXTENSION_PORT if set. Default is None. diff --git a/python/packages/declarative/agent_framework_declarative/_workflows/_executors_agents.py b/python/packages/declarative/agent_framework_declarative/_workflows/_executors_agents.py index 8b479304ccf..87d80ab32c9 100644 --- a/python/packages/declarative/agent_framework_declarative/_workflows/_executors_agents.py +++ b/python/packages/declarative/agent_framework_declarative/_workflows/_executors_agents.py @@ -2,7 +2,7 @@ """Agent invocation executors for declarative workflows. -These executors handle invoking Azure AI Foundry agents and other AI agents, +These executors handle invoking Microsoft Foundry agents and other AI agents, supporting both streaming responses and human-in-loop patterns. Aligned with .NET's InvokeAzureAgentExecutor behavior including: @@ -371,7 +371,7 @@ def _normalize_variable_path(variable: str) -> str: class InvokeAzureAgentExecutor(DeclarativeActionExecutor): - """Executor that invokes an Azure AI Foundry agent. + """Executor that invokes a Microsoft Foundry agent. This executor supports both Python-style and .NET-style YAML schemas: diff --git a/python/packages/devui/agent_framework_devui/ui/assets/index.js b/python/packages/devui/agent_framework_devui/ui/assets/index.js index 97634f8d9fe..72d19c5d634 100644 --- a/python/packages/devui/agent_framework_devui/ui/assets/index.js +++ b/python/packages/devui/agent_framework_devui/ui/assets/index.js @@ -117,7 +117,7 @@ az acr build --registry myregistry \\ --registry-server myregistry.azurecr.io \\ --env-vars OPENAI_API_KEY=secretref:openai-key OPENAI_CHAT_COMPLETION_MODEL=gpt-4o-mini`})]}),o.jsxs("div",{className:"border-l-2 border-primary pl-3",children:[o.jsxs("div",{className:"flex items-center gap-2 mb-1",children:[o.jsx("div",{className:"w-5 h-5 rounded-full bg-primary text-primary-foreground flex items-center justify-center text-xs font-bold",children:"5"}),o.jsx("h5",{className:"font-medium text-sm",children:"Get Application URL"})]}),o.jsx("pre",{className:"bg-muted p-2 rounded text-xs overflow-x-auto border mt-2",children:`az containerapp show --name ${r.toLowerCase()}-app \\ --resource-group myResourceGroup \\ - --query properties.configuration.ingress.fqdn`})]})]})]}),o.jsxs("div",{className:"bg-blue-50 dark:bg-blue-950/50 border border-blue-200 dark:border-blue-800 rounded-md p-3",children:[o.jsx("h4",{className:"text-sm font-semibold mb-2",children:"Learn More"}),o.jsx("p",{className:"text-xs text-muted-foreground mb-3",children:"Explore Azure Container Apps documentation for advanced features like scaling, monitoring, and CI/CD integration."}),o.jsx(He,{size:"sm",variant:"outline",className:"w-full",asChild:!0,children:o.jsxs("a",{href:"https://learn.microsoft.com/azure/container-apps/",target:"_blank",rel:"noopener noreferrer",children:[o.jsx(Hu,{className:"h-3 w-3 mr-1"}),"View Azure Container Apps Documentation"]})})]})]})]})]})})})]})})}function uD({className:e,...n}){return o.jsx("div",{"data-slot":"card",className:Qe("bg-card text-card-foreground flex flex-col gap-6 rounded border py-6 shadow-sm",e),...n})}function dD({className:e,...n}){return o.jsx("div",{"data-slot":"card-header",className:Qe("@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-1.5 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6",e),...n})}function _2({className:e,...n}){return o.jsx("div",{"data-slot":"card-title",className:Qe("leading-none font-semibold",e),...n})}function fD({className:e,...n}){return o.jsx("div",{"data-slot":"card-description",className:Qe("text-muted-foreground text-sm",e),...n})}function mD({className:e,...n}){return o.jsx("div",{"data-slot":"card-content",className:Qe("px-6",e),...n})}function hD({className:e,...n}){return o.jsx("div",{"data-slot":"card-footer",className:Qe("flex items-center px-6 [.border-t]:pt-6",e),...n})}const kr=[{id:"foundry-weather-agent",name:"Azure AI Weather Agent",description:"Weather agent using Azure AI Agent (Foundry) with Azure CLI authentication",type:"agent",url:"https://raw.githubusercontent.com/microsoft/agent-framework/main/python/samples/02-agents/devui/foundry_agent/agent.py",tags:["azure-ai","foundry","tools"],author:"Microsoft",difficulty:"beginner",features:["Azure AI Agent integration","Azure CLI authentication","Mock weather tools"],requiredEnvVars:[{name:"FOUNDRY_PROJECT_ENDPOINT",description:"Azure AI Foundry project endpoint URL",required:!0,example:"https://your-project.api.azureml.ms"},{name:"FOUNDRY_MODEL",description:"Name of the deployed model in Azure AI Foundry",required:!0,example:"gpt-4o"}]},{id:"weather-agent-azure",name:"Azure OpenAI Weather Agent",description:"Weather agent using Azure OpenAI with API key authentication",type:"agent",url:"https://raw.githubusercontent.com/microsoft/agent-framework/main/python/samples/02-agents/devui/weather_agent_azure/agent.py",tags:["azure","openai","tools"],author:"Microsoft",difficulty:"beginner",features:["Azure OpenAI integration","API key authentication","Function calling","Mock weather tools"],requiredEnvVars:[{name:"AZURE_OPENAI_API_KEY",description:"Azure OpenAI API key",required:!0},{name:"AZURE_OPENAI_MODEL",description:"Name of the deployed model in Azure OpenAI",required:!0,example:"gpt-4o"},{name:"AZURE_OPENAI_ENDPOINT",description:"Azure OpenAI endpoint URL",required:!0,example:"https://your-resource.openai.azure.com"}]},{id:"spam-workflow",name:"Spam Detection Workflow",description:"5-step workflow demonstrating email spam detection with branching logic",type:"workflow",url:"https://raw.githubusercontent.com/microsoft/agent-framework/main/python/samples/02-agents/devui/spam_workflow/workflow.py",tags:["workflow","branching","multi-step"],author:"Microsoft",difficulty:"beginner",features:["Sequential execution","Conditional branching","Mock spam detection"]},{id:"fanout-workflow",name:"Complex Fan-In/Fan-Out Workflow",description:"Advanced data processing workflow with parallel validation, transformation, and quality assurance stages",type:"workflow",url:"https://raw.githubusercontent.com/microsoft/agent-framework/main/python/samples/02-agents/devui/fanout_workflow/workflow.py",tags:["workflow","fan-out","fan-in","parallel"],author:"Microsoft",difficulty:"advanced",features:["Fan-out pattern","Parallel execution","Complex state management","Multi-stage processing"]}];kr.filter(e=>e.type==="agent"),kr.filter(e=>e.type==="workflow"),kr.filter(e=>e.difficulty==="beginner"),kr.filter(e=>e.difficulty==="intermediate"),kr.filter(e=>e.difficulty==="advanced");const pD=e=>{switch(e){case"beginner":return"bg-green-100 text-green-700 border-green-200";case"intermediate":return"bg-yellow-100 text-yellow-700 border-yellow-200";case"advanced":return"bg-red-100 text-red-700 border-red-200";default:return"bg-gray-100 text-gray-700 border-gray-200"}},S2=w.forwardRef(({className:e,...n},r)=>o.jsx("div",{ref:r,role:"alert",className:Qe("relative w-full rounded-lg border p-4 [&>svg~*]:pl-7 [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground",e),...n}));S2.displayName="Alert";const E2=w.forwardRef(({className:e,...n},r)=>o.jsx("h5",{ref:r,className:Qe("mb-1 font-medium leading-none tracking-tight",e),...n}));E2.displayName="AlertTitle";const C2=w.forwardRef(({className:e,...n},r)=>o.jsx("div",{ref:r,className:Qe("text-sm [&_p]:leading-relaxed",e),...n}));C2.displayName="AlertDescription";function k2({children:e,copyable:n=!1}){const[r,a]=w.useState(!1),l=()=>{navigator.clipboard.writeText(e),a(!0),setTimeout(()=>a(!1),2e3)};return o.jsxs("div",{className:"relative",children:[o.jsx("pre",{className:"bg-muted p-3 rounded-md text-sm overflow-x-auto font-mono",children:o.jsx("code",{children:e})}),n&&o.jsx(He,{variant:"ghost",size:"sm",className:"absolute top-2 right-2 h-6 w-6 p-0",onClick:l,children:r?o.jsx(So,{className:"h-3 w-3"}):o.jsx(mo,{className:"h-3 w-3"})})]})}function lu({number:e,title:n,description:r,code:a,action:l,copyable:c=!1}){return o.jsxs("div",{className:"flex gap-4",children:[o.jsx("div",{className:"flex-shrink-0",children:o.jsx("div",{className:"flex h-8 w-8 items-center justify-center rounded-full bg-primary text-primary-foreground font-semibold",children:e})}),o.jsxs("div",{className:"flex-1 space-y-2",children:[o.jsx("h4",{className:"font-semibold",children:n}),r&&o.jsx("p",{className:"text-sm text-muted-foreground",children:r}),a&&o.jsx(k2,{copyable:c,children:a}),l&&o.jsx("div",{children:l})]})]})}function gD({sample:e,open:n,onOpenChange:r}){const a=e.requiredEnvVars&&e.requiredEnvVars.length>0,l=a?0:-1;return o.jsx(Lr,{open:n,onOpenChange:r,children:o.jsxs(Pr,{className:"max-w-3xl",children:[o.jsxs($r,{className:"px-6 pt-6 pb-2",children:[o.jsxs(Hr,{children:["Setup: ",e.name]}),o.jsxs($R,{children:["Follow these steps to run this sample ",e.type," locally"]})]}),o.jsx("div",{className:"px-6 pb-6",children:o.jsx(Qn,{className:"h-[500px]",children:o.jsxs("div",{className:"space-y-6 pr-4",children:[o.jsx(lu,{number:1,title:"Download the sample file",action:o.jsx(He,{asChild:!0,size:"sm",children:o.jsxs("a",{href:e.url,download:`${e.id}.py`,target:"_blank",rel:"noopener noreferrer",children:[o.jsx($u,{className:"h-4 w-4 mr-2"}),"Download ",e.id,".py"]})})}),o.jsx(lu,{number:2,title:"Create a project folder",description:"Create a dedicated folder for this sample and move the downloaded file there:",code:`mkdir -p ~/my-agents/${e.id} + --query properties.configuration.ingress.fqdn`})]})]})]}),o.jsxs("div",{className:"bg-blue-50 dark:bg-blue-950/50 border border-blue-200 dark:border-blue-800 rounded-md p-3",children:[o.jsx("h4",{className:"text-sm font-semibold mb-2",children:"Learn More"}),o.jsx("p",{className:"text-xs text-muted-foreground mb-3",children:"Explore Azure Container Apps documentation for advanced features like scaling, monitoring, and CI/CD integration."}),o.jsx(He,{size:"sm",variant:"outline",className:"w-full",asChild:!0,children:o.jsxs("a",{href:"https://learn.microsoft.com/azure/container-apps/",target:"_blank",rel:"noopener noreferrer",children:[o.jsx(Hu,{className:"h-3 w-3 mr-1"}),"View Azure Container Apps Documentation"]})})]})]})]})]})})})]})})}function uD({className:e,...n}){return o.jsx("div",{"data-slot":"card",className:Qe("bg-card text-card-foreground flex flex-col gap-6 rounded border py-6 shadow-sm",e),...n})}function dD({className:e,...n}){return o.jsx("div",{"data-slot":"card-header",className:Qe("@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-1.5 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6",e),...n})}function _2({className:e,...n}){return o.jsx("div",{"data-slot":"card-title",className:Qe("leading-none font-semibold",e),...n})}function fD({className:e,...n}){return o.jsx("div",{"data-slot":"card-description",className:Qe("text-muted-foreground text-sm",e),...n})}function mD({className:e,...n}){return o.jsx("div",{"data-slot":"card-content",className:Qe("px-6",e),...n})}function hD({className:e,...n}){return o.jsx("div",{"data-slot":"card-footer",className:Qe("flex items-center px-6 [.border-t]:pt-6",e),...n})}const kr=[{id:"foundry-weather-agent",name:"Azure AI Weather Agent",description:"Weather agent using Azure AI Agent (Foundry) with Azure CLI authentication",type:"agent",url:"https://raw.githubusercontent.com/microsoft/agent-framework/main/python/samples/02-agents/devui/foundry_agent/agent.py",tags:["azure-ai","foundry","tools"],author:"Microsoft",difficulty:"beginner",features:["Azure AI Agent integration","Azure CLI authentication","Mock weather tools"],requiredEnvVars:[{name:"FOUNDRY_PROJECT_ENDPOINT",description:"Microsoft Foundry project endpoint URL",required:!0,example:"https://your-project.api.azureml.ms"},{name:"FOUNDRY_MODEL",description:"Name of the deployed model in Microsoft Foundry",required:!0,example:"gpt-4o"}]},{id:"weather-agent-azure",name:"Azure OpenAI Weather Agent",description:"Weather agent using Azure OpenAI with API key authentication",type:"agent",url:"https://raw.githubusercontent.com/microsoft/agent-framework/main/python/samples/02-agents/devui/weather_agent_azure/agent.py",tags:["azure","openai","tools"],author:"Microsoft",difficulty:"beginner",features:["Azure OpenAI integration","API key authentication","Function calling","Mock weather tools"],requiredEnvVars:[{name:"AZURE_OPENAI_API_KEY",description:"Azure OpenAI API key",required:!0},{name:"AZURE_OPENAI_MODEL",description:"Name of the deployed model in Azure OpenAI",required:!0,example:"gpt-4o"},{name:"AZURE_OPENAI_ENDPOINT",description:"Azure OpenAI endpoint URL",required:!0,example:"https://your-resource.openai.azure.com"}]},{id:"spam-workflow",name:"Spam Detection Workflow",description:"5-step workflow demonstrating email spam detection with branching logic",type:"workflow",url:"https://raw.githubusercontent.com/microsoft/agent-framework/main/python/samples/02-agents/devui/spam_workflow/workflow.py",tags:["workflow","branching","multi-step"],author:"Microsoft",difficulty:"beginner",features:["Sequential execution","Conditional branching","Mock spam detection"]},{id:"fanout-workflow",name:"Complex Fan-In/Fan-Out Workflow",description:"Advanced data processing workflow with parallel validation, transformation, and quality assurance stages",type:"workflow",url:"https://raw.githubusercontent.com/microsoft/agent-framework/main/python/samples/02-agents/devui/fanout_workflow/workflow.py",tags:["workflow","fan-out","fan-in","parallel"],author:"Microsoft",difficulty:"advanced",features:["Fan-out pattern","Parallel execution","Complex state management","Multi-stage processing"]}];kr.filter(e=>e.type==="agent"),kr.filter(e=>e.type==="workflow"),kr.filter(e=>e.difficulty==="beginner"),kr.filter(e=>e.difficulty==="intermediate"),kr.filter(e=>e.difficulty==="advanced");const pD=e=>{switch(e){case"beginner":return"bg-green-100 text-green-700 border-green-200";case"intermediate":return"bg-yellow-100 text-yellow-700 border-yellow-200";case"advanced":return"bg-red-100 text-red-700 border-red-200";default:return"bg-gray-100 text-gray-700 border-gray-200"}},S2=w.forwardRef(({className:e,...n},r)=>o.jsx("div",{ref:r,role:"alert",className:Qe("relative w-full rounded-lg border p-4 [&>svg~*]:pl-7 [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground",e),...n}));S2.displayName="Alert";const E2=w.forwardRef(({className:e,...n},r)=>o.jsx("h5",{ref:r,className:Qe("mb-1 font-medium leading-none tracking-tight",e),...n}));E2.displayName="AlertTitle";const C2=w.forwardRef(({className:e,...n},r)=>o.jsx("div",{ref:r,className:Qe("text-sm [&_p]:leading-relaxed",e),...n}));C2.displayName="AlertDescription";function k2({children:e,copyable:n=!1}){const[r,a]=w.useState(!1),l=()=>{navigator.clipboard.writeText(e),a(!0),setTimeout(()=>a(!1),2e3)};return o.jsxs("div",{className:"relative",children:[o.jsx("pre",{className:"bg-muted p-3 rounded-md text-sm overflow-x-auto font-mono",children:o.jsx("code",{children:e})}),n&&o.jsx(He,{variant:"ghost",size:"sm",className:"absolute top-2 right-2 h-6 w-6 p-0",onClick:l,children:r?o.jsx(So,{className:"h-3 w-3"}):o.jsx(mo,{className:"h-3 w-3"})})]})}function lu({number:e,title:n,description:r,code:a,action:l,copyable:c=!1}){return o.jsxs("div",{className:"flex gap-4",children:[o.jsx("div",{className:"flex-shrink-0",children:o.jsx("div",{className:"flex h-8 w-8 items-center justify-center rounded-full bg-primary text-primary-foreground font-semibold",children:e})}),o.jsxs("div",{className:"flex-1 space-y-2",children:[o.jsx("h4",{className:"font-semibold",children:n}),r&&o.jsx("p",{className:"text-sm text-muted-foreground",children:r}),a&&o.jsx(k2,{copyable:c,children:a}),l&&o.jsx("div",{children:l})]})]})}function gD({sample:e,open:n,onOpenChange:r}){const a=e.requiredEnvVars&&e.requiredEnvVars.length>0,l=a?0:-1;return o.jsx(Lr,{open:n,onOpenChange:r,children:o.jsxs(Pr,{className:"max-w-3xl",children:[o.jsxs($r,{className:"px-6 pt-6 pb-2",children:[o.jsxs(Hr,{children:["Setup: ",e.name]}),o.jsxs($R,{children:["Follow these steps to run this sample ",e.type," locally"]})]}),o.jsx("div",{className:"px-6 pb-6",children:o.jsx(Qn,{className:"h-[500px]",children:o.jsxs("div",{className:"space-y-6 pr-4",children:[o.jsx(lu,{number:1,title:"Download the sample file",action:o.jsx(He,{asChild:!0,size:"sm",children:o.jsxs("a",{href:e.url,download:`${e.id}.py`,target:"_blank",rel:"noopener noreferrer",children:[o.jsx($u,{className:"h-4 w-4 mr-2"}),"Download ",e.id,".py"]})})}),o.jsx(lu,{number:2,title:"Create a project folder",description:"Create a dedicated folder for this sample and move the downloaded file there:",code:`mkdir -p ~/my-agents/${e.id} mv ~/Downloads/${e.id}.py ~/my-agents/${e.id}/`,copyable:!0}),a&&o.jsx(lu,{number:3,title:"Set up environment variables",description:"Create a .env file in the project folder with these required variables:",code:e.requiredEnvVars.map(c=>`${c.name}=${c.example||"your-value-here"} # ${c.description}`).join(` diff --git a/python/packages/devui/frontend/src/data/gallery/sample-entities.ts b/python/packages/devui/frontend/src/data/gallery/sample-entities.ts index 9509562dfc4..a4d201c13b8 100644 --- a/python/packages/devui/frontend/src/data/gallery/sample-entities.ts +++ b/python/packages/devui/frontend/src/data/gallery/sample-entities.ts @@ -42,13 +42,13 @@ export const SAMPLE_ENTITIES: SampleEntity[] = [ requiredEnvVars: [ { name: "FOUNDRY_PROJECT_ENDPOINT", - description: "Azure AI Foundry project endpoint URL", + description: "Microsoft Foundry project endpoint URL", required: true, example: "https://your-project.api.azureml.ms", }, { name: "FOUNDRY_MODEL", - description: "Name of the deployed model in Azure AI Foundry", + description: "Name of the deployed model in Microsoft Foundry", required: true, example: "gpt-4o", }, diff --git a/python/packages/foundry/agent_framework_foundry/_memory_provider.py b/python/packages/foundry/agent_framework_foundry/_memory_provider.py index 41868cd396c..0397b792947 100644 --- a/python/packages/foundry/agent_framework_foundry/_memory_provider.py +++ b/python/packages/foundry/agent_framework_foundry/_memory_provider.py @@ -49,7 +49,7 @@ class FoundryProjectSettings(TypedDict, total=False): class FoundryMemoryProvider(ContextProvider): """Foundry Memory context provider using the new ContextProvider hooks pattern. - Integrates Azure AI Foundry Memory Store for persistent semantic memory, + Integrates Microsoft Foundry Memory Store for persistent semantic memory, searching and storing memories via the Azure AI Projects SDK. Args: diff --git a/python/packages/foundry/tests/foundry/test_foundry_chat_client.py b/python/packages/foundry/tests/foundry/test_foundry_chat_client.py index 571b3afbae2..7c1f920c67a 100644 --- a/python/packages/foundry/tests/foundry/test_foundry_chat_client.py +++ b/python/packages/foundry/tests/foundry/test_foundry_chat_client.py @@ -916,7 +916,7 @@ async def test_integration_web_search() -> None: @pytest.mark.flaky @pytest.mark.integration -@pytest.mark.xfail(reason="Azure AI Foundry stopped accepting array-format output in function_call_output ~2026-04-03") +@pytest.mark.xfail(reason="Microsoft Foundry stopped accepting array-format output in function_call_output ~2026-04-03") @skip_if_foundry_integration_tests_disabled @_with_foundry_debug() async def test_integration_tool_rich_content_image() -> None: diff --git a/python/packages/foundry_hosting/tests/test_responses_int.py b/python/packages/foundry_hosting/tests/test_responses_int.py index 26259157373..4e599ea7d62 100644 --- a/python/packages/foundry_hosting/tests/test_responses_int.py +++ b/python/packages/foundry_hosting/tests/test_responses_int.py @@ -7,7 +7,7 @@ Foundry project endpoint so every test requires valid credentials. Required environment variables: - FOUNDRY_PROJECT_ENDPOINT - The Azure AI Foundry project endpoint URL. + FOUNDRY_PROJECT_ENDPOINT - The Microsoft Foundry project endpoint URL. FOUNDRY_MODEL - The model deployment name (e.g. gpt-4o). """ diff --git a/python/packages/foundry_local/AGENTS.md b/python/packages/foundry_local/AGENTS.md index 91f14ed2300..9f208b8e40e 100644 --- a/python/packages/foundry_local/AGENTS.md +++ b/python/packages/foundry_local/AGENTS.md @@ -1,6 +1,6 @@ # Foundry Local Package (agent-framework-foundry-local) -Integration with Azure AI Foundry Local for local model inference. +Integration with Microsoft Foundry Local for local model inference. ## Main Classes diff --git a/python/samples/01-get-started/01_hello_agent.py b/python/samples/01-get-started/01_hello_agent.py index a1d089f768b..1ed709f4a79 100644 --- a/python/samples/01-get-started/01_hello_agent.py +++ b/python/samples/01-get-started/01_hello_agent.py @@ -10,7 +10,7 @@ Hello Agent — Simplest possible agent This sample creates a minimal agent using FoundryChatClient via an -Azure AI Foundry project endpoint, and runs it in both non-streaming and streaming modes. +Microsoft Foundry project endpoint, and runs it in both non-streaming and streaming modes. There are XML tags in all of the get started samples, those are used to display the same code in the docs repo. """ diff --git a/python/samples/02-agents/a2a/a2a_agent_as_function_tools.py b/python/samples/02-agents/a2a/a2a_agent_as_function_tools.py index 745cb569f08..3ae7403b94a 100644 --- a/python/samples/02-agents/a2a/a2a_agent_as_function_tools.py +++ b/python/samples/02-agents/a2a/a2a_agent_as_function_tools.py @@ -30,7 +30,7 @@ Prerequisites: - Set A2A_AGENT_HOST to the URL of a running A2A server -- Set FOUNDRY_PROJECT_ENDPOINT to your Azure AI Foundry project endpoint +- Set FOUNDRY_PROJECT_ENDPOINT to your Microsoft Foundry project endpoint - Set FOUNDRY_MODEL to the model deployment name (e.g. gpt-4o) To run this sample: diff --git a/python/samples/02-agents/chat_client/README.md b/python/samples/02-agents/chat_client/README.md index b7abb24e55e..80e5b376bb9 100644 --- a/python/samples/02-agents/chat_client/README.md +++ b/python/samples/02-agents/chat_client/README.md @@ -56,7 +56,7 @@ Depending on the selected client, set the appropriate environment variables: - `AZURE_OPENAI_API_KEY` (optional): Azure OpenAI API key if you are not using `AzureCliCredential` **For Foundry client (`foundry_chat`):** -- `FOUNDRY_PROJECT_ENDPOINT`: Your Azure AI Foundry project endpoint +- `FOUNDRY_PROJECT_ENDPOINT`: Your Microsoft Foundry project endpoint - `FOUNDRY_MODEL`: The Foundry deployment used by the sample **For OpenAI clients:** diff --git a/python/samples/02-agents/chat_client/chat_response_cancellation.py b/python/samples/02-agents/chat_client/chat_response_cancellation.py index 76859831d49..0d40dd531a2 100644 --- a/python/samples/02-agents/chat_client/chat_response_cancellation.py +++ b/python/samples/02-agents/chat_client/chat_response_cancellation.py @@ -24,7 +24,7 @@ async def main() -> None: Creates a task for the chat request, waits briefly, then cancels it to show proper cleanup. Configuration: - - FOUNDRY_PROJECT_ENDPOINT: Azure AI Foundry project endpoint URL + - FOUNDRY_PROJECT_ENDPOINT: Microsoft Foundry project endpoint URL - FOUNDRY_MODEL: Model deployment name (e.g. gpt-4o) - Authentication: Run `az login` to authenticate via AzureCliCredential """ diff --git a/python/samples/02-agents/context_providers/README.md b/python/samples/02-agents/context_providers/README.md index e49a472f397..c8ef1dd4372 100644 --- a/python/samples/02-agents/context_providers/README.md +++ b/python/samples/02-agents/context_providers/README.md @@ -7,7 +7,7 @@ These samples demonstrate how to use context providers to enrich agent conversat | File / Folder | Description | |---------------|-------------| | [`simple_context_provider.py`](simple_context_provider.py) | Implement a custom context provider by extending `ContextProvider` to extract and inject structured user information across turns. | -| [`azure_ai_foundry_memory.py`](azure_ai_foundry_memory.py) | Use `FoundryMemoryProvider` to add semantic memory — automatically retrieves, searches, and stores memories via Azure AI Foundry. | +| [`azure_ai_foundry_memory.py`](azure_ai_foundry_memory.py) | Use `FoundryMemoryProvider` to add semantic memory — automatically retrieves, searches, and stores memories via Microsoft Foundry. | | [`file_access_data_processing/`](file_access_data_processing/) | Use `FileAccessProvider` with `FileSystemAgentFileStore` to give an agent read/write/search access to a folder of CSV data files. See its own [README](file_access_data_processing/README.md). | | [`azure_ai_search/`](azure_ai_search/) | Retrieval Augmented Generation (RAG) with Azure AI Search in semantic and agentic modes. See its own [README](azure_ai_search/README.md). | | [`mem0/`](mem0/) | Memory-powered context using the Mem0 integration (open-source and managed). See its own [README](mem0/README.md). | @@ -16,18 +16,18 @@ These samples demonstrate how to use context providers to enrich agent conversat ## Prerequisites **For `simple_context_provider.py`:** -- `FOUNDRY_PROJECT_ENDPOINT`: Your Azure AI Foundry project endpoint +- `FOUNDRY_PROJECT_ENDPOINT`: Your Microsoft Foundry project endpoint - `FOUNDRY_MODEL`: Model deployment name - Azure CLI authentication (`az login`) **For `azure_ai_foundry_memory.py`:** -- `FOUNDRY_PROJECT_ENDPOINT`: Your Azure AI Foundry project endpoint +- `FOUNDRY_PROJECT_ENDPOINT`: Your Microsoft Foundry project endpoint - `FOUNDRY_MODEL`: Chat/responses model deployment name - `AZURE_OPENAI_EMBEDDING_DEPLOYMENT_NAME`: Embedding model deployment name (e.g., `text-embedding-ada-002`) - Azure CLI authentication (`az login`) **For `file_access_data_processing/`:** -- `FOUNDRY_PROJECT_ENDPOINT`: Your Azure AI Foundry project endpoint +- `FOUNDRY_PROJECT_ENDPOINT`: Your Microsoft Foundry project endpoint - `FOUNDRY_MODEL`: Chat model deployment name - Azure CLI authentication (`az login`) diff --git a/python/samples/02-agents/context_providers/azure_ai_search/README.md b/python/samples/02-agents/context_providers/azure_ai_search/README.md index ccb8c63fc78..bd03eb1066a 100644 --- a/python/samples/02-agents/context_providers/azure_ai_search/README.md +++ b/python/samples/02-agents/context_providers/azure_ai_search/README.md @@ -25,13 +25,13 @@ pip install agent-framework-azure-ai-search agent-framework-foundry - [Create Azure AI Search service](https://learn.microsoft.com/azure/search/search-create-service-portal) - [Create and populate a search index](https://learn.microsoft.com/azure/search/search-what-is-an-index) -2. **Azure AI Foundry project** with a model deployment - - [Create Azure AI Foundry project](https://learn.microsoft.com/azure/ai-studio/how-to/create-projects) +2. **Microsoft Foundry project** with a model deployment + - [Create Microsoft Foundry project](https://learn.microsoft.com/azure/ai-studio/how-to/create-projects) - Deploy a model (e.g., GPT-4o) 3. **For Agentic mode only**: Azure OpenAI resource for Knowledge Base model calls - [Create Azure OpenAI resource](https://learn.microsoft.com/azure/ai-services/openai/how-to/create-resource) - - Note: This is separate from your Azure AI Foundry project endpoint + - Note: This is separate from your Microsoft Foundry project endpoint ### Authentication @@ -65,7 +65,7 @@ azure-search-documents`) — no code change. **Common (both modes):** - `AZURE_SEARCH_ENDPOINT`: Your Azure AI Search endpoint (e.g., `https://myservice.search.windows.net`) - `AZURE_SEARCH_INDEX_NAME`: Name of your search index -- `FOUNDRY_PROJECT_ENDPOINT`: Your Azure AI Foundry project endpoint +- `FOUNDRY_PROJECT_ENDPOINT`: Your Microsoft Foundry project endpoint - `FOUNDRY_MODEL`: Model deployment name (e.g., `gpt-4o`, defaults to `gpt-4o`) - `AZURE_SEARCH_API_KEY`: _(Optional)_ Your search API key - if not provided, uses DefaultAzureCredential @@ -277,7 +277,7 @@ async with Agent( ## Additional Resources - [Azure AI Search Documentation](https://learn.microsoft.com/azure/search/) -- [Azure AI Foundry Documentation](https://learn.microsoft.com/azure/ai-studio/) +- [Microsoft Foundry Documentation](https://learn.microsoft.com/azure/ai-studio/) - [RAG with Azure AI Search](https://learn.microsoft.com/azure/search/retrieval-augmented-generation-overview) - [Semantic Search in Azure AI Search](https://learn.microsoft.com/azure/search/semantic-search-overview) - [Knowledge Bases in Azure AI Search](https://learn.microsoft.com/azure/search/knowledge-store-concept-intro) diff --git a/python/samples/02-agents/context_providers/azure_ai_search/search_context_agentic.py b/python/samples/02-agents/context_providers/azure_ai_search/search_context_agentic.py index 0860fb20447..b7fcd5624ec 100644 --- a/python/samples/02-agents/context_providers/azure_ai_search/search_context_agentic.py +++ b/python/samples/02-agents/context_providers/azure_ai_search/search_context_agentic.py @@ -27,13 +27,13 @@ Prerequisites: 1. An Azure AI Search service -2. An Azure AI Foundry project with a model deployment +2. A Microsoft Foundry project with a model deployment 3. Either an existing Knowledge Base OR a search index (to auto-create a KB) Environment variables: - AZURE_SEARCH_ENDPOINT: Your Azure AI Search endpoint - AZURE_SEARCH_API_KEY: (Optional) API key - if not provided, uses AzureCliCredential - - FOUNDRY_PROJECT_ENDPOINT: Your Azure AI Foundry project endpoint + - FOUNDRY_PROJECT_ENDPOINT: Your Microsoft Foundry project endpoint - FOUNDRY_MODEL: Your model deployment name (e.g., "gpt-4o") For using an existing Knowledge Base (recommended): diff --git a/python/samples/02-agents/context_providers/azure_ai_search/search_context_semantic.py b/python/samples/02-agents/context_providers/azure_ai_search/search_context_semantic.py index 5f2a57f5113..fc433e5e160 100644 --- a/python/samples/02-agents/context_providers/azure_ai_search/search_context_semantic.py +++ b/python/samples/02-agents/context_providers/azure_ai_search/search_context_semantic.py @@ -25,12 +25,12 @@ Prerequisites: 1. An Azure AI Search service with a search index -2. An Azure AI Foundry project with a model deployment +2. A Microsoft Foundry project with a model deployment 3. Set the following environment variables: - AZURE_SEARCH_ENDPOINT: Your Azure AI Search endpoint - AZURE_SEARCH_API_KEY: (Optional) Your search API key - if not provided, uses AzureCliCredential for Entra ID - AZURE_SEARCH_INDEX_NAME: Your search index name - - FOUNDRY_PROJECT_ENDPOINT: Your Azure AI Foundry project endpoint + - FOUNDRY_PROJECT_ENDPOINT: Your Microsoft Foundry project endpoint - FOUNDRY_MODEL: Your model deployment name (e.g., "gpt-4o") - AZURE_OPENAI_EMBEDDING_MODEL: (Optional) Your Azure OpenAI embedding deployment for hybrid search - AZURE_OPENAI_ENDPOINT: (Optional) Your Azure OpenAI resource URL, required if using Azure OpenAI embeddings diff --git a/python/samples/02-agents/context_providers/code_act/README.md b/python/samples/02-agents/context_providers/code_act/README.md index 4e52c18da4d..ea1ff3dc05f 100644 --- a/python/samples/02-agents/context_providers/code_act/README.md +++ b/python/samples/02-agents/context_providers/code_act/README.md @@ -29,7 +29,7 @@ pip install agent-framework agent-framework-monty --pre # Monty sample ## Prerequisites -- An Azure AI Foundry project endpoint (`FOUNDRY_PROJECT_ENDPOINT`) +- A Microsoft Foundry project endpoint (`FOUNDRY_PROJECT_ENDPOINT`) - A deployed model (`FOUNDRY_MODEL`) - Azure CLI authenticated (`az login`) diff --git a/python/samples/02-agents/context_providers/file_access_data_processing/README.md b/python/samples/02-agents/context_providers/file_access_data_processing/README.md index 9a95d7d86ec..f489621cc68 100644 --- a/python/samples/02-agents/context_providers/file_access_data_processing/README.md +++ b/python/samples/02-agents/context_providers/file_access_data_processing/README.md @@ -23,7 +23,7 @@ written file is easy to spot. | Variable | Description | |---|---| -| `FOUNDRY_PROJECT_ENDPOINT` | Your Azure AI Foundry project endpoint. | +| `FOUNDRY_PROJECT_ENDPOINT` | Your Microsoft Foundry project endpoint. | | `FOUNDRY_MODEL` | Chat model deployment name (e.g. `gpt-4o`). | Run `az login` before executing the sample so `AzureCliCredential` can diff --git a/python/samples/02-agents/context_providers/file_access_data_processing/data_processing.py b/python/samples/02-agents/context_providers/file_access_data_processing/data_processing.py index 508a4ba5b55..2a5f13a5952 100644 --- a/python/samples/02-agents/context_providers/file_access_data_processing/data_processing.py +++ b/python/samples/02-agents/context_providers/file_access_data_processing/data_processing.py @@ -19,7 +19,7 @@ files, inspect the data, compute regional totals, and save a markdown summary. Prerequisites: - - ``FOUNDRY_PROJECT_ENDPOINT``: Your Azure AI Foundry project endpoint. + - ``FOUNDRY_PROJECT_ENDPOINT``: Your Microsoft Foundry project endpoint. - ``FOUNDRY_MODEL``: Chat model deployment name. - Run ``az login`` before executing the sample. """ diff --git a/python/samples/02-agents/context_providers/redis/README.md b/python/samples/02-agents/context_providers/redis/README.md index 104ea3a5b8f..f4819f3f38b 100644 --- a/python/samples/02-agents/context_providers/redis/README.md +++ b/python/samples/02-agents/context_providers/redis/README.md @@ -20,7 +20,7 @@ This folder contains an example demonstrating how to use the Redis context provi 1. A running Redis with RediSearch (Redis Stack or a managed service) 2. Python environment with Agent Framework Redis extra installed -3. Azure AI Foundry project endpoint and Azure OpenAI Responses deployment +3. Microsoft Foundry project endpoint and Azure OpenAI Responses deployment 4. Optional: OpenAI API key if using vector embeddings ### Install the package @@ -51,7 +51,7 @@ See quickstart: `https://learn.microsoft.com/azure/redis/quickstart-create-manag ### Environment variables -- `FOUNDRY_PROJECT_ENDPOINT` (required): Azure AI Foundry project endpoint for `FoundryChatClient` +- `FOUNDRY_PROJECT_ENDPOINT` (required): Microsoft Foundry project endpoint for `FoundryChatClient` - `FOUNDRY_MODEL` (required): Foundry model deployment name - `OPENAI_API_KEY` (optional): Required only if you set `vectorizer_choice="openai"` to enable hybrid search. diff --git a/python/samples/02-agents/context_providers/redis/azure_redis_conversation.py b/python/samples/02-agents/context_providers/redis/azure_redis_conversation.py index a9e72d83d7b..a5baf84b1c1 100644 --- a/python/samples/02-agents/context_providers/redis/azure_redis_conversation.py +++ b/python/samples/02-agents/context_providers/redis/azure_redis_conversation.py @@ -17,7 +17,7 @@ Environment Variables: - AZURE_REDIS_HOST: Your Azure Managed Redis host (e.g., myredis.redis.cache.windows.net) - - FOUNDRY_PROJECT_ENDPOINT: Your Azure AI Foundry project endpoint + - FOUNDRY_PROJECT_ENDPOINT: Your Microsoft Foundry project endpoint - FOUNDRY_MODEL: Azure OpenAI Responses deployment name - AZURE_USER_OBJECT_ID: Your Azure AD User Object ID for authentication """ diff --git a/python/samples/02-agents/conversations/README.md b/python/samples/02-agents/conversations/README.md index 002d4e6773b..52845236c00 100644 --- a/python/samples/02-agents/conversations/README.md +++ b/python/samples/02-agents/conversations/README.md @@ -6,7 +6,7 @@ These samples demonstrate different approaches to managing conversation history | File | Description | |------|-------------| -| [`suspend_resume_session.py`](suspend_resume_session.py) | Suspend and resume conversation sessions, comparing service-managed sessions (Azure AI Foundry) with in-memory sessions (OpenAI). | +| [`suspend_resume_session.py`](suspend_resume_session.py) | Suspend and resume conversation sessions, comparing service-managed sessions (Microsoft Foundry) with in-memory sessions (OpenAI). | | [`custom_history_provider.py`](custom_history_provider.py) | Implement a custom history provider by extending `HistoryProvider`, enabling conversation persistence in your preferred storage backend. | | [`file_history_provider.py`](file_history_provider.py) | Use the experimental `FileHistoryProvider` with `FoundryChatClient` and a function tool so the local JSON Lines file shows the full tool-calling loop. | | [`file_history_provider_conversation_persistence.py`](file_history_provider_conversation_persistence.py) | Persist a tool-driven weather conversation with `FileHistoryProvider`, inspect the stored JSONL records, and continue with another city. | @@ -19,7 +19,7 @@ These samples demonstrate different approaches to managing conversation history ## Prerequisites **For `suspend_resume_session.py`:** -- `FOUNDRY_PROJECT_ENDPOINT`: Your Azure AI Foundry project endpoint (service-managed session) +- `FOUNDRY_PROJECT_ENDPOINT`: Your Microsoft Foundry project endpoint (service-managed session) - `FOUNDRY_MODEL`: The Foundry model deployment name - `OPENAI_API_KEY`: Your OpenAI API key (in-memory session) - Azure CLI authentication (`az login`) @@ -28,21 +28,21 @@ These samples demonstrate different approaches to managing conversation history - `OPENAI_API_KEY`: Your OpenAI API key **For `file_history_provider.py`:** -- `FOUNDRY_PROJECT_ENDPOINT`: Your Azure AI Foundry project endpoint +- `FOUNDRY_PROJECT_ENDPOINT`: Your Microsoft Foundry project endpoint - `FOUNDRY_MODEL`: The Foundry model deployment name - Azure CLI authentication (`az login`) - The sample writes plaintext JSONL conversation logs to disk; use a trusted local directory and avoid treating the history files as secure secret storage **For `file_history_provider_conversation_persistence.py`:** -- `FOUNDRY_PROJECT_ENDPOINT`: Your Azure AI Foundry project endpoint +- `FOUNDRY_PROJECT_ENDPOINT`: Your Microsoft Foundry project endpoint - `FOUNDRY_MODEL`: The Foundry model deployment name - Azure CLI authentication (`az login`) - The sample writes plaintext JSONL conversation logs to disk; use a trusted local directory and avoid treating the history files as secure secret storage **For Cosmos DB samples (`cosmos_history_provider*.py`):** -- `FOUNDRY_PROJECT_ENDPOINT`: Your Azure AI Foundry project endpoint +- `FOUNDRY_PROJECT_ENDPOINT`: Your Microsoft Foundry project endpoint - `FOUNDRY_MODEL`: The Foundry model deployment name - `AZURE_COSMOS_ENDPOINT`: Your Azure Cosmos DB account endpoint - `AZURE_COSMOS_DATABASE_NAME`: The database that stores conversation history diff --git a/python/samples/02-agents/conversations/file_history_provider.py b/python/samples/02-agents/conversations/file_history_provider.py index 20735ffd17e..cc9959b686a 100644 --- a/python/samples/02-agents/conversations/file_history_provider.py +++ b/python/samples/02-agents/conversations/file_history_provider.py @@ -37,7 +37,7 @@ the tool-calling loop as well as the regular chat turns. Environment variables: - FOUNDRY_PROJECT_ENDPOINT: Azure AI Foundry project endpoint. + FOUNDRY_PROJECT_ENDPOINT: Microsoft Foundry project endpoint. FOUNDRY_MODEL: Foundry model deployment name. Key components: diff --git a/python/samples/02-agents/conversations/file_history_provider_conversation_persistence.py b/python/samples/02-agents/conversations/file_history_provider_conversation_persistence.py index 693501b0f99..854a76d84b1 100644 --- a/python/samples/02-agents/conversations/file_history_provider_conversation_persistence.py +++ b/python/samples/02-agents/conversations/file_history_provider_conversation_persistence.py @@ -37,7 +37,7 @@ disk, and then continuing the same conversation with another city. Environment variables: - FOUNDRY_PROJECT_ENDPOINT: Azure AI Foundry project endpoint. + FOUNDRY_PROJECT_ENDPOINT: Microsoft Foundry project endpoint. FOUNDRY_MODEL: Foundry model deployment name. Key components: diff --git a/python/samples/02-agents/declarative/README.md b/python/samples/02-agents/declarative/README.md index e1453e7d52b..08e3686672e 100644 --- a/python/samples/02-agents/declarative/README.md +++ b/python/samples/02-agents/declarative/README.md @@ -37,7 +37,7 @@ Demonstrates how to create an agent with custom function tools using the declara Shows how to create an agent that can search and retrieve information from Microsoft Learn documentation using the Model Context Protocol (MCP). -- Uses Azure AI Foundry client with MCP server integration +- Uses Microsoft Foundry client with MCP server integration - Demonstrates async context managers for proper resource cleanup - Loads agent configuration from `declarative-agents/agent-samples/foundry/MicrosoftLearnAgent.yaml` - Uses Azure CLI credentials for authentication @@ -45,13 +45,13 @@ Shows how to create an agent that can search and retrieve information from Micro **Requirements**: `pip install agent-framework-foundry` -**Key concepts**: Azure AI Foundry integration, MCP server usage, async patterns, resource management +**Key concepts**: Microsoft Foundry integration, MCP server usage, async patterns, resource management ### 3. **Inline YAML Agent** ([`inline_yaml.py`](./inline_yaml.py)) Shows how to create an agent using an inline YAML string rather than a file. -- Uses Azure AI Foundry v2 Client with instructions. +- Uses Microsoft Foundry v2 Client with instructions. **Requirements**: `pip install agent-framework-foundry` @@ -84,7 +84,7 @@ All the YAML configuration files referenced in these samples are located in the - **`declarative-agents/agent-samples/azure/`** - Azure OpenAI agent configurations - **`declarative-agents/agent-samples/chatclient/`** - Chat client agent configurations with tools -- **`declarative-agents/agent-samples/foundry/`** - Azure AI Foundry agent configurations +- **`declarative-agents/agent-samples/foundry/`** - Microsoft Foundry agent configurations - **`declarative-agents/agent-samples/openai/`** - OpenAI agent configurations **Important**: These YAML files are **platform-agnostic** and work with both Python and .NET implementations of the Agent Framework. You can use the exact same YAML definition to create agents in either language, making it easy to share agent configurations across different technology stacks. diff --git a/python/samples/02-agents/declarative/mcp_tool_yaml.py b/python/samples/02-agents/declarative/mcp_tool_yaml.py index 3931d19ae1a..f3c4aa76a88 100644 --- a/python/samples/02-agents/declarative/mcp_tool_yaml.py +++ b/python/samples/02-agents/declarative/mcp_tool_yaml.py @@ -10,7 +10,7 @@ 1. Loading agent definitions from YAML using AgentFactory 2. Configuring MCP tools with different authentication methods: - API key authentication (OpenAI.Responses provider) - - Azure AI Foundry connection references (Foundry provider) + - Microsoft Foundry connection references (Foundry provider) Authentication Options: - OpenAI.Responses: Supports inline API key auth via headers @@ -66,7 +66,7 @@ # Example 2: Azure AI with Foundry connection reference # No secrets in YAML - references a pre-configured Foundry connection by name -# The connection stores credentials securely in Azure AI Foundry +# The connection stores credentials securely in Microsoft Foundry YAML_AZURE_AI_WITH_FOUNDRY_CONNECTION = """ kind: Prompt name: GitHubAgent diff --git a/python/samples/02-agents/devui/README.md b/python/samples/02-agents/devui/README.md index 970116c61a6..617deb7c33f 100644 --- a/python/samples/02-agents/devui/README.md +++ b/python/samples/02-agents/devui/README.md @@ -20,7 +20,7 @@ DevUI is a sample application that provides: Run a single sample directly. This demonstrates how to register agents and workflows in code without using DevUI's directory discovery. -This sample uses Azure AI Foundry. Before running it: +This sample uses Microsoft Foundry. Before running it: 1. Copy `.env.example` in this folder to `.env`, or export the same values in your shell 2. Set `FOUNDRY_PROJECT_ENDPOINT` and `FOUNDRY_MODEL` diff --git a/python/samples/02-agents/devui/agent_foundry/.env.example b/python/samples/02-agents/devui/agent_foundry/.env.example index c58831e9711..2fef3a5c81d 100644 --- a/python/samples/02-agents/devui/agent_foundry/.env.example +++ b/python/samples/02-agents/devui/agent_foundry/.env.example @@ -1,4 +1,4 @@ -# Azure AI Foundry Configuration +# Microsoft Foundry Configuration # Make sure to run 'az login' before starting devui FOUNDRY_PROJECT_ENDPOINT=https://your-project.services.ai.azure.com diff --git a/python/samples/02-agents/devui/agent_foundry/agent.py b/python/samples/02-agents/devui/agent_foundry/agent.py index eaeb316c2b0..3cd14c4d57e 100644 --- a/python/samples/02-agents/devui/agent_foundry/agent.py +++ b/python/samples/02-agents/devui/agent_foundry/agent.py @@ -1,7 +1,7 @@ # Copyright (c) Microsoft. All rights reserved. """Foundry-based weather agent for Agent Framework Debug UI. -This agent uses Azure AI Foundry with Azure CLI authentication. +This agent uses Microsoft Foundry with Azure CLI authentication. Make sure to run 'az login' before starting devui. """ @@ -57,7 +57,7 @@ def get_forecast( credential=AzureCliCredential(), ), instructions=""" - You are a weather assistant using Azure AI Foundry models. You can provide + You are a weather assistant using Microsoft Foundry models. You can provide current weather information and forecasts for any location. Always be helpful and provide detailed weather information when asked. """, diff --git a/python/samples/02-agents/devui/agent_weather/.env.example b/python/samples/02-agents/devui/agent_weather/.env.example index c58831e9711..2fef3a5c81d 100644 --- a/python/samples/02-agents/devui/agent_weather/.env.example +++ b/python/samples/02-agents/devui/agent_weather/.env.example @@ -1,4 +1,4 @@ -# Azure AI Foundry Configuration +# Microsoft Foundry Configuration # Make sure to run 'az login' before starting devui FOUNDRY_PROJECT_ENDPOINT=https://your-project.services.ai.azure.com diff --git a/python/samples/02-agents/harness/harness_data_processing.py b/python/samples/02-agents/harness/harness_data_processing.py index c280b6c4a1e..f9acba399d1 100644 --- a/python/samples/02-agents/harness/harness_data_processing.py +++ b/python/samples/02-agents/harness/harness_data_processing.py @@ -49,7 +49,7 @@ keep this a simple, conversational data-interaction sample. Environment variables: - FOUNDRY_PROJECT_ENDPOINT — Azure AI Foundry project endpoint URL + FOUNDRY_PROJECT_ENDPOINT — Microsoft Foundry project endpoint URL FOUNDRY_MODEL — Model deployment name Authentication: diff --git a/python/samples/02-agents/harness/harness_research.py b/python/samples/02-agents/harness/harness_research.py index 1979d914fe1..12064cb6e5a 100644 --- a/python/samples/02-agents/harness/harness_research.py +++ b/python/samples/02-agents/harness/harness_research.py @@ -43,7 +43,7 @@ net. Environment variables: - FOUNDRY_PROJECT_ENDPOINT — Azure AI Foundry project endpoint URL + FOUNDRY_PROJECT_ENDPOINT — Microsoft Foundry project endpoint URL FOUNDRY_MODEL — Model deployment name Authentication: diff --git a/python/samples/02-agents/middleware/agent_loop_middleware_judge.py b/python/samples/02-agents/middleware/agent_loop_middleware_judge.py index fecd96d1c7e..1e72ab9882f 100644 --- a/python/samples/02-agents/middleware/agent_loop_middleware_judge.py +++ b/python/samples/02-agents/middleware/agent_loop_middleware_judge.py @@ -23,7 +23,7 @@ update; the stream is printed as ``: `` lines. Environment variables: - FOUNDRY_PROJECT_ENDPOINT — Azure AI Foundry project endpoint URL + FOUNDRY_PROJECT_ENDPOINT — Microsoft Foundry project endpoint URL FOUNDRY_MODEL — Model deployment name Authentication: diff --git a/python/samples/02-agents/middleware/agent_loop_middleware_refinement.py b/python/samples/02-agents/middleware/agent_loop_middleware_refinement.py index b19d7f83b77..65094732de7 100644 --- a/python/samples/02-agents/middleware/agent_loop_middleware_refinement.py +++ b/python/samples/02-agents/middleware/agent_loop_middleware_refinement.py @@ -24,7 +24,7 @@ updates; the stream is printed as ``: `` lines. Environment variables: - FOUNDRY_PROJECT_ENDPOINT — Azure AI Foundry project endpoint URL + FOUNDRY_PROJECT_ENDPOINT — Microsoft Foundry project endpoint URL FOUNDRY_MODEL — Model deployment name Authentication: diff --git a/python/samples/02-agents/middleware/agent_loop_middleware_report.py b/python/samples/02-agents/middleware/agent_loop_middleware_report.py index 12ad6666e4a..ce8e51eac4a 100644 --- a/python/samples/02-agents/middleware/agent_loop_middleware_report.py +++ b/python/samples/02-agents/middleware/agent_loop_middleware_report.py @@ -48,7 +48,7 @@ agent runs across both loops. Environment variables: - FOUNDRY_PROJECT_ENDPOINT — Azure AI Foundry project endpoint URL + FOUNDRY_PROJECT_ENDPOINT — Microsoft Foundry project endpoint URL FOUNDRY_MODEL — Model deployment name Authentication: diff --git a/python/samples/02-agents/middleware/agent_loop_middleware_todos.py b/python/samples/02-agents/middleware/agent_loop_middleware_todos.py index d3a3236a386..c8cddd63645 100644 --- a/python/samples/02-agents/middleware/agent_loop_middleware_todos.py +++ b/python/samples/02-agents/middleware/agent_loop_middleware_todos.py @@ -23,7 +23,7 @@ updates; the stream is printed as ``: `` lines. Environment variables: - FOUNDRY_PROJECT_ENDPOINT — Azure AI Foundry project endpoint URL + FOUNDRY_PROJECT_ENDPOINT — Microsoft Foundry project endpoint URL FOUNDRY_MODEL — Model deployment name Authentication: diff --git a/python/samples/02-agents/middleware/runtime_context_delegation.py b/python/samples/02-agents/middleware/runtime_context_delegation.py index 532fa56ba97..2dcf8601e86 100644 --- a/python/samples/02-agents/middleware/runtime_context_delegation.py +++ b/python/samples/02-agents/middleware/runtime_context_delegation.py @@ -48,7 +48,7 @@ Environment Setup: - Configure Azure credentials (e.g., via Azure CLI) - Run `az login` to authenticate -- Set FOUNDRY_PROJECT_ENDPOINT to your Azure AI Foundry project endpoint +- Set FOUNDRY_PROJECT_ENDPOINT to your Microsoft Foundry project endpoint - Set FOUNDRY_MODEL to the model deployment name (for example: gpt-4o) """ diff --git a/python/samples/02-agents/observability/.env.example b/python/samples/02-agents/observability/.env.example index c43f8f239c2..dd419f39866 100644 --- a/python/samples/02-agents/observability/.env.example +++ b/python/samples/02-agents/observability/.env.example @@ -43,7 +43,7 @@ OPENAI_API_KEY="..." OPENAI_CHAT_MODEL="gpt-4o-2024-08-06" OPENAI_CHAT_COMPLETION_MODEL="gpt-4o-2024-08-06" -# Azure AI Foundry specific variables +# Microsoft Foundry specific variables # ==================================== FOUNDRY_PROJECT_ENDPOINT="..." FOUNDRY_MODEL="gpt-4o-mini" diff --git a/python/samples/02-agents/providers/custom/README.md b/python/samples/02-agents/providers/custom/README.md index 976edd29a04..d52e3265d43 100644 --- a/python/samples/02-agents/providers/custom/README.md +++ b/python/samples/02-agents/providers/custom/README.md @@ -64,6 +64,6 @@ For most use cases, use the fully-featured public client classes which already h - `OpenAIChatClient` - OpenAI Responses API with all layers - `OpenAIChatCompletionClient` - Azure OpenAI Chat Completions with all layers - `OpenAIChatClient` - Azure OpenAI Responses with all layers -- `FoundryChatClient` - Azure AI Foundry project-backed chat with all layers +- `FoundryChatClient` - Microsoft Foundry project-backed chat with all layers These clients handle the layer composition correctly and provide the full feature set out of the box. diff --git a/python/samples/02-agents/providers/foundry/README.md b/python/samples/02-agents/providers/foundry/README.md index 1a3c06ffdae..606b81af0ef 100644 --- a/python/samples/02-agents/providers/foundry/README.md +++ b/python/samples/02-agents/providers/foundry/README.md @@ -1,6 +1,6 @@ # Foundry Provider Samples -This folder contains Azure AI Foundry and Foundry Local samples for Agent Framework. +This folder contains Microsoft Foundry and Foundry Local samples for Agent Framework. ## FoundryAgent Samples diff --git a/python/samples/02-agents/providers/foundry/foundry_agent_basic.py b/python/samples/02-agents/providers/foundry/foundry_agent_basic.py index 4c896e68037..83c24a3691f 100644 --- a/python/samples/02-agents/providers/foundry/foundry_agent_basic.py +++ b/python/samples/02-agents/providers/foundry/foundry_agent_basic.py @@ -9,11 +9,11 @@ Foundry Agent — Connect to a pre-configured agent in Microsoft Foundry This sample shows the simplest way to connect to an existing PromptAgent -in Azure AI Foundry and run it. The agent's instructions, model, and hosted +in Microsoft Foundry and run it. The agent's instructions, model, and hosted tools are all configured on the service — you just connect and run. Environment variables: - FOUNDRY_PROJECT_ENDPOINT — Azure AI Foundry project endpoint + FOUNDRY_PROJECT_ENDPOINT — Microsoft Foundry project endpoint FOUNDRY_AGENT_NAME — Name of the agent in Foundry FOUNDRY_AGENT_VERSION — Version of the agent (for PromptAgents) """ diff --git a/python/samples/02-agents/providers/foundry/foundry_agent_custom_client.py b/python/samples/02-agents/providers/foundry/foundry_agent_custom_client.py index 8db5b711abe..e1adda1e4b2 100644 --- a/python/samples/02-agents/providers/foundry/foundry_agent_custom_client.py +++ b/python/samples/02-agents/providers/foundry/foundry_agent_custom_client.py @@ -18,7 +18,7 @@ 3. Composition: Use Agent(client=RawFoundryAgentChatClient(...)) directly Environment variables: - FOUNDRY_PROJECT_ENDPOINT — Azure AI Foundry project endpoint + FOUNDRY_PROJECT_ENDPOINT — Microsoft Foundry project endpoint FOUNDRY_AGENT_NAME — Name of the agent in Foundry FOUNDRY_AGENT_VERSION — Version of the agent """ diff --git a/python/samples/02-agents/providers/foundry/foundry_agent_hosted.py b/python/samples/02-agents/providers/foundry/foundry_agent_hosted.py index 1e9dbc6510d..208e877e34d 100644 --- a/python/samples/02-agents/providers/foundry/foundry_agent_hosted.py +++ b/python/samples/02-agents/providers/foundry/foundry_agent_hosted.py @@ -12,11 +12,11 @@ """ Foundry Agent — Connect to a HostedAgent (no version needed) -HostedAgents in Azure AI Foundry are pre-deployed agents that don't require +HostedAgents in Microsoft Foundry are pre-deployed agents that don't require a version number. You only need the agent name to connect. Environment variables: - FOUNDRY_PROJECT_ENDPOINT — Azure AI Foundry project endpoint + FOUNDRY_PROJECT_ENDPOINT — Microsoft Foundry project endpoint FOUNDRY_AGENT_NAME — Name of the hosted agent """ diff --git a/python/samples/02-agents/providers/foundry/foundry_agent_with_function_tools.py b/python/samples/02-agents/providers/foundry/foundry_agent_with_function_tools.py index 2915cee1b66..5e13e3c1d7c 100644 --- a/python/samples/02-agents/providers/foundry/foundry_agent_with_function_tools.py +++ b/python/samples/02-agents/providers/foundry/foundry_agent_with_function_tools.py @@ -20,7 +20,7 @@ web search, etc.) must be configured on the agent definition in the service. Environment variables: - FOUNDRY_PROJECT_ENDPOINT — Azure AI Foundry project endpoint + FOUNDRY_PROJECT_ENDPOINT — Microsoft Foundry project endpoint FOUNDRY_AGENT_NAME — Name of the agent in Foundry FOUNDRY_AGENT_VERSION — Version of the agent """ diff --git a/python/samples/02-agents/providers/foundry/foundry_chat_client.py b/python/samples/02-agents/providers/foundry/foundry_chat_client.py index 1e858b92d58..f02701c6374 100644 --- a/python/samples/02-agents/providers/foundry/foundry_chat_client.py +++ b/python/samples/02-agents/providers/foundry/foundry_chat_client.py @@ -19,7 +19,7 @@ This sample demonstrates how to create a FoundryChatClient using a Foundry project endpoint. Instead of providing a service endpoint directly, you provide a Foundry project endpoint and the client is created via -the Azure AI Foundry project SDK. +the Microsoft Foundry project SDK. This requires: - The `FOUNDRY_PROJECT_ENDPOINT` environment variable set to your Foundry project endpoint. diff --git a/python/samples/02-agents/skills/README.md b/python/samples/02-agents/skills/README.md index 6b91c8eafad..fae06c877b3 100644 --- a/python/samples/02-agents/skills/README.md +++ b/python/samples/02-agents/skills/README.md @@ -54,7 +54,7 @@ The `script_runner` parameter on `SkillsProvider` is only applicable to **file-b ## Prerequisites All samples require: -- An [Azure AI Foundry](https://ai.azure.com/) project with a deployed model (e.g. `gpt-4o-mini`) +- A [Microsoft Foundry](https://ai.azure.com/) project with a deployed model (e.g. `gpt-4o-mini`) - Azure CLI authentication (`az login`) - Environment variables set in a `.env` file (see `python/.env.example`) diff --git a/python/samples/02-agents/skills/class_based_skill/README.md b/python/samples/02-agents/skills/class_based_skill/README.md index bf70e35db8e..c8d19c0d0d2 100644 --- a/python/samples/02-agents/skills/class_based_skill/README.md +++ b/python/samples/02-agents/skills/class_based_skill/README.md @@ -32,13 +32,13 @@ class_based_skill/ ### Prerequisites -- An [Azure AI Foundry](https://ai.azure.com/) project with a deployed model (e.g. `gpt-4o-mini`) +- A [Microsoft Foundry](https://ai.azure.com/) project with a deployed model (e.g. `gpt-4o-mini`) ### Environment Variables Set the required environment variables in a `.env` file (see `python/.env.example`): -- `FOUNDRY_PROJECT_ENDPOINT`: Your Azure AI Foundry project endpoint +- `FOUNDRY_PROJECT_ENDPOINT`: Your Microsoft Foundry project endpoint - `FOUNDRY_MODEL`: The name of your model deployment (defaults to `gpt-4o-mini`) ### Authentication diff --git a/python/samples/02-agents/skills/code_defined_skill/README.md b/python/samples/02-agents/skills/code_defined_skill/README.md index c19a3c17d39..187442d17fe 100644 --- a/python/samples/02-agents/skills/code_defined_skill/README.md +++ b/python/samples/02-agents/skills/code_defined_skill/README.md @@ -21,13 +21,13 @@ code_defined_skill/ ## Running the Sample ### Prerequisites -- An [Azure AI Foundry](https://ai.azure.com/) project with a deployed model (e.g. `gpt-4o-mini`) +- A [Microsoft Foundry](https://ai.azure.com/) project with a deployed model (e.g. `gpt-4o-mini`) ### Environment Variables Set the required environment variables in a `.env` file (see `python/.env.example`): -- `FOUNDRY_PROJECT_ENDPOINT`: Your Azure AI Foundry project endpoint +- `FOUNDRY_PROJECT_ENDPOINT`: Your Microsoft Foundry project endpoint - `AZURE_OPENAI_MODEL`: The name of your model deployment (defaults to `gpt-4o-mini`) ### Authentication diff --git a/python/samples/02-agents/skills/file_based_skill/README.md b/python/samples/02-agents/skills/file_based_skill/README.md index fa07b7e9733..15f7f227d77 100644 --- a/python/samples/02-agents/skills/file_based_skill/README.md +++ b/python/samples/02-agents/skills/file_based_skill/README.md @@ -41,13 +41,13 @@ file_based_skill/ ## Running the Sample ### Prerequisites -- An [Azure AI Foundry](https://ai.azure.com/) project with a deployed model (e.g. `gpt-4o-mini`) +- A [Microsoft Foundry](https://ai.azure.com/) project with a deployed model (e.g. `gpt-4o-mini`) ### Environment Variables Set the required environment variables in a `.env` file (see `python/.env.example`): -- `FOUNDRY_PROJECT_ENDPOINT`: Your Azure AI Foundry project endpoint +- `FOUNDRY_PROJECT_ENDPOINT`: Your Microsoft Foundry project endpoint - `AZURE_OPENAI_MODEL`: The name of your model deployment (defaults to `gpt-4o-mini`) ### Authentication diff --git a/python/samples/02-agents/skills/mcp_based_skill/README.md b/python/samples/02-agents/skills/mcp_based_skill/README.md index 0f7f7ff2d66..58fb5d487a3 100644 --- a/python/samples/02-agents/skills/mcp_based_skill/README.md +++ b/python/samples/02-agents/skills/mcp_based_skill/README.md @@ -17,7 +17,7 @@ This sample demonstrates how to discover **Agent Skills served over MCP** with a ### Prerequisites - Python 3.10+ -- An [Azure AI Foundry](https://ai.azure.com/) project with a deployed model +- A [Microsoft Foundry](https://ai.azure.com/) project with a deployed model - Azure CLI authentication (`az login`) - A running MCP server that hosts SEP-2640 skill resources (see "Providing an MCP server" below) diff --git a/python/samples/02-agents/skills/script_approval/README.md b/python/samples/02-agents/skills/script_approval/README.md index a2a24667b23..b0b7b9e6ae4 100644 --- a/python/samples/02-agents/skills/script_approval/README.md +++ b/python/samples/02-agents/skills/script_approval/README.md @@ -31,13 +31,13 @@ To approve skill tools automatically instead of prompting for each one, use ## Running the Sample ### Prerequisites -- An [Azure AI Foundry](https://ai.azure.com/) project with a deployed model (e.g. `gpt-4o-mini`) +- A [Microsoft Foundry](https://ai.azure.com/) project with a deployed model (e.g. `gpt-4o-mini`) ### Environment Variables Set the required environment variables in a `.env` file (see `python/.env.example`): -- `FOUNDRY_PROJECT_ENDPOINT`: Your Azure AI Foundry project endpoint +- `FOUNDRY_PROJECT_ENDPOINT`: Your Microsoft Foundry project endpoint - `FOUNDRY_MODEL`: The name of your model deployment (defaults to `gpt-4o-mini`) ### Authentication diff --git a/python/samples/02-agents/skills/script_approval/script_approval.py b/python/samples/02-agents/skills/script_approval/script_approval.py index f0ed988d75e..760a82f0ebc 100644 --- a/python/samples/02-agents/skills/script_approval/script_approval.py +++ b/python/samples/02-agents/skills/script_approval/script_approval.py @@ -40,7 +40,7 @@ ``samples/02-agents/skills/skills_auto_approval/skills_auto_approval.py``. Prerequisites: -- FOUNDRY_PROJECT_ENDPOINT must be your Azure AI Foundry Agent Service (V2) project endpoint. +- FOUNDRY_PROJECT_ENDPOINT must be your Microsoft Foundry Agent Service (V2) project endpoint. - FOUNDRY_MODEL (defaults to "gpt-4o-mini"). """ diff --git a/python/samples/02-agents/skills/skills_auto_approval/README.md b/python/samples/02-agents/skills/skills_auto_approval/README.md index ba324ee349a..8ab63e1739e 100644 --- a/python/samples/02-agents/skills/skills_auto_approval/README.md +++ b/python/samples/02-agents/skills/skills_auto_approval/README.md @@ -34,13 +34,13 @@ Both rules reject any call carrying a `server_label`, so they stay scoped to thi ## Running the Sample ### Prerequisites -- An [Azure AI Foundry](https://ai.azure.com/) project with a deployed model (e.g. `gpt-4o-mini`) +- A [Microsoft Foundry](https://ai.azure.com/) project with a deployed model (e.g. `gpt-4o-mini`) ### Environment Variables Set the required environment variables in a `.env` file (see `python/.env.example`): -- `FOUNDRY_PROJECT_ENDPOINT`: Your Azure AI Foundry project endpoint +- `FOUNDRY_PROJECT_ENDPOINT`: Your Microsoft Foundry project endpoint - `FOUNDRY_MODEL`: The name of your model deployment (defaults to `gpt-4o-mini`) ### Authentication diff --git a/python/samples/02-agents/skills/skills_auto_approval/skills_auto_approval.py b/python/samples/02-agents/skills/skills_auto_approval/skills_auto_approval.py index 5f69e92a04a..1a0bc86bcb6 100644 --- a/python/samples/02-agents/skills/skills_auto_approval/skills_auto_approval.py +++ b/python/samples/02-agents/skills/skills_auto_approval/skills_auto_approval.py @@ -55,7 +55,7 @@ its middleware stack. Prerequisites: -- FOUNDRY_PROJECT_ENDPOINT must be your Azure AI Foundry Agent Service (V2) project endpoint. +- FOUNDRY_PROJECT_ENDPOINT must be your Microsoft Foundry Agent Service (V2) project endpoint. - FOUNDRY_MODEL (defaults to "gpt-4o-mini"). """ diff --git a/python/samples/02-agents/tools/local_code_interpreter/README.md b/python/samples/02-agents/tools/local_code_interpreter/README.md index 3b3b19365a7..b4099a247f9 100644 --- a/python/samples/02-agents/tools/local_code_interpreter/README.md +++ b/python/samples/02-agents/tools/local_code_interpreter/README.md @@ -25,7 +25,7 @@ pip install agent-framework agent-framework-hyperlight --pre ## Prerequisites -- An Azure AI Foundry project endpoint (`FOUNDRY_PROJECT_ENDPOINT`) +- A Microsoft Foundry project endpoint (`FOUNDRY_PROJECT_ENDPOINT`) - A deployed model (`FOUNDRY_MODEL`) - Azure CLI authenticated (`az login`) diff --git a/python/samples/02-agents/tools/monty_code_interpreter/README.md b/python/samples/02-agents/tools/monty_code_interpreter/README.md index d2797077d61..2583d96b4a5 100644 --- a/python/samples/02-agents/tools/monty_code_interpreter/README.md +++ b/python/samples/02-agents/tools/monty_code_interpreter/README.md @@ -28,7 +28,7 @@ pip install agent-framework agent-framework-monty --pre ## Prerequisites -- An Azure AI Foundry project endpoint (`FOUNDRY_PROJECT_ENDPOINT`) +- A Microsoft Foundry project endpoint (`FOUNDRY_PROJECT_ENDPOINT`) - A deployed model (`FOUNDRY_MODEL`) - Azure CLI authenticated (`az login`) diff --git a/python/samples/03-workflows/README.md b/python/samples/03-workflows/README.md index c79203d7429..d6acd755e6b 100644 --- a/python/samples/03-workflows/README.md +++ b/python/samples/03-workflows/README.md @@ -228,7 +228,7 @@ If you need persistent server-side agent resources, use the hosted-agent flows r Workflow samples that use `FoundryChatClient` expect: -- `FOUNDRY_PROJECT_ENDPOINT` (Azure AI Foundry Agent Service (V2) project endpoint) +- `FOUNDRY_PROJECT_ENDPOINT` (Microsoft Foundry Agent Service (V2) project endpoint) - `FOUNDRY_MODEL` (model deployment name) These values are passed directly into the client constructor via `os.getenv()` in sample code. diff --git a/python/samples/03-workflows/_start-here/step2_agents_in_a_workflow.py b/python/samples/03-workflows/_start-here/step2_agents_in_a_workflow.py index 51a138429f3..7648fc4739d 100644 --- a/python/samples/03-workflows/_start-here/step2_agents_in_a_workflow.py +++ b/python/samples/03-workflows/_start-here/step2_agents_in_a_workflow.py @@ -23,7 +23,7 @@ how agents can be used in a workflow. Prerequisites: -- FOUNDRY_PROJECT_ENDPOINT must be your Azure AI Foundry Agent Service (V2) project endpoint. +- FOUNDRY_PROJECT_ENDPOINT must be your Microsoft Foundry Agent Service (V2) project endpoint. - FOUNDRY_MODEL must be the deployment name of a model in your Foundry project. - Authentication via azure-identity. Use AzureCliCredential and run az login before executing the sample. - Basic familiarity with WorkflowBuilder, edges, events, and streaming or non-streaming runs. diff --git a/python/samples/03-workflows/_start-here/step3_streaming.py b/python/samples/03-workflows/_start-here/step3_streaming.py index d2c29b56fc4..dd6822f24e5 100644 --- a/python/samples/03-workflows/_start-here/step3_streaming.py +++ b/python/samples/03-workflows/_start-here/step3_streaming.py @@ -22,7 +22,7 @@ how agents can be used in a workflow. Prerequisites: -- FOUNDRY_PROJECT_ENDPOINT must be your Azure AI Foundry Agent Service (V2) project endpoint. +- FOUNDRY_PROJECT_ENDPOINT must be your Microsoft Foundry Agent Service (V2) project endpoint. - FOUNDRY_MODEL must be the deployment name of a model in your Foundry project. - Authentication via azure-identity. Use AzureCliCredential and run az login before executing the sample. - Basic familiarity with WorkflowBuilder, executors, edges, events, and streaming runs. diff --git a/python/samples/03-workflows/agents/azure_ai_agents_streaming.py b/python/samples/03-workflows/agents/azure_ai_agents_streaming.py index 9777e26f5a3..ef58456f25a 100644 --- a/python/samples/03-workflows/agents/azure_ai_agents_streaming.py +++ b/python/samples/03-workflows/agents/azure_ai_agents_streaming.py @@ -17,7 +17,7 @@ This sample shows how to create agents backed by Azure OpenAI Responses and use them in a workflow with streaming. Prerequisites: -- FOUNDRY_PROJECT_ENDPOINT must be your Azure AI Foundry Agent Service (V2) project endpoint. +- FOUNDRY_PROJECT_ENDPOINT must be your Microsoft Foundry Agent Service (V2) project endpoint. - FOUNDRY_MODEL must be the deployment name of a model in your Foundry project. - Authentication via azure-identity. Use AzureCliCredential and run az login before executing the sample. - Basic familiarity with WorkflowBuilder, edges, events, and streaming runs. diff --git a/python/samples/03-workflows/agents/azure_ai_agents_with_shared_session.py b/python/samples/03-workflows/agents/azure_ai_agents_with_shared_session.py index 4eb5ae8dd5d..94d739e5c2f 100644 --- a/python/samples/03-workflows/agents/azure_ai_agents_with_shared_session.py +++ b/python/samples/03-workflows/agents/azure_ai_agents_with_shared_session.py @@ -38,7 +38,7 @@ - Setting up a shared thread between agents. Prerequisites: -- FOUNDRY_PROJECT_ENDPOINT must be your Azure AI Foundry Agent Service (V2) project endpoint. +- FOUNDRY_PROJECT_ENDPOINT must be your Microsoft Foundry Agent Service (V2) project endpoint. - FOUNDRY_MODEL must be set to your Azure OpenAI model deployment name. - Authentication via azure-identity. Use AzureCliCredential and run az login before executing the sample. - Basic familiarity with agents, workflows, and executors in the agent framework. diff --git a/python/samples/03-workflows/agents/azure_chat_agents_and_executor.py b/python/samples/03-workflows/agents/azure_chat_agents_and_executor.py index d658abe3b1a..af1b778bbc9 100644 --- a/python/samples/03-workflows/agents/azure_chat_agents_and_executor.py +++ b/python/samples/03-workflows/agents/azure_chat_agents_and_executor.py @@ -36,7 +36,7 @@ - Consuming an AgentExecutorResponse and forwarding an AgentExecutorRequest for the next agent. Prerequisites: -- FOUNDRY_PROJECT_ENDPOINT must be your Azure AI Foundry Agent Service (V2) project endpoint. +- FOUNDRY_PROJECT_ENDPOINT must be your Microsoft Foundry Agent Service (V2) project endpoint. - FOUNDRY_MODEL must be set to your Azure OpenAI model deployment name. - Authentication via azure-identity. Run `az login` before executing. """ diff --git a/python/samples/03-workflows/agents/azure_chat_agents_streaming.py b/python/samples/03-workflows/agents/azure_chat_agents_streaming.py index 39a77776630..ea814bcc35d 100644 --- a/python/samples/03-workflows/agents/azure_chat_agents_streaming.py +++ b/python/samples/03-workflows/agents/azure_chat_agents_streaming.py @@ -17,7 +17,7 @@ This sample shows how to create AzureOpenAI Chat Agents and use them in a workflow with streaming. Prerequisites: -- FOUNDRY_PROJECT_ENDPOINT must be your Azure AI Foundry Agent Service (V2) project endpoint. +- FOUNDRY_PROJECT_ENDPOINT must be your Microsoft Foundry Agent Service (V2) project endpoint. - FOUNDRY_MODEL must be set to your Azure OpenAI model deployment name. - Authentication via azure-identity. Use AzureCliCredential and run az login before executing the sample. - Basic familiarity with WorkflowBuilder, edges, events, and streaming runs. diff --git a/python/samples/03-workflows/agents/azure_chat_agents_tool_calls_with_feedback.py b/python/samples/03-workflows/agents/azure_chat_agents_tool_calls_with_feedback.py index ba5c1a729bc..74bd11473ad 100644 --- a/python/samples/03-workflows/agents/azure_chat_agents_tool_calls_with_feedback.py +++ b/python/samples/03-workflows/agents/azure_chat_agents_tool_calls_with_feedback.py @@ -48,7 +48,7 @@ - Streaming AgentRunUpdateEvent updates alongside human-in-the-loop pauses. Prerequisites: -- FOUNDRY_PROJECT_ENDPOINT must be your Azure AI Foundry Agent Service (V2) project endpoint. +- FOUNDRY_PROJECT_ENDPOINT must be your Microsoft Foundry Agent Service (V2) project endpoint. - FOUNDRY_MODEL must be set to your Azure OpenAI model deployment name. - Authentication via azure-identity. Run `az login` before executing. """ diff --git a/python/samples/03-workflows/agents/concurrent_workflow_as_agent.py b/python/samples/03-workflows/agents/concurrent_workflow_as_agent.py index 42538e31a47..ba8c5ee98f5 100644 --- a/python/samples/03-workflows/agents/concurrent_workflow_as_agent.py +++ b/python/samples/03-workflows/agents/concurrent_workflow_as_agent.py @@ -24,7 +24,7 @@ - Workflow completion when idle with no pending work Prerequisites: -- FOUNDRY_PROJECT_ENDPOINT must be your Azure AI Foundry Agent Service (V2) project endpoint. +- FOUNDRY_PROJECT_ENDPOINT must be your Microsoft Foundry Agent Service (V2) project endpoint. - FOUNDRY_MODEL must be set to your Azure OpenAI model deployment name. - Familiarity with Workflow events (WorkflowEvent with type "output") """ diff --git a/python/samples/03-workflows/agents/custom_agent_executors.py b/python/samples/03-workflows/agents/custom_agent_executors.py index af12db1cf52..56943b558f2 100644 --- a/python/samples/03-workflows/agents/custom_agent_executors.py +++ b/python/samples/03-workflows/agents/custom_agent_executors.py @@ -32,7 +32,7 @@ Note: When an agent is passed to a workflow, the workflow wraps the agent in a more sophisticated executor. Prerequisites: -- FOUNDRY_PROJECT_ENDPOINT must be your Azure AI Foundry Agent Service (V2) project endpoint. +- FOUNDRY_PROJECT_ENDPOINT must be your Microsoft Foundry Agent Service (V2) project endpoint. - FOUNDRY_MODEL must be set to your Azure OpenAI model deployment name. - Authentication via azure-identity. Use AzureCliCredential and run az login before executing the sample. - Basic familiarity with WorkflowBuilder, executors, edges, events, and streaming or non streaming runs. diff --git a/python/samples/03-workflows/agents/group_chat_workflow_as_agent.py b/python/samples/03-workflows/agents/group_chat_workflow_as_agent.py index b156858484d..a93155917db 100644 --- a/python/samples/03-workflows/agents/group_chat_workflow_as_agent.py +++ b/python/samples/03-workflows/agents/group_chat_workflow_as_agent.py @@ -20,7 +20,7 @@ - The orchestrator coordinates a researcher (chat completions) and a writer (responses API) to solve a task. Prerequisites: -- FOUNDRY_PROJECT_ENDPOINT must be your Azure AI Foundry Agent Service (V2) project endpoint. +- FOUNDRY_PROJECT_ENDPOINT must be your Microsoft Foundry Agent Service (V2) project endpoint. - Environment variables configured for `FoundryChatClient`. """ diff --git a/python/samples/03-workflows/agents/handoff_workflow_as_agent.py b/python/samples/03-workflows/agents/handoff_workflow_as_agent.py index 464f585f090..625344c6c7e 100644 --- a/python/samples/03-workflows/agents/handoff_workflow_as_agent.py +++ b/python/samples/03-workflows/agents/handoff_workflow_as_agent.py @@ -29,7 +29,7 @@ them to transfer control to each other based on the conversation context. Prerequisites: - - FOUNDRY_PROJECT_ENDPOINT must be your Azure AI Foundry Agent Service (V2) project endpoint. + - FOUNDRY_PROJECT_ENDPOINT must be your Microsoft Foundry Agent Service (V2) project endpoint. - `az login` (Azure CLI authentication) - Environment variables configured for FoundryChatClient (FOUNDRY_MODEL) diff --git a/python/samples/03-workflows/agents/magentic_workflow_as_agent.py b/python/samples/03-workflows/agents/magentic_workflow_as_agent.py index 488cd91f20b..a53923d78bc 100644 --- a/python/samples/03-workflows/agents/magentic_workflow_as_agent.py +++ b/python/samples/03-workflows/agents/magentic_workflow_as_agent.py @@ -22,7 +22,7 @@ like any other agent while still emitting callback telemetry. Prerequisites: -- FOUNDRY_PROJECT_ENDPOINT must be your Azure AI Foundry Agent Service (V2) project endpoint. +- FOUNDRY_PROJECT_ENDPOINT must be your Microsoft Foundry Agent Service (V2) project endpoint. - FOUNDRY_MODEL must be set to your Azure OpenAI model deployment name. """ diff --git a/python/samples/03-workflows/agents/workflow_as_agent_human_in_the_loop.py b/python/samples/03-workflows/agents/workflow_as_agent_human_in_the_loop.py index f6e8fc3a2c4..54ce8973d87 100644 --- a/python/samples/03-workflows/agents/workflow_as_agent_human_in_the_loop.py +++ b/python/samples/03-workflows/agents/workflow_as_agent_human_in_the_loop.py @@ -46,7 +46,7 @@ to the Worker. The workflow completes when idle. Prerequisites: -- FOUNDRY_PROJECT_ENDPOINT must be your Azure AI Foundry Agent Service (V2) project endpoint. +- FOUNDRY_PROJECT_ENDPOINT must be your Microsoft Foundry Agent Service (V2) project endpoint. - FOUNDRY_MODEL must be set to your Azure OpenAI model deployment name. - Familiarity with WorkflowBuilder, Executor, and WorkflowContext from agent_framework. - Understanding of request-response message handling in executors. diff --git a/python/samples/03-workflows/agents/workflow_as_agent_kwargs.py b/python/samples/03-workflows/agents/workflow_as_agent_kwargs.py index fe3e1e0e396..d582caac3cc 100644 --- a/python/samples/03-workflows/agents/workflow_as_agent_kwargs.py +++ b/python/samples/03-workflows/agents/workflow_as_agent_kwargs.py @@ -34,7 +34,7 @@ - To maintain a consistent agent interface for callers Prerequisites: -- FOUNDRY_PROJECT_ENDPOINT must be your Azure AI Foundry Agent Service (V2) project endpoint. +- FOUNDRY_PROJECT_ENDPOINT must be your Microsoft Foundry Agent Service (V2) project endpoint. - FOUNDRY_MODEL must be set to your Azure OpenAI model deployment name. """ diff --git a/python/samples/03-workflows/agents/workflow_as_agent_reflection_pattern.py b/python/samples/03-workflows/agents/workflow_as_agent_reflection_pattern.py index 705b5bacb47..5c6a152544a 100644 --- a/python/samples/03-workflows/agents/workflow_as_agent_reflection_pattern.py +++ b/python/samples/03-workflows/agents/workflow_as_agent_reflection_pattern.py @@ -39,7 +39,7 @@ - State management for pending requests and retry logic. Prerequisites: -- FOUNDRY_PROJECT_ENDPOINT must be your Azure AI Foundry Agent Service (V2) project endpoint. +- FOUNDRY_PROJECT_ENDPOINT must be your Microsoft Foundry Agent Service (V2) project endpoint. - FOUNDRY_MODEL must be set to your Azure OpenAI model deployment name. - Familiarity with WorkflowBuilder, Executor, WorkflowContext, and event handling. - Understanding of how agent messages are generated, reviewed, and re-submitted. diff --git a/python/samples/03-workflows/agents/workflow_as_agent_with_session.py b/python/samples/03-workflows/agents/workflow_as_agent_with_session.py index 7d65b36492f..7b2504ef307 100644 --- a/python/samples/03-workflows/agents/workflow_as_agent_with_session.py +++ b/python/samples/03-workflows/agents/workflow_as_agent_with_session.py @@ -37,7 +37,7 @@ - Long-running workflows that need pause/resume capability Prerequisites: -- FOUNDRY_PROJECT_ENDPOINT must be your Azure AI Foundry Agent Service (V2) project endpoint. +- FOUNDRY_PROJECT_ENDPOINT must be your Microsoft Foundry Agent Service (V2) project endpoint. - FOUNDRY_MODEL must be set to your Azure OpenAI model deployment name. """ diff --git a/python/samples/03-workflows/checkpoint/cosmos_workflow_checkpointing_foundry.py b/python/samples/03-workflows/checkpoint/cosmos_workflow_checkpointing_foundry.py index 7d4f6ad17fb..09188727278 100644 --- a/python/samples/03-workflows/checkpoint/cosmos_workflow_checkpointing_foundry.py +++ b/python/samples/03-workflows/checkpoint/cosmos_workflow_checkpointing_foundry.py @@ -1,11 +1,11 @@ # Copyright (c) Microsoft. All rights reserved. # ruff: noqa: T201 -"""Sample: Workflow Checkpointing with Cosmos DB and Azure AI Foundry. +"""Sample: Workflow Checkpointing with Cosmos DB and Microsoft Foundry. Purpose: This sample demonstrates how to use CosmosCheckpointStorage with agents built -on Azure AI Foundry (via FoundryChatClient). It shows a multi-agent +on Microsoft Foundry (via FoundryChatClient). It shows a multi-agent workflow where checkpoint state is persisted to Cosmos DB, enabling durable pause-and-resume across process restarts. @@ -20,7 +20,7 @@ - These are complementary: sessions track conversation, checkpoints track workflow state Environment variables: - FOUNDRY_PROJECT_ENDPOINT - Azure AI Foundry project endpoint + FOUNDRY_PROJECT_ENDPOINT - Microsoft Foundry project endpoint FOUNDRY_MODEL - Model deployment name AZURE_COSMOS_ENDPOINT - Cosmos DB account endpoint AZURE_COSMOS_DATABASE_NAME - Database name @@ -44,7 +44,7 @@ async def main() -> None: - """Run the Azure AI Foundry + Cosmos DB checkpointing sample.""" + """Run the Microsoft Foundry + Cosmos DB checkpointing sample.""" project_endpoint = os.getenv("FOUNDRY_PROJECT_ENDPOINT") model = os.getenv("FOUNDRY_MODEL") cosmos_endpoint = os.getenv("AZURE_COSMOS_ENDPOINT") @@ -71,7 +71,7 @@ async def main() -> None: database_name=cosmos_database_name, container_name=cosmos_container_name, ) as checkpoint_storage: - # Create Azure AI Foundry agents + # Create Microsoft Foundry agents client = FoundryChatClient( project_endpoint=project_endpoint, model=model, diff --git a/python/samples/03-workflows/checkpoint/workflow_as_agent_checkpoint.py b/python/samples/03-workflows/checkpoint/workflow_as_agent_checkpoint.py index 95f7d54b5bc..1bb21908127 100644 --- a/python/samples/03-workflows/checkpoint/workflow_as_agent_checkpoint.py +++ b/python/samples/03-workflows/checkpoint/workflow_as_agent_checkpoint.py @@ -20,7 +20,7 @@ - These are complementary: sessions track conversation, checkpoints track workflow state Prerequisites: -- FOUNDRY_PROJECT_ENDPOINT must be your Azure AI Foundry Agent Service (V2) project endpoint. +- FOUNDRY_PROJECT_ENDPOINT must be your Microsoft Foundry Agent Service (V2) project endpoint. - FOUNDRY_MODEL must be set to your Azure OpenAI model deployment name. """ diff --git a/python/samples/03-workflows/composition/sub_workflow_kwargs.py b/python/samples/03-workflows/composition/sub_workflow_kwargs.py index e5a1c1d4def..e3247aa241c 100644 --- a/python/samples/03-workflows/composition/sub_workflow_kwargs.py +++ b/python/samples/03-workflows/composition/sub_workflow_kwargs.py @@ -33,7 +33,7 @@ - Useful for passing authentication tokens, configuration, or request context Prerequisites: -- FOUNDRY_PROJECT_ENDPOINT must be your Azure AI Foundry Agent Service (V2) project endpoint. +- FOUNDRY_PROJECT_ENDPOINT must be your Microsoft Foundry Agent Service (V2) project endpoint. - FOUNDRY_MODEL must be set to your Azure OpenAI model deployment name. """ diff --git a/python/samples/03-workflows/control-flow/edge_condition.py b/python/samples/03-workflows/control-flow/edge_condition.py index a57da1a126c..083a1e54bf2 100644 --- a/python/samples/03-workflows/control-flow/edge_condition.py +++ b/python/samples/03-workflows/control-flow/edge_condition.py @@ -37,7 +37,7 @@ - Illustrate how to transform one agent's structured result into a new AgentExecutorRequest for a downstream agent. Prerequisites: -- FOUNDRY_PROJECT_ENDPOINT must be your Azure AI Foundry Agent Service (V2) project endpoint. +- FOUNDRY_PROJECT_ENDPOINT must be your Microsoft Foundry Agent Service (V2) project endpoint. - You understand the basics of WorkflowBuilder, executors, and events in this framework. - You know the concept of edge conditions and how they gate routes using a predicate function. - Azure OpenAI access is configured for FoundryChatClient. You should be logged in with Azure CLI (AzureCliCredential) diff --git a/python/samples/03-workflows/control-flow/multi_selection_edge_group.py b/python/samples/03-workflows/control-flow/multi_selection_edge_group.py index 3fb684a5b50..62e64cc46c0 100644 --- a/python/samples/03-workflows/control-flow/multi_selection_edge_group.py +++ b/python/samples/03-workflows/control-flow/multi_selection_edge_group.py @@ -48,7 +48,7 @@ - Apply conditional persistence logic (short vs long emails). Prerequisites: -- FOUNDRY_PROJECT_ENDPOINT must be your Azure AI Foundry Agent Service (V2) project endpoint. +- FOUNDRY_PROJECT_ENDPOINT must be your Microsoft Foundry Agent Service (V2) project endpoint. - Familiarity with WorkflowBuilder, executors, edges, and events. - Understanding of multi-selection edge groups and how their selection function maps to target ids. - Experience with workflow state for persisting and reusing objects. diff --git a/python/samples/03-workflows/control-flow/simple_loop.py b/python/samples/03-workflows/control-flow/simple_loop.py index d5368a480a1..d172c6f9ce0 100644 --- a/python/samples/03-workflows/control-flow/simple_loop.py +++ b/python/samples/03-workflows/control-flow/simple_loop.py @@ -32,7 +32,7 @@ - The workflow completes when the correct number is guessed. Prerequisites: -- FOUNDRY_PROJECT_ENDPOINT must be your Azure AI Foundry Agent Service (V2) project endpoint. +- FOUNDRY_PROJECT_ENDPOINT must be your Microsoft Foundry Agent Service (V2) project endpoint. - FOUNDRY_MODEL must be set to your Azure OpenAI model deployment name. - Authentication via `azure-identity` — uses `AzureCliCredential()` (run `az login`). """ diff --git a/python/samples/03-workflows/control-flow/switch_case_edge_group.py b/python/samples/03-workflows/control-flow/switch_case_edge_group.py index 8f85e075760..8f7e022207e 100644 --- a/python/samples/03-workflows/control-flow/switch_case_edge_group.py +++ b/python/samples/03-workflows/control-flow/switch_case_edge_group.py @@ -44,7 +44,7 @@ - Use ctx.yield_output() to provide workflow results - the workflow completes when idle with no pending work. Prerequisites: -- FOUNDRY_PROJECT_ENDPOINT must be your Azure AI Foundry Agent Service (V2) project endpoint. +- FOUNDRY_PROJECT_ENDPOINT must be your Microsoft Foundry Agent Service (V2) project endpoint. - Familiarity with WorkflowBuilder, executors, edges, and events. - Understanding of switch-case edge groups and how Case and Default are evaluated in order. - Working Azure OpenAI configuration for FoundryChatClient, with Azure CLI login and required environment variables. diff --git a/python/samples/03-workflows/declarative/marketing/README.md b/python/samples/03-workflows/declarative/marketing/README.md index 0947d0ea0a4..27dfb6758c4 100644 --- a/python/samples/03-workflows/declarative/marketing/README.md +++ b/python/samples/03-workflows/declarative/marketing/README.md @@ -50,7 +50,7 @@ An eco-friendly stainless steel water bottle that keeps drinks cold for 24 hours ## Configuration -For production use, configure these agents in Azure AI Foundry: +For production use, configure these agents in Microsoft Foundry: ### AnalystAgent ``` diff --git a/python/samples/03-workflows/declarative/student_teacher/README.md b/python/samples/03-workflows/declarative/student_teacher/README.md index 139ffcf26e3..407a19a5f16 100644 --- a/python/samples/03-workflows/declarative/student_teacher/README.md +++ b/python/samples/03-workflows/declarative/student_teacher/README.md @@ -41,7 +41,7 @@ How would you compute the value of PI? ## Configuration -For production use, configure these agents in Azure AI Foundry: +For production use, configure these agents in Microsoft Foundry: ### StudentAgent ``` diff --git a/python/samples/03-workflows/declarative/student_teacher/main.py b/python/samples/03-workflows/declarative/student_teacher/main.py index f9c47fd151b..049e5f6bec5 100644 --- a/python/samples/03-workflows/declarative/student_teacher/main.py +++ b/python/samples/03-workflows/declarative/student_teacher/main.py @@ -15,7 +15,7 @@ Prerequisites: - Azure OpenAI deployment with chat completion capability - Environment variables: - FOUNDRY_PROJECT_ENDPOINT: Your Azure AI Foundry Agent Service (V2) project endpoint + FOUNDRY_PROJECT_ENDPOINT: Your Microsoft Foundry Agent Service (V2) project endpoint FOUNDRY_MODEL: Your model deployment name """ diff --git a/python/samples/03-workflows/human-in-the-loop/agents_with_HITL.py b/python/samples/03-workflows/human-in-the-loop/agents_with_HITL.py index ec7a97aa1b7..b7a28fba735 100644 --- a/python/samples/03-workflows/human-in-the-loop/agents_with_HITL.py +++ b/python/samples/03-workflows/human-in-the-loop/agents_with_HITL.py @@ -43,7 +43,7 @@ - Handling human feedback and routing it to the appropriate agents. Prerequisites: -- FOUNDRY_PROJECT_ENDPOINT must be your Azure AI Foundry Agent Service (V2) project endpoint. +- FOUNDRY_PROJECT_ENDPOINT must be your Microsoft Foundry Agent Service (V2) project endpoint. - FOUNDRY_MODEL must be set to your Azure OpenAI model deployment name. - Authentication via azure-identity. Run `az login` before executing. """ diff --git a/python/samples/03-workflows/human-in-the-loop/agents_with_approval_requests.py b/python/samples/03-workflows/human-in-the-loop/agents_with_approval_requests.py index 6889914dfd7..187b6614067 100644 --- a/python/samples/03-workflows/human-in-the-loop/agents_with_approval_requests.py +++ b/python/samples/03-workflows/human-in-the-loop/agents_with_approval_requests.py @@ -52,7 +52,7 @@ - Handling approval requests during workflow execution. Prerequisites: -- FOUNDRY_PROJECT_ENDPOINT must be your Azure AI Foundry Agent Service (V2) project endpoint. +- FOUNDRY_PROJECT_ENDPOINT must be your Microsoft Foundry Agent Service (V2) project endpoint. - FOUNDRY_MODEL must be set to your Azure OpenAI model deployment name. - Authentication via azure-identity. Use AzureCliCredential and run az login before executing the sample. - Basic familiarity with WorkflowBuilder, edges, events, request_info events (type='request_info'), and streaming runs. diff --git a/python/samples/03-workflows/human-in-the-loop/agents_with_declaration_only_tools.py b/python/samples/03-workflows/human-in-the-loop/agents_with_declaration_only_tools.py index 0c55fb2fc2d..d750c553f0f 100644 --- a/python/samples/03-workflows/human-in-the-loop/agents_with_declaration_only_tools.py +++ b/python/samples/03-workflows/human-in-the-loop/agents_with_declaration_only_tools.py @@ -16,7 +16,7 @@ 4. The workflow resumes — the agent sees the tool result and finishes. Prerequisites: - - FOUNDRY_PROJECT_ENDPOINT must be your Azure AI Foundry Agent Service (V2) project endpoint. + - FOUNDRY_PROJECT_ENDPOINT must be your Microsoft Foundry Agent Service (V2) project endpoint. - Azure OpenAI endpoint configured via environment variables. - `az login` for AzureCliCredential. """ diff --git a/python/samples/03-workflows/human-in-the-loop/concurrent_request_info.py b/python/samples/03-workflows/human-in-the-loop/concurrent_request_info.py index bb5bb3a7111..95d2da6dcea 100644 --- a/python/samples/03-workflows/human-in-the-loop/concurrent_request_info.py +++ b/python/samples/03-workflows/human-in-the-loop/concurrent_request_info.py @@ -17,7 +17,7 @@ - Injecting human guidance for specific agents before aggregation Prerequisites: -- FOUNDRY_PROJECT_ENDPOINT must be your Azure AI Foundry Agent Service (V2) project endpoint. +- FOUNDRY_PROJECT_ENDPOINT must be your Microsoft Foundry Agent Service (V2) project endpoint. - FOUNDRY_MODEL must be set to your Azure OpenAI model deployment name. - Authentication via azure-identity (run az login before executing) """ diff --git a/python/samples/03-workflows/human-in-the-loop/group_chat_request_info.py b/python/samples/03-workflows/human-in-the-loop/group_chat_request_info.py index ff108002ca9..35628560bba 100644 --- a/python/samples/03-workflows/human-in-the-loop/group_chat_request_info.py +++ b/python/samples/03-workflows/human-in-the-loop/group_chat_request_info.py @@ -18,7 +18,7 @@ - Steering agent behavior with pre-agent human input Prerequisites: -- FOUNDRY_PROJECT_ENDPOINT must be your Azure AI Foundry Agent Service (V2) project endpoint. +- FOUNDRY_PROJECT_ENDPOINT must be your Microsoft Foundry Agent Service (V2) project endpoint. - FOUNDRY_MODEL must be set to your Azure OpenAI model deployment name. - Authentication via azure-identity (run az login before executing) """ diff --git a/python/samples/03-workflows/human-in-the-loop/guessing_game_with_human_input.py b/python/samples/03-workflows/human-in-the-loop/guessing_game_with_human_input.py index f72d9e68049..7e9ff3e04ad 100644 --- a/python/samples/03-workflows/human-in-the-loop/guessing_game_with_human_input.py +++ b/python/samples/03-workflows/human-in-the-loop/guessing_game_with_human_input.py @@ -45,7 +45,7 @@ - Driving the loop in application code with run and responses parameter. Prerequisites: -- FOUNDRY_PROJECT_ENDPOINT must be your Azure AI Foundry Agent Service (V2) project endpoint. +- FOUNDRY_PROJECT_ENDPOINT must be your Microsoft Foundry Agent Service (V2) project endpoint. - FOUNDRY_MODEL must be set to your Azure OpenAI model deployment name. - Authentication via azure-identity. Use AzureCliCredential and run az login before executing the sample. - Basic familiarity with WorkflowBuilder, executors, edges, events, and streaming runs. diff --git a/python/samples/03-workflows/human-in-the-loop/sequential_request_info.py b/python/samples/03-workflows/human-in-the-loop/sequential_request_info.py index 3b9d1f0e335..03b047f897d 100644 --- a/python/samples/03-workflows/human-in-the-loop/sequential_request_info.py +++ b/python/samples/03-workflows/human-in-the-loop/sequential_request_info.py @@ -17,7 +17,7 @@ - Injecting responses back into the workflow via run(responses=..., stream=True) Prerequisites: -- FOUNDRY_PROJECT_ENDPOINT must be your Azure AI Foundry Agent Service (V2) project endpoint. +- FOUNDRY_PROJECT_ENDPOINT must be your Microsoft Foundry Agent Service (V2) project endpoint. - FOUNDRY_MODEL must be set to your Azure OpenAI model deployment name. - Authentication via azure-identity (run az login before executing) """ diff --git a/python/samples/03-workflows/orchestrations/README.md b/python/samples/03-workflows/orchestrations/README.md index c0cd65b650c..47aa0d29a7f 100644 --- a/python/samples/03-workflows/orchestrations/README.md +++ b/python/samples/03-workflows/orchestrations/README.md @@ -139,7 +139,7 @@ patterns like Sequential, Concurrent, Handoff, GroupChat, and Magentic. Orchestration samples that use `FoundryChatClient` expect: -- `FOUNDRY_PROJECT_ENDPOINT` (Azure AI Foundry Agent Service (V2) project endpoint) +- `FOUNDRY_PROJECT_ENDPOINT` (Microsoft Foundry Agent Service (V2) project endpoint) - `FOUNDRY_MODEL` (model deployment name) These values are passed directly into the client constructor via `os.getenv()` in sample code. diff --git a/python/samples/03-workflows/orchestrations/concurrent_agents.py b/python/samples/03-workflows/orchestrations/concurrent_agents.py index 7e90ff1bda0..30aea5936f7 100644 --- a/python/samples/03-workflows/orchestrations/concurrent_agents.py +++ b/python/samples/03-workflows/orchestrations/concurrent_agents.py @@ -27,7 +27,7 @@ - Workflow completion when idle with no pending work Prerequisites: -- FOUNDRY_PROJECT_ENDPOINT must be your Azure AI Foundry Agent Service (V2) project endpoint. +- FOUNDRY_PROJECT_ENDPOINT must be your Microsoft Foundry Agent Service (V2) project endpoint. - FOUNDRY_MODEL must be set to your Azure OpenAI model deployment name. - Authentication via azure-identity. Use AzureCliCredential and run az login before executing the sample. - Familiarity with Workflow events (WorkflowEvent) diff --git a/python/samples/03-workflows/orchestrations/concurrent_custom_agent_executors.py b/python/samples/03-workflows/orchestrations/concurrent_custom_agent_executors.py index 4ebdf4cecaf..c1ccf227807 100644 --- a/python/samples/03-workflows/orchestrations/concurrent_custom_agent_executors.py +++ b/python/samples/03-workflows/orchestrations/concurrent_custom_agent_executors.py @@ -37,7 +37,7 @@ - Workflow completion when all participants become idle Prerequisites: -- FOUNDRY_PROJECT_ENDPOINT must be your Azure AI Foundry Agent Service (V2) project endpoint. +- FOUNDRY_PROJECT_ENDPOINT must be your Microsoft Foundry Agent Service (V2) project endpoint. - FOUNDRY_MODEL must be set to your Azure OpenAI model deployment name. - Authentication via azure-identity. Use AzureCliCredential and run az login before executing the sample. """ diff --git a/python/samples/03-workflows/orchestrations/concurrent_custom_aggregator.py b/python/samples/03-workflows/orchestrations/concurrent_custom_aggregator.py index 8a512f890bc..7f678bbe102 100644 --- a/python/samples/03-workflows/orchestrations/concurrent_custom_aggregator.py +++ b/python/samples/03-workflows/orchestrations/concurrent_custom_aggregator.py @@ -29,7 +29,7 @@ - Workflow output yielded with the synthesized summary string Prerequisites: -- FOUNDRY_PROJECT_ENDPOINT must be your Azure AI Foundry Agent Service (V2) project endpoint. +- FOUNDRY_PROJECT_ENDPOINT must be your Microsoft Foundry Agent Service (V2) project endpoint. - FOUNDRY_MODEL must be set to your Azure OpenAI model deployment name. - Authentication via azure-identity. Use AzureCliCredential and run az login before executing the sample. """ diff --git a/python/samples/03-workflows/orchestrations/group_chat_agent_manager.py b/python/samples/03-workflows/orchestrations/group_chat_agent_manager.py index 079f66ba5c2..70e11e24c06 100644 --- a/python/samples/03-workflows/orchestrations/group_chat_agent_manager.py +++ b/python/samples/03-workflows/orchestrations/group_chat_agent_manager.py @@ -26,7 +26,7 @@ - Coordinates a researcher and writer agent to solve tasks collaboratively Prerequisites: -- FOUNDRY_PROJECT_ENDPOINT must be your Azure AI Foundry Agent Service (V2) project endpoint. +- FOUNDRY_PROJECT_ENDPOINT must be your Microsoft Foundry Agent Service (V2) project endpoint. - FOUNDRY_MODEL must be set to your Azure OpenAI model deployment name. - Authentication via azure-identity. Use AzureCliCredential and run az login before executing the sample. """ diff --git a/python/samples/03-workflows/orchestrations/group_chat_philosophical_debate.py b/python/samples/03-workflows/orchestrations/group_chat_philosophical_debate.py index 259bd7bd5a0..52cd338d329 100644 --- a/python/samples/03-workflows/orchestrations/group_chat_philosophical_debate.py +++ b/python/samples/03-workflows/orchestrations/group_chat_philosophical_debate.py @@ -39,7 +39,7 @@ - Doctor from Scandinavia (public health, equity, societal support) Prerequisites: -- FOUNDRY_PROJECT_ENDPOINT must be your Azure AI Foundry Agent Service (V2) project endpoint. +- FOUNDRY_PROJECT_ENDPOINT must be your Microsoft Foundry Agent Service (V2) project endpoint. - FOUNDRY_MODEL must be set to your Azure OpenAI model deployment name. - Authentication via azure-identity. Use AzureCliCredential and run az login before executing the sample. """ diff --git a/python/samples/03-workflows/orchestrations/group_chat_simple_selector.py b/python/samples/03-workflows/orchestrations/group_chat_simple_selector.py index fb20dcca593..07d8a195d8b 100644 --- a/python/samples/03-workflows/orchestrations/group_chat_simple_selector.py +++ b/python/samples/03-workflows/orchestrations/group_chat_simple_selector.py @@ -25,7 +25,7 @@ - Uses a pure Python function to control speaker selection based on conversation state Prerequisites: -- FOUNDRY_PROJECT_ENDPOINT must be your Azure AI Foundry Agent Service (V2) project endpoint. +- FOUNDRY_PROJECT_ENDPOINT must be your Microsoft Foundry Agent Service (V2) project endpoint. - FOUNDRY_MODEL must be set to your Azure OpenAI model deployment name. - Authentication via azure-identity. Use AzureCliCredential and run az login before executing the sample. """ diff --git a/python/samples/03-workflows/orchestrations/handoff_autonomous.py b/python/samples/03-workflows/orchestrations/handoff_autonomous.py index 7d192f5748d..8ae1a5204a6 100644 --- a/python/samples/03-workflows/orchestrations/handoff_autonomous.py +++ b/python/samples/03-workflows/orchestrations/handoff_autonomous.py @@ -29,7 +29,7 @@ User -> Coordinator -> Specialist (iterates N times) -> Handoff -> Final Output Prerequisites: - - FOUNDRY_PROJECT_ENDPOINT must be your Azure AI Foundry Agent Service (V2) project endpoint. + - FOUNDRY_PROJECT_ENDPOINT must be your Microsoft Foundry Agent Service (V2) project endpoint. - Azure OpenAI configured for FoundryChatClient with required environment variables. - Authentication via azure-identity. Use AzureCliCredential and run `az login` before executing the sample. diff --git a/python/samples/03-workflows/orchestrations/handoff_simple.py b/python/samples/03-workflows/orchestrations/handoff_simple.py index a95377f92c2..60ca155bb86 100644 --- a/python/samples/03-workflows/orchestrations/handoff_simple.py +++ b/python/samples/03-workflows/orchestrations/handoff_simple.py @@ -26,7 +26,7 @@ them to transfer control to each other based on the conversation context. Prerequisites: - - FOUNDRY_PROJECT_ENDPOINT must be your Azure AI Foundry Agent Service (V2) project endpoint. + - FOUNDRY_PROJECT_ENDPOINT must be your Microsoft Foundry Agent Service (V2) project endpoint. - FOUNDRY_MODEL must be set to your Azure OpenAI model deployment name. - Authentication via azure-identity. Use AzureCliCredential and run `az login` before executing the sample. diff --git a/python/samples/03-workflows/orchestrations/handoff_with_code_interpreter_file.py b/python/samples/03-workflows/orchestrations/handoff_with_code_interpreter_file.py index e3b461eec65..b6c3e67a0db 100644 --- a/python/samples/03-workflows/orchestrations/handoff_with_code_interpreter_file.py +++ b/python/samples/03-workflows/orchestrations/handoff_with_code_interpreter_file.py @@ -12,7 +12,7 @@ HandoffBuilder workflows can be properly retrieved. Prerequisites: - - FOUNDRY_PROJECT_ENDPOINT must be your Azure AI Foundry Agent Service (V2) project endpoint. + - FOUNDRY_PROJECT_ENDPOINT must be your Microsoft Foundry Agent Service (V2) project endpoint. - FOUNDRY_MODEL must be set to your Azure OpenAI model deployment name. - `az login` (Azure CLI authentication) """ diff --git a/python/samples/03-workflows/orchestrations/handoff_with_tool_approval_checkpoint_resume.py b/python/samples/03-workflows/orchestrations/handoff_with_tool_approval_checkpoint_resume.py index b27fa6ce6f1..4dfeba3bbc3 100644 --- a/python/samples/03-workflows/orchestrations/handoff_with_tool_approval_checkpoint_resume.py +++ b/python/samples/03-workflows/orchestrations/handoff_with_tool_approval_checkpoint_resume.py @@ -45,7 +45,7 @@ workflow.run(stream=True, checkpoint_id=..., responses=responses).) Prerequisites: -- FOUNDRY_PROJECT_ENDPOINT must be your Azure AI Foundry Agent Service (V2) project endpoint. +- FOUNDRY_PROJECT_ENDPOINT must be your Microsoft Foundry Agent Service (V2) project endpoint. - FOUNDRY_MODEL must be set to your Azure OpenAI model deployment name. - Azure CLI authentication (az login). """ diff --git a/python/samples/03-workflows/orchestrations/magentic.py b/python/samples/03-workflows/orchestrations/magentic.py index f750626955a..263408aa5b0 100644 --- a/python/samples/03-workflows/orchestrations/magentic.py +++ b/python/samples/03-workflows/orchestrations/magentic.py @@ -42,7 +42,7 @@ events, and prints the final answer. The workflow completes when idle. Prerequisites: -- FOUNDRY_PROJECT_ENDPOINT must be your Azure AI Foundry Agent Service (V2) project endpoint. +- FOUNDRY_PROJECT_ENDPOINT must be your Microsoft Foundry Agent Service (V2) project endpoint. - FOUNDRY_MODEL must be set to your Azure OpenAI model deployment name. - Authentication via azure-identity. Use AzureCliCredential and run az login before executing the sample. """ diff --git a/python/samples/03-workflows/orchestrations/magentic_checkpoint.py b/python/samples/03-workflows/orchestrations/magentic_checkpoint.py index df606a5a437..7c653f810b6 100644 --- a/python/samples/03-workflows/orchestrations/magentic_checkpoint.py +++ b/python/samples/03-workflows/orchestrations/magentic_checkpoint.py @@ -39,7 +39,7 @@ `responses` mapping so we can inject the stored human reply during restoration. Prerequisites: -- FOUNDRY_PROJECT_ENDPOINT must be your Azure AI Foundry Agent Service (V2) project endpoint. +- FOUNDRY_PROJECT_ENDPOINT must be your Microsoft Foundry Agent Service (V2) project endpoint. - FOUNDRY_MODEL must be set to your Azure OpenAI model deployment name. - Authentication via azure-identity. Use AzureCliCredential and run az login before executing the sample. """ diff --git a/python/samples/03-workflows/orchestrations/magentic_human_plan_review.py b/python/samples/03-workflows/orchestrations/magentic_human_plan_review.py index e6e254ed0d6..813dd996508 100644 --- a/python/samples/03-workflows/orchestrations/magentic_human_plan_review.py +++ b/python/samples/03-workflows/orchestrations/magentic_human_plan_review.py @@ -37,7 +37,7 @@ - revise(feedback): Provide textual feedback to modify the plan Prerequisites: -- FOUNDRY_PROJECT_ENDPOINT must be your Azure AI Foundry Agent Service (V2) project endpoint. +- FOUNDRY_PROJECT_ENDPOINT must be your Microsoft Foundry Agent Service (V2) project endpoint. - FOUNDRY_MODEL must be set to your Azure OpenAI model deployment name. - Authentication via azure-identity. Use AzureCliCredential and run az login before executing the sample. """ diff --git a/python/samples/03-workflows/orchestrations/sequential_agents.py b/python/samples/03-workflows/orchestrations/sequential_agents.py index 62d3aa54f89..03e3fdc3c1a 100644 --- a/python/samples/03-workflows/orchestrations/sequential_agents.py +++ b/python/samples/03-workflows/orchestrations/sequential_agents.py @@ -29,7 +29,7 @@ You can safely ignore them when focusing on agent progress. Prerequisites: -- FOUNDRY_PROJECT_ENDPOINT must be your Azure AI Foundry Agent Service (V2) project endpoint. +- FOUNDRY_PROJECT_ENDPOINT must be your Microsoft Foundry Agent Service (V2) project endpoint. - FOUNDRY_MODEL must be set to your Azure OpenAI model deployment name. - Authentication via azure-identity. Use AzureCliCredential and run az login before executing the sample. """ diff --git a/python/samples/03-workflows/orchestrations/sequential_chain_only_agent_responses.py b/python/samples/03-workflows/orchestrations/sequential_chain_only_agent_responses.py index d28fc499359..9150da0c539 100644 --- a/python/samples/03-workflows/orchestrations/sequential_chain_only_agent_responses.py +++ b/python/samples/03-workflows/orchestrations/sequential_chain_only_agent_responses.py @@ -25,7 +25,7 @@ conversation context is passed to each agent. Prerequisites: -- FOUNDRY_PROJECT_ENDPOINT must be your Azure AI Foundry Agent Service (V2) project endpoint. +- FOUNDRY_PROJECT_ENDPOINT must be your Microsoft Foundry Agent Service (V2) project endpoint. - FOUNDRY_MODEL must be the deployment name of a model in your Foundry project. - Authentication via azure-identity. Use AzureCliCredential and run az login before executing the sample. """ diff --git a/python/samples/03-workflows/orchestrations/sequential_custom_executors.py b/python/samples/03-workflows/orchestrations/sequential_custom_executors.py index b907c24cdb9..5ad777f2530 100644 --- a/python/samples/03-workflows/orchestrations/sequential_custom_executors.py +++ b/python/samples/03-workflows/orchestrations/sequential_custom_executors.py @@ -36,7 +36,7 @@ yield the workflow's final answer as an `AgentResponse` via `ctx.yield_output(...)`. Prerequisites: -- FOUNDRY_PROJECT_ENDPOINT must be your Azure AI Foundry Agent Service (V2) project endpoint. +- FOUNDRY_PROJECT_ENDPOINT must be your Microsoft Foundry Agent Service (V2) project endpoint. - FOUNDRY_MODEL must be set to your Azure OpenAI model deployment name. - Authentication via azure-identity. Use AzureCliCredential and run az login before executing the sample. """ diff --git a/python/samples/03-workflows/parallelism/fan_out_fan_in_edges.py b/python/samples/03-workflows/parallelism/fan_out_fan_in_edges.py index 4378dd09164..b2bc8dd0036 100644 --- a/python/samples/03-workflows/parallelism/fan_out_fan_in_edges.py +++ b/python/samples/03-workflows/parallelism/fan_out_fan_in_edges.py @@ -36,7 +36,7 @@ - Fan in by collecting a list of AgentExecutorResponse objects and reducing them to a single result. Prerequisites: -- FOUNDRY_PROJECT_ENDPOINT must be your Azure AI Foundry Agent Service (V2) project endpoint. +- FOUNDRY_PROJECT_ENDPOINT must be your Microsoft Foundry Agent Service (V2) project endpoint. - FOUNDRY_MODEL must be set to your Azure OpenAI model deployment name. - Familiarity with WorkflowBuilder, executors, edges, events, and streaming runs. - Comfort reading AgentExecutorResponse.agent_response.text for assistant output aggregation. diff --git a/python/samples/03-workflows/state-management/state_with_agents.py b/python/samples/03-workflows/state-management/state_with_agents.py index f79d92715e4..bb6efb240fe 100644 --- a/python/samples/03-workflows/state-management/state_with_agents.py +++ b/python/samples/03-workflows/state-management/state_with_agents.py @@ -40,7 +40,7 @@ - Compose agent backed executors with function style executors and yield the final output when the workflow completes. Prerequisites: -- FOUNDRY_PROJECT_ENDPOINT must be your Azure AI Foundry Agent Service (V2) project endpoint. +- FOUNDRY_PROJECT_ENDPOINT must be your Microsoft Foundry Agent Service (V2) project endpoint. - FOUNDRY_MODEL must be set to your Azure OpenAI model deployment name. - Authentication via azure-identity. Use AzureCliCredential and run az login before executing the sample. - Familiarity with WorkflowBuilder, executors, conditional edges, and streaming runs. diff --git a/python/samples/03-workflows/state-management/workflow_kwargs_global.py b/python/samples/03-workflows/state-management/workflow_kwargs_global.py index 89f0c1672e0..ea6351ab254 100644 --- a/python/samples/03-workflows/state-management/workflow_kwargs_global.py +++ b/python/samples/03-workflows/state-management/workflow_kwargs_global.py @@ -31,7 +31,7 @@ - @tool functions receive kwargs via the **kwargs parameter Prerequisites: -- FOUNDRY_PROJECT_ENDPOINT must be your Azure AI Foundry Agent Service (V2) project endpoint. +- FOUNDRY_PROJECT_ENDPOINT must be your Microsoft Foundry Agent Service (V2) project endpoint. - Environment variables configured """ diff --git a/python/samples/03-workflows/state-management/workflow_kwargs_per_agent.py b/python/samples/03-workflows/state-management/workflow_kwargs_per_agent.py index d35d4093018..7b51f357cd9 100644 --- a/python/samples/03-workflows/state-management/workflow_kwargs_per_agent.py +++ b/python/samples/03-workflows/state-management/workflow_kwargs_per_agent.py @@ -29,7 +29,7 @@ - Useful when different agents need different credentials, configs, or context Prerequisites: -- FOUNDRY_PROJECT_ENDPOINT must be your Azure AI Foundry Agent Service (V2) project endpoint. +- FOUNDRY_PROJECT_ENDPOINT must be your Microsoft Foundry Agent Service (V2) project endpoint. - Environment variables configured """ diff --git a/python/samples/03-workflows/tool-approval/concurrent_builder_tool_approval.py b/python/samples/03-workflows/tool-approval/concurrent_builder_tool_approval.py index d3eeea0a9b0..9573de88dfe 100644 --- a/python/samples/03-workflows/tool-approval/concurrent_builder_tool_approval.py +++ b/python/samples/03-workflows/tool-approval/concurrent_builder_tool_approval.py @@ -45,7 +45,7 @@ - Understanding that approval pauses only the agent that triggered it, not all agents. Prerequisites: -- FOUNDRY_PROJECT_ENDPOINT must be your Azure AI Foundry Agent Service (V2) project endpoint. +- FOUNDRY_PROJECT_ENDPOINT must be your Microsoft Foundry Agent Service (V2) project endpoint. - FOUNDRY_MODEL must be set to your Azure OpenAI model deployment name. - Basic familiarity with ConcurrentBuilder and streaming workflow events. """ diff --git a/python/samples/03-workflows/tool-approval/group_chat_builder_tool_approval.py b/python/samples/03-workflows/tool-approval/group_chat_builder_tool_approval.py index 6d0612e838a..f87b6f97a6b 100644 --- a/python/samples/03-workflows/tool-approval/group_chat_builder_tool_approval.py +++ b/python/samples/03-workflows/tool-approval/group_chat_builder_tool_approval.py @@ -44,7 +44,7 @@ - Multi-round group chat with tool approval interruption and resumption. Prerequisites: -- FOUNDRY_PROJECT_ENDPOINT must be your Azure AI Foundry Agent Service (V2) project endpoint. +- FOUNDRY_PROJECT_ENDPOINT must be your Microsoft Foundry Agent Service (V2) project endpoint. - FOUNDRY_MODEL must be set to your Azure OpenAI model deployment name. - Basic familiarity with GroupChatBuilder and streaming workflow events. """ diff --git a/python/samples/03-workflows/tool-approval/sequential_builder_tool_approval.py b/python/samples/03-workflows/tool-approval/sequential_builder_tool_approval.py index 7e95564d443..6e7221124d5 100644 --- a/python/samples/03-workflows/tool-approval/sequential_builder_tool_approval.py +++ b/python/samples/03-workflows/tool-approval/sequential_builder_tool_approval.py @@ -45,7 +45,7 @@ - Resuming workflow execution after approval via run(responses=..., stream=True). Prerequisites: -- FOUNDRY_PROJECT_ENDPOINT must be your Azure AI Foundry Agent Service (V2) project endpoint. +- FOUNDRY_PROJECT_ENDPOINT must be your Microsoft Foundry Agent Service (V2) project endpoint. - FOUNDRY_MODEL must be set to your Azure OpenAI model deployment name. - Basic familiarity with SequentialBuilder and streaming workflow events. """ diff --git a/python/samples/03-workflows/visualization/concurrent_with_visualization.py b/python/samples/03-workflows/visualization/concurrent_with_visualization.py index 2af15a16d0f..b3b10189523 100644 --- a/python/samples/03-workflows/visualization/concurrent_with_visualization.py +++ b/python/samples/03-workflows/visualization/concurrent_with_visualization.py @@ -33,7 +33,7 @@ - Visualization: generate Mermaid and GraphViz representations via `WorkflowViz` and optionally export SVG. Prerequisites: -- FOUNDRY_PROJECT_ENDPOINT must be your Azure AI Foundry Agent Service (V2) project endpoint. +- FOUNDRY_PROJECT_ENDPOINT must be your Microsoft Foundry Agent Service (V2) project endpoint. - FOUNDRY_MODEL must be set to your Azure OpenAI model deployment name. - Authentication via `azure-identity` — uses `AzureCliCredential()` (run `az login`). - For visualization export: `pip install graphviz>=0.20.0` and install GraphViz binaries. diff --git a/python/samples/04-hosting/README.md b/python/samples/04-hosting/README.md index ed44ed0d942..351039b8d66 100644 --- a/python/samples/04-hosting/README.md +++ b/python/samples/04-hosting/README.md @@ -9,21 +9,21 @@ This directory contains Python samples that demonstrate different ways to host A | A2A | Agent-to-Agent protocol interoperability or remote agent invocation. | [`a2a/README.md`](./a2a/README.md) | | Azure Functions | HTTP or serverless hosting on Azure Functions. | [`azure_functions/README.md`](./azure_functions/README.md) | | Durable Task | Durable execution, long-running flows, or orchestration patterns. | [`durabletask/README.md`](./durabletask/README.md) | -| Foundry Hosted Agents | Azure AI Foundry hosted agent deployment. | [`foundry-hosted-agents/README.md`](./foundry-hosted-agents/README.md) | +| Foundry Hosted Agents | Microsoft Foundry hosted agent deployment. | [`foundry-hosted-agents/README.md`](./foundry-hosted-agents/README.md) | ## How to Choose - Start with **A2A** if you want one agent to call or expose another agent over the A2A protocol. - Start with **Azure Functions** if you want an HTTP-hosted or serverless entry point using Azure Functions. - Start with **Durable Task** if you need persistent state, durable workflows, or orchestration across multiple steps. -- Start with **Foundry Hosted Agents** if you want to package and deploy an agent as a hosted agent in Azure AI Foundry. +- Start with **Foundry Hosted Agents** if you want to package and deploy an agent as a hosted agent in Microsoft Foundry. ## Common Prerequisites Most hosting samples share a small set of prerequisites: - A supported Python environment for running the samples locally. -- An Azure AI Foundry project endpoint and model deployment name for `FOUNDRY_PROJECT_ENDPOINT` and `FOUNDRY_MODEL`. +- A Microsoft Foundry project endpoint and model deployment name for `FOUNDRY_PROJECT_ENDPOINT` and `FOUNDRY_MODEL`. - Azure CLI authentication via `az login` when the sample uses `AzureCliCredential`. - Any hosting-specific tools or extra services called out in the subdirectory README. diff --git a/python/samples/04-hosting/a2a/.env.example b/python/samples/04-hosting/a2a/.env.example index 91f0530fcdd..b44278e19e4 100644 --- a/python/samples/04-hosting/a2a/.env.example +++ b/python/samples/04-hosting/a2a/.env.example @@ -1,4 +1,4 @@ -# Azure AI Foundry Configuration (required for a2a_server.py and a2a_agent_as_function_tools.py) +# Microsoft Foundry Configuration (required for a2a_server.py and a2a_agent_as_function_tools.py) FOUNDRY_PROJECT_ENDPOINT=https://your-project.services.ai.azure.com/api/projects/your-project FOUNDRY_MODEL=gpt-4o diff --git a/python/samples/04-hosting/a2a/README.md b/python/samples/04-hosting/a2a/README.md index c187e55b61d..330450e899b 100644 --- a/python/samples/04-hosting/a2a/README.md +++ b/python/samples/04-hosting/a2a/README.md @@ -22,7 +22,7 @@ This sample demonstrates how to **host** Agent Framework agents as A2A-compliant ## Environment Variables ### Required (Server) -- `FOUNDRY_PROJECT_ENDPOINT` — Your Azure AI Foundry project endpoint +- `FOUNDRY_PROJECT_ENDPOINT` — Your Microsoft Foundry project endpoint - `FOUNDRY_MODEL` — Model deployment name (e.g. `gpt-4o`) ## Quick Start diff --git a/python/samples/04-hosting/a2a/a2a_server.py b/python/samples/04-hosting/a2a/a2a_server.py index a03eea2a288..059affe817f 100644 --- a/python/samples/04-hosting/a2a/a2a_server.py +++ b/python/samples/04-hosting/a2a/a2a_server.py @@ -36,7 +36,7 @@ uv run python a2a_server.py --agent-type logistics --port 5002 Environment variables: - FOUNDRY_PROJECT_ENDPOINT — Your Azure AI Foundry project endpoint + FOUNDRY_PROJECT_ENDPOINT — Your Microsoft Foundry project endpoint FOUNDRY_MODEL — Model deployment name (e.g. gpt-4o) """ diff --git a/python/samples/04-hosting/azure_functions/08_mcp_server/function_app.py b/python/samples/04-hosting/azure_functions/08_mcp_server/function_app.py index 2271aeb96b7..2662fae6191 100644 --- a/python/samples/04-hosting/azure_functions/08_mcp_server/function_app.py +++ b/python/samples/04-hosting/azure_functions/08_mcp_server/function_app.py @@ -17,8 +17,8 @@ - PlantAdvisor: Both HTTP and MCP tool triggers enabled Required environment variables: -- FOUNDRY_PROJECT_ENDPOINT: Your Azure AI Foundry project endpoint -- FOUNDRY_MODEL: Your Azure AI Foundry deployment name +- FOUNDRY_PROJECT_ENDPOINT: Your Microsoft Foundry project endpoint +- FOUNDRY_MODEL: Your Microsoft Foundry deployment name Authentication uses AzureCliCredential (Azure Identity). """ diff --git a/python/samples/04-hosting/azure_functions/README.md b/python/samples/04-hosting/azure_functions/README.md index 435ec17543b..c1d8527fbba 100644 --- a/python/samples/04-hosting/azure_functions/README.md +++ b/python/samples/04-hosting/azure_functions/README.md @@ -63,7 +63,7 @@ azurite - Install [Azurite storage emulator](https://learn.microsoft.com/en-us/azure/storage/common/storage-install-azurite?toc=%2Fazure%2Fstorage%2Fblobs%2Ftoc.json&bc=%2Fazure%2Fstorage%2Fblobs%2Fbreadcrumb%2Ftoc.json&tabs=visual-studio%2Cblob-storage) -- Create an [Azure AI Foundry project](https://learn.microsoft.com/azure/ai-foundry/) with an OpenAI model deployment. Note the Foundry project endpoint and deployment name, and ensure you can authenticate with `AzureCliCredential`. +- Create a [Microsoft Foundry project](https://learn.microsoft.com/azure/ai-foundry/) with an OpenAI model deployment. Note the Foundry project endpoint and deployment name, and ensure you can authenticate with `AzureCliCredential`. - Install a tool to execute HTTP calls, for example the [REST Client extension](https://marketplace.visualstudio.com/items?itemName=humao.rest-client) diff --git a/python/samples/04-hosting/durabletask/08_workflow/README.md b/python/samples/04-hosting/durabletask/08_workflow/README.md index 0e032693776..5a1fd97e90f 100644 --- a/python/samples/04-hosting/durabletask/08_workflow/README.md +++ b/python/samples/04-hosting/durabletask/08_workflow/README.md @@ -22,7 +22,7 @@ samples (`samples/04-hosting/azure_functions/10_workflow_no_shared_state`). See the [README.md](../README.md) in the parent directory for environment setup. -This sample uses Azure AI Foundry credentials: +This sample uses Microsoft Foundry credentials: - `FOUNDRY_PROJECT_ENDPOINT` - `FOUNDRY_MODEL` diff --git a/python/samples/04-hosting/durabletask/08_workflow/worker.py b/python/samples/04-hosting/durabletask/08_workflow/worker.py index 889e767bb57..bb9f873f0ab 100644 --- a/python/samples/04-hosting/durabletask/08_workflow/worker.py +++ b/python/samples/04-hosting/durabletask/08_workflow/worker.py @@ -120,7 +120,7 @@ def is_spam_detected(message: Any) -> bool: def _create_chat_client() -> FoundryChatClient: - """Create an Azure AI Foundry chat client using AzureCliCredential.""" + """Create a Microsoft Foundry chat client using AzureCliCredential.""" return FoundryChatClient( project_endpoint=os.environ["FOUNDRY_PROJECT_ENDPOINT"], model=os.environ["FOUNDRY_MODEL"], diff --git a/python/samples/04-hosting/durabletask/09_workflow_hitl/README.md b/python/samples/04-hosting/durabletask/09_workflow_hitl/README.md index 653535bc8cd..470d00ba128 100644 --- a/python/samples/04-hosting/durabletask/09_workflow_hitl/README.md +++ b/python/samples/04-hosting/durabletask/09_workflow_hitl/README.md @@ -43,7 +43,7 @@ injection) before delivery, since the worker deserializes it. See the [README.md](../README.md) in the parent directory for environment setup. -This sample uses Azure AI Foundry credentials: +This sample uses Microsoft Foundry credentials: - `FOUNDRY_PROJECT_ENDPOINT` - `FOUNDRY_MODEL` diff --git a/python/samples/04-hosting/durabletask/09_workflow_hitl/worker.py b/python/samples/04-hosting/durabletask/09_workflow_hitl/worker.py index 47198024b6b..7aad1d621cc 100644 --- a/python/samples/04-hosting/durabletask/09_workflow_hitl/worker.py +++ b/python/samples/04-hosting/durabletask/09_workflow_hitl/worker.py @@ -261,7 +261,7 @@ async def handle_result(self, result: ModerationResult, ctx: WorkflowContext[Nev def _create_chat_client() -> FoundryChatClient: - """Create an Azure AI Foundry chat client using AzureCliCredential.""" + """Create a Microsoft Foundry chat client using AzureCliCredential.""" return FoundryChatClient( project_endpoint=os.environ["FOUNDRY_PROJECT_ENDPOINT"], model=os.environ["FOUNDRY_MODEL"], diff --git a/python/samples/04-hosting/durabletask/10_workflow_streaming/README.md b/python/samples/04-hosting/durabletask/10_workflow_streaming/README.md index 32f5a8bc483..2871773f5e8 100644 --- a/python/samples/04-hosting/durabletask/10_workflow_streaming/README.md +++ b/python/samples/04-hosting/durabletask/10_workflow_streaming/README.md @@ -29,7 +29,7 @@ streaming counterpart to [`08_workflow`](../08_workflow/README.md). See the [README.md](../README.md) in the parent directory for environment setup. -This sample uses Azure AI Foundry credentials: +This sample uses Microsoft Foundry credentials: - `FOUNDRY_PROJECT_ENDPOINT` - `FOUNDRY_MODEL` diff --git a/python/samples/04-hosting/durabletask/10_workflow_streaming/worker.py b/python/samples/04-hosting/durabletask/10_workflow_streaming/worker.py index 740ad4435fd..953b6e9dadd 100644 --- a/python/samples/04-hosting/durabletask/10_workflow_streaming/worker.py +++ b/python/samples/04-hosting/durabletask/10_workflow_streaming/worker.py @@ -69,7 +69,7 @@ async def publish(self, agent_response: AgentExecutorResponse, ctx: WorkflowCont def _create_chat_client() -> FoundryChatClient: - """Create an Azure AI Foundry chat client using AzureCliCredential.""" + """Create a Microsoft Foundry chat client using AzureCliCredential.""" return FoundryChatClient( project_endpoint=os.environ["FOUNDRY_PROJECT_ENDPOINT"], model=os.environ["FOUNDRY_MODEL"], diff --git a/python/samples/04-hosting/durabletask/11_subworkflow/README.md b/python/samples/04-hosting/durabletask/11_subworkflow/README.md index 6f6b9f14a3e..dc4c84767e2 100644 --- a/python/samples/04-hosting/durabletask/11_subworkflow/README.md +++ b/python/samples/04-hosting/durabletask/11_subworkflow/README.md @@ -35,7 +35,7 @@ review_pipeline (outer) See the [README.md](../README.md) in the parent directory for environment setup. -This sample uses Azure AI Foundry credentials: +This sample uses Microsoft Foundry credentials: - `FOUNDRY_PROJECT_ENDPOINT` - `FOUNDRY_MODEL` diff --git a/python/samples/04-hosting/durabletask/11_subworkflow/worker.py b/python/samples/04-hosting/durabletask/11_subworkflow/worker.py index 3ba0b0bf5b1..05e41e0a1a1 100644 --- a/python/samples/04-hosting/durabletask/11_subworkflow/worker.py +++ b/python/samples/04-hosting/durabletask/11_subworkflow/worker.py @@ -115,7 +115,7 @@ async def report(self, sentiment_summary: str, ctx: WorkflowContext[Never, str]) def _create_chat_client() -> FoundryChatClient: - """Create an Azure AI Foundry chat client using AzureCliCredential.""" + """Create a Microsoft Foundry chat client using AzureCliCredential.""" return FoundryChatClient( project_endpoint=os.environ["FOUNDRY_PROJECT_ENDPOINT"], model=os.environ["FOUNDRY_MODEL"], diff --git a/python/samples/04-hosting/foundry-hosted-agents/README.md b/python/samples/04-hosting/foundry-hosted-agents/README.md index d85bf7feb2a..a9b9af65910 100644 --- a/python/samples/04-hosting/foundry-hosted-agents/README.md +++ b/python/samples/04-hosting/foundry-hosted-agents/README.md @@ -20,7 +20,7 @@ This directory contains samples that demonstrate how to use hosted [Agent Framew | 7 | [Observability](responses/07_observability/) | A sample demonstrating how to enable observability for the agent deployed to Foundry. | | 8 | [Azure AI Search RAG](responses/08_azure_search_rag/) | An agent with Retrieval Augmented Generation (RAG) capabilities backed by Azure AI Search, grounding answers in documents indexed in a pre-provisioned search index. | | 9 | [Foundry Skills](responses/09_foundry_skills/) | An agent that uploads `SKILL.md` files to the Foundry Skills REST API and downloads them at startup, decoupling tone/policy guidelines from agent code. | -| 10 | [Foundry Memory](responses/10_foundry_memory/) | An agent with persistent semantic memory backed by an Azure AI Foundry Memory Store, using `FoundryMemoryProvider` to remember user facts across sessions. | +| 10 | [Foundry Memory](responses/10_foundry_memory/) | An agent with persistent semantic memory backed by a Microsoft Foundry Memory Store, using `FoundryMemoryProvider` to remember user facts across sessions. | | 11 | [Monty CodeAct](responses/11_monty_codeact/) | An agent with a Monty-backed CodeAct context provider, exposing a single `execute_code` tool that runs Python in a [pydantic-monty](https://github.com/pydantic/monty) interpreter and invokes typed host tools (`compute`, `fetch_data`) from inside the sandbox. Uses the alpha `agent-framework-monty` package. | | 12 | [Foundry Toolbox MCP Skills](responses/12_foundry_toolbox_mcp_skills/) | An agent that discovers MCP-based skills attached to a Foundry Toolbox and serves them via `SkillsProvider(MCPSkillsSource(...))`, fetching `SKILL.md` bodies and supplementary resources on demand. | | 13 | [Using deployed agent](responses/using_deployed_agent.py) | A sample demonstrating how to invoke an agent that has already been deployed to Foundry, showing how to interact with a hosted agent in code. | diff --git a/python/samples/04-hosting/foundry-hosted-agents/responses/04_foundry_toolbox/scripts/list-foundry-connectors.ps1 b/python/samples/04-hosting/foundry-hosted-agents/responses/04_foundry_toolbox/scripts/list-foundry-connectors.ps1 index b2af59b91a0..6a166948a50 100644 --- a/python/samples/04-hosting/foundry-hosted-agents/responses/04_foundry_toolbox/scripts/list-foundry-connectors.ps1 +++ b/python/samples/04-hosting/foundry-hosted-agents/responses/04_foundry_toolbox/scripts/list-foundry-connectors.ps1 @@ -4,7 +4,7 @@ List Foundry Tools Catalog connectors, or fetch full details for one connector. .DESCRIPTION - Queries the Azure AI Foundry Tools Catalog (asset-gallery) connectors registry. + Queries the Microsoft Foundry Tools Catalog (asset-gallery) connectors registry. - With no -ConnectorName: lists all connectors (name, title, detected auth type). - With -ConnectorName: prints the full JSON details for that connector. diff --git a/python/samples/04-hosting/foundry-hosted-agents/responses/08_azure_search_rag/README.md b/python/samples/04-hosting/foundry-hosted-agents/responses/08_azure_search_rag/README.md index 091a1d0d6bf..08702b9466a 100644 --- a/python/samples/04-hosting/foundry-hosted-agents/responses/08_azure_search_rag/README.md +++ b/python/samples/04-hosting/foundry-hosted-agents/responses/08_azure_search_rag/README.md @@ -20,7 +20,7 @@ The agent is hosted using the [Agent Framework](https://github.com/microsoft/age ## Prerequisites -- An Azure AI Foundry project with a deployed model (e.g., `gpt-4.1-mini`) +- A Microsoft Foundry project with a deployed model (e.g., `gpt-4.1-mini`) - An Azure AI Search service ([create one](https://learn.microsoft.com/azure/search/search-create-service-portal)) - **A pre-provisioned search index** with the schema and content described below - Azure CLI logged in (`az login`) diff --git a/python/samples/04-hosting/foundry-hosted-agents/responses/09_foundry_skills/README.md b/python/samples/04-hosting/foundry-hosted-agents/responses/09_foundry_skills/README.md index 0831efdb834..e948dd4b294 100644 --- a/python/samples/04-hosting/foundry-hosted-agents/responses/09_foundry_skills/README.md +++ b/python/samples/04-hosting/foundry-hosted-agents/responses/09_foundry_skills/README.md @@ -38,7 +38,7 @@ The agent is hosted using the [Agent Framework](https://github.com/microsoft/age ## Prerequisites -- An Azure AI Foundry project with a deployed model (e.g., `gpt-4.1-mini`) +- A Microsoft Foundry project with a deployed model (e.g., `gpt-4.1-mini`) - Azure CLI logged in (`az login`) ### Required RBAC diff --git a/python/samples/04-hosting/foundry-hosted-agents/responses/10_foundry_memory/README.md b/python/samples/04-hosting/foundry-hosted-agents/responses/10_foundry_memory/README.md index e4f15819b86..537bc943aa3 100644 --- a/python/samples/04-hosting/foundry-hosted-agents/responses/10_foundry_memory/README.md +++ b/python/samples/04-hosting/foundry-hosted-agents/responses/10_foundry_memory/README.md @@ -1,6 +1,6 @@ # What this sample demonstrates -An [Agent Framework](https://github.com/microsoft/agent-framework) agent with persistent semantic memory backed by an **Azure AI Foundry Memory Store**, hosted using the **Responses protocol**. The agent remembers facts the user has shared (e.g., dietary preferences, name) across sessions by retrieving and updating memories around every model invocation via `FoundryMemoryProvider`. +An [Agent Framework](https://github.com/microsoft/agent-framework) agent with persistent semantic memory backed by a **Microsoft Foundry Memory Store**, hosted using the **Responses protocol**. The agent remembers facts the user has shared (e.g., dietary preferences, name) across sessions by retrieving and updating memories around every model invocation via `FoundryMemoryProvider`. ## How It Works @@ -26,7 +26,7 @@ The agent is hosted using the [Agent Framework](https://github.com/microsoft/age ## Prerequisites -- An Azure AI Foundry project with: +- A Microsoft Foundry project with: - A deployed chat model (e.g., `gpt-4.1-mini`) - A deployed embedding model (e.g., `text-embedding-3-small`) — used by the memory store itself, not by the agent at runtime - Azure CLI logged in (`az login`) diff --git a/python/samples/04-hosting/foundry-hosted-agents/responses/10_foundry_memory/agent.manifest.yaml b/python/samples/04-hosting/foundry-hosted-agents/responses/10_foundry_memory/agent.manifest.yaml index 4c4e1db1a14..060e96adec7 100644 --- a/python/samples/04-hosting/foundry-hosted-agents/responses/10_foundry_memory/agent.manifest.yaml +++ b/python/samples/04-hosting/foundry-hosted-agents/responses/10_foundry_memory/agent.manifest.yaml @@ -1,7 +1,7 @@ name: agent-framework-agent-foundry-memory-responses description: > An Agent Framework agent with persistent semantic memory backed by an - Azure AI Foundry Memory Store. Uses FoundryMemoryProvider to retrieve and + Microsoft Foundry Memory Store. Uses FoundryMemoryProvider to retrieve and store memories around each model invocation, allowing the agent to remember facts about a user across sessions. metadata: diff --git a/python/samples/04-hosting/foundry-hosted-agents/responses/10_foundry_memory/main.py b/python/samples/04-hosting/foundry-hosted-agents/responses/10_foundry_memory/main.py index 43ce3a44674..a288f16071c 100644 --- a/python/samples/04-hosting/foundry-hosted-agents/responses/10_foundry_memory/main.py +++ b/python/samples/04-hosting/foundry-hosted-agents/responses/10_foundry_memory/main.py @@ -3,7 +3,7 @@ """Foundry Memory hosted agent sample. This agent uses :class:`FoundryMemoryProvider` to give an otherwise stateless -hosted agent persistent, semantic memory backed by an Azure AI Foundry +hosted agent persistent, semantic memory backed by a Microsoft Foundry Memory Store. The store itself is provisioned once via ``provision_memory_store.py`` and its name is passed in through the ``MEMORY_STORE_NAME`` environment variable. diff --git a/python/samples/04-hosting/foundry-hosted-agents/responses/10_foundry_memory/provision_memory_store.py b/python/samples/04-hosting/foundry-hosted-agents/responses/10_foundry_memory/provision_memory_store.py index fc402800abe..19f734b55fe 100644 --- a/python/samples/04-hosting/foundry-hosted-agents/responses/10_foundry_memory/provision_memory_store.py +++ b/python/samples/04-hosting/foundry-hosted-agents/responses/10_foundry_memory/provision_memory_store.py @@ -1,6 +1,6 @@ # Copyright (c) Microsoft. All rights reserved. -"""Provision the Azure AI Foundry Memory Store used by this sample. +"""Provision the Microsoft Foundry Memory Store used by this sample. Creates the memory store named by ``MEMORY_STORE_NAME`` if it does not already exist. The store is configured with the user-profile capability so the diff --git a/python/samples/04-hosting/foundry-hosted-agents/responses/12_foundry_toolbox_mcp_skills/README.md b/python/samples/04-hosting/foundry-hosted-agents/responses/12_foundry_toolbox_mcp_skills/README.md index 4642da4c492..14ab13f1427 100644 --- a/python/samples/04-hosting/foundry-hosted-agents/responses/12_foundry_toolbox_mcp_skills/README.md +++ b/python/samples/04-hosting/foundry-hosted-agents/responses/12_foundry_toolbox_mcp_skills/README.md @@ -33,7 +33,7 @@ The agent is hosted using the [Agent Framework](https://github.com/microsoft/age ## Prerequisites - Python 3.12+ -- An Azure AI Foundry project with a deployed model (e.g., `gpt-5`) +- A Microsoft Foundry project with a deployed model (e.g., `gpt-5`) - A Foundry Toolbox with skills attached (see below) - Azure CLI logged in (`az login`) diff --git a/python/samples/04-hosting/foundry-hosted-agents/responses/using_deployed_agent.py b/python/samples/04-hosting/foundry-hosted-agents/responses/using_deployed_agent.py index 5561974b09e..678979bef0e 100644 --- a/python/samples/04-hosting/foundry-hosted-agents/responses/using_deployed_agent.py +++ b/python/samples/04-hosting/foundry-hosted-agents/responses/using_deployed_agent.py @@ -22,7 +22,7 @@ The sample uses environment variables for configuration, which can be set in a .env file or in the environment directly: Environment variables: - FOUNDRY_PROJECT_ENDPOINT: Azure AI Foundry project endpoint. + FOUNDRY_PROJECT_ENDPOINT: Microsoft Foundry project endpoint. FOUNDRY_AGENT_NAME: Hosted agent name. FOUNDRY_AGENT_VERSION: Hosted agent version. Optional, defaults to latest if not specified. diff --git a/python/samples/05-end-to-end/evaluation/foundry_evals/README.md b/python/samples/05-end-to-end/evaluation/foundry_evals/README.md index e30ce6aa464..c423d2b600b 100644 --- a/python/samples/05-end-to-end/evaluation/foundry_evals/README.md +++ b/python/samples/05-end-to-end/evaluation/foundry_evals/README.md @@ -1,6 +1,6 @@ # Foundry Evals Integration Samples -These samples demonstrate evaluating agent-framework agents using Azure AI Foundry's built-in evaluators. +These samples demonstrate evaluating agent-framework agents using Microsoft Foundry's built-in evaluators. ## Available Evaluators diff --git a/python/samples/05-end-to-end/evaluation/foundry_evals/evaluate_agent_sample.py b/python/samples/05-end-to-end/evaluation/foundry_evals/evaluate_agent_sample.py index 42b67b91e72..71f3fd6209d 100644 --- a/python/samples/05-end-to-end/evaluation/foundry_evals/evaluate_agent_sample.py +++ b/python/samples/05-end-to-end/evaluation/foundry_evals/evaluate_agent_sample.py @@ -1,6 +1,6 @@ # Copyright (c) Microsoft. All rights reserved. -"""Evaluate an agent using Azure AI Foundry's built-in evaluators. +"""Evaluate an agent using Microsoft Foundry's built-in evaluators. This sample demonstrates three patterns: 1. evaluate_agent(responses=...) — Evaluate a response you already have. @@ -10,7 +10,7 @@ See ``evaluate_tool_calls_sample.py`` for tool-call accuracy evaluation. Prerequisites: -- An Azure AI Foundry project with a deployed model +- A Microsoft Foundry project with a deployed model - Set FOUNDRY_PROJECT_ENDPOINT and FOUNDRY_MODEL in .env """ diff --git a/python/samples/05-end-to-end/evaluation/foundry_evals/evaluate_mixed_sample.py b/python/samples/05-end-to-end/evaluation/foundry_evals/evaluate_mixed_sample.py index 2f26eb2e3eb..c1d4256260b 100644 --- a/python/samples/05-end-to-end/evaluation/foundry_evals/evaluate_mixed_sample.py +++ b/python/samples/05-end-to-end/evaluation/foundry_evals/evaluate_mixed_sample.py @@ -12,7 +12,7 @@ in one call. Prerequisites: -- An Azure AI Foundry project with a deployed model +- A Microsoft Foundry project with a deployed model - Set FOUNDRY_PROJECT_ENDPOINT and FOUNDRY_MODEL in .env """ diff --git a/python/samples/05-end-to-end/evaluation/foundry_evals/evaluate_multiturn_sample.py b/python/samples/05-end-to-end/evaluation/foundry_evals/evaluate_multiturn_sample.py index 863011241f9..fcb0dba2fe5 100644 --- a/python/samples/05-end-to-end/evaluation/foundry_evals/evaluate_multiturn_sample.py +++ b/python/samples/05-end-to-end/evaluation/foundry_evals/evaluate_multiturn_sample.py @@ -10,7 +10,7 @@ 3. per_turn_items — "Was each individual response appropriate?" Prerequisites: -- An Azure AI Foundry project with a deployed model +- A Microsoft Foundry project with a deployed model - Set FOUNDRY_PROJECT_ENDPOINT and FOUNDRY_MODEL in .env """ diff --git a/python/samples/05-end-to-end/evaluation/foundry_evals/evaluate_tool_calls_sample.py b/python/samples/05-end-to-end/evaluation/foundry_evals/evaluate_tool_calls_sample.py index ef51afc0c6a..d9fcf051ce5 100644 --- a/python/samples/05-end-to-end/evaluation/foundry_evals/evaluate_tool_calls_sample.py +++ b/python/samples/05-end-to-end/evaluation/foundry_evals/evaluate_tool_calls_sample.py @@ -1,12 +1,12 @@ # Copyright (c) Microsoft. All rights reserved. -"""Evaluate tool-calling accuracy using Azure AI Foundry's TOOL_CALL_ACCURACY evaluator. +"""Evaluate tool-calling accuracy using Microsoft Foundry's TOOL_CALL_ACCURACY evaluator. This sample demonstrates evaluating how well an agent selects and invokes tools by using ``FoundryEvals.evaluate()`` with ``TOOL_CALL_ACCURACY``. Prerequisites: -- An Azure AI Foundry project with a deployed model +- A Microsoft Foundry project with a deployed model - Set FOUNDRY_PROJECT_ENDPOINT and FOUNDRY_MODEL in .env """ diff --git a/python/samples/05-end-to-end/evaluation/foundry_evals/evaluate_traces_sample.py b/python/samples/05-end-to-end/evaluation/foundry_evals/evaluate_traces_sample.py index 5a1ebeeb577..bbe4d38ff8e 100644 --- a/python/samples/05-end-to-end/evaluation/foundry_evals/evaluate_traces_sample.py +++ b/python/samples/05-end-to-end/evaluation/foundry_evals/evaluate_traces_sample.py @@ -10,7 +10,7 @@ and you're evaluating what happened after the fact. Prerequisites: -- An Azure AI Foundry project with a deployed model +- A Microsoft Foundry project with a deployed model - Response IDs from prior agent runs (for Pattern 1) - OTel traces exported to App Insights (for Pattern 2) - Set FOUNDRY_PROJECT_ENDPOINT and FOUNDRY_MODEL in .env @@ -97,7 +97,7 @@ async def main() -> None: """ -Sample output (with actual Azure AI Foundry project and valid response IDs): +Sample output (with actual Microsoft Foundry project and valid response IDs): ============================================================ Pattern 1: evaluate_traces(response_ids=...) diff --git a/python/samples/05-end-to-end/evaluation/foundry_evals/evaluate_with_rubric_sample.py b/python/samples/05-end-to-end/evaluation/foundry_evals/evaluate_with_rubric_sample.py index 06ec5c9bdd7..523b3804de7 100644 --- a/python/samples/05-end-to-end/evaluation/foundry_evals/evaluate_with_rubric_sample.py +++ b/python/samples/05-end-to-end/evaluation/foundry_evals/evaluate_with_rubric_sample.py @@ -17,7 +17,7 @@ ``EvalResults.assert_dimension_score_at_least(...)`` for CI quality gates. Starting condition / prerequisites: -- An Azure AI Foundry project with a deployed model. +- A Microsoft Foundry project with a deployed model. - A registered Foundry agent (PromptAgent or HostedAgent) in that project. This is the agent the rubric is meant to evaluate. - A rubric evaluator already created in the Foundry portal against that diff --git a/python/samples/05-end-to-end/evaluation/foundry_evals/evaluate_workflow_sample.py b/python/samples/05-end-to-end/evaluation/foundry_evals/evaluate_workflow_sample.py index b9ffa1f6dd9..115c578030e 100644 --- a/python/samples/05-end-to-end/evaluation/foundry_evals/evaluate_workflow_sample.py +++ b/python/samples/05-end-to-end/evaluation/foundry_evals/evaluate_workflow_sample.py @@ -1,6 +1,6 @@ # Copyright (c) Microsoft. All rights reserved. -"""Evaluate a multi-agent workflow using Azure AI Foundry evaluators. +"""Evaluate a multi-agent workflow using Microsoft Foundry evaluators. This sample demonstrates three patterns: 1. Post-hoc: Run the workflow, then evaluate the result you already have. @@ -11,7 +11,7 @@ breakdown in sub_results so you can identify which agent is underperforming. Prerequisites: -- An Azure AI Foundry project with a deployed model +- A Microsoft Foundry project with a deployed model - Set FOUNDRY_PROJECT_ENDPOINT and FOUNDRY_MODEL in .env """ @@ -186,7 +186,7 @@ async def main() -> None: """ -Sample output (with actual Azure AI Foundry project): +Sample output (with actual Microsoft Foundry project): ============================================================ Pattern 1: Post-hoc workflow evaluation diff --git a/python/samples/05-end-to-end/evaluation/red_teaming/README.md b/python/samples/05-end-to-end/evaluation/red_teaming/README.md index c72713356bd..34246b13159 100644 --- a/python/samples/05-end-to-end/evaluation/red_teaming/README.md +++ b/python/samples/05-end-to-end/evaluation/red_teaming/README.md @@ -2,7 +2,7 @@ This directory contains samples demonstrating how to use Azure AI's evaluation and red teaming capabilities with Agent Framework agents. -For more details on the Red Team setup see [the Azure AI Foundry docs](https://learn.microsoft.com/en-us/azure/ai-foundry/how-to/develop/run-scans-ai-red-teaming-agent) +For more details on the Red Team setup see [the Microsoft Foundry docs](https://learn.microsoft.com/en-us/azure/ai-foundry/how-to/develop/run-scans-ai-red-teaming-agent) ## Samples diff --git a/python/samples/05-end-to-end/evaluation/self_reflection/README.md b/python/samples/05-end-to-end/evaluation/self_reflection/README.md index 0591f37f735..7a95a103999 100644 --- a/python/samples/05-end-to-end/evaluation/self_reflection/README.md +++ b/python/samples/05-end-to-end/evaluation/self_reflection/README.md @@ -1,6 +1,6 @@ # Self-Reflection Evaluation Sample -This sample demonstrates the self-reflection pattern using Agent Framework and Azure AI Foundry's Groundedness Evaluator. For details, see [Reflexion: Language Agents with Verbal Reinforcement Learning](https://arxiv.org/abs/2303.11366) (NeurIPS 2023). +This sample demonstrates the self-reflection pattern using Agent Framework and Microsoft Foundry's Groundedness Evaluator. For details, see [Reflexion: Language Agents with Verbal Reinforcement Learning](https://arxiv.org/abs/2303.11366) (NeurIPS 2023). ## Overview @@ -14,7 +14,7 @@ This sample demonstrates the self-reflection pattern using Agent Framework and A ## Prerequisites ### Azure Resources -- **Azure AI Foundry project**: Deploy models (default: gpt-5.2 for both agent and judge) +- **Microsoft Foundry project**: Deploy models (default: gpt-5.2 for both agent and judge) - **Azure CLI**: Run `az login` to authenticate ### Environment Variables diff --git a/python/samples/05-end-to-end/neo4j_graphrag/README.md b/python/samples/05-end-to-end/neo4j_graphrag/README.md index c721e1538f5..d35ce8eb9b4 100644 --- a/python/samples/05-end-to-end/neo4j_graphrag/README.md +++ b/python/samples/05-end-to-end/neo4j_graphrag/README.md @@ -16,7 +16,7 @@ For full documentation, see the [Neo4j GraphRAG integration guide on Microsoft L 1. A Neo4j database with document chunks already loaded 2. A Neo4j fulltext index over chunk text, such as `search_chunks` -3. An Azure AI Foundry project endpoint and chat deployment +3. A Microsoft Foundry project endpoint and chat deployment 4. Azure CLI authentication via `az login` ## Environment variables diff --git a/python/samples/05-end-to-end/neo4j_graphrag/main.py b/python/samples/05-end-to-end/neo4j_graphrag/main.py index 51e1154c690..5c41a6d0c75 100644 --- a/python/samples/05-end-to-end/neo4j_graphrag/main.py +++ b/python/samples/05-end-to-end/neo4j_graphrag/main.py @@ -21,10 +21,10 @@ """ This sample demonstrates how to use the Neo4j GraphRAG context provider with -Agent Framework and Azure AI Foundry. +Agent Framework and Microsoft Foundry. Environment variables: - FOUNDRY_PROJECT_ENDPOINT — Azure AI Foundry project endpoint + FOUNDRY_PROJECT_ENDPOINT — Microsoft Foundry project endpoint FOUNDRY_MODEL — Model deployment name (e.g. gpt-4o) NEO4J_URI — Neo4j connection URI NEO4J_USERNAME — Neo4j username @@ -65,7 +65,7 @@ async def main() -> None: if not settings.is_configured: raise RuntimeError("Set NEO4J_URI, NEO4J_USERNAME, and NEO4J_PASSWORD before running this sample.") - # 2. Read the Azure AI Foundry project endpoint and model configuration. + # 2. Read the Microsoft Foundry project endpoint and model configuration. project_endpoint = os.environ.get("FOUNDRY_PROJECT_ENDPOINT") if not project_endpoint: raise RuntimeError("Set FOUNDRY_PROJECT_ENDPOINT before running this sample.") diff --git a/python/samples/05-end-to-end/purview_agent/README.md b/python/samples/05-end-to-end/purview_agent/README.md index 12293ec3068..93904de55d5 100644 --- a/python/samples/05-end-to-end/purview_agent/README.md +++ b/python/samples/05-end-to-end/purview_agent/README.md @@ -17,7 +17,7 @@ This getting-started sample shows how to attach Microsoft Purview policy evaluat | Variable | Required | Purpose | |----------|----------|---------| -| `FOUNDRY_PROJECT_ENDPOINT` | Yes | Azure AI Foundry project endpoint, for example `https://.services.ai.azure.com/api/projects/` | +| `FOUNDRY_PROJECT_ENDPOINT` | Yes | Microsoft Foundry project endpoint, for example `https://.services.ai.azure.com/api/projects/` | | `FOUNDRY_MODEL` | Optional | Model deployment name (defaults to `gpt-4o-mini`) | | `PURVIEW_CLIENT_APP_ID` | Yes* | Client (application) ID used for Purview authentication | | `PURVIEW_USE_CERT_AUTH` | Optional (`true`/`false`) | Switch between certificate and interactive auth | diff --git a/python/samples/05-end-to-end/purview_agent/sample_purview_agent.py b/python/samples/05-end-to-end/purview_agent/sample_purview_agent.py index 62dad81725e..dbd0051e077 100644 --- a/python/samples/05-end-to-end/purview_agent/sample_purview_agent.py +++ b/python/samples/05-end-to-end/purview_agent/sample_purview_agent.py @@ -11,7 +11,7 @@ Note: Caching is automatic and enabled by default. Environment variables: -- FOUNDRY_PROJECT_ENDPOINT (required) - Azure AI Foundry project endpoint URL +- FOUNDRY_PROJECT_ENDPOINT (required) - Microsoft Foundry project endpoint URL - FOUNDRY_MODEL (optional, defaults to gpt-4o-mini) - PURVIEW_CLIENT_APP_ID (required) - PURVIEW_USE_CERT_AUTH (optional, set to "true" for certificate auth) diff --git a/python/samples/AGENTS.md b/python/samples/AGENTS.md index cf162f3e7da..520eb11dcaf 100644 --- a/python/samples/AGENTS.md +++ b/python/samples/AGENTS.md @@ -66,8 +66,8 @@ python/samples/ ## Default provider -All canonical samples (01-get-started) use **Azure AI Foundry project-backed chat** via `FoundryChatClient` -with an Azure AI Foundry project endpoint: +All canonical samples (01-get-started) use **Microsoft Foundry project-backed chat** via `FoundryChatClient` +with a Microsoft Foundry project endpoint: ```python import os @@ -84,7 +84,7 @@ agent = client.as_agent(name="...", instructions="...") ``` Environment variables: -- `FOUNDRY_PROJECT_ENDPOINT` — Your Azure AI Foundry project endpoint +- `FOUNDRY_PROJECT_ENDPOINT` — Your Microsoft Foundry project endpoint - `FOUNDRY_MODEL` — Model deployment name (e.g. gpt-4o) For authentication, run `az login` before running samples. diff --git a/python/samples/SAMPLE_GUIDELINES.md b/python/samples/SAMPLE_GUIDELINES.md index 5655f5df096..f3239bc3cef 100644 --- a/python/samples/SAMPLE_GUIDELINES.md +++ b/python/samples/SAMPLE_GUIDELINES.md @@ -97,14 +97,14 @@ from azure.identity import AzureCliCredential Advanced sample demonstrating feature X. Environment variables: - FOUNDRY_PROJECT_ENDPOINT — Azure AI Foundry project endpoint + FOUNDRY_PROJECT_ENDPOINT — Microsoft Foundry project endpoint FOUNDRY_MODEL — Model deployment name (e.g. gpt-4o) """ ``` ### Default Client for Samples -Unless a sample is specifically demonstrating a particular provider (OpenAI direct, Anthropic, Ollama, etc.), use `FoundryChatClient` from `agent_framework.azure` as the default client. This is the recommended client for Azure AI Foundry deployments. +Unless a sample is specifically demonstrating a particular provider (OpenAI direct, Anthropic, Ollama, etc.), use `FoundryChatClient` from `agent_framework.azure` as the default client. This is the recommended client for Microsoft Foundry deployments. Provider-specific samples belong in `02-agents/providers//` and should use the provider's native client (e.g., `OpenAIChatClient` for OpenAI, `AnthropicClient` for Anthropic).