尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
API实践第2篇-2 细读超时与重试
第二篇超时和重试的细节AI接口超时和重试踩坑细节都在这了上一篇讲了三个基础配置这篇展开说超时和重试。一次请求涉及四种超时类型 含义 建议值连接超时 TCP TLS握手 5-10秒写入超时 发送请求Body 10秒读取超时 等待响应完成 60-300秒连接池超时 等空闲连接 10秒最容易出问题的是读取超时。模型生成是逐Token的长回复需要几十秒。读超时小于生成时间客户端先断。重试的五个注意事项区分错误类型pythonRETRYABLE {429, 500, 502, 503, 504}if status in RETRYABLE:retry()else:raise # 400/401/403不重试2. 不要立即重试至少等1秒给上游恢复时间。设上限最多三次超过就放弃并记日志。注意重复计费对话接口不幂等。重试一次多扣一次费。所以429/503要退避——上游可能已经处理了请求只是响应丢了。加随机抖动pythonwait (2 ** attempt) random.uniform(0, 1)避免多个客户端同时重试造成二次冲击。完整实现pythonimport timeimport randomimport logginglogger logging.getLogger(name)class AIClient:RETRYABLE {429, 500, 502, 503, 504}MAX_RETRIES 3def __init__(self): self.client OpenAI( base_urlhttps://api.openstarry.com/v1, api_keysk-xxx, timeouthttpx.Timeout(connect10.0, read120.0) ) def chat(self, messages, modelglm-5.2): for attempt in range(self.MAX_RETRIES 1): try: return self.client.chat.completions.create( modelmodel, messagesmessages ) except Exception as e: status getattr(e, status_code, None) if status not in self.RETRYABLE or attempt self.MAX_RETRIES: raise wait (2 ** attempt) random.uniform(0, 1) logger.warning(f重试 {attempt1}/{self.MAX_RETRIES}等待{wait:.1f}s) time.sleep(wait)我用国内聚合服务OpenStarry兼容OpenAI格式API可以先把代码跑通。
RELATED

相关推荐

中国商业航天2026中场战事:半年融资151亿、15家企业冲IPO

中国商业航天2026中场战事:半年融资151亿、15家企业冲IPO

"SpaceX上市让中国商业航天加速"作者 | 简 安编辑 | 卢旭成7月10日12时15分,海南商业航天发射场。长征十号乙运载火箭点火升空,将卫星顺利送入预定轨道。火箭一二级分离约6分钟后,一子级垂直返回,在南海预定海域被“领…

📅 2026/8/25 13:15:58
API实践第一篇:三个配置解决大部分调用问题无标题】

API实践第一篇:三个配置解决大部分调用问题无标题】

三个配置解决大部分调用问题 Python调AI接口总超时?改了三个地方没再报过错 写了个接AI的项目,踩了一堆坑。超时、429、流式中断,查日志发现不是平台问题,是自己客户端配置没搞对。记录一下。 一、超时 超时设太短是最常见的坑。设…

📅 2026/8/23 17:20:57
我的VB Coding之路 - AI编码实战演进

我的VB Coding之路 - AI编码实战演进

一、背景:我们为什么要使用AI编码? 1.1. 行业与业务背景 从23年开始,随着基础大模型的突破,主流代码工具的迭代周期越来越快,这些工具的创新持续推动整个研发效能提升。 从最初的编译器代码补全、到Github Copilot代…

📅 2026/9/8 2:17:05
MORE NEWS

更多资讯

📰

Data Science For Beginners:数据科学生命周期入门——捕获、处理与维护三大核心阶段

Data Science For Beginners:数据科学生命周期入门——捕获、处理与维护三大核心阶段 【免费下载链接】Data-Science-For-Beginners 10 Weeks, 20 Lessons, Data Science for All! 项目地址: https://gitcode.com/GitHub_Trending/da/Data-Science-For-Beginners …

📰

Mongoose Discriminators 完全指南:基于 Schema 继承的多模型单集合建模

Mongoose Discriminators 完全指南:基于 Schema 继承的多模型单集合建模 【免费下载链接】mongoose MongoDB object modeling designed to work in an asynchronous environment. 项目地址: https://gitcode.com/GitHub_Trending/mo/mongoose 本指南系统讲解…

📰

零感知、全记录:移动目标无感定位如何构建不可篡改的战场行动账本 技术白皮书

1 概述1.1 技术背景现代战场对抗的核心特征是高速机动、动态博弈、静默作战与体系对抗,作战单元的每一次机动、隐蔽、穿插、协同、阵地切换,都是构成战局胜负的关键战术行为。传统战场态势记录、行动回溯、战法评估体系,长期依赖有源定位终端…

📰

awesome-copilot 的 react18-upgrade 插件:面向 React 16/17 类组件代码库的 React 18.3.1 企业级迁移工具链

awesome-copilot 的 react18-upgrade 插件:面向 React 16/17 类组件代码库的 React 18.3.1 企业级迁移工具链 【免费下载链接】awesome-copilot Community-contributed instructions, agents, skills, and configurations to help you make the most of GitHub Copi…

📰

agno Saved Baselines:将环境回滚证据固化为 JSON 基线,实现跨进程评估对比与 CI 回归验证

agno Saved Baselines:将环境回滚证据固化为 JSON 基线,实现跨进程评估对比与 CI 回归验证 【免费下载链接】agno Build, run, and manage agent platforms. 项目地址: https://gitcode.com/GitHub_Trending/ag/agno 基线(baseline&am…

📰

10分钟跑通CVAT:数据标注平台部署指南(含避坑清单)

10分钟跑通CVAT:数据标注平台部署指南(含避坑清单) 【免费下载链接】cvat Computer Vision Annotation Tool (CVAT) is a leading platform for building high-quality visual datasets for vision AI. It offers open-source, cloud, and en…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