litellm实战:统一大模型调用与API网关的完整指南
litellm是我过去一年里在好几个实际项目里反复用到、也反复向身边朋友推荐过的一个工具。说它是个库也好说它是个代理网关也好本质上它解决的是一个特别具体又特别烦人的问题当你需要在项目里接入多家大模型服务时每一家都有自己的接口规范、鉴权方式和计费规则代码里到处是if-else分支今天换一家供应商就要改一版调用层api key散落在各个环境变量里月底一看账单根本分不清钱花在了哪个模型上。litellm就是冲着这些痛点去的它把所有模型的调用方式统一成一套标准格式同时还自带密钥托管、负载均衡、成本统计、限流重试这些生产环境刚需功能。如果你现在正处于项目里要接大模型但还没想好怎么把多家供应商的接口统一管理起来的阶段或者已经用了一段时间各家原生SDK、被版本差异和账单统计搞得很疲惫这篇内容应该能帮你省下不少时间。我尽量按自己实操的路径来讲从设计思路到落地配置再到后来踩过的坑一条线拉通。1. 为什么需要统一的大模型调用层先说一个最直接的场景。某天产品经理过来说我们要在应用里加一个AI助手功能用某大厂的模型就行。你花半天时间按它的SDK写好了调用代码功能上线跑得挺好。过了一个月老板说这家模型贵了换另一家试试。你打开新供应商的文档发现请求体结构不一样、鉴权方式不一样、流式返回的格式也不一样于是你又花了半天改代码。再过几个月项目要同时支持多套模型做效果对比你发现之前的调用层已经耦合进了业务代码里牵一发动全身。这时候你才意识到当初如果有一个统一的抽象层后面这些事会轻松很多。1.1 多模型接入的真实痛点模型接入这件事表面上只是发一个HTTP请求但实际落地时牵扯的细节特别多。每一家供应商的接口虽然大体上都遵循输入文本、输出文本的逻辑但在具体参数上差异明显有的用messages数组传对话历史有的用prompt字符串有的温度参数叫temperature有的叫top_p配套调整有的支持max_tokens有的叫max_output_tokens。这些差异单独看都不大但当你同时维护多个供应商的接入代码时适配逻辑会像藤蔓一样缠住你的业务层。还有一个容易被忽略的问题各家SDK的版本演进节奏不一样。有一段时间某供应商升级了鉴权方式强制要求用新的请求头如果你的项目中固定用了老版本SDK就得跟着升级如果同时接了四五家每一次上游变动手动跟进一遍成本就相当可观了。我见过一个项目光模型调用层就积累了六套不同的请求封装每一套都有自己处理超时和重试的逻辑维护起来非常痛苦。1.2 统一接口层的核心价值litellm的设计思路很简单它定义了一套统一的调用规范你的业务代码只跟这一套规范打交道至于底层到底是哪家模型服务、参数怎么映射、鉴权用什么方式全部由litellm在内部处理。这套规范实际上就是大家都很熟悉的Chat Completion风格用model指定模型名用messages传会话内容用temperature这类参数控制生成行为。这样一来业务代码里不需要关心对面是哪一家供应商只需要知道我要的是什么样的输出。更重要的是它做到了一处接入处处可用。你需要新的供应商支持时只需要在litellm的配置里加一条路由记录而不是在业务代码里加一个分支。这带来的收益不只是少写几行代码而是让你的系统架构从绑定某一家模型厂商变成了模型无关。后续做模型效果对比、成本优化、容灾切换都是配置层面的操作不需要动业务逻辑。对团队来说这也意味着模型调用的入口可以统一审计、统一限流、统一计量运维视角清晰得多。2. litellm的核心功能拆解前面说了它能解决什么问题这一节把它能干的事拆开来看。litellm的能力可以分成三大块SDK统一调用接口、Proxy网关模式、配套的生产治理功能。理解这三块分别解决什么问题你就能判断在自己的项目里该用到哪一层。2.1 SDK统一调用接口第一块是最轻量级的使用方式。你把litellm当做一个Python库直接装进项目里然后调用litellm.completion()或litellm.acompletion()在参数里传入一个模型名剩下的逻辑它全给你包办了。这个模型名是有讲究的。litellm内部维护了一张很长的映射表把形如某服务商/具体的模型标识这种字符串路由到对应的调用逻辑。比如你传一个某闭源模型供应商/它的某款最新模型它就自动走那家的接口规范你传一个某开源模型供应商/它的某款模型就自动走另一套。你的业务代码里从头到尾只认识这一套函数路径切换成了纯粹的配置变更。这个设计用到一个常规做法在函数入口处根据模型名的前缀做策略分发。它本质上和你在代码里写if A in model: use_A_api()是一样的只不过它把这件事做得更系统、更完整而且已经帮你处理好了各家接口的差异点包括鉴权方式、请求头、错误响应格式这些细节。2.2 Proxy网关模式第二块是litellm真正让它从一个方便的库变成一个生产级基础设施的原因它能以一个独立代理服务的方式运行。你启动一个服务进程它会暴露一个兼容OpenAI接口规范的HTTP端点你所有的业务服务都不再直连各家模型供应商了而是统一请求这个内网网关再由这个网关去转发给上游的模型供应商。这层代理带来的好处是立竿见影的。第一上游模型的密钥不再需要分发到每一台业务服务器上只需要集中保存在网关所在的环境里泄露面一下子小了很多。第二所有请求都经过网关你可以在网关这一层统一加上成本统计、访问日志、限流配额、缓存策略而不需要每个业务服务自己实现一遍。第三当你需要调整上游模型供应商时只需要改网关配置并热加载业务服务完全感知不到变化。2.3 生产治理功能前两块是接口层面的能力第三块是它作为基础设施的软实力。litellm内置了不少生产环境需要的能力我给你举几个高频用到的。一个是预算和配额控制。你可以在配置里给某个key或者某个项目组设一个月度预算上限一旦超过litellm会直接拒绝新的请求。这个对控制成本失控非常有用尤其是当你的应用被外部用户疯狂调用的时候。另一个是负载均衡。你可以在配置里把同一个模型映射到多个上游账号或渠道上litellm会按照配置的权重和优先级去分发请求当某一个账号触发限流或报错时它会自动把请求调度到另一个渠道上。这对于大规模生产场景下的稳定性很关键。还有一个是重试与fallback。请求超时、上游返回5xx错误、触发限流这些在真实环境中几乎不可避免。litellm允许你配置重试次数和退避策略还可以设置一个模型不可用时自动切换到另一个备用模型。这些能力单独实现都不难但集成在一起并且能无缝配合前面的统一接口价值就完全不一样了。3. 从零到一8步跑通一个最小可用网关纸上谈兵说完了接下来是实操环节。我会按我自己第一次落地时的路径带你从安装开始一步步跑起来一个能用、可扩展的最小网关。3.1 安装与最简调用前提是你本机有一个Python环境版本3.8以上就行。安装litellm非常简单直接使用pippip install litellm装好之后先不急着搭网关先做一次最直接的SDK调用验证。你需要在环境变量里配置好某一家的密钥。比如你用某家模型服务商的接口就设置好它要求的环境变量然后执行下面这段Python代码import litellm response litellm.completion( model某服务商/某模型名, messages[ {role: user, content: 你好请用一句话介绍你自己。} ], temperature0.7 ) print(response.choices[0].message.content)第一次跑通这个流程你会发现它和你用原厂SDK的体验几乎没有差别只是入口换成了统一的格式。如果报错先检查环境变量名是否和文档要求一致这是新手最容易卡住的地方。提示litellm对模型名的前缀识别是大小写敏感的建议严格参照官方文档的命名方式。如果你不确定某个服务商的前缀该怎么写可以在Python中直接打印该服务商支持的模型列表或者查阅文档中的模型映射表。3.2 配置密钥与模型映射单纯用SDK还体现不出litellm的威力下一步我们把代理网关跑起来。首先准备好密钥文件litellm支持通过环境变量或配置文件管理密钥。我习惯在项目根目录创建一个.env文件# .env 某服务商密钥你的密钥值然后写一个最基础的配置文件config.yaml。这个文件用来告诉网关有哪些模型可以对外提供服务它们的调用成本是多少以及它们的上游路由是怎样的。下面是一个非常简单的示例model_list: - model_name: my-assistant litellm_params: model: 某服务商/某模型名 api_key: os.environ/某服务商密钥在这个配置里model_name是对外暴露给业务方的名称litellm_params则指定了实际路由到哪家模型。这样一来对外你只需要说我这个网关有my-assistant这个模型至于它背后用的是哪家服务业务方无需知道将来换供应商也只需要改这里的映射。3.3 启动代理服务并验证接口配置写好后启动代理服务只需要一行命令litellm --config config.yaml --port 4000看到日志输出Application startup complete之类的信息后服务就算起来了。为了验证它确实工作正常在另一个终端窗口用curl发一个请求curl http://localhost:4000/v1/chat/completions \ -H Content-Type: application/json \ -H Authorization: Bearer 任意你自定义的key \ -d { model: my-assistant, messages: [{role: user, content: 介绍一下你自己}] }注意这里的Authorization头。litellm代理默认情况下会要求请求携带一个key这个key不一定是真实的上游密钥而是用于访问网关本身的凭证。默认情况下它有一个预设的master key你也可以在配置里通过general_settings指定。我在第一次启动时没注意到这个细节直接用空凭据去请求结果一直在报401排查了好一会儿才发现是自己漏了这一步。注意本地测试时使用http://没问题但如果部署到生产环境务必通过反向代理配置TLS并且不要把master key暴露给不该访问它的人。3.4 用官方SDK接入自建网关网关跑起来之后你的业务代码其实可以完全复用业界常见的OpenAI兼容SDK调用方式。以Python为例只需要修改两处把base_url指向你本地启动的网关地址把api_key换成网关的访问凭据其余调用代码和原来一模一样。from openai import OpenAI client OpenAI( base_urlhttp://localhost:4000/v1, api_key你的网关master key ) response client.chat.completions.create( modelmy-assistant, messages[{role: user, content: 你好}] ) print(response.choices[0].message.content)这一点非常关键这意味着你的业务服务在迁移到litellm网关时几乎不需要改动代码。你原本用的是哪家的SDK现在只需要把客户端实例的地址指向网关即可。对于老项目接入litellm来说这个兼容性设计真的能省掉一大笔改造工作。4. 生产落地模型路由、预算与负载均衡上面那个最小网关只是能跑通距离生产可用还有一段路要走。真正上线前你需要把预算、限流、重试、负载均衡这些关键能力都配上。这一节我按优先级来讲哪些是我认为必须配的哪些是规模大了之后再考虑的。4.1 用路由规则实现模型自动选择很多时候你不希望业务方自己去指定用哪个模型而是希望网关根据业务方的身份、请求类型、甚至成本预算来自动分配合适的模型。litellm支持通过router_settings或者请求参数里的routing_strategy来做这件事。一个常见的玩法是内部业务请求默认使用性价比高的模型遇到复杂任务时才路由到更强的大模型。你可以在配置中定义路由规则也可以让业务方通过在请求参数中带上某个标识再由网关解析并转发到对应的模型。这种规则化的能力让模型选型从一个代码问题变成了一个策略问题产品和算法同学也能参与制定规则而不是每次都要找开发改代码。4.2 成本追踪与预算控制模型成本是生产环境里每个人都很关心的事情。litellm会在内部维护一个成本数据库记录每一个key、每一个模型、每一次调用的token消耗和估算费用。你有两种方式查看这些数据一是通过它提供的/spend接口查询汇总数据二是在日志里做后续分析。我建议你在接生产流量之前先做一件事为每个业务方分配独立的访问key并在配置中给每个key单独设置预算上限。举个实际例子假设你的应用里有免费用户和付费用户两种角色你可以为它们创建两个不同的key分别为它们设置日预算和月预算。这样即使某个入口出现了异常流量也不会拖垮整个项目的预算。预算配置示例general_settings: master_key: sk-master-key-change-me model_list: - model_name: my-assistant litellm_params: model: 某服务商/某模型名 api_key: os.environ/某服务商密钥 litellm_settings: budget_ttl: 1d max_budget: 500 max_budget_per_key: 100上面的配置里max_budget设的是全局月度总预算max_budget_per_key限制单个key的预算。litellm还支持更细粒度的预算设置比如根据用户ID或团队ID来区分使用起来很灵活。4.3 多渠道负载均衡与自动降级当单个账号的并发请求量到达上限或者某家上游服务不稳定时你要有一个自动绕行的方案。litellm支持把同一个逻辑模型映射到多个上游渠道上并配置权重。下面这个配置示例把一个逻辑模型映射到了两个不同渠道一个为主渠道一个为备用渠道。正常情况下所有请求都走主渠道如果主渠道返回限流或错误litellm会自动把请求转发到备用渠道model_list: - model_name: my-assistant litellm_params: model: 某服务商/某模型名 api_key: os.environ/主服务商密钥 # 主渠道权重高 - model_name: my-assistant litellm_params: model: 另一家服务商/某模型名 api_key: os.environ/备用服务商密钥这种配置最直接的价值是某一次你正在线上演示产品结果上游服务突然故障但你的网关自动切换到了备用渠道用户侧完全无感。我遇到过几次这种情况之后再也不敢不做fallback了。另一个值得一说的能力是自定义重试。litellm允许你设置请求超时时间和重试次数。重试的语义很有意思不是所有错误都值得重试比如参数错误重试多少次都没用但限流、5xx这类错误重试往往就有机会成功。litellm默认遵循这个语义你也可以通过retry_policy去细化不同错误码的处理方式。5. 常见问题与排查技巧实录任何工具用久了都会遇到一些奇怪的问题litellm也不例外。这一节整理几个高频问题都是我自己或身边朋友实际踩过坑的有些问题在官方文档里甚至不太容易直接搜到。5.1 请求总是401或403出现这个情况优先排查三件事。第一你请求网关时用的key是不是网关master key或配置中允许的key而不是上游某家服务商的原始key。第二如果你的网关前面还挂了反向代理确认代理有没有把Authorization头正确透传。第三检查general_settings里是不是设置了额外的key校验规则。我遇到过一个隐蔽情况某个服务内部使用同一个HTTP客户端库会自动合并重复的请求头导致Authorization头被覆盖成旧值游戏网关这边看到的始终是一个过期凭据排查了很久才发现是客户端库的机制问题。所以这类问题出现时建议先手动用curl试一遍一旦curl能通而程序代码不行问题范围就基本锁定在客户端了。5.2 模型名报错model not found这类报错通常不是你真没有这个模型而是模型名没有正确匹配到配置里的model_name。一个容易犯的错误是你在model_list里定义了model_name: my-assistant但请求时传了某服务商/某具体模型名这两者在litellm里是两回事。网关对外只认model_name对内才解析litellm_params.model。所以排查思路很简单先确认请求体的model字段值再确认它和配置文件里model_name完全一致。对生产环境建议在网关入口做一层请求日志把每次请求的model字段原样记录下来这样有问题时可以直接对照。5.3 成本统计不准litellm的成本计算依赖于模型映射表里的价格信息。如果你接入的是一个非常新的模型或者一个经常变化的定价方案litellm内置的价格表可能来不及同步最终统计出来的费用就会偏差。解决办法是手动在配置文件中补充价格信息。你可以在litellm_params里显式指定输入输出单价这样成本计算就会以你填写的价格为准。对我来说凡是涉及到账单展示给第三方看的情况我都会手动确认价格不依赖内置默认值。5.4 网关内存占用持续走高如果你长时间运行litellm网关并且开启了较为详细的日志和统计功能有可能会发现内存占用缓慢上涨。这通常和请求日志的缓冲、统计数据的内存缓存有关系。我的处理方式是在部署层面给它设置一个合理的内存上限并配置定期重启的策略。litellm本身支持优雅关闭所以定时重启不会对在线流量造成太大影响。另外一个习惯是在网关前面加一层负载均衡多开几个副本这样即使单个实例需要重启其他副本也能顶上。6. 我自己做模型网关选型时的一些取舍最后聊一点更主观的东西。litellm不是我见过的唯一一个模型网关方案市面上还有不少别的方式比如自研一套适配层、用其他框架内置的模型调用封装或者直接完全依赖云厂商自己的网关服务。每种方案都有适合的场景我把自己的取舍标准列出来供你参考。6.1 自研适配层与litellm的权衡很多团队走到需要统一模型接口这一步时第一反应是自研一个。老实说如果只是接两三家模型而且接口形态非常固定自研一个适配层完全可行代码量可能也就在几百行左右。但问题在于维护成本模型供应商的接口演进速度、各家参数差异的细枝末节、新模型层出不穷的适配需求这些都会持续消耗开发精力。litellm相当于把这些脏活累活集中起来做掉了而且社区活跃度很高新模型出来后适配速度通常很快。自研意味着你选择去承担一件看似简单但长期琐碎的事情使用litellm意味着你接受了一个有外部依赖的前提。我个人的判断是如果模型调用在你的产品里是核心竞争力的关键环节你需要深度定制可以考虑自研如果模型调用只是产品的功能模块之一用成熟工具一定是性价比更高的选择。6.2 与其他模型调用框架的关系有些框架也提供了模型调用的统一封装。我没有把它们视为直接竞争关系因为它们解决的更多是怎么编排、怎么构建应用的问题而litellm专注解决怎么稳定地调用到各家模型并管理好成本这件事。litellm更多定位在基础设施层而且在编排调用上的侵入性很弱你先用它接好模型上层想怎么用都可以。6.3 什么时候应该上手litellm如果你符合下面任意一种情况我觉得都可以认真考虑使用litellm你可能同时接入了多家模型供应商切换成本已经让你头疼你在一个团队里需要多人共享模型调用入口并且要统一管理密钥和配额你需要精确追踪项目或用户的模型费用而不只是简单看账单你的服务对稳定性要求比较高需要自动重试和故障转移能力。反过来如果只是个人写一个脚本、调用某一家大厂API做个小Demo那直接用原厂SDK就好不需要为自己引入额外的抽象层。工具不是越多越好而是匹配当前复杂度就好。最后分享一个我自己的使用心得litellm最妙的地方不在于它提供的某个单一功能而在于它把这些功能组织成了一个整体。你不用先花一周时间搭好成本系统和灰度系统才能开始用模型网关你只需要从一个最简单的代理开始然后按需往里面加预算、加负载均衡、加缓存。架构的成长是跟随业务需求渐进发生的而不是在项目初期就一次到位。这种开始简单复杂也撑得住的设计是我在工程实践里最看重的一点。

