FreeModel

FreeModel vs OpenRouter - how do they differ?

FreeModel 和 OpenRouter 都属于模型网关这一类产品:调用方用一个入口、一种请求形状,去调用多家服务方的模型,不用逐家注册和逐家对接口。两者的区别不在于名字,而在于入口形状、模型清单的查法、免费额度的处理、失败时的换路方式、账单的对法和换出的成本。比较的口径要先定好,否则两边说的不是同一件事。本文按同一组维度逐项展开,每项都给出核对方法,而不是只看一句宣传语。

为什么要先问入口形状?

比较网关的第一步,是确认它走的是不是通用请求形状。FreeModel 走的是常见的 OpenAI 或 Anthropic 请求形状,客户端和它说话的方式,和直接对服务方说话的方式基本一致。这一点决定了后续的比较能不能在同一口径下进行:如果一家走通用形状,另一家走专有形状,那么迁移成本和接线工作量从一开始就不在同一条线上。

入口形状还决定了换出的难易。通用形状的好处是换出时只要改地址、密钥和模型名,调用结构不用重写。比较时要直接问:换出要改几处,调用代码要不要重写,旧配置能不能原样留作备份。这几项问清楚,比先看模型清单更有实际意义。

模型清单应该怎么查才算数?

模型清单是网关的核心事实,查法必须可复现。FreeModel 的模型清单来自公开接口,任何人都可以直接读取当天的清单,再逐条核对模型名和类型。比较时不要只看页面上写的模型数量,因为清单会随服务方变化,今天的数量明天可能就不同,写死的数量在读者动手那天可能已经过时。

查清单时要看三个点:模型名是不是清单原文,模型类型是不是服务方自己的声明,以及清单的读取日期有没有写下来。同一模型在不同网关里的名字可能不同,抄错一个字符就会被判定为不存在。把清单原文和读取日期一并记下来,后续排查时才不用重新猜。

免费额度在两边是怎么算的?

免费这个词在网关语境里很容易被误读。FreeModel 名字里的免费,指的是免费额度先被花掉,而不是整个服务不花钱。有些服务方会给开发者留一部分免费额度,网关在额度还在的时候优先走这些条目,额度用完之后再走付费条目,账单按付费条目的标价记录。

比较另一家网关时,同样要问清楚免费额度的口径:免费额度归谁、额度用完之后走哪条路、账单上怎么区分免费条目和付费条目。只问有没有免费,不问免费额度的归属和用完之后的走向,比较结果就会失真。涉及花费的判断,一律以账单记录为准,不以名字为准。

服务方出问题时,换路方式有什么不同?

网关的价值在出问题时才看得出来。FreeModel 的做法是服务方报错或额度用完时自动换路,把请求转给下一个合适的模型,而不是让调用方立刻失败。换路之后返回里标注的模型名也会跟着变,调用方要按返回标注来核对,而不是按最初写的名字来假设。

比较时要问换路的触发条件和换路后的核对方式:什么情况下才换路,换路后结果要不要重新核对,对格式有严格要求的任务换路后会不会走样。把换路当成兜底而不是当成常态,平时还是要以清单里的首选模型为准,出问题时才靠换路保住任务不中断。

账单应该怎么对才不会算错?

账单核对要分三层。第一层看返回:返回里标注的模型是不是你设的那一个,换路之后标注有没有跟着变。第二层看用量:登录用量或账单页,确认刚才那次调用确实记在新服务名下。第三层看旧服务:旧服务的用量在测试时间段内没有新增,才说明旧入口真的没再被走。三层里任何一层对不上,都要停下来排查,而不是继续跑任务。

比较两家网关时,账单口径也要分开问:账单由谁直接结算,自带密钥时是不是由服务方直接结算,网关有没有在中间加一层遮挡。FreeModel 不是把别人的模型换个名字再卖一次的转售方,自带密钥时账单由服务方直接结算,模型归谁,清单里写的是谁的名字,返回里标注的就是谁的名字。

换出成本应该怎么比较?

换出成本不是一句口号,而是改动点的数量。通用请求形状下,换出只要改地址、密钥和模型名,调用结构不用重写,旧配置可以留作备份,改错了也能改回来。比较时要把改动点逐项列出来,再看哪一家改动点更少、回滚路径更清楚。

还有一点容易被忽略:换出之后,原来的用量记录和配置备份要不要保留。建议换出之前先把旧配置的备份留好,写明改动日期和改回的方法,跑完第一个真实任务后回头核对一次返回标注和账单记录。换出成本低,意味着主动权在调用方手里,而不是被入口绑住。

各自适合什么样的调用方?

适合与否,取决于调用方的任务形状,而不是网关的名字。如果调用方已经在用支持常见接口形状的客户端,又希望一个入口接通多家模型、免费额度先走、失败时自动换路,那么 FreeModel 的形状是贴合的。如果调用方已经在另一家网关上跑稳了,迁移的收益要和改动成本一起算,改动点越少,迁移越值得做。

反过来,如果任务对模型有非常专用的要求,例如某个模型独有的能力或某个服务方独有的配置,那么比较的重点就不再是网关本身,而是清单里有没有那个模型、能力是不是服务方自己的声明。网关不能把没有的模型变出来,也不能把弱模型变强,清单之外的能力不要靠网关去想象。

这篇比较有哪些局限?

本文没有引用另一家网关当天的具体条款、具体清单和具体计费细节,因为这些内容会随版本变化,写进文章的那天可能已经过时。比较另一家网关时,请以它自己官方文档和实时清单当天的返回为准,并把读取日期一并写下来。本文的比较框架是核对清单,不是替另一家网关背书。

本文也没有给出固定的模型数量、固定的可用性数字或固定的价格,因为这三项都会随服务方变化,写死一个数字反而会在读者动手那天误导人。本文只讲了 FreeModel 自己的通用形状:一个密钥、通用请求形状、免费额度先走、失败自动换路、账单可按返回标注核对。涉及生产数据的任务,在切到新入口之前,建议先在测试项目里完整走一遍小请求验证,再切生产。

来源与延伸阅读:FreeModel 关于页:它是什么、不是什么、FreeModel、OpenRouter、Aiglade、Claude Code 官方文档、Claude Code 产品页