Commit Graph

22 Commits

  • Python: Enhance tool call handling and function result processing (#790)
    * Tool call enhancement
    
    * add tests
    
    * fix comments
    
    * resolve comments
    
    ---------
    
    Co-authored-by: Chris <66376200+crickman@users.noreply.github.com>
    Co-authored-by: Eric Zhu <ekzhu@users.noreply.github.com>
  • Python: Fix Multimodal input bug (#799)
    * fix multimodal bug python
    
    * update file names
    
    * precommit fixes
    
    * Update python/samples/getting_started/multimodal_input/README.md
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * udpate readme
    
    * add copyright line, remove audio example function
    
    ---------
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
  • .NET: Python: OpenAI Responses Agent Completeness (#721)
    * OpenAI Responses Agent Completeness
    
    * prepare options
    
    * added unit tests
    
    * azure responses test fix
    
    * resolved conflict
    
    * pre commit fix
    
    * Revert "Merge remote changes and resolve conflicts"
    
    This reverts commit 56787f25a4, reversing
    changes made to f71a27ebfe.
    
    * Fixes
    
    * azure responses file search fix
    
    * Fix corrupted uv.lock file
    
    ---------
    
    Co-authored-by: Giles Odigwe <gilesodigwe@microsoft.com>
    Co-authored-by: Dmytro Struk <13853051+dmytrostruk@users.noreply.github.com>
  • 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
  • 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>
  • 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>
  • Python: add base_url parameter for openai chat client (#661)
    * added base_url option for openai chat client
    
    * fix test url
  • Python: Samples Integration Tests (#615)
    * Samples Tests
    
    * small fixes
    
    * job fix
    
    * telemetry dependency fix
    
    * job error fix
    
    * sorting provider specific tests
    
    * telemetry fixes
    
    * openai file search fix
    
    ---------
    
    Co-authored-by: Giles Odigwe <gilesodigwe@microsoft.com>
  • 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
  • Python: Improved main package test coverage (#445)
    * Fixed failing foundry tests and improved main coverage
    
    * Add back mistakenly deleted code
    
    * Update python/packages/main/tests/openai/test_openai_assistants_client.py
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Update python/packages/main/tests/openai/test_openai_assistants_client.py
    
    Co-authored-by: Dmytro Struk <13853051+dmytrostruk@users.noreply.github.com>
    
    * Small fix
    
    ---------
    
    Co-authored-by: Giles Odigwe <gilesodigwe@microsoft.com>
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    Co-authored-by: Dmytro Struk <13853051+dmytrostruk@users.noreply.github.com>
  • 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>
  • Python: openai updates (#388)
    * 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
  • Python: added AIAnnotation types and extra tests (#374)
    * 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
  • Python: OpenAI Assistants Chat Client and Agent (#288)
    * Initial version of assistant client
    
    * More updates to assistant client
    
    * Finished assistant chat client implementation
    
    * Small fixes and basic example
    
    * Added code interpreter example
    
    * More examples
    
    * Added chat client example
    
    * Small fixes
    
    * Added tests
    
    * Enabled telemetry
    
    * Small fix
    
    * Removed files temporarily
    
    * Revert "Removed files temporarily"
    
    This reverts commit 5cdfa0d299.
    
    * Small fixes
    
    * Addressed PR feedback
    
    * Fixed tests
    
    * Small update
  • Merge tests (#247)
    * removed hardcoded model names from tests
    
    * add debug line
  • Python telemetry (#223)
    * initial work on telemetry
    
    * moved tool operation const
    
    * missing quotes
    
    * working otel with samples
    
    * updated readme and other assets
    
    * added tests
    
    * added tests
    
    * small updates
    
    * updated genaiattributes docs
    
    * updated tests
    
    * additional warning
    
    * cleanup of tests
  • Python: OpenAI responses client (#239)
    * Responses client WIP
    
    * add responses class
    
    * fix typing errors
    
    * move test
    
    * streaming responses, structured outputs
    
    * tests
    
    * Update python/packages/main/tests/openai/test_openai_responses_client.py
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * pr comments
    
    * fix override import
    
    * fix mypy
    
    * add missing function override
    
    * PR comments
    
    * add docstrings
    
    ---------
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
  • Python: move all tests under tests and initial work on int tests (#206)
    * 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