相关新闻

litellm 统一大模型调用层:多模型接入与成本追踪实战

litellm 统一大模型调用层:多模型接入与成本追踪实战

1. 项目概述与核心定位1.1 这个项目到底解决什么问题第一次接触 litellm 是在一个多模型混用的项目里。当时团队同时接入了好几家不同厂商的大模型服务,每家的接口协议、鉴权方式、返回格式都不一样,光是维护这些调用逻辑就耗掉了大量精力。后来有人推荐…

2026/10/13 4:54:17 阅读更多 →
低代码平台BPMN2.0工作流引擎:设计实现与排障实录

低代码平台BPMN2.0工作流引擎:设计实现与排障实录

做低代码平台,绕不开的一个硬骨头就是工作流引擎。业务方要审批流、要任务分发、要流程编排,底层全都落在工作流引擎上。我前段时间在一个源码工程里完整实现了BPMN 2.0工作流引擎,从流程定义解析、实例管理、节点调度到待办任务闭环&#xf…

2026/10/13 4:54:17 阅读更多 →
智能体技能系统设计实战:从技能定义到多智能体协作的避坑指南

智能体技能系统设计实战:从技能定义到多智能体协作的避坑指南

1. 从“技能”这个词说起:为什么我们需要重新思考智能体的能力组织方式“agent-skills”这个标题,乍一看像是某个开源仓库的名字,或者某个技术团队内部对智能体能力模块的统称。但如果你最近在关注智能体(Agent)相关的…

