这里所说的「免费 LLM API」指什么
只有服务商自己在文档里写明「零成本即可开始」的访问方式才会被收录:常设的免费额度、一批标价为零的模型,或者注册赠送的额度。逆向出来的端点、泄露的 key、以及转卖别人配额的网关都不在范围内,本项目也不分发任何形式的 key。每一条都链到你自己去创建 key 的那个页面。
本清单目前收录 26 家服务商,覆盖 5 种免费形式,以及 7 个在不止一家出现的模型系列。
这些数字是从哪来的
每条服务商记录都至少带一个官方来源 URL 和一个 source_checked_at 日期。只有来源里写明了的限流数值才允许被记录,否则校验器会让构建失败。如果某家只在登录后的控制台里给出限额,或者限额随层级伸缩,那么该字段就留空,由状态字段说明情况。这就是为什么有些行写的是「按项目层级设定」而不是一个数字:编一个看起来合理的数字,只会让表格显得更完整,同时更不值钱。
一次探活能证明什么、不能证明什么
一次探活就是在某一个时刻、对某一个端点发出的一次采样请求。200 只说明那次请求成功了。401 或 403 说明采样用的凭据被拒,与服务商本身无关。429 说明那次采样被限流,不携带任何人剩余额度的信息。只有网络失败或 5xx 才指向端点本身,即便如此,它描述的也是一次采样而不是一次故障。探活在 CI 之外运行,key 只从环境变量读取;公布的输出里只有分类、状态码、延迟和时间戳,绝不含 key 或响应体。
浏览器可达性是怎么测的
每个 base URL 都会收到一次从本站自身源发出的 CORS 预检。如果响应放行了这个源、并且把 authorization 列进允许的请求头,那么浏览器就能直接调用该端点,这家会被标为 supported。如果源被拒,就标为 blocked,key 检测页也不会假装它能通。如果源放行了但请求头没列出来,结果记为 unverified 而不是猜一个。这项测量完全不涉及凭据,所以能对每一家都跑。
哪些服务商会有自己的页面
26 家里有 25 家有独立页面。只有当一家的免费条款被记录得足够具体、能说出点实在东西时,它才配拿到一个页面:限额说明至少 120 个字符、至少一个官方来源,以及一个读者点得动的注册链接。目前有 1 家没过(GitHub Models),所以它们只作为清单行出现。另一种做法——不管三七二十一每家都生成一页——产出的是除了名字之外别无二致的页面,对谁都没有帮助,而这正是搜索引擎判定为「桥页(doorway)」的那种模式。
这件事靠什么保持诚实
本站每一个页面都由渲染器从数据文件生成,并有一个检查步骤:只要任何已发布文件与当前数据应产出的结果不一致,就会失败。因此手改页面是行不通的,改动会被还原;而修一处数据,会同时更新 README、清单和每一个引用它的页面。欢迎以 issue 或 PR 的形式对数据文件提交更正,而不是对产物。
本仓库不携带任何凭据;key 检测页只会把你粘进去的东西发给你自己选的那一家服务商,这一点由 Content Security Policy 强制,而不是靠一句承诺。