以下是一个简单的示例代码,用于从 ChatGPT API 获取聊天消息的完整性,并将其作为流返回给客户端。

using System.Net.Http;
using System.Threading.Tasks;
using System.Web.Http;

public class ChatController : ApiController
{
    private readonly HttpClient _httpClient;

    public ChatController()
    {
        // 初始化 ChatGPT API 客户端
        _httpClient = new HttpClient();
        _httpClient.BaseAddress = new Uri('https://api.openai.com/v1/');
        _httpClient.DefaultRequestHeaders.Add('Authorization', 'Bearer YOUR_API_KEY_HERE');
    }

    [HttpGet]
    public async Task<HttpResponseMessage> GetChatMessages()
    {
        // 发送请求到 ChatGPT API 获取聊天消息
        var request = new HttpRequestMessage(HttpMethod.Post, 'engines/davinci-codex/completions');
        request.Content = new StringContent('{"prompt": "Hi, how are you?", "max_tokens": 50}', Encoding.UTF8, 'application/json');
        var response = await _httpClient.SendAsync(request);

        // 确保响应成功
        response.EnsureSuccessStatusCode();

        // 将响应内容作为流返回给客户端
        var stream = await response.Content.ReadAsStreamAsync();
        return new HttpResponseMessage(HttpStatusCode.OK)
        {
            Content = new StreamContent(stream)
        };
    }
}

请注意,此代码仅提供了一个基本框架,您需要将其适应您的特定需求。您需要将'YOUR_API_KEY_HERE'替换为您的 ChatGPT API 密钥,并将请求内容更改为您所需的内容。此外,您需要在 Web.config 中配置您的应用程序以使用 .NET Framework 4.5.1。

C# .NET 4.5.1 Web API 使用 ChatGPT Completion API Stream 返回聊天消息

原文地址: https://www.cveoy.top/t/topic/l6Eq 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录