2026/10/13 4:54:17 阅读更多 →

最新新闻

IIS管理器打开全攻略:本机启动、远程连接与排错实战

IIS管理器打开全攻略:本机启动、远程连接与排错实战

搞Windows服务器的同学都清楚,IIS管理器这个窗口,看着不起眼,却是撑起大量Web业务的关键工具。很多人以为它就是个“打开就能用”的图形界面,但在实际运维里,光是怎么把它顺利打开、正常连上远程站点,就能筛…

2026/10/13 5:33:32 阅读更多 →
从compose到组合上下文:函数组合的工程化实战复盘

从compose到组合上下文:函数组合的工程化实战复盘

函数组合不是新东西,但真正把它做到"极致"和"优雅",我用了将近一年的时间反复打磨。这篇文章是我对这段时间的完整复盘。我不打算讲枯燥的范畴论,也不打算罗列一堆库的API,我想说的是:我如何从一个…

2026/10/13 5:33:32 阅读更多 →
充电器空载发热、待机功耗异常怎么办?温度保险电阻排查维修实战

充电器空载发热、待机功耗异常怎么办?温度保险电阻排查维修实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/13 5:33:32 阅读更多 →
fio-3.8完整指南:从解压编译到IOPS与延迟分析实战

fio-3.8完整指南:从解压编译到IOPS与延迟分析实战

