← 返回
IT技术

如何把 AI 云推理从前沿模型公司迁移出来

✍️ zhirenhun 📅 2026/10/14 👁 190 阅读 ⏱ 17 分钟
如何把 AI 云推理从前沿模型公司迁移出来

介绍

在构建大模型(大语言模型)应用时,您可能会发现自己只能依赖单一推理提供商。许多团队将其应用的基础构建在 OpenAI、Anthropic、Google 或其他平台上,并且在新的开源模型发布后,他们希望将其纳入自己的应用。面向前沿模型公司构建的架构,让人难以确切知道应采取哪些步骤。

这是许多大模型应用常见的障碍,因为团队发现,在单一封闭实验室上构建意味着成本随使用量增长,模型选择受限,服务变更频繁带来风险,且数据不完全掌握在自己手中。好消息是,迁移全部或部分 AI 云推理工具通常不如迁移其他云架构部分那么困难。对于大多数应用,只需修改三个字段:base_url、api_key 和 model。本文将介绍迁移的好处和诚实权衡、即插即用机制,以及如何为以后可移植性进行架构设计。

关键要点

团队为何迁移离开单一封闭实验室

将项目从封闭模型提供商迁移出来的主要好处是模型选择。像 DigitalOcean 这样的推理云将数十到数百种模型(包括开放权重和前沿模型)放在同一个端点后面,只需一个密钥,即可为每个任务获取合适规模的模型。开放权重模型通常每 1M 输入 token 的成本为 0.10‑0.90 美元,而许多旗舰模型则为 5‑30 美元。LLM 应用中的大多数任务并不需要相同水平的模型能力。如果你能够为每个任务确定并使用最小或最经济的模型,则可将成本降低 10 倍到 50 倍。随后,通过批量或异步推理,你还能再获得最高 50% 的价格降低。模型运行速度往往差异很大,因此你也能获得更快的推理。

在基础设施提供商上运行开放权重模型可以将推理和你的数据保留在你选择的云中,紧邻你的应用和数据库,而不是第三方实验室。消费者聊天产品默认会越来越多地使用你的数据进行训练,而提供商的保留政策可能各不相同。使用像 DigitalOcean 这样的基础设施提供商运行开放权重模型则不存在此问题,因为你的数据不会被用于训练模型。

这也消除了由单一供应商的限流、价格变动或停机导致的单点故障。你可以同时在多个模型和提供商之间进行路由,以在主提供商请求失败时提供备份选项。最后,成熟的推理云在同一平台上提供无服务器(实时)、批量(异步、更便宜)和专用(预留 GPU)三种模式,因而一个提供商就能覆盖多种不同的工作负载形态。

直接替换

使迁移相对简单的是 OpenAI 兼容的 API 格式。它已成为行业标准,许多推理云暴露出相同的 /v1/chat/completions 模式,因此 OpenAI SDK(软件开发工具包)、LlamaIndex 以及许多其他工具在标准聊天补全时只需少量修改即可使用。如前所述,只有 base_url、api_key 和 model 这三个字段会真正发生变化。方法调用、参数、流式传输 以及响应处理保持不变。

# Before — OpenAI
client = OpenAI(api_key=os.getenv("OPENAI_API_KEY"))

# After — any OpenAI-compatible provider
client = OpenAI(
    base_url="https:///v1/",
    api_key=os.getenv("PROVIDER_API_KEY"),
)

如果你更倾向于不直接导入 openai 或 anthropic,可以移除 OpenAI() 客户端,改用原始的 HTTP 请求:

import os, requests

resp = requests.post(
    "https:///v1/chat/completions",
    headers={"Authorization": f"Bearer {os.getenv('PROVIDER_API_KEY')}"},
    json={
        "model": "llama3-8b-instruct",
        "messages": [{"role": "user", "content": "Hello"}],
    },
)
print(resp.json()["choices"][0]["message"]["content"])

如果你是在从 Anthropic 迁移而不是从 OpenAI 迁移,Anthropic 原生的 Messages API 采用了不同的格式。它使用 x-api-key 头部代替 Bearer,包含一个顶层 system 参数以及 content-block 响应。最直接的做法是一次性采用 OpenAI 请求格式,通过它调用所有模型,包括 Claude,因为大多数推理云通过其 OpenAI 兼容端点暴露 Claude。如果你更倾向于保留 Anthropic 原生格式,请检查目标提供商是否提供 Anthropic 兼容端点。

大多数前沿模型公司都有自己的原生格式,但几乎全部也暴露了 OpenAI 兼容的 schema。因此,统一采用 OpenAI 格式是一条干净的迁移路径。

构建可移植性

