[.NET Core] Sử dụng System.Text.Json để gửi và nhận tin nhắn api chat gpt

Dưới đây là code mẫu tạo một class OpenAIChatClient

 public class OpenAIChatClient
{
private readonly HttpClient httpClient;
private const string openAIEndpoint = "https://api.openai.com/v1/chat/completions";
private const string apiKey = "api-Key";

public OpenAIChatClient()
{
httpClient = new HttpClient();
httpClient.DefaultRequestHeaders.Add("Authorization", $"Bearer {apiKey}");
}

public async Task<string> GetChatCompletion(string userInput)
{
var requestBody = new
{
model = "gpt-3.5-turbo",
messages = new[]
{
new { role = "user", content = userInput }
}
};

var jsonRequest = JsonSerializer.Serialize(requestBody);
var httpContent = new StringContent(jsonRequest, Encoding.UTF8, "application/json");

var request = new HttpRequestMessage
{
Method = HttpMethod.Post,
RequestUri = new Uri(openAIEndpoint),
Content = httpContent
};

var response = await httpClient.SendAsync(request);
var jsonResponse = await response.Content.ReadAsStringAsync();

// Xử lý kết quả ở đây
// Ví dụ:
// var result = JsonSerializer.Deserialize<dynamic>(jsonResponse);
// var chatCompletion = result.choices[0].message.content.ToString();
// return chatCompletion;

return jsonResponse;
}
}

Chúc các bạn thành công.

Bình luận