* Organize the .Net samples
* Organize the .Net samples
* Merge latest from main
* Update sample to also include function calling telemetry (#577)
* Move package installation instructions to user-guide (#572)
* Move package installation instructions to user-guide
* Update user-documentation-dotnet/getting-started/README.md
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Update docs/docs-templates/getting-started/README.md
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* .NET: Add SK-AF Migration Samples for Responses API. (#575)
* Responses wip
* Adding OpenAI Responses Migration samples
* Address all samples and code for Azure and OpenAI Responses Migration code
* Update dotnet/samples/SemanticKernelMigration/OpenAIResponses/Step02_ReasoningModel/Program.cs
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Organize the .Net samples
* Organize the .Net samples
* Merge latest from main
* Use Agent rather than AIAgent
* Rename agents getting started samples
* Use singular Agent
---------
Co-authored-by: Roger Barreto <19890735+rogerbarreto@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Add more console based getting started samples
* Simplify function calling and approavls samples and some minor renaming based on PR feedback.
* Cover streaming with comments for aprovals sample.
* Remove extra line break.
* Update getting started samples list in readme.
* Address PR comments
* Address PR comments.
* 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>
* Add thread storage and serialization POC
* Switch to using JsonElement and add unit tests
* Add additional unit tests.
* Exclude private debugger properties from CodeCoverage.
* Rename IChatMessagesStorable to IChatMessageStore
* Apply suggestions from code review
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Improve xml doc.
* Update the message storing thread to always use external store for both local and remote storage.
* Remove threadid from the IChatMessageStore interface, since the store should own the thread id itself, if it requires one.
* Switch GetMessages to IEnumerable
* Address pr comments.
* Make jsonserializer options default consistent on DeserializeThreadAsync
* Move message storing thread functionality into AgentThread and simplify AgentThread behavior.
* Remove embedding generation from VectorStore chat history sample.
* Remove unecessary code and fix formatting.
* Make GetNewThread and DeserializeThread virtual with default implementations.
Remove unsued json utilities.
* Fix formatting
* Remove problem test.
* Add more unit tests
* Remove unused using clause.
* Address pr feedback.
* Address PR comments.
* Make InMemory store internal
* Switch InMemoryChatMessageStore to implement IList instead of inheriting from List.
* Rename store deserialize param.
* Update serialization based on PR comments.
* Remove confusing comment.
* Address Deserialization PR comments in the same way as Serialization
* Add State to IChatMessageStore Serialize and Deserialize names.
Make Thread Deserialize internal.
Make AgentThread type switching fobidden.
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Chris <66376200+crickman@users.noreply.github.com>
* Add some OpenAI specific extensions
* Update samples and extension methods
* Apply suggestion from @Copilot
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Apply suggestion from @Copilot
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Add extension methods for creating agents using the Assistant API
* Add orchestration sample
* Add orchestration sample
* Sample for the Foundry alignment document
* Address code review feedback
* Rename provider samples
* Sample showing how to get an AI agent for Foundry SDK
* Add OpenAI chat completion based implementation of AIAgent
* Split OpenAI client extension methods by client type
* Remove OpenAIClient extension methods
* Rename AsRunnableAgent
* Fix XML comments
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
- Remove Dictionary-derived types
- Add an optional name to orchestrations
- Make Handoffs based purely on AIAgent instances rather than separately provided names
* Add ChatClientAgent constructor overload
* Add unit tests for new constructor
* Up code coverage with extra tests
* Address PR comments.
* Address PR comment
* Add additional test to increase code coverage.
* Basic agent invocation sample
* Simplify sample further.
* Add additional comment.
* Address code review comments.
* Suppress CA2000 and remove using from most basic sample, since the IChatClient instances involved do not do any disposal.
- Moved InProcessRuntime type into abstractions package and deleted InProcess package.
- Moved several members of IAgentRuntime to be extension methods instead, e.g. multiple GetActorAsync overloads.
- Added synchronous RegisterMessageHandler overloads and used them to avoid unnecessary async usage at call sites.
- Removed unnecessary surface area from InProcessRuntime, e.g. StopAsync, RunUntilIdleAsync, etc.
- Fixed spin loop in InProcessRuntime that would consume an entire core for the duration of the orchestration's operation.
- Removed a bunch of allocation from InProcessRuntime.
- Made a runtime optional for orchestrations, defaulting to using a temporary InProcessRuntime if none is provided.
- Removed custom delegate types from orchestrations.
- Consolidated namespaces.
- Used records to simplify message classes.
- Tweaked naming on AgentActor to make purpose of protected methods more clear.
- Removed invocation in AgentActor.InvokeAsync of empty update / isFinal parameter.
- Changed OrchestrationHandoffs to avoid needing to pass in agents duplicatively.
- Made various extension methods, such as those on OrchestrationHandoffsExtensions, into instance methods.
* DI WIP
* Update dependency injection examples and Agent Creation update
* Rollback override for GettingStarted as Azure.AI.OpenAI package currentl does not support OpenAI 2.2.0 GA version
* Dropping ct
* Update dotnet/samples/GettingStarted/AgentSample.cs
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>