当前位置: 首页 > article >正文

I get HttpClient.Timeout Error in C# OpenAI library

题意:“我在 C# OpenAI 库中遇到 HttpClient.Timeout 错误。”

问题背景:

I am using the OpenAI library in my c# project, but I get the following error if it does not receive a response for more than 100 seconds. I cannot add a custom httpclient element. how can I solve this problem. Thanks in advance.

“我在 C# 项目中使用 OpenAI 库,但如果超过 100 秒未收到响应,我就会遇到以下错误。我无法添加自定义的 HttpClient 元素。如何解决这个问题?提前感谢。”

‘system Threading Tasks.TaskCanceledException: The request was canceled due to the configured HttpClient.Timeout of 100 seconds elapsing,‘

“‘系统抛出 Threading.Tasks.TaskCanceledException:请求由于配置的 100 秒 HttpClient 超时而被取消,’”

The library I use: https://github.com/OkGoDoIt/OpenAI-API-dotnet

“我使用的库:https://github.com/OkGoDoIt/OpenAI-API-dotnet

my code:        我的代码:

OpenAIAPI api = new OpenAIAPI(apiKey);
                var result = await api.Chat.CreateChatCompletionAsync(new ChatRequest()
                {
                    Model = Model.ChatGPTTurbo,
                    Temperature = 0.5,
                    Messages = new ChatMessage[]
                    {
            new ChatMessage(ChatMessageRole.System, ""),
            new ChatMessage(ChatMessageRole.User, prompt)
                    }
                });

问题解决:

Solution for those who have other problems:

“针对那些遇到其他问题的解决方案:”

using System.Net.Http;

public class CustomHttpClientFactory : IHttpClientFactory
{
    public HttpClient CreateClient(string name)
    {
        var httpClient = new HttpClient();
        httpClient.Timeout = TimeSpan.FromSeconds(200);

        return httpClient;
    }
}
OpenAIAPI api = new OpenAIAPI(apiKey);  
api.HttpClientFactory = new CustomHttpClientFactory();
var result = await api.Chat.CreateChatCompletionAsync(new ChatRequest()
{
    Model = Model.ChatGPTTurbo,
    Temperature = 0.5,
    Messages = new ChatMessage[]
{
    new ChatMessage(ChatMessageRole.System, ""),
    new ChatMessage(ChatMessageRole.User, prompt)
}
});


http://www.kler.cn/a/280613.html

相关文章:

  • 【jvm】虚拟机栈会oom吗
  • 四,接口类型和网络协议
  • IO多路复用几种函数
  • html2canvas ios慎用和createImageBitmap ios慎用
  • MATLAB 计算三角形的外接圆心和半径(84)
  • el-form中使用v-model和prop实现动态校验
  • docker容器基本命令、docker进入容器的指令、容器的备份、镜像底层原理、使用commit命令制造镜像、将镜像推送到阿里云镜像仓库与私服仓库
  • Lodash——JavaScript中的工具库
  • 【Redis】Redis客户端——Jedis(Java)
  • JMeter与数据库交互:执行SQL查询性能测试
  • Javascript深拷贝常见实现方法
  • 【Qt】项目打包发布
  • k8s POD控制器
  • 【Java设计模式】非循环访问者模式:简化对象交互
  • Python算法工程师面试整理-数据结构
  • sql中exist和in的区别
  • 了解一点电池的工作原理,让它们更好地为我们工作。【手机充电小技巧】(影响电池寿命的主要因素:过充、过放以及高温)
  • Java中Map集合的高级应用与实战技巧
  • docker手动部署django项目Dockerfile编排-后端发布
  • SpringBoot项目集成数据脱敏(密码加密)功能