Getting Started
Ecosystem overview
The tryAGI ecosystem consists of three layers:
- Auto-generated SDKs — Typed C# clients generated from OpenAPI specs via AutoSDK. Each SDK wraps a provider's full REST API.
- MEAI implementations — Hand-written extensions that implement
Microsoft.Extensions.AIinterfaces (IChatClient,IEmbeddingGenerator,ISpeechToTextClient) on top of the generated clients. - CustomProviders — Factory methods in
tryAGI.OpenAIfor providers with OpenAI-compatible APIs, giving you MEAI support without a standalone SDK.
Choosing the right approach
Decision guide
1 2 3 4 5 6 7 | |
When to use a dedicated SDK
Use a dedicated SDK when the provider has a unique API (not OpenAI-compatible) or has provider-specific features beyond basic chat/embeddings:
| SDK | Why dedicated? |
|---|---|
tryAGI.Anthropic |
Unique API with thinking, PDFs, prompt caching |
tryAGI.Google.Gemini |
Google's own REST API with grounding, thought signatures |
tryAGI.ElevenLabs |
Speech synthesis + transcription, unique API |
tryAGI.AssemblyAI |
Transcription-focused API with async processing |
tryAGI.Tavily |
Search/extract API exposed as AIFunction tools |
When to use CustomProviders
Use CustomProviders when the provider offers an OpenAI-compatible chat/embeddings API:
1 2 3 4 5 6 7 | |
See the full CustomProviders table for all 19 supported providers.
Installation
All SDKs are published as NuGet packages under the tryAGI.* prefix:
1 2 3 | |
1 2 | |
Basic usage pattern
All SDKs follow the same pattern:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | |
MEAI integration
Microsoft.Extensions.AI provides unified interfaces for AI services. All tryAGI SDKs with MEAI support implement these on version 10.4.0 of the abstractions.
See the MEAI section for feature matrices and per-interface guides.
Target frameworks
Most SDKs multi-target for broad compatibility:
| Framework | Support |
|---|---|
net10.0 |
All SDKs |
net9.0 |
Most SDKs |
net8.0 |
Most SDKs |
netstandard2.0 |
Mature SDKs |
net4.6.2 |
Mature SDKs |
Newer SDKs may target net10.0 only. Check the individual SDK's .csproj for exact targets.