Commit Graph

12 Commits

  • .NET: Enable access to hosted AIAgents via OpenAI Chat Completions (#1302)
    * non-streaming chat completion
    
    * support streaming
    
    * simplify frontend clients + nit
    
    * nit
    
    * use baseaddress
    
    * rm unnecessary
    
    * refactor
    
    * remove conversation id for chatcompletions agent client
    
    * nits
  • .NET: Enable access to hosted AIAgents via OpenAI Responses (#947)
    * init
    
    * wip
    
    * wip wip wip
    
    * wip wip
    
    * open up API
    
    * enable for multiple agents
    
    * more wip
    
    * make frontend respond.
    
    * wip
    
    * not sure if proper setup
    
    * define type
    
    * cleanup
    
    * frontend streaming wip
    
    * use System.Net.ServerSentEvents
    
    * usings
    
    * reformat via ichatclient
    
    * merge main renaming + refactor
    
    * fix main merge + fix sample (a2a change)
    
    * fix sample
    
    * some rebase (not working yet)
    
    * make it at least build somehow
    
    * make non-stream work without internal types
    
    * Input without custom models
    
    * implement streaming
    
    * test frontend
    
    * enable alerts and fix
    
    * build fixes & rereview
    
    * Update dotnet/src/Microsoft.Agents.AI.Hosting.OpenAI.Responses/Microsoft.Agents.AI.Hosting.OpenAI.Responses.csproj
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Update dotnet/src/Microsoft.Agents.AI.Hosting.OpenAI.Responses/Utils/ResponseItemJsonConverter.cs
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * fix agent discovery
    
    * rename
    
    * rename project into Microsoft.Agents.AI.Hosting.OpenAI (no responses in name)
    
    * PR address comments x1
    
    * address PR comments x2
    
    * correctly instantiate OpenAIResponse
    
    * address PR comments x3
    
    * reconfigure JSON serialization & handle AOT warnings
    
    * fix build
    
    * proper ref
    
    * check update differently
    
    * correct check
    
    * exclude dotnet format diagnostics for IL2026 and IL3050
    
    * space  :)
    
    * re-review
    
    * add comments
    
    * remove unnecessary using
    
    * always take last openai response item
    
    * set responseItem Id explicitly
    
    * add agent.name validation for uri
    
    * cleanup
    
    ---------
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    Co-authored-by: SergeyMenshykh <68852919+SergeyMenshykh@users.noreply.github.com>
  • 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>
  • Python: .NET: [BREAKING] Remove Actor-based runtime (#977)
    * Remove Actor-based runtime
    
    * Fix formatting
    
    * Remove cosmos db vestigials
    
    ---------
    
    Co-authored-by: Eric Zhu <ekzhu@users.noreply.github.com>
    Co-authored-by: Stephen Toub <stoub@microsoft.com>
  • .NET: Change Runtime namespaces to Microsoft.Agents.AI.Runtime (#957)
    * Rename MEAI.Runtime to MAAI.Runtime.
    
    * Missed.
  • .NET: Change Hosting namespaces to Microsoft.Agents.AI.Hosting (#953)
    * Rename MEAI.Hosting to MAAI.Hosting.
    
    * dotnet format.
  • .NET: Add AgentWorkflowBuilder group chat (#861)
    * Add AgentWorkflowBuilder group chat
    
    And fix a variety of issues along the way:
    - Use DateTime{Offset}.UtcNow rather than Now
    - AIAgentHostExecutor shouldn't be publishing empty messages
    - Sequential workflows should be flowing all history and not just the output from the previous agent as the input into the next agent
    - Renamed some of the new agent workflow methods... still not super happy with the shape, though
    - Simplified handoffs builder, e.g. using a hashset with a custom comparer instead of a dictionary
    - Improved multi-service use by trying to change assistant->user role for messages created by other agents
    - Changed MessageMerger to rely on M.E.AI's coalescing more and to avoid empty contents / text
    - Ensured that messages from ChatClientAgent include MessageId and CreatedAt timestamps
    - Avoided including instructions for agents in a handoff workflow that don't have any handoffs
    - Removed the unnecessary end function in handoffs
    - Improved naming of executors to include agent name for debuggability
    - Use "N" formatting with Guid.ToString everywhere, to avoid the unnecessary extra dash character which is also not valid in various places (like function tool names)
    - Replace `params T[]` with `params IEnumerable<T>` to make public APIs more flexible in what they consume
    
    * Address feedback
    
    - Fix unintentional provider change in sample
  • .NET: [BREAKING] Subclass AgentThread so that different agents have their own threads with their own typed settings. (#798)
    * Subclass AgentThread so that different agents have their own threads with their own typed settings.
    
    * Address PR comment.
    
    * Add unit tests for base abstract threads
    
    * Fix style warning
    
    * Fix stlying
    
    * FIx and suppress warnings as needed.
    
    * Remove covariant thread response types and fix some styling.
    
    * Remove unecessary json property name attributes and make OrchestratingAgentThread private
    
    * Fix break from merge from main.
    
    * Fix formatting
    
    * Fix deserialization bug in Memory sample
    
    * Remove thread deletion from basic samples.
    
    * Remove public constructors for thread subclasses and add more factory methods to concrete agent types.
    
    * Update AgentProxy thread constructors to be internal as well.
    
    * Revert AgentProxyThread to internal
    
    * Change AIContextProvider to internal set
    
    * Change conversation id and message store properties to internal set
    
    * Update styling.
    
    * Seal various thread types.
    
    * Add thread type check for thread deletion
    
    * Fix tests after latest merge from main
    
    * Add thread type checks for thread deletion.
    
    ---------
    
    Co-authored-by: Chris <66376200+crickman@users.noreply.github.com>
  • .NET: feat: Microsoft.Extensions.AI.Agents.Hosting.A2A package (#390)
    * add timeout handling for message send
    
    * prepare a2a proj
    
    * fix it finally
    
    * add a holder for selected protocol
    
    * init types ;
    
    * see discoveredAgentCardJson
    
    * prettify json
    
    * correct usage
    
    * client setup for card
    
    * setp?
    
    * message:send
    
    * init task based communication
    
    * try call it via the agent thread
    
    * okay i got back the message wooooow!
    
    * nit
    
    * fix duplicates
    
    * yea matey!
    
    * fix knights-knaves for A2A-Task-based communication
    
    * fix a2a agents csproj
    
    * AI feedback
    
    * a2a does not support netstandard / netfx
    
    * try fix build + refactor
    
    * bump a2a for net9 only
    
    * rollback System.Net.ServerSentEvents & Microsoft.Bcl.AsyncInterfaces version upgrade; override in-place and retarget to net9;net8 for A2A
    
    * address PR comments x1
    
    * refactor a2a interfaces
    
    * address PR comments x2
    
    * fix cancel usage
    
    * separate project for A2A.AspNetCore
    
    * simplify
    
    * cleanup
    
    * cleanup dependencies
    
    * generate convertor tests / fix namespaces etc
    
    * setup actor client!
    
    * fix build
    
    * backoff conversations
    
    * fix duplicate message streaming
    
    * address PR comments x1
    
    * remove internalsvisibleto
    
    * dont implement agent card query on my own: give it to the user
    
    * nit
    
    * rename and move projects
    
    * fix dotnet-format
    
    * address PR comments x1
    
    * remove unreferenced project
    
    * rollback
    
    * rename
    
    * nit
    
    ---------
    
    Co-authored-by: Chris <66376200+crickman@users.noreply.github.com>
  • .NET: Add agent hosting package and update sample (#296)
    * Add agent hosting package and update sample
    
    * Review feedback and cleanup
    
    * Include the narrator
    
    * wip
    
    * wip
    
    * Remove workaround for empty state writes.
    
    * Handle changes to AgentThread.
    
    * One more.
    
    * Fix.
    
    ---------
    
    Co-authored-by: Aditya Mandaleeka <adityam@microsoft.com>