You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

C#使用OpenAI库遇HttpClient.Timeout错误的解决方法咨询

解决OpenAI-API-dotnet库请求超时(100秒)抛出TaskCanceledException的问题

你不需要自定义HttpClient实例,直接修改OpenAIAPI实例自带的HttpClient的超时属性即可解决该问题。具体操作如下:

  • 初始化OpenAIAPI后,直接设置api.HttpClient.Timeout为你需要的时长(例如300秒)
  • 注意不要设置过长的超时时间,避免不必要的资源占用,同时要考虑OpenAI服务端本身的限制

修改后的代码示例:

OpenAIAPI api = new OpenAIAPI(apiKey);
// 设置超时时间为300秒(可根据实际需求调整)
api.HttpClient.Timeout = TimeSpan.FromSeconds(300);

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)
    }
});

额外建议:

  • 即使调整了超时时间,仍建议添加异常捕获逻辑,处理TaskCanceledException,避免程序意外崩溃
  • 如果请求频繁超时,可尝试优化请求参数(比如缩短prompt长度、调整模型参数),或者检查本地网络连接稳定性

内容的提问来源于stack exchange,提问作者Ahrika

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.19 05:07:09