Commit Graph

6 Commits

  • .NET: Update AgentThread, MessageStores and Context Providers to deserialize via constructor. (#779)
    * Update AgentThread, MessageStores and Context Providers to deserialize via constructor.
    
    * Fix pr comment.
    
    * Add additional validation for AgentThread deserialization
    
    * Update WorkflowMessageStore desreialize to improve error checking.
    
    * Reduce allocations in InMemoryChatMessageStore
    
    ---------
    
    Co-authored-by: Chris <66376200+crickman@users.noreply.github.com>
  • .NET: Add AIContextProvider support (#691)
    * Add AIContextProvider support
    
    * Address feedback.
    
    * Address PR comments.
    
    * Switch to valuetask and remove parallel calls for AIContextProvider
    
    * Remove Model from ModelInvokingAsync method name
    
    * Remove agent thread id again and remove it from context provider interface
    
    * Add AIContextProvider serialization support to AgentThread and update sample to show this feature
    
    * Address PR comments
    
    * Improve memory sample
    
    * Update sample comment.
    
    * Remove AggregateAIContextProvider for now since it makes too many assumptions.  We can include it later as a sample if needed.
    
    * Update AIContextProviders to have an Invoked method instead of MessagesAddingAsync.
    
    * Remove unused using.
    
    * Address PR comments.
    
    * Address PR comment.
    
    * Update comment.
    
    * Update comment
    
    * Address PR comments.
  • .NET: Remove AgentThread.GetMessagesAsync (#668)
    * Remove AgentThread.GetMessagesAsync
    
    * Remove unecessary using
  • .NET: Fixes for agent abstractions to improve MEAI static analysis compliance (#498)
    * Fixes for agent abstractions to improve MEAI static analysis compliance
    
    * Fix build error
  • .Net: Add support for 3rd party thread storage and thread serialization (#203)
    * 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>