AgentField Python SDK完全教程:用3个核心装饰器把普通函数变成AI Agent API
AgentField Python SDK完全教程用3个核心装饰器把普通函数变成AI Agent API【免费下载链接】agentfieldBuild, run and scale AI agents like API and microservices项目地址: https://gitcode.com/gh_mirrors/ag/agentfieldAgentField Python SDK 的核心思路是零胶水代码你只需要写普通的 Python 函数再用 3 个核心装饰器reasoner、on_event、on_schedule稍作标记AgentField 控制平面就会自动把它们变成带路由、队列、重试和可观测性的 AI Agent REST API。本教程面向新手带你用不到 20 行代码完成从零到上线。上图展示了 AgentField 的整体架构你的服务前端、后端、外部 API通过 REST/Webhooks 调用 AgentField 控制平面Control Plane控制平面再分发到由 Python、Go、TypeScript SDK 驱动的分布式 Agent 节点。所有 Python 编写的 Agent 都运行在sdk/python/agentfield/目录下这个统一的 SDK 之上。一分钟安装与初始化安装非常简单一条命令即可pip install agentfield初始化一个 Agent 实例只需三行from agentfield import Agent, AIConfig app Agent( node_idhello-world, agentfield_serverhttp://localhost:8080, # 控制平面地址 ai_configAIConfig(modelopenai/gpt-4o-mini), )node_id是 Agent 在集群中的唯一标识后续所有 API 路径如POST /api/v1/execute/hello-world.say_hello都由它派生。完整入门示例可参考 main.py官方快速上手说明见 sdk/python/README.md。装饰器①reasoner 把普通函数变成 AI Agent APIreasoner是最核心的装饰器。它把一个async def函数自动注册为可调用的能力capability并暴露为 REST 端点。app.reasoner(tags[greeting]) async def say_hello(name: str) - dict: AI 生成一句个性化问候。 text await app.ai(userf用一句话欢迎 {name} 来到 AgentField) return {greeting: text}它背后做了 3 件大事实现见 decorators.py自动能力说明 自动生成 REST API函数签名 Pydantic 类型注解自动变成请求/响应 Schema 工作流追踪每次调用自动上报开始/完成/出错事件到控制平面️ 工具调用发现其他 Agent 的 LLM 可以通过toolsdiscover自动发现并调用它你可以为函数添加tags用于分组与授权、description人类可读描述默认取 docstring、自定义path等参数全部通过装饰器参数声明无需任何路由配置。装饰器②on_event 让 Webhook 事件自动触发 Agent想让 Stripe 支付成功、GitHub PR 打开这类外部事件自动触发 Agent只需在reasoner下面叠加一行on_eventapp.reasoner() on_event( sourcestripe, types[payment_intent.succeeded], secret_envSTRIPE_SECRET, ) async def handle_payment(input, ctx) - dict: 收到支付成功事件时自动执行退款/积分逻辑。 return {order: input.get(data, {}).get(object, {}).get(id)}关键优势你不需要自己配置任何 Webhook。Agent 注册时控制平面会自动为每个事件绑定创建一条 Trigger 记录类型定义见 triggers.py并处理签名校验、幂等键、事件重放。每次事件触发后ctx.trigger里包含事件类型、接收时间等元数据方便你审计。装饰器③on_schedule 一行代码实现定时任务周期性 Agent日报生成、库存巡检、定时备份用on_schedule声明即可app.reasoner() on_schedule(*/5 * * * *) # 每 5 分钟 async def health_check(input, ctx) - dict: 定时巡检调用 AI 分析最近日志。 return {status: ok}on_schedule等价于ScheduleTrigger(cron...)支持标准 5 段 cron 表达式和 IANA 时区参数默认 UTC。和on_event一样定时任务的控制平面调度完全托管——Agent 进程不在线时事件会进入队列不丢任务。三件套组合从函数到生产级 Agent API回顾一下完整的装饰器公式reasoner—— 把函数变成可被任何人服务、其他 Agent、LLM 工具调用调用的 AI Agent APIon_event—— 让外部 Webhook 事件自动触发它on_schedule—— 让它按 cron 周期自动运行。最后用一行app.run()启动控制平面会完成注册、发现、路由。之后你在控制平面 Web UI 的 Executions 页面就能实时看到每一次 Agent 调用的状态、耗时和可验证凭证VC真正做到像调用微服务一样调用 AI Agent。 下一步建议阅读 docs/DEVELOPMENT.md 了解控制平面接入细节或参考 examples/python_agent_nodes/ 目录下的 RAG、多模态、审批流等完整示例快速构建你自己的 AI Agent 集群。【免费下载链接】agentfieldBuild, run and scale AI agents like API and microservices项目地址: https://gitcode.com/gh_mirrors/ag/agentfield创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

如何把ncm转mp3?4个实用方法分享,简单易学

如何把ncm转mp3?4个实用方法分享,简单易学

