Skip to content

Microsoft.Extensions.AI Integration

Cross-SDK comparison

See the centralized MEAI documentation for feature matrices and comparisons across all tryAGI SDKs.

The ModernMT SDK provides AIFunction tool wrappers compatible with Microsoft.Extensions.AI. These tools can be used with any IChatClient to give AI models adaptive machine translation, language detection, and translation memory management.

Installation

1
dotnet add package tryAGI.ModernMT

Available Tools

Method Tool Name Description
AsTranslateTool() Translate Translate text between languages
AsListLanguagesTool() ListLanguages List supported language codes
AsListMemoriesTool() ListMemories List translation memories
AsDetectLanguageTool() DetectLanguage Detect language of text

Usage

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
using Microsoft.Extensions.AI;
using ModernMT;

var client = new ModernMTClient(
    apiKey: Environment.GetEnvironmentVariable("MODERNMT_API_KEY")!);

var options = new ChatOptions
{
    Tools = [client.AsTranslateTool()],
};

IChatClient chatClient = /* your chat client */;

var messages = new List<ChatMessage>
{
    new(ChatRole.User, "Translate 'Hello, how are you?' to French"),
};

while (true)
{
    var response = await chatClient.GetResponseAsync(messages, options);
    messages.AddRange(response.ToChatMessages());

    if (response.FinishReason == ChatFinishReason.ToolCalls)
    {
        var results = await response.CallToolsAsync(options);
        messages.AddRange(results);
        continue;
    }

    Console.WriteLine(response.Text);
    break;
}