简介:FIO(Flexible I/O Tester)3.8 版本完整源代码压缩包,面向存储性能测试工程师、系统运维与内核/驱动开发者,用于在 SSD、HDD、RAID、NVMe 等场景下评估读写吞吐、IOPS 与延迟,并开展压力测试与瓶颈定位…

2026/10/13 5:33:32 阅读更多 →
python -v 和 python -V 的区别:命令行参数大小写敏感与解释器启动排查

python -v 和 python -V 的区别:命令行参数大小写敏感与解释器启动排查

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/13 5:33:32 阅读更多 →
目标类型new表达式:现代编程语言的类型推断演进

目标类型new表达式:现代编程语言的类型推断演进

1. 目标类型new表达式的前世今生第一次看到var list new List<string>();这种写法时&#xff0c;我还在用Java写ArrayList<String> list new ArrayList<String>();。这种重复的类型声明总让我觉得像在说废话——明明右边已经写了类型&#xff0c;为什么左边…

2026/10/13 5:32:32 阅读更多 →

日新闻

物联网系统集成避坑指南:从选型到验收的关键要点

物联网系统集成避坑指南:从选型到验收的关键要点

做了这么多年物联网系统集成的项目&#xff0c;我最大的感受是&#xff0c;大部分坑不是出在技术前沿&#xff0c;而是出在一些看起来很平常的地方。设备选了便宜的、协议没问清楚、现场没摸透、验收标准写得含糊——这些细枝末节&#xff0c;最后都会变成延期、超支和扯皮的大…

