Formerly known as Azure AI Services or Azure Cognitive Services is a unified collection of prebuilt AI capabilities within the Microsoft Foundry platform
Hello Sashank P,
I understand that you’re looking for a way to persist memory across threads for Azure AI Foundry agents, similar to the behavior available in Bedrock agents.
In Azure AI Foundry, agent sessions are generally stateless, means each new thread or conversation does not automatically inherit memory from previous ones. However, there are supported approaches to enable persistence and manage state across threads:
By default, Azure AI Foundry securely stores threads, messages, and runs in a Microsoft-managed storage account, which is well-suited for basic scenarios where direct control over storage is not required.
With the Bring Your Own Storage option, you can configure your project to use your own Azure Storage account instead of the default Microsoft-managed one. This approach provides greater control over data management, security, and compliance, while ensuring that data remains isolated by project within your storage account.
For advanced scenarios, you can integrate Azure Cosmos DB for thread storage and management. This setup creates dedicated containers for conversation data, giving you full control over persistence, retrieval, and querying. To configure this, you can use the Bicep template provided in the Azure AI Foundry documentation.
Since there is no out-of-the-box “shared memory across threads” feature in Azure AI Foundry today, you can design a custom persistence strategy.
One option is to use an external state store such as Azure Cosmos DB, Azure Table Storage, or Azure Redis Cache to store conversation history and state, which can then be retrieved when starting a new thread. For long-term semantic memory, you can use Azure AI Search with vector search or third-party vector databases to store embeddings and rehydrate context when needed.
Another approach is to build a custom middleware layer that intercepts agent calls, saves relevant context, and injects it back into new conversations, ensuring continuity across threads.
I Hope this helps. Do let me know if you have any further queries.
Thank you!