Skip to content

Getting a Chat Completion

csharp
using LlmTornado.Chat;
using LlmTornado.Chat.Models;

TornadoApi api = new TornadoApi("your-api-key");

List<ChatMessage> messages = new List<ChatMessage>
{
    new ChatMessage(ChatMessageRoles.System, "You are a helpful assistant."),
    new ChatMessage(ChatMessageRoles.User, "Hello, who won the world series in 2020?"),
}

ChatResult? result = await api.Chat.CreateChatCompletion(new ChatRequest
{
    Model = ChatModel.OpenAi.Gpt4.Turbo,
    Messages = messages
});

Console.WriteLine(result?.Choices?.Count > 0 ? result.Choices?[0].Message?.Content : "no response");

messages.Add(new ChatMessage(ChatMessageRoles.Assistant, result?.Choices?[0].Message?.Content ?? ""));

messages.Add(new ChatMessage(ChatMessageRoles.User, "Where was it played?"));

result = await api.Chat.CreateChatCompletion(new ChatRequest
{
    Model = ChatModel.OpenAi.Gpt4.Turbo,
    Messages = messages
});

Console.WriteLine(result?.Choices?.Count > 0 ? result.Choices?[0].Message?.Content : "no response");

Using Conversation

Using the Conversation class to manage message history

csharp
using LlmTornado.Chat;
using LlmTornado.Chat.Models;

TornadoApi api = new TornadoApi("your-api-key");

Conversation conv = api.Chat.CreateConversation(new ChatRequest
{
    Model = ChatModel.OpenAi.Gpt4.Turbo,
});

conv.AppendSystemMessage("You are a helpful assistant.");
conv.AppendUserInput("Hello, who won the world series in 2020?");

string? response = await conv.GetResponse();

Console.WriteLine(response ?? "no response");

conv.AppendUserInput("Where was it played?");

response = await conv.GetResponse();

Console.WriteLine(response ?? "no response");