惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

大猫的无限游戏
大猫的无限游戏
Security Archives - TechRepublic
Security Archives - TechRepublic
T
Threat Research - Cisco Blogs
A
Arctic Wolf
S
Securelist
O
OpenAI News
T
Threatpost
Forbes - Security
Forbes - Security
N
News and Events Feed by Topic
S
Secure Thoughts
H
Heimdal Security Blog
S
Security Affairs
P
Privacy International News Feed
C
Cisco Blogs
C
CERT Recently Published Vulnerability Notes
Cyberwarzone
Cyberwarzone
N
News and Events Feed by Topic
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
P
Palo Alto Networks Blog
S
Security @ Cisco Blogs
Hacker News - Newest:
Hacker News - Newest: "LLM"
博客园 - 三生石上(FineUI控件)
月光博客
月光博客
T
Tailwind CSS Blog
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Hacker News: Ask HN
Hacker News: Ask HN
T
Troy Hunt's Blog
S
SegmentFault 最新的问题
腾讯CDC
V
Visual Studio Blog
Last Week in AI
Last Week in AI
H
Hacker News: Front Page
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Project Zero
Project Zero
WordPress大学
WordPress大学
NISL@THU
NISL@THU
博客园 - 【当耐特】
博客园 - Franky
Webroot Blog
Webroot Blog
博客园_首页
T
Tenable Blog
雷峰网
雷峰网
Google Online Security Blog
Google Online Security Blog
阮一峰的网络日志
阮一峰的网络日志
V2EX - 技术
V2EX - 技术
Recent Commits to openclaw:main
Recent Commits to openclaw:main
L
Lohrmann on Cybersecurity
The Hacker News
The Hacker News

Mozilla.ai

Using Octonous as an AI Safety Engineer The Control Layer: Why the Next Era of AI Is About Infrastructure, Not Just Models Introducing Otari: The Open-Source LLM Control Plane Announcing transcribe.cpp Using Octonous as a Product Manager Image Classification Comes to encoderfile What is an LLM control plane? Use the Otari Gateway with OpenCode Otari: Own Your AI Stack | AI Gateway & Hosted Platform AI Got Expensive. Now What? | Mozilla.ai cq exchange: Agents without Borders The Interface Is No Longer the Product VIBE✓: First Defense for cq (Stack Overflow for Agents) Octonous Open Beta: What We've Learned and Where We're Going Sovereign AI: Control, Choice, and Beyond Geopolitics Encoderfile’s New Format: Why a “Dull” Design Wins The Real Challenge Behind Small Trade Businesses Hardening Your LLM Dependency Supply Chain cq: Stack Overflow for Agents cq: Stack Overflow for Agents llamafile Reloaded: What’s New in v0.10.0 When Shipping Software Becomes Too Easy Mozilla.ai Joins Flower Hub as Launch Partner Owning Code in the Age of AI The Star Chamber: Multi-LLM Consensus for Code Quality
Open Models are ready for agents. Their APIs are not.
David de la Iglesia Castro · 2026-07-14 · via Mozilla.ai
Expert Opinion

Open models have reached impressive levels of capability, but the surrounding platform often falls short. This blog explores the hidden infrastructure gaps developers face and why bridging them is essential for production-ready AI applications.

David de la Iglesia Castro

4 min read

Open Models are ready for agents. Their APIs are not.

I have spent the last months building Octonous, an agentic product that runs on Anthropic, OpenAI, Gemini, and any model served through an API compatible with those. That means I have not just been calling models. I have been depending on the product surface around them: tool calling, streaming, files, web search, code execution, prompt caching, token accounting, context management, and all the small behavioral contracts that make an agent feel reliable instead of fragile.

That experience has made one thing clear: the gap between frontier APIs and open models is no longer about model quality. Open models can already reason, call tools, write code, and produce structured output well enough for a large class of agentic products. The blocker is everything around the model.

When you swap a frontier model for an open model served through vLLM, llama.cpp, Ollama, or any hosted "OpenAI-compatible" endpoint, you discover that "OpenAI-compatible" mostly means "you can send chat messages and get tokens back." 

That is useful, but it is not the contract a production agent has quietly grown to rely on.

This gap is exactly what we have been working on with Otari: an open source gateway that sits between agent applications and open model runtimes: part compatibility layer, part tool runtime, part context manager, part observability surface. 

If your agent speaks the Anthropic or OpenAI APIs, Otari's job is to make an open model answer in the same language and with the same platform behavior. 

What Breaks When You Switch

Here is a concrete version of the failure. 

Take an Octonous agent that is running on an Anthropic model today: it streams tool-call progress to the UI, searches the web with cited sources, executes generated code in a sandbox, accepts user file uploads, and leans on custom prompt caching to optimize token consumption based on our specific usage patterns.

Point that same agent at a strong open model behind an OpenAI-compatible endpoint. 

Basic chat works on the first try, which is exactly what makes the gap deceptive. Then, one by one:

  • Tool calls arrive in a slightly different dialect, and streaming emits partial JSON fragments the UI was never built to parse.
  • Web search does not exist server-side, so the agent confidently answers from stale training data with no sources.
  • File uploads have no lifecycle: no upload endpoint, no references, no artifacts to hand back to the user. A dropped-in file has nowhere to live and nothing downstream to point at it.
  • Code execution does not exist at all, and with no upstream file lifecycle, the generated code would have nothing to open even if it ran. "Analyze this CSV" fails twice.
  • Context compaction is not handled server-side, so we have to implement our own logic to manage long conversations.
  • Our custom prompt caching no longer works, and we are left with whatever automatic caching the serving runtime has implemented, if it provides caching at all.
  • Usage reporting is not detailed enough so you can no longer tell the user what a run cost or why it failed.

None of this is the model's fault. The model may be perfectly capable. What broke is the platform layer.

When a frontier API provides one of these pieces, the application naturally starts depending on it. When an open endpoint does not, the application team rebuilds it. At the end of that path, you may still be running the same open model you started with, but you have built half a frontier API around it.

That is the hidden surface area behind a "model switch," and it is the part Otari exists to absorb.

The Product I Want as an Agent Builder

The product I want is boring in the best way. I want to take an Octonous agent that currently runs on Claude, GPT, or Gemini, point it at an open model, and keep shipping. Tools working, files working, streaming keeping the UI alive, usage intelligible, failures normalized enough that the application can recover.

I do not expect every open model to magically support every frontier feature. The point is to stop forcing every application team to discover and paper over the same gaps independently. 

Open models already have the intelligence. Developers building on frontier APIs are used to the platform doing a lot of work for them: that is not laziness, it is leverage. If we want open models to compete in real products, they need comparable leverage, and it should not have to be rebuilt in every codebase.

Where We Are

Otari is early, but it is not a manifesto. What ships today in our GitHub repository: the three generation surfaces (Chat Completions, Responses, Anthropic Messages) in front of 40+ providers, virtual keys, per-user and per-key budgets enforced before the call runs, usage and cost tracking with cached-token accounting, built-in web search and sandboxed code execution, server-side MCP, file uploads for local models, and opt-in guardrails. You can run it locally and make a metered request in about a minute, or connect it to otari.ai and let our platform run it for you. 

If you have an agent on Claude, GPT, or Gemini and an open model you wish it ran on: try the gateway against your runtime, open an issue, or tell us which missing feature blocks you first. That is the gap we are closing, in the order agent builders actually hit it.