← 文章 / 云原生与基础设施
ollama 9天前 · 2026-10-14 04:44:45 · 9 阅读

利用 Ollama 和 Fly.io 安全运行 AI 智能体

2026 年 10 月 13 日

Ollama llama flying on a hot air balloon next to the text Ollama & Fly.io Sprites

Ollama Cloud 现在支持在基于 Fly.io Sprites 构建的完整 Linux 计算机环境中运行,专为 AI Agent 设计。

Sprite 是 Fly.io 提供的沙箱环境。每一个都是一个拥有独立磁盘的完整 Linux 虚拟机,且磁盘数据在会话之间会持久保留。原生支持 Claude Code、Codex 和 Gemini CLI,允许 Agent 在沙箱内安全地执行命令。

借助新的 Ollama Connector,你的 Sprites 可以使用 Ollama 的云端模型,如 kimi-k3、glm-5.3 和 deepseek-v4.1-flash。

工作原理

将你的 Ollama API 密钥添加到 Fly.io 组织,Fly.io 会对其进行加密,且绝不会通过 API 返回该密钥。

当 Sprite 内部的代码调用 Ollama 时,请求会经过一个 Fly.io 网关。网关会验证发起调用的 Sprite 身份,并将你的密钥附加到请求中。Sprite 本身只知道一个网关 URL 和一个连接 ID。

这意味着:

  • Sprite 中的 Agent 无法泄露你的密钥。
  • 新的连接器默认阻止所有 Sprite 访问。你可以按标签、名称前缀或全选等方式指定哪些 Sprite 拥有访问权限。
  • 调用仅在 Sprite 内部有效。

快速开始

你需要一个 Ollama API 密钥 以及至少一个 Sprite。

  1. 在 Fly.io 控制台 中,打开 Sprites,然后进入 Connectors,添加一个带有你的 API 密钥的 Ollama 连接器。
  2. 在 Access Configuration 下,选择允许使用该连接器的 Sprites 并保存。
  3. 点击某个 Sprite 旁边的 Test reachability,检查其是否能访问 Ollama。

然后,在 Sprite 内部执行:

curl "https://api.sprites.dev/v1/gateway/ollama/<connection_id>/v1/chat/completions" \
  -H "Content-Type: application/json" \
  -d '{"model": "kimi-k3", "messages": [{"role": "user", "content": "Hello!"}]}'

连接器页面会展示已填入你连接 ID 的命令。由于网关会附加你的密钥,因此无需包含 Authorization 请求头。

Python

任何 OpenAI SDK 均可使用。将 base_url 设置为网关地址,api_key 可以填入任意值:

from openai import OpenAI

client = OpenAI(
    base_url="https://api.sprites.dev/v1/gateway/ollama/<connection_id>/v1",
    api_key="unused",
)

response = client.chat.completions.create(
    model="glm-5.3",
    messages=[{"role": "user", "content": "Why is the sky blue?"}],
)
print(response.choices[0].message.content)

Ollama 原生的 /api/* 路由也可以通过 Gateway 访问。

编码智能体

Fly.io Sprites 内置了一项技能,可让 Claude Code、Cursor、Codex 和 Gemini CLI 识别 Ollama。只要 Sprite 拥有相应权限,编码智能体即可直接调用 Ollama 模型,无需额外配置。

示例:模糊测试

Fly.io 提供了一份指南,演示如何组合多个模型进行模糊测试(fuzzing)。其中,类似 nemotron-3-nano:30b 的小型模型生成畸形输入,Sprite 将其应用于你的程序,再由类似 kimi-k3 的大型模型分析崩溃情况。切换模型只需修改 model 字段即可。详见 Ollama Connector 快速入门。

感谢 Fly.io 团队与我们共同构建此功能。

原始来源: ollama

评论 (0)