AI个人学习
和实操指南
讯飞绘镜

Cloudflare Agents:在边缘网络上构建实时交互的智能体

综合介绍

Cloudflare Agents 是 Cloudflare 推出的一款开源开发框架,旨在帮助开发者在全球边缘网络上构建智能AI代理。它让代理具备状态持久化、实时通信和自主运行的能力,目前项目处于活跃开发阶段。核心功能包括状态管理和WebSocket实时交互,已可用于创建聊天机器人或自动化任务工具。Cloudflare Agents 的目标是打造一个分布式的智能代理系统,代理可以在全球范围内运行,支持休眠和唤醒机制。开发者可以通过简单的安装步骤加入这个开源项目,共同推动AI技术的发展。

Cloudflare Agents:在全球边缘网络上构建智能AI代理-1


 

功能列表

  • 核心代理框架:提供状态管理功能,代理可以记住历史交互数据。
  • 实时通信:通过WebSocket支持代理与客户端的即时对话。
  • HTTP路由:处理网络请求,便于与外部服务对接。
  • React集成:内置React钩子,方便前端开发者使用。
  • 基础AI聊天:支持构建简单的智能对话系统。
  • 开发中功能:包括高级记忆系统、WebRTC音视频支持和电子邮件功能。

 

使用帮助

Cloudflare Agents 是一个面向开发者的工具,使用前需要基本的编程知识。以下是详细的安装和操作指南,帮助你快速上手并充分利用它的功能。

安装流程

Cloudflare Agents 通过 npm 安装,支持新建项目或添加到现有项目。以下是具体步骤。

新建项目

  1. 检查环境
    确保电脑已安装 Node.js(建议16或更高版本)和 npm。打开终端,输入 node -v 和 npm -v 查看版本号。
  2. 创建项目
    在终端运行以下命令:
npm create cloudflare@latest -- --template cloudflare/agents-starter

系统会提示输入项目名称和选择目录,完成后生成一个基础项目。
3. 进入项目目录
输入 cd 你的项目名称 进入新建的项目文件夹。
4. 启动本地开发
运行:

npm run dev

这会启动本地服务器,你可以通过浏览器访问本地地址(通常是 http://localhost:8787)查看效果。

添加到现有项目

  1. 进入项目目录
    在终端用 cd 命令切换到你的现有项目文件夹。
  2. 安装SDK
    输入:
npm install agents-sdk

这会将 Cloudflare Agents 的核心库添加到项目中。
3. 配置代码
在代码中引入 agents-sdk,具体用法参考官方文档。

主要功能操作

创建一个简单的AI聊天代理

  1. 编写代理代码
    在项目中创建一个文件(如 worker.ts),输入以下代码:
import { Agent } from "agents-sdk";
export class ChatAgent extends Agent {
async onRequest(request) {
const message = await request.text();
return new Response(`你说:${message}`);
}
}

这个代理会简单地回复用户输入的内容。
2. 部署到Cloudflare
在终端运行:

npx wrangler@latest deploy

按提示登录 Cloudflare 账户,完成部署后会返回一个在线URL。
3. 测试功能
用浏览器访问部署后的URL,或者用工具(如Postman)发送消息,检查回复是否正常。

使用WebSocket实现实时通信

  1. 配置WebSocket支持
    修改代理代码,加入实时通信功能:

    import { Agent } from "agents-sdk";
    export class RealTimeAgent extends Agent {
    async onConnect(connection) {
    connection.send("已连接!");
    }
    async onMessage(connection, message) {
    connection.send(`收到消息:${message}`);
    }
    }
    
  2. 前端连接代理
    在前端代码中添加:

    const ws = new WebSocket("wss://你的代理URL");
    ws.onmessage = (event) => console.log(event.data);
    ws.send("你好");
    

    这会建立一个实时通信通道,发送消息后立即收到回复。

  3. 运行测试
    部署后,用浏览器开发者工具的控制台运行前端代码,查看消息交互效果。

管理代理状态

  1. 保存和更新状态
    在代理中加入状态管理:

    export class StateAgent extends Agent {
    async onRequest(request) {
    this.state.count = (this.state.count || 0) + 1;
    return new Response(`访问次数:${this.state.count}`);
    }
    }
    
  2. 验证状态持久化
    部署后多次访问代理URL,观察计数是否持续增加,证明状态被保存。
  3. 应用场景
    状态管理适合需要记录历史的场景,比如用户交互次数或任务进度。

操作流程详解

  • 本地调试:运行 npm run dev 启动开发模式,代码修改后自动更新,方便测试。
  • 部署上线:用 npx wrangler@latest deploy 将代理发布到 Cloudflare 全球网络。
  • 查阅文档:访问 官方文档 获取更多代码示例和API详情。
  • 社区参与:如果有改进建议,可以在 GitHub 上提交问题或代码,参与项目开发。

注意事项

  • 环境变量:如果需要调用外部AI模型(如OpenAI),要在 wrangler.toml 文件中配置API密钥。
  • 网络要求:部署需要稳定的网络连接,确保登录 Cloudflare 时没有中断。
  • 学习资源:官方提供 Playground 示例(位于 GitHub 仓库的 examples/playground),可以直接运行参考。

通过以上步骤,你可以轻松搭建一个AI代理。Cloudflare Agents 的优势在于它的全球分布式部署和状态持久化功能,适合需要低延迟和高可用性的应用场景。

CDN1
未经允许不得转载:首席AI分享圈 » Cloudflare Agents:在边缘网络上构建实时交互的智能体

首席AI分享圈

首席AI分享圈专注于人工智能学习,提供全面的AI学习内容、AI工具和实操指导。我们的目标是通过高质量的内容和实践经验分享,帮助用户掌握AI技术,一起挖掘AI的无限潜能。无论您是AI初学者还是资深专家,这里都是您获取知识、提升技能、实现创新的理想之地。

联系我们
zh_CN简体中文