Skip to content
Cloudflare Docs
非官方翻译 - 此文档为非官方中文翻译版本,仅供参考。如有疑问请以 英文官方文档 为准。

入门指南

本指南将指导您设置和部署您的第一个带有嵌入式函数调用的 Workers AI 项目。您将使用 Workers、Workers AI 绑定、ai-utils 包 和一个大型语言模型 (LLM),以在 Cloudflare 全球网络上部署您的第一个带有嵌入式函数调用的 AI 驱动的应用程序。

1. 使用 Workers AI 创建一个 Worker 项目

请按照 Workers AI 入门指南 直到第 2 步。

2. 安装额外的 npm 包

接下来,在您的项目存储库中运行以下命令以安装 Worker AI 实用程序包。

Terminal window
npm i @cloudflare/ai-utils

3. 添加 Workers AI 嵌入式函数调用

使用以下代码更新您应用程序目录中的 index.ts 文件:

index.js
import { runWithTools } from "@cloudflare/ai-utils";
export default {
async fetch(request, env, ctx) {
// 定义函数
const sum = (args) => {
const { a, b } = args;
return Promise.resolve((a + b).toString());
};
// 使用函数调用运行 AI 推理
const response = await runWithTools(
env.AI,
// 支持函数调用的模型
"@hf/nousresearch/hermes-2-pro-mistral-7b",
{
// 消息
messages: [
{
role: "user",
content: "123123123 + 10343030 的结果是多少?",
},
],
// AI 模型可以利用的可用工具的定义
tools: [
{
name: "sum",
description: "将两个数字相加并返回结果",
parameters: {
type: "object",
properties: {
a: { type: "number", description: "第一个数字" },
b: { type: "number", description: "第二个数字" },
},
required: ["a", "b"],
},
// 引用先前定义的函数
function: sum,
},
],
},
);
return new Response(JSON.stringify(response));
},
};

此示例使用 import { runWithTools} from "@cloudflare/ai-utils" 导入实用程序,并遵循下面的 API 参考。

此外,在此示例中,我们定义并描述了 LLM 可以用来响应用户查询的工具列表。在这里,该列表仅包含一个工具,即 sum 函数。

runWithTools 函数抽象出来,会发生以下步骤:

sequenceDiagram
    participant Worker as Worker
    participant WorkersAI as Workers AI

    Worker->>+WorkersAI: 发送消息、函数调用提示和可用工具
    WorkersAI->>+Worker: 为函数调用选择工具和参数
    Worker-->>-Worker: 执行函数
    Worker-->>+WorkersAI: 发送消息、函数调用提示和函数结果
    WorkersAI-->>-Worker: 发送包含函数输出的响应

ai-utils 包 也在 Github 上开源。

4. 本地开发和部署

请按照 Workers AI 入门指南 的第 4 步和第 5 步进行本地开发和部署。

API 参考

有关更多详细信息,请参阅 API 参考