Skip to content

Translation

Zoltan Juhasz edited this page May 2, 2023 · 1 revision

Translate audio into english

static async Task Main(string[] args)
{
    using var host = Host.CreateDefaultBuilder(args)
        .ConfigureServices((builder, services) =>
        {
            services.AddForgeOpenAI(options => {
                options.AuthenticationInfo = builder.Configuration["OpenAI:ApiKey"]!;
            });
        })
        .Build();

    IOpenAIService openAi = host.Services.GetService<IOpenAIService>()!;

    TranslationRequest request = new TranslationRequest();
    request.AudioFile = new BinaryContentData() 
    { 
        ContentName = "audio.mp3", 
        SourceStream = File.OpenRead("audio.mp3") 
    };

    HttpOperationResult<TranslationResponse> response = 
        await openAi.TranslationService
            .GetAsync(request, CancellationToken.None)
                .ConfigureAwait(false);

    if (response.IsSuccess)
    {
        // text: "How can I motivate you?"
        Console.WriteLine(response.Result?.Text);
    }
    else
    {
        Console.WriteLine(response);
    }
}