* Further observability cleanup and update telemetry samples
* Add VS Code Extension config
* Fix unit tests
* Fix unit tests
* Add more comments
* Remove live metric
* Improve type utils
* Add sample
* Add Union
* Add more test cases
* Add more test cases
* Fix RequestResponse typing to only coerce mapping original_request
---------
Co-authored-by: Evan Mattson <evan.mattson@microsoft.com>
* Setting up
* Readme
* Add redis tests path to all-tests
* First pass integration
* Keep provider convention
* First pass integration
* add redis integration tests
* update README.md
* Add basic sample for redis integration
* Add partitioning, add partition-aware tests, improve sample script
* Fix code quality check
* Try to resolve pytest check
* Try to identify if pytest is the cause of failed checks
* Re-enable tests
* Rename redis test file
* Removing some tests to narrow down issue
* Revert, no difference
* Delete temp files
* Starting refactor of RedisProvider
* Build dynamic schema builder, still need to do dynamic embedding model config
* Add scope control
* Complete first pass functionality with OpenAI + HF vectors -> Tests, Samples, Demo to follow
* Fix code quality
* attempt to identify rootcause of failed test
* attempt to identify rootcause of failed test
* Attempt to resolve code quality fail
* Update pyproject.toml for foundry to pin azure-ai-projects == 1.1.0b3,azure-ai-agents == 1.2.0b3
* Add tests for redisprovider
* Remove invalid tests
* Add API key handling for openai vectorizer
* Update uv.locl
* Use master uv.lock
* Begin sample file, add lazy index creation, fix faulty override
* Index drop and reinit depends on drop_redis_index not overwrite
* Add samples, threading included, escaped queries, verify threading works, sample README.md
* Refactor filters
* Opinionated vars
* Allow filter expression combination
* Try inline stubs for mypy
* Address mypy errors
* Better docstrings, tweaks for feedback
* Tweak example 3 in redis_threads.py sample
* adjust confusing name
* Enrich docstrings
* Add descriptions and comments to samples, externalize vectorizer choice, remove nltk and sentencetransformers dependnecy
* Add descriptions and comments to samples, externalize vectorizer choice, remove nltk and sentencetransformers dependnecy
* Incorporate initial feedback from dmytrostruk
* Fix uv.lock
* Attempt to resolve conflict
* Use remote .tomls
* Sanity check
* fix tests
* Remove hardcoded API key from samples
* Fix incorrect env var
* Make add and redis_search private
* Fix tests relying on private funcs
* Expand tests
* Explainer comments to each test
* Add a 'get_conversation_history' function to RedisProvider - This just returns messages in sequential order. Added 'created_at_*' timestamps to facilitate sequential recovery. function has to be manually invoked by user
* Add agent-framework-redis to python/pyproject.toml
* Remove get_conversation_history
* improve redis context provider with pydantic techniques and safe index handling patterns
* add RedisChatMessageStore
* remove integration test :(
* fix mypy error
* Remove unused params
* Redo schema validation to be order-invariant, handle attrs (previously throwing errors due to strict ==)
* Expand explanation
* Add ChatMessageStore example
* Fix comments in redis_conversation.py
* Resolving uv.lock conflict, update to match main
* Fix test in redis provider
* Apply suggestion from @ekzhu
* Update python/packages/main/pyproject.toml
---------
Co-authored-by: Tyler Hutcherson <tyler.hutcherson@redis.com>
Co-authored-by: Eric Zhu <ekzhu@users.noreply.github.com>
* Fix options_dict handling in response client
* Update python/packages/main/agent_framework/openai/_responses_client.py
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Update condition for storing chat options
Fixes issue where, when using server-side threads, AF would pass back the function call message due to store being in chat_options in kwargs, not at the kwargs level. Means the appending of only the tool execution result never happens.
Resulted in a "tool output not found error" as we replied with the call not the result first.
* Refactor chat_options access for clarity
* Refactor store option assignment in responses client
* Small fixes
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Dmytro Struk <13853051+dmytrostruk@users.noreply.github.com>
* Move workflow to main package
* Remove workflow specific unit test config
* Remove workflow-specific version info
* Revert unintended telemetry changes
* Removed the obsolete packages/workflow/tests target
* Rename dir workflow to _workflow
* Fix test imports
* Add support for the Sequential Builder. Add samples. Add tests
* AgentExecutor: always compute full convo during response
* Upgrade azure-ai-agents ToolOutput to FunctionToolOutput
* Explicit notes around allows types for custom agent executors
* 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
* Added context provider abstractions
* Added mem0 implementation
* Example and small fixes
* Added unit tests for agent
* Added unit tests for mem0 provider
* Updated README
* Small doc updates
* Update python/packages/mem0/agent_framework_mem0/_provider.py
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Small fixes in tests
* Renaming based on PR feedback
* Small fixes
* Added tests for AggregateContextProvider
* Small improvements
* More improvements based on PR feedback
* Small constant update
* Added more examples
* Added README for Mem0 examples
* Small updates to API
* Updated initialization logic
* Updates for context manager
* Updated Context class
* Dependency update
* Revert changes
* Fixed tests
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Chris <66376200+crickman@users.noreply.github.com>
* 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>
Eduard van Valkenburg
·
2025-09-10 14:52:42 +00:00
* mcp parts
* mcp parts 2
* removed structured output in favor of handling in chatresponse, mcp as AITool and running samples
* updated naming
* fixed test
Eduard van Valkenburg
·
2025-08-13 09:48:22 +00:00
* openai updates
* rebuild of openai structure
* updated responses structure
* renamed sample
* added file id support to code interpreter
* added hosted file ids to code interpretor
* mypy fixes
* removed default az cred from codebase
* updated agent name setup
* added kwargs to entra methods
* and further kwargs
* extra comment
* updated all samples
* readded custom get methods for responses
* updated int tests with ad credential
* missed one
Eduard van Valkenburg
·
2025-08-12 06:14:22 +00:00
* added AIAnnotation types and extra tests
* fixed typing and such
* use copy
* fix raw representation for add
* handle annotations in add
* clarified concat
* self to first
Eduard van Valkenburg
·
2025-08-08 20:27:31 +00:00
* move all tests under tests and initial work on int tests
* added updated tests setup and merge tests
* without failing step
* fixed upload
* updated file names for coverage
* reenable surface tests
* removed package matrix
* simplified variables
* correct path
* removed mistake
* fix mistake in path
* fix path
* windows specific env set
* updated merge tests
* slight update in marker
* added run integration tests settings
* updated setup, moved foundry int tests and updated merge test
Eduard van Valkenburg
·
2025-07-22 15:26:00 +00:00
* Initial version of FoundryChatClient
* Updates to the tool call streaming wrapper
* Small fixes
* Small updates and addressed PR feedback
* Handle automatic client creation
* Small improvement
* Added credential parameter
* Small improvements
* Made FoundryChatClient disposable
* Small fixes
* Added unit tests
* Refactored samples
* Small improvements
* Small fix
* Addressed PR feedback
* Small fixes
* Small updates
* Small fix
* Addressed PR feedback
* added ChatClientBase with function calling
* streaming update
* fixed typing
* test setup
* small update
* src setup
* removed src, updated test naming
* fixed test command
* alolow args
* updated test run
* added unit test folder to azure
* added init and unit test to azure
* added other cross tests
* restructured
* reset test run
* fix name
* removed always
* updated test
* extend pytest.xml locations
* run surface always
* added decorators for FC and marked tests
* fixed mypy settings and added tests
* fix override import
* removed import
Eduard van Valkenburg
·
2025-07-10 09:18:15 +00:00
* feat: ModelClient and content types
* refactor: Pythonify ChatResponseFormat and ChatRole
* feat: Add guardrail interfaces
* refactor: Remove CancellationToken
* feat: Solidify the Usage APIs
* Adds well-known keys for additional_counts, and guidance for how to avoid collisions between providers
* Implement sum-aggregation for usage
* refactor: Move AITool out of model_client
* refactor: Copy editing
* fix: CI checks (pyupgrade, ruff, etc.)
* ci: Fix pre-commit to use pyright in uv venv
The existing pyright precommit hook inside of python-pyright is no longer being maintained by the owner (see https://github.com/RobertCraigie/pyright-python/issues/265)
The fix is to define the hook ourselves, relying on `uv run` to drive it. In order for that to work right we need to use the "system" language to break out of the sandbox.
* fix: Pyright error fixes
* docs: Update models and types design docs
* Python: Refinement of content types and model client (#112)
* refinement of structure and buildup
with ports from semantigen
* refined the data and uri contents
* refined chat response and updates
* moved things and added tests
* moved out of src folder
* fixed imports and tests
* small tweaks
* missing build system
* upgrade
* add mypy
* fixed typing for types
* fix tests
* fixed tool
* disable json checks on vscode
* remove print
---------
Co-authored-by: Eduard van Valkenburg <eavanvalkenburg@users.noreply.github.com>
Co-authored-by: eavanvalkenburg <github@vanvalkenburg.eu>