2026/10/13 0:00:57 阅读更多 →
ESP32舵机控制全攻略:从PWM原理到高级玩法与常见故障排查

ESP32舵机控制全攻略:从PWM原理到高级玩法与常见故障排查

如果你玩ESP32有一阵子了&#xff0c;很难不碰到舵机控制这道坎。做智能小车要转方向&#xff0c;做机械臂要抬关节&#xff0c;做云台要偏航俯仰&#xff0c;背后都是同一个东西在干活&#xff1a;舵机。而我见过太多人卡在“代码能编译、舵机就是不听话”这个阶段&#xff0c…

2026/10/13 0:00:57 阅读更多 →
CAN总线原理与STM32实战:抗干扰、仲裁、错误处理全解析

CAN总线原理与STM32实战:抗干扰、仲裁、错误处理全解析

1. 为什么CAN总线至今仍是工业现场的“硬通货”&#xff1f;——从汽车底盘到智能温室的真实需求你有没有拆过一辆老款燃油车的中控台&#xff1f;或者调试过某高校实验室里那台跑着Modbus协议却频频丢帧的PLC控制柜&#xff1f;又或者&#xff0c;在某个农业物联网项目里&…

2026/10/13 0:00:57 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介&#xff1a;基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码&#xff0c;面向计算机相关专业课程设计与期末大作业学生&#xff0c;以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程&#xff0c;…

2026/10/13 2:54:56 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程&#xff1a;键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化&#xff0c;十个新手有八个栽在"往输入框里填东西"这件事上&#xff1a;要么填不进去&#xff0c;要么填了一半&#xff0c;要么直接把原来内容追加在后面。这背后的根因&…

2026/10/12 0:16:38 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程&#xff1a;阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀&#xff1a;什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面&#xff0c;跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/13 1:58:08 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/12 21:05:09 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/12 14:48:49 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/12 18:11:17 阅读更多 →