前几天同事发来一个文件夹,里面是她攒了大半年的歌单,想拷到车载U盘里上下班听。结果插上U盘,车机屏幕上跳出来一行字——“不支持的文件格式”。她截图问我:这些.ncm文件到底是什么,怎么才能正常播放? 这…

2026/10/4 3:45:55 阅读更多 →
网页粒子动画效果如何做

网页粒子动画效果如何做

登录页、活动页经常要一层「会动」的底:许多小点慢慢漂,靠近的两点之间拉出细线,鼠标移动时点还会轻轻跟着偏。本例用 jQuery 插件 Particleground 画在整页 body 上,底色 #16a085,点和线 #5cbdaa。 粒子动画需要哪些文…

2026/10/4 3:45:55 阅读更多 →
OpenClaw命令行实战:安装、WSL2与Ollama接入高频命令

OpenClaw命令行实战:安装、WSL2与Ollama接入高频命令

最近好几个群里都在讨论 OpenClaw,问的问题出奇一致:装完了,下一步敲什么?很多人习惯性地以为它是个带界面的软件,结果安装完面对一个黑乎乎的终端窗口,不知道从哪下手。其实 OpenClaw 从设计上就是一套跑在…

2026/10/4 3:44:55 阅读更多 →

最新新闻

插件系统原理与加载失败排查:从failed to load plugins到解决

插件系统原理与加载失败排查:从failed to load plugins到解决

1. 插件这东西,怎么会让这么多人在同一句报错上翻车先说个真实场景。你装了一款笔记软件,或者在公司 CI 平台上配了个构建流程,又或者在某个音乐播放器里加了个音源扩展,结果启动日志里冷不丁冒出来一行:failed to loa…

2026/10/4 4:16:11 阅读更多 →
3种方式让任意AI接入PenEcho:API密钥、Codex/Claude CLI与云端模型完整指南

3种方式让任意AI接入PenEcho:API密钥、Codex/Claude CLI与云端模型完整指南

3种方式让任意AI接入PenEcho:API密钥、Codex/Claude CLI与云端模型完整指南 【免费下载链接】penecho Think with AI beyond the chat box. A shared canvas for handwriting, equations, diagrams, and spatial reasoning. 项目地址: https://gitcode.com/gh_mir…

2026/10/4 4:16:11 阅读更多 →
插件加载与激活机制深度解析:从failed to load plugins到did not activate

插件加载与激活机制深度解析:从failed to load plugins到did not activate

最近一周我收到好几条几乎一模一样的提问:“iar plugins 是干什么的”“MusicFree plugins 怎么装”“failed to load plugins web boot: 2 entries did not activate linxin666/dsh-p 这是什么意思”。把这几条放在一起看,除了“plugins”这个词反复出现…

2026/10/4 4:16:11 阅读更多 →
LabVIEW调用adb shell实现Android设备自动化测试实战指南

LabVIEW调用adb shell实现Android设备自动化测试实战指南

去年有段时间我一直在做手机产线的老化测试上位机。测的产品是 Android 系统的移动终端,但整个测试框架必须用 LabVIEW 搭,两边要联动:装 App、清缓存、模拟点击、抓日志、读系统版本、控制相机拍照,这些操作全都夹在整套 LabVIEW…

2026/10/4 4:16:11 阅读更多 →
插件加载失败排查指南:从原理到实战,覆盖IAR与MusicFree

插件加载失败排查指南:从原理到实战,覆盖IAR与MusicFree

"plugins"这个词,这几年几乎是所有软件都在提的东西。打开 IAR 遇到插件加载警告,跑测试框架报failed to load plugins web boot: 2 entries did not activate,就连手机上的 MusicFree 听歌软件,也要靠 plugins 才能解锁…

2026/10/4 4:16:11 阅读更多 →
MSRP客户端开发指南:从SIP SDP协商到消息传输与调试避坑

MSRP客户端开发指南:从SIP SDP协商到消息传输与调试避坑

简介:MSRP(Message Session Relay Protocol)是SIP会话中承载富媒体内容的重要扩展,这套C源码以轻量实现展示了SIP客户端如何集成MSRP协议,适合VoIP、即时通信及SIP协议栈开发者作为参考样例。压缩包内共46个文件&#…

2026/10/4 4:15:11 阅读更多 →

日新闻

KT148A语音芯片外挂8002D功放的工程实践指南

KT148A语音芯片外挂8002D功放的工程实践指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 1:00:58 阅读更多 →
LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 1:00:58 阅读更多 →
ARM架构深度解析:从RISC设计理念到交叉编译实战

ARM架构深度解析:从RISC设计理念到交叉编译实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 1:00:58 阅读更多 →

周新闻

KT148A语音芯片外挂8002D功放的工程实践指南

KT148A语音芯片外挂8002D功放的工程实践指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 1:00:58 阅读更多 →
LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 1:00:58 阅读更多 →
ARM架构深度解析:从RISC设计理念到交叉编译实战

ARM架构深度解析:从RISC设计理念到交叉编译实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 1:00:58 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/2 10:36:31 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/3 9:42:35 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/3 9:42:36 阅读更多 →