I'm having difficulty choosing which SDKs to use for managing agents now that Microsoft Foundry has been updated. Previously, we used the `PersistentAgentsClient` from `Azure.AI.Agents.Persistent` to create and manage agents with C#. This method worked well, allowing our agents to appear in the old AI Foundry portal. We then transitioned to `Microsoft.Agents.AI` and `Microsoft.Agents.AI.AzureAI` SDKs for converting our `PersistentAgent` to a `ChatClientAgent`, which offers a more user-friendly API.
Now, with the new Foundry experience in preview, our existing agents are not visible in the new UI, with a message indicating that "classic" agents don't show and suggesting manual conversion. We want to fully manage our agents via code without manual intervention in the UI, but it's unclear which SDKs we should be using. The Microsoft documentation hints at using the `Azure.AI.Agents` package, but that package appears to be nonexistent. Is there any additional documentation or insights available?
2 Answers
Have you checked out the Microsoft Agent Framework? It's the latest and should make agent development smoother. You can craft your agents without so much manual meddling in Foundry. The GitHub repo has plenty of examples to help you get started: https://github.com/microsoft/agent-framework.
I totally get your frustration! Microsoft has a tendency to create a lot of similar libraries for different functionalities, and it can be a real hassle to figure out which one to use. I've found the Microsoft AI libraries often have different versions that might not even be compatible with each other. Just keep an eye out for that as you choose your SDKs.

Thanks for the tip! Just to update you, we were already using `Azure.AI.Projects`, but we had to upgrade to .NET 10 to access the latest preview versions. We can now create agents in the new Foundry using `AIProjectClient.Agents.CreateAgentVersion`. However, I'm still struggling with setting up Structured Outputs at the agent level through this method, which is a bit frustrating since the new API seems to have its limitations.