11 月 4 日,Mozilla AI 发布 Otari。Mozilla 不做模型,它做的是收费口前面那道闸:所有请求先过网关,鉴权、查预算、选供应商、记账,然后再放出去。GitHub 838 星,Apache 2.0,自托管免费,托管版从 credit 里抽 4.5%。
一、它想解决的三件事
- key 满天飞:每个应用一套供应商密钥,项目下线了 key 还在跑。
- 账单滞后:月底看到超支,钱已经花完了。
- 换模型等于改代码:模型名、SDK、返回格式全要动一遍。
Otari 把这三件事收到一个端点上:OpenAI 和 Anthropic 两套协议都兼容,背后挂 40 多家供应商,模型写成 provider:model 就行。
二、四个功能区
- 接入和密钥。workspace 做隔离,虚拟 key 按人、团队、Agent 发,随时能撤;供应商凭证留在网关,应用手里只有虚拟 key。
- 预算和路由。请求发出前先查额度,超了直接拒;路由支持故障转移、加权,也能按历史表现学习选路。
- 工具。代码执行、网页搜索、MCP、推理护栏、文件理解都能在网关侧打开,开源权重模型也能用上这些能力。
- 观测。每个请求的 token、成本、延迟、失败都有记录;会话追踪把多次调用串成一条时间线,但只存元数据,不存 prompt、返回和工具结果。Activity 和 Usage 两个视图能按模型、成员、key 切片,查得到是哪个 Agent 在半夜烧钱,这比事后看云账单实在。
三、怎么上手
自托管是主路线。用 Docker Compose 起 Otari 和 PostgreSQL,三个环境变量最关键:master key 管网关,secret key 加密供应商凭证,provider account pepper 给存放附件的供应商账户命名。起来以后 curl http://localhost:8000/api/v1/health 看到 healthy,浏览器打开 8000 端口用 master key 登录,加一个 OpenAI provider,模型写 openai:gpt-4o-mini,就能发第一个请求。数据全落在自己的 PostgreSQL 里,请求日志不出内网。
托管版更省事:注册拿 key,把 Claude Code 的 ANTHROPIC_BASE_URL 指到 https://api.otari.ai/api,token 换成 Otari 的 key,模型写 anthropic:claude-sonnet-4-6,claude 直接跑。Codex、opencode、Junie、Pi、Pydantic AI、LangChain、LangGraph 都有对应接法。
四、钱怎么算
自托管免费,服务器和模型费自己出。托管版是买 credit,按 credit 消费抽 4.5%;接自己的供应商 key,不抽成。站内写过的 LiteLLM 也是这个位置,Otari 多出来的是治理后台和 workspace 边界,少一点的是生态年头。
五、实话
代码 4 月就在 GitHub 上了,11 月才正式发布。这半年补的不是模型接入,是治理故事:预算、审计、护栏。定位也从「代理」挪到了「控制面」。
网关这层已经很挤:LiteLLM、OpenRouter、Portkey,再加各家云厂商自己的 AI Gateway。Otari 的差异是自托管、Apache 2.0、一套能点开的治理后台,外加 Mozilla 的牌子。838 星不算多,但 Mozilla AI 的项目一向慢热,它更像给企业自建 AI 基础设施准备的一块砖,不是给个人玩家的玩具。已经在用 LiteLLM 的团队切过来不算费劲:都是 OpenAI 兼容端点,改 base URL 和 key,模型名换成 provider:model 的写法。
什么时候值得上?两个以上供应商、要按团队或应用记账、合规要求请求日志不出内网。只有一个模型、一个应用,加这层就是多一份运维。国内团队还要看供应商:Fireworks、Nebius、OVHcloud、Bedrock 都要海外网络,自托管能解决网关放哪,解决不了模型够不够得着。
Otari 不是又一个 Agent 框架,它是 Agent 的收费口和账本。先把 key 和预算管住,再谈多 Agent。