如果你希望从一开始就考虑可移植性,可以采取以下几个关键步骤来加速这一过程。首先,将模型配置(base_url、api_key、model 等)放在 env/config 中,而不是硬编码,这样只需通过修改环境变量并重新部署来切换提供商,而无需改动代码。如果你在请求前放置一个 网关或路由器,可以通过配置而非代码来启用 A/B 测试、金丝雀发布,或在不同提供商之间实现自动回退。

其次,通过编写自己的辅助函数来处理诸如 嵌入向量、工具/函数调用 schema、JSON/结构化输出模式、对话历史管理以及流式输出等额外功能,可以避免供应商锁定。这样,任何提供商的变更都集中在一个地方,而不是分散到代码库的各处。

第三,不同模型对提示词的适配度不同,因此将提示词存储在版本化的文件中以便导入,而不是硬编码为字符串,可以让你保留每个模型的提示词变体,而无需每次重新调整提示词。

最后,准备一个 “黄金数据集” 评估套件,用于对新模型进行测试。这可以量化每个模型在你特定任务上的能力。

挑战与权衡

许多推理平台除了提供开放权重模型外,还提供前沿模型,这使它们成为不错的选择。不过,从前沿模型切换过来也有一些权衡。主要区别在于,开放权重模型无法完全复现前沿模型输出,因而你为原始模型调整的提示词通常需要重新调整。除此之外,主要挑战在于:工具调用 schema、嵌入架构、结构化输出模式以及流式行为可能是在前沿模型的专有平台上配置的,迁移起来更为复杂。

如果你需要迁移嵌入架构或更换嵌入模型,可能需要重新嵌入整个 向量存储。你可能需要重构工具调用 schema 或更改提示词存储。所有这些因素取决于架构最初是如何构建的。

DigitalOcean 适用场景

DigitalOcean 在 https://inference.do-ai.run/v1/ 提供推理服务,因此 OpenAI SDK 只需进行前文提到的三项更改。这个单一端点及一个密钥可访问来自 Anthropic、OpenAI、Meta、Mistral、DeepSeek、Alibaba 等 70+ 种开放权重和前沿模型,并定期进行开源刷新。查看当前 价格列表 以获取最新的输入/输出成本。无服务器、批量和专用部署模式均可用,且 Inference Router 会根据成本或延迟自动将请求路由到不同模型。

首先,如果您尚未这样做,请创建 DigitalOcean 账户并生成模型访问密钥。然后在您的 OpenAI() 调用中更新 base_url、api_key 和 model。

client = OpenAI(
    base_url="https://inference.do-ai.run/v1/", # Added the DigitalOcean endpoint
    api_key=os.getenv("DIGITALOCEAN_INFERENCE_KEY"), # Added the DigitalOcean key
)

resp = client.chat.completions.create(
    model="openai-gpt-5.5",   # Updated to DigitalOcean's catalog ID
    messages=[{"role": "user", "content": "Hello"}],
)

即使模型仍然是 GPT-5.5,模型 ID 也需要根据推理提供商进行更改,以确保正确调用模型。先使用完全相同的前沿模型测试迁移功能是否正常。然后在同一客户端上对开放权重模型进行 A/B 测试。验证伴随工具的一致性,然后在监控成本和延迟的情况下测试一部分生产流量。之后的一个选择是 微调 一个更小的开放模型,使用特定任务的数据进行训练,并在同一平台上运行。

结论

得益于 OpenAI 兼容的 API,迁移主要是配置更改,这使您能够以更低的成本获得更广泛的模型选择,并且以后再次切换同样容易。迁移后,请关注新模型发布,因为现在您可以获得更多公司提供的更广泛的模型选择。新模型每周都会发布,请保持好奇心,并准备好使用您的评估数据集测试新模型,以获得成本、效率和速度的提升。

此外,明智的做法是考虑在您自己的数据集上微调一个更小的开放权重模型,因为现在您可以通过云推理提供商获得计算资源。针对您特定用例调优的模型在特定任务上的表现可以媲美前沿模型,但成本仅为其一小部分。它将成为一种组织资产,您可以选择任何提供商来运行它。

常见问题

  • 我如何用更便宜的微调模型替换 OpenAI 模型? 用更小的开放模型进行微调 低秩自适应(LoRA) 或 量化 LoRA (QLoRA) 在租用的 GPU(图形处理单元)上,在您特定任务的金标数据集上进行评估,并在其质量达到前沿模型的水平时将其部署为推理端点
  • ——

    广告 广告
    🧑‍💻

    zhirenhun

    一个热爱技术的程序员,喜欢分享前沿AI知识和开发经验。