llama-stack
模型无关的 OpenAI 兼容 AI API 网关,一套代码切换任意模型
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
模型无关的 OpenAI 兼容 AI API 网关,一套代码切换任意模型
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
2024 年,Meta 发布 Llama 模型系列后,如何让开发者快速基于 Llama 构建 Agent 应用成了难题。彼时业界缺乏标准化的 AI API 规范——OpenAI 有 ChatGPT 的 API,但它是封闭的;各类开源推理服务器(vLLM、Ollama 等)各有一套接口,切换模型意味着重写代码。Meta 由此推出 Llama Stack,目标是成为 Llama 模型的标准发行版,提供统一的 API 接口、发行版模板和开箱即用的工具链。
2025 年,Meta 将 Llama Stack 彻底重构并更名为 OGX(Open GenAI Stack),正式从"Meta 自家工具"进化为完全模型无关的生产级开源项目。这意味着它的定位从"Llama 专属工具"升格为"任何模型的通用 API 网关",这是一个关键的战略转变。
OGX 的核心能力可以用一句话概括:一个 drop-in 替换 OpenAI API 的开源服务器,运行在任何基础设施上,支持任何模型。
开发者只需要写这样一段代码:
from openai import OpenAI
client = OpenAI(base_url="http://localhost:8321/v1", api_key="fake")
response = client.chat.completions.create(
model="llama-3.3-70b",
messages=[{"role": "user", "content": "Hello"}],
)
然后就可以在本地用 Ollama 的 llama3.2:3b 测试,部署时无缝切换到 vLLM 推理的 GPT-4o,整个应用代码一行不用改。
OGX 提供的端点非常完整:
| 端点类型 | 详细说明 |
|---|---|
| Chat Completions | 标准 /v1/chat/completions,兼容所有 OpenAI 客户端 |
| Embeddings | /v1/embeddings 向量生成 |
| Responses API | 服务端 Agent 编排,支持 Tool Calling、MCP 集成和内置 RAG |
| Vector Stores | /v1/vector_stores 文档存储与搜索 |
| Batches | /v1/batches 离线批处理 |
| 原生多 SDK | 同时支持 Anthropic /v1/messages 和 Google GenAI SDK |
特别是 Open Responses 规范符合性测试——OGX 的 Responses API 实现通过了 Open Responses 官方测试套件,这意味着它真正做到了与 OpenAI Responses API 的互操作性。
图1:OGX 项目 Logo
OGX 的架构核心是可插拔的 Provider 系统。核心路由层(src/ogx/core/routers/)不关心具体模型实现,所有模型操作通过 Provider 接口层(src/ogx/providers/)分发。目前已支持的 Provider 包括:
starter 发行版默认使用)、LM Studio这种架构的精妙之处在于:应用层代码完全不知道自己在调用什么 Provider,只需要用标准 OpenAI API 格式发请求,OGX 负责路由和协议转换。开发者甚至可以同时连接多个 Provider,用同一个 API 端点做模型路由、A/B 测试或自动故障切换。
图2:Agentic System 架构示意图
OGX 提供预定义的发行版(src/ogx/distributions/),每个发行版是一组 Provider + 配置的组合,用户只需一条命令即可启动:
starter:Ollama 本地推理,开箱即用,适合开发和测试nvidia:NVIDIA NIM 发行版,针对 GPU 推理优化oci:Oracle Cloud Infrastructure 部署方案postgres-demo:PostgreSQL + 向量数据库演示配置watsonx:IBM Watsonx 集成open-benchmark:评测专用配置发行版系统还支持 uv run ogx stack run <distro_name> 一键启动,自动下载模型(默认 llama3.2:3b)、配置 API 服务器、设置 Telemetry(Prometheus + Grafana + Jaeger)。
体验了官方的 install.sh 安装脚本,流程非常顺滑:
curl -LsSf https://github.com/ogx-ai/ogx/raw/main/scripts/install.sh | bash
脚本会自动:
docker.io/ogx/distribution-starter:latest不过需要注意的是:没有 docker-compose.yml,如果需要启动完整的 Telemetry 监控栈(Prometheus/Grafana/Jaeger),需要手动编写 docker-compose 或手动启动各容器。这在生产环境中不算大问题,但在快速原型阶段略显不便。
Docker 部署方面,提供了 containers/Containerfile,支持多架构构建(linux/amd64、linux/arm64),基础镜像是 python:3.12-slim,构建过程干净整洁。评分:部署难度"简单",10 分钟可完成。
项目技术栈非常现代:
代码结构高度模块化(cli/ 命令行层、core/ 核心逻辑、providers/ 插件层、distributions/ 配置层),没有明显的"单体泥球"问题。项目对 CVE 漏洞的依赖管理非常积极,pyproject.toml 中列出了大量依赖的已知漏洞及版本约束,体现了安全意识。
在部署过程中遇到了一个小问题:README 中的架构图使用 .svg 格式,在代理环境下 curl -sI 无法获取响应头(SVG 本身的技术限制,非项目缺陷)。此外,repo 仍在使用旧的 meta-llama/llama-stack 路径,但代码中已全面迁移到 ogx-ai/ogx 新品牌,README 标题仍显示"OGX"但仓库名仍是 llama-stack,这种过渡期的命名不一致可能造成一些困惑。
OGX 的出现代表了 AI 基础设施层的一个趋势:OpenAI API 协议正在成为事实标准。当整个行业都在用 OpenAI API 格式开发应用时,谁能提供 OpenAI 兼容的开源服务器,谁就能吸引最大的开发者生态。OGX 赌对了这个方向,而且更进一步——它同时支持 Anthropic 和 Google 的原生 API,真正做到了多框架兼容。
截至目前,该项目已有 8,391 颗 GitHub Stars,是 AI Infrastructure 领域增长最快的开源项目之一。
| 场景 | 推荐方案 |
|---|---|
| 零基础体验 | 运行 install.sh,使用默认 starter 发行版 |
| 生产部署 | Docker + vLLM Provider,多 GPU 配置 |
| 模型评测 | 使用 open-benchmark 发行版 |
| 企业集成 | 参考 watsonx 或 nvidia 发行版 |