Commit Graph
65 Commits
Author SHA1 Message Date
Giles OdigweandGitHub 1d7292fba6 Python: OpenAI Responses Image Generation Stream Support, Sample and Unit Tests (#1853)
* support for image gen streaming

* small fixes

* fixes

* added comment
2025-11-11 19:01:37 +00:00
d701e796cb Python: [BREAKING] Replaced AIProjectClient with AgentsClient in Foundry (#1936)
* Replaced AIProjectClient with AgentsClient in Foundry

* Update python/samples/getting_started/observability/azure_ai_agent_observability.py

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update python/samples/getting_started/observability/azure_ai_chat_client_with_observability.py

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Small fix

* Removed TODO item

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-11-05 21:42:36 +00:00
Dmytro StrukandGitHub 14aee7e334 Python: Added parameter to disable agent cleanup in AzureAIAgentClient (#1882)
* Removed automatic agent cleanup in AzureAIAgentClient

* Revert "Removed automatic agent cleanup in AzureAIAgentClient"

This reverts commit 89846c7212.

* Exposed boolean flag to control deletion behavior

* Update sample
2025-11-05 16:56:19 +00:00
Eduard van ValkenburgandGitHub 12d17acdc0 Python: Introducing the Anthropic Client (#1819)
* initial version of anthropic connector

* updated implementation and added tests

* fix type and readme

* mypy fix and int tests enabled

* add integration test setup

* updated based on comments

* improved function result handling

* added extra unordered test

* updated from review

* fix tool choice handling

* same fix for chat client
2025-11-03 19:32:28 +00:00
Giles OdigweandGitHub 2059e7b3e8 Python: Azure AI Search Support Update + Refactored Samples & Unit Tests (#1683)
* azure ai search sample update

* azure ai search update

* small fix
2025-10-30 02:30:06 +00:00
Giles OdigweandGitHub e8a7d3b1b7 Python: Added Samples for HostedCodeInterpreterTool with files (#1583)
* code interpreter with files

* import fix
2025-10-21 01:37:53 +00:00
350cdfc1cd Python: Fix AI Search Tool Sample and improve AI Search Exceptions (#1206)
* Python: Fix AI Search Tool Sample and improve AI Search Exceptions

* Python: Fix AI Search Tool Test

---------

Co-authored-by: Dmytro Struk <13853051+dmytrostruk@users.noreply.github.com>
2025-10-10 18:46:57 +00:00
Giles OdigweandGitHub 7238cde5af Python: AzureAI Bing Connection Name Support (#1364)
* bing connection name support

* error handling + unit tests

* connection id and name handling
2025-10-09 21:13:07 +00:00
3d31a4a204 Python: samples: add api_key for Ollama sample usage (#1240)
* samples: add api_key for Ollama sample usage

* Update python/samples/getting_started/agents/ollama/ollama_with_openai_chat_client.py

Co-authored-by: Dmytro Struk <13853051+dmytrostruk@users.noreply.github.com>

* fix: update Ollama API key to an unused constant

---------

Co-authored-by: Dmytro Struk <13853051+dmytrostruk@users.noreply.github.com>
2025-10-08 20:45:24 +00:00
Dmytro StrukandGitHub 7e891fab39 Python: Included existing agent definition in requests to Azure AI (#1285)
* Fixed instructions handling for existing Azure AI agents

* Updated tool handling for existing agents

* Small update

* Added more comments
2025-10-08 20:33:57 +00:00
Giles OdigweandGitHub 334d52f300 Python: AzureAI Agent AI Search Sample (#1281)
* azure ai search sample

* small fix
2025-10-08 15:52:02 +00:00
Eduard van ValkenburgandGitHub 76900f0eab Python: [BREAKING] parameter naming and other fixes (#1255)
* parameter naming and other fixes

* fix test

* fix azure openai responses decorator ordering

* fix test

* fix mypy

* fixes in options handling

* fix tests

* final fixes

* exclude macos tests

* fix model param
2025-10-07 21:18:48 +00:00
Giles OdigweandGitHub 1d27b57672 Python: ollama + azureai openapi samples fix (#1244)
* ollama + azureai openapi samples fix

* small fix
2025-10-07 16:14:34 +00:00
49f25358d7 Python: Sample on integration of Azure OpenAI Responses Client with a local MCP server (#1215)
* added a sample on integration of Azure OpenAI Responses Client with hosted Model Context Protocol (MCP)

* added additional comments mentioning that the Microsoft Learn MCP server can be replaced by any other desired MCP server

* corrected the MCP server type to local

* added a newline at the end

* Update python/samples/getting_started/agents/azure_openai/azure_responses_client_with_local_mcp.py

Co-authored-by: Dmytro Struk <13853051+dmytrostruk@users.noreply.github.com>

---------

Co-authored-by: Dmytro Struk <13853051+dmytrostruk@users.noreply.github.com>
2025-10-07 07:54:29 +00:00
50c532b4ae docs: Update References to Agent2Agent protocol to use correct terminology (#1162)
Should be `Agent2Agent Protocol` not `Agent-to-Agent` unless talking about general agent to agent communication

Co-authored-by: Eric Zhu <ekzhu@users.noreply.github.com>
2025-10-03 19:10:05 +00:00
Dmytro StrukandGitHub c7f20c8ec5 Python: Added Ollama example using OpenAIChatClient (#1100)
* Added Ollama example using OpenAIChatClient

* Small improvement
2025-10-02 15:14:29 +00:00
CopilotGitHubdmytrostrukcopilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
07db91174b Python: Fix Azure AI Getting Started samples: Improve documentation and code readability (#1089)
* Initial plan

* Fix Azure AI samples: Add dotenv support, fix async input, improve docs

Co-authored-by: dmytrostruk <13853051+dmytrostruk@users.noreply.github.com>

* Remove dotenv.load_dotenv() and revert async input() changes per review feedback

Co-authored-by: dmytrostruk <13853051+dmytrostruk@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: dmytrostruk <13853051+dmytrostruk@users.noreply.github.com>
2025-10-02 03:22:44 +00:00
Evan MattsonandGitHub 4f4890cf6a Update getting started samples to reflect AF. Update a unit test. (#1093) 2025-10-02 01:20:12 +00:00
Giles OdigweandGitHub b0971fdec6 Python: Foundry Agent Completeness (#954)
* foundry completeness

* tests + openapi sample

* bing grounding sample

* options integration tests

* merge conflict fix

* fix failing test

* add mcp approval handling
2025-10-01 13:38:51 +00:00
Giles OdigweandGitHub b88143b686 Agents + Chat Client Samples Doctsring Updates (#1028)
* agents + chat client samples doctsring updates

* fixes
2025-10-01 07:18:53 +00:00
Eduard van ValkenburgandGitHub 54ad135914 Python: [BREAKING] added SerializationMixin and applied to contents, agents, chat client… (#1012)
* added SerializationMixin and applied to contents, agents, chat clients, removed AFBaseModel

* fix annotations type

* mypy fixes

* fix tests

* fix serializable subvalues and added large docstring

* updated indents in code block

* fixed exported urls
2025-09-30 19:53:46 +00:00
Eduard van ValkenburgandGitHub 3eb26632ce Python: fix string parsing in azure openai client (#1023)
* fix string parsing in azure openai client

* test fix

* changed setup func name and check if there is a conn string

* redid parsing in safe way
2025-09-30 19:33:12 +00:00
b4ebafa9b1 Python: [Breaking] removed pydantic from types and workflows (#917)
* removed pydantic from types

* fix test

* fix test

* fix tests

* fix assistants client

* Remove Pydantic usage from workflow code.

* updated pydantic removal

* updated lock and test fixes

* fix mypy

* updated build system

* updated chat client parsing

* fix broken test

---------

Co-authored-by: Evan Mattson <evan.mattson@microsoft.com>
2025-09-29 21:19:58 +00:00
c102706146 Python: basic python a2a support (#906)
* basic python a2a support

* fixes

* small fixes

---------

Co-authored-by: Eric Zhu <ekzhu@users.noreply.github.com>
2025-09-29 17:53:45 +00:00
Eduard van ValkenburgandGitHub 10d10364a9 Python: [BREAKING] cleanup of thread API and serialization (#893)
* cleanup of threads and serialization

* fix for sliding window

* fix redis test

* updated from comments

* updated context provider and threads

* updated lock

* add asyncio default

* fix redis tests

* fix tests

* fix tests

* renamed to invoking

* fixed tests

* fix for instructions
2025-09-29 16:22:34 +00:00
Dmytro StrukandGitHub 4cd76bf2b0 Small fixes (#969) 2025-09-29 08:43:00 +00:00
Dmytro StrukandGitHub f2f0d40437 Added structured output to agent streaming (#943) 2025-09-27 17:07:17 +00:00
Dmytro StrukandGitHub eec7f192eb Python: Added chat middleware and more examples (#883)
* Added example with stateful middleware

* Added chat middleware

* Updated middleware example with override scenario

* Small revert

* Small fixes

* Added kwargs to context objects

* Added README

* Added function middleware to chat client

* Small refactoring

* Reverted example files

* Made MiddlewareWrapper generic

* Added Middleware exception

* Small refactoring

* Small fix
2025-09-26 15:10:56 +00:00
Eduard van ValkenburgandGitHub 0f2f2263c5 Python: typo fix (#920)
* typo fix

* fixed two other typos
2025-09-26 08:15:54 +00:00
Eduard van ValkenburgandGitHub 9355329dfd Python: [BREAKING] updated structure and samples (#875)
* updated structure and samples

* updated names and removed cross tests

* updated projects etc

* updated tests

* updated test

* test fixes

* removed devui for now

* updated all-tests task

* removed old style configs

* remove coverage from tests

* updated to unit tests with all-tests

* updated foundry everywhere

* fix azure ai tests

* fix merge tests

* fix mypy
2025-09-25 07:02:53 +00:00
Eduard van ValkenburgandGitHub 9eb68ab2f9 Python: additional Foundry Tools (#611)
* initial work on additional foundry tools

* fixes

* fix tests

* fix import

* updated lock

* added hosted MCP for foundry

* fixes

* fix for test

* updated samples

* fix result parsing
2025-09-23 11:20:20 +00:00
adb6dcd2af Python: OpenAI Responses Image Generation Tool (#842)
* Image generation + Added Samples

* extended image gen tool for responses

* uv fix

* removed hosted image gen

* copilot suggestions

* Update python/packages/main/agent_framework/openai/_responses_client.py

Co-authored-by: Dmytro Struk <13853051+dmytrostruk@users.noreply.github.com>

---------

Co-authored-by: Dmytro Struk <13853051+dmytrostruk@users.noreply.github.com>
2025-09-22 22:38:44 +00:00
CopilotGitHubdmytrostrukcopilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
39566d1dbf Python: Add custom agent and chat client implementation examples (#849)
* Initial plan

* Add custom agent and chat client examples with complete implementations and documentation

Co-authored-by: dmytrostruk <13853051+dmytrostruk@users.noreply.github.com>

* Simplify custom examples per feedback: remove __init__.py, keep only EchoAgent/EchoingChatClient, add proper documentation, update README table format

Co-authored-by: dmytrostruk <13853051+dmytrostruk@users.noreply.github.com>

* Small fixes and formatting

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: dmytrostruk <13853051+dmytrostruk@users.noreply.github.com>
2025-09-22 04:42:33 +00:00
Dmytro StrukandGitHub 08f792e511 Python: Added Anthropic agent example (#850)
* Added Anthropic example

* Small fix
2025-09-22 04:04:07 +00:00
Eduard van ValkenburgandGitHub 65dd48aa1d Python: api doc generation setup (#342)
* api doc generation setup

* remove old log file

* improved check md function

* update with sample code in docstring

* updated script

* docs update

* docs update and action

* removed all-extras

* fixed sync command

* moved install

* moved action

* renamed folder

* fixed syntax

* add python path

* fix mypy and reused steps

* updated merge test

* undo change

* slight update in poe commands

* dev setup update

* updated uvlock
2025-09-16 10:02:53 +00:00
Dmytro StrukandGitHub e7cd03b32e Python: Added Copilot Studio Agent (#722)
* Small fix in dotnet conformance tests

* Added CopilotStudioAgent implementation

* Added examples

* Updated package README

* Small fixes

* Small improvements

* Fixed dotnet tests

* Add unit tests

* Updated tests

* Small updates

* Small test fixes

* Revert "Small test fixes"

This reverts commit 983ac44a70.

* Small fixes in documentation

* Updated test configuration

* Revert "Updated test configuration"

This reverts commit 2a16fea815.

* Small fix

* Reverted TODO item

* Small suppressions

* More fixes

* Small fixes

* Fixed tests

* Removed disallow_any_unimported rule in all packages

* Fixes
2025-09-15 23:21:07 +00:00
Christian GlessnerandGitHub f79fbfa92e Python: Add OpenAI reasoning events support to Responses client (#698)
* feat: add OpenAI reasoning events support with comprehensive test coverage

- Implement reasoning event handling in OpenAI Responses client
  * Add support for ResponseReasoningTextDeltaEvent
  * Add support for ResponseReasoningTextDoneEvent
  * Add support for ResponseReasoningSummaryTextDeltaEvent
  * Add support for ResponseReasoningSummaryTextDoneEvent
  * Map all reasoning events to TextReasoningContent objects
  * Preserve metadata across reasoning events

- Add comprehensive test coverage (5 focused test functions)
  * test_streaming_reasoning_text_delta_event
  * test_streaming_reasoning_text_done_event
  * test_streaming_reasoning_summary_text_delta_event
  * test_streaming_reasoning_summary_text_done_event
  * test_streaming_reasoning_events_preserve_metadata

- Add sample demonstrating reasoning functionality
  * Shows how to enable reasoning in chat options
  * Demonstrates accessing reasoning content from responses

- Code quality improvements
  * Follow existing code patterns and style guidelines
  * Organize imports properly
  * Maintain backwards compatibility
  * All tests pass and quality checks succeed

* fix: resolve type errors and cleanup unused imports after rebase

- Add proper hasattr checks for optional attributes in union types
- Remove unused OpenAI event type imports
- Fix line length formatting issues
- Ensure type safety when accessing content attributes
2025-09-12 12:07:49 +00:00
82ca4065cb Python: Improved telemetry setup (#421)
* test with stack and simplified names

* quick demo of agent decorator

* moved builder to protocol to enhance functionality

* undid chatclientAgent -> agent rename

* one more

* reverted AIAgent rename

* final reverts

* fixed foundry import

* revert changes

* streamlined otel and fcc decorators

* cleanup of telemetry

* further refinement

* lots of updates

* fixed typing

* fix for mypy

* added input and output atttributes

* fix import

* initial work on baking in otel

* major update to telemetry

* final fixes after rename

* fix

* fix test

* updated tests

* fix for tests

* fixes for tests

* updated based on comments

* removed agent decorator

* fix for Python: ServiceResponseException when using multiple tools
Fixes #649

* addressed comments

* fix tests

* fix tests

* fix tools tests

* fix for conversation_id in assistants client

* fix responses test

* fix tests and mypy

* updated test

* foundry fix

---------

Co-authored-by: Chris <66376200+crickman@users.noreply.github.com>
2025-09-10 14:52:42 +00:00
6aa746d891 Python: Introducing UserInputRequest and Response types and HostedMcpTool (#405)
* initial work on User Approval (and hosted mcp to validate)

* small update to the comments in the sample

* enable local MCP tools in chatClient get methods

* working streaming and improved setup

* fix for pyright

* updated create_approval -> create_response method

* added tests

* updated HostedMcpTool and addressed feedback

* update type name

* naming updates

* small docstring update

* mypy fix

* fixes and updates

* fixes for responses

* fix int tests

* removed broken tests

* updated test running

* removed specific content check on websearch

* increased timeout

* split slow foundry test

* don't parallel run samples

* add dist load to unit tests

---------

Co-authored-by: Eric Zhu <ekzhu@users.noreply.github.com>
2025-09-10 13:37:34 +00:00
9f8823192e MCP support for Foundry (#652)
Co-authored-by: Giles Odigwe <gilesodigwe@microsoft.com>
2025-09-09 20:07:20 +00:00
Eduard van ValkenburgandGitHub 40ab6e9d67 Python: name changes executed (#607)
* name changes executed

* updated adr to accepted

* renamed openai base config

* renamed openai config to mixin

* added renames in user docs

* reverted mcperror

* fix tests

* remove sse from tests
2025-09-04 15:00:38 +00:00
Dmytro StrukandGitHub 2037e533b3 Removed list_messages method from thread (#564) 2025-08-29 22:51:52 +00:00
Dmytro StrukandGitHub a80db062b2 Python: Added examples with explicit settings (#562)
* Added examples with explicit settings

* Added info about RBAC roles
2025-08-29 22:51:35 +00:00
Dmytro StrukandGitHub f5043e4fc1 Python: Small fixes in examples (#540)
* Fixed Ruff formatting

* Added more info to chat response cancellation example

* Improved example

* Small fix
2025-08-28 20:41:18 +00:00
Dmytro StrukandGitHub 6a00c9d026 Python: Documentation updates (#538)
* Added README for each sample sub-folder

* More documentation updates
2025-08-28 18:54:06 +00:00
8e14dfc522 Python: Improved foundry integration tests (#514)
* improved foundry integration tests

* Update python/packages/foundry/tests/test_foundry_chat_client.py

Co-authored-by: Dmytro Struk <13853051+dmytrostruk@users.noreply.github.com>

* Update python/packages/foundry/tests/test_foundry_chat_client.py

Co-authored-by: Dmytro Struk <13853051+dmytrostruk@users.noreply.github.com>

---------

Co-authored-by: Giles Odigwe <gilesodigwe@microsoft.com>
Co-authored-by: Dmytro Struk <13853051+dmytrostruk@users.noreply.github.com>
2025-08-27 21:54:28 +00:00
Dmytro StrukandGitHub fa88641263 Python: Removed DefaultAzureCredential (#490)
* Removed DefaultAzureCredential

* Renamed ad_credential to credential
2025-08-26 15:33:17 +00:00
0410f51777 Python: Web search file search tools (#395)
* Add web and file search tools

* add tests

* PR comments

* Add tools support for chat and assistants clients

* fix code checks

* add tests for assistants client

* Add samples

* fix fn descriptions

* Add openai responses model id to environment variables

---------

Co-authored-by: Dmytro Struk <13853051+dmytrostruk@users.noreply.github.com>
2025-08-15 19:35:23 +00:00
Dmytro StrukandGitHub dea736e550 Python: Thread storage and serialization (#394)
* Updates for message store support

* Added unit tests

* Added suspend-resume example

* Added example with custom chat message store

* Small fix

* Addressed PR feedback

* Renaming and documentation

* More renaming

* Addressed more PR feedback

* Small fixes in Foundry chat client and examples

* Small update

* Addressed PR feedback

* Increased timeout for Azure tests
2025-08-14 21:15:42 +00:00
Dmytro StrukandGitHub 95cb20ca40 Small fix in Foundry chat client and samples (#407) 2025-08-14 20:21:23 +00:00