Agent 核心原理:从概念到可交付结果

AI Agent概念、工作原理及应用场景 AI Agent是一种能够通过感知环境、自主决策并执行动作以实现特定目标的智能实体。其工作原理基于感知 - 决策 - 行动的闭环逻辑,融合了机器学习、自然语言处理、知识图谱、强化学习等技术。 阅读详情

聊《Agent 核心原理:从概念到可交付结果》之前,先说一句实在的:别急着背概念,先看它在真实项目里到底解决什么问题。

摘要

本文概述文章目标、核心观点和实践价值。

分类:AI Agent | 账号:Java技术那些事

摘要:很多团队把 Agent 当成“调参玩具”,一推上生产环境就频繁超时或状态错乱。这篇不堆砌框架名词,直接拆解规划、工具、记忆和容错四个底层模块。结合我上个月在订单履约链路里因为 Agent 越权调用导致数据不一致的真实排查过程,重点讲清楚怎么设计监控指标、怎么做事务回滚,以及普通开发者该怎么把这部分工程经验写进简历。

目录

目录

  • Agent 的本质
  • 规划能力
  • 工具调用
  • 记忆系统
  • 失败恢复
  • 总结

Agent 的本质

文章插图 1

别被“自主智能”这种词带偏。剥开提示工程和框架包装,Agent 就是一个带状态的循环决策器:接收输入 → 评估上下文 → 决定下一步动作 → 执行并更新状态 → 重复。传统微服务是确定性的路由,Agent 处理的是概率性的意图。这意味着它天生会犯错、会卡死、会生成不符合预期的中间态。

我在排查一起工单流转异常时看到,Agent 连续重试了 7 次同一个查询接口,因为大模型把一次短暂的网关 502 误判成了“用户需要补充材料”。如果把它当普通函数调,加个重试队列就能解决;但它是 Agent,重试逻辑本身也是 LLM 生成的,结果陷入自增强的死循环。所以做 Agent 架构的第一步,是承认它的非确定性,并在外围包一层确定性的控制面。不要指望 Prompt 能兜底所有边界情况,那只是成本最高的调试手段。

规划能力

文章插图 2

规划不是把任务拆成固定步骤写死,而是动态的路径选择。早期项目喜欢用静态 Chain-of-Thought,流程写得像流水线。实际跑起来才发现,业务场景的分支比预期多得多。比如一个客服 Agent,原本规划了“识别意图→查知识库→生成回复”三步,结果遇到投诉类请求时,知识库返回了冲突条款,这时候硬走第三步只会输出矛盾内容。

我的做法是引入轻量级的 RePlan 机制:每完成一步,先让 LLM 用结构化字段输出当前进度和置信度。置信度低于阈值(比如 0.6),或者工具返回了异常码,就触发重新规划。这里有个明显的取舍:重规划会增加延迟和 Token 消耗,但在复杂场景里,这比让用户反复重试或人工介入要划算得多。面试或写项目文档时,别只说“用了 ReAct”,明确写出你的判定阈值、重规划触发条件和对应的性能损耗数据,这才是能过技术面筛子的细节。

优快云资料领取方式

工具调用

工具是 Agent 的手脚,也是线上最容易爆雷的地方。很多人以为只要写好 JSON Schema 就安全了,实际上 LLM 经常会在边缘 case 下塞入非法字符、遗漏必填字段,甚至直接拼接未经转义的用户输入。工具层必须独立于 Prompt 之外,做成强类型适配器。

线上排过一次险:Agent 接到“帮我查一下上周的销量”指令,直接拼了个 SQL 丢给数据库。幸好我们的工具层做了严格校验和只读权限隔离,否则直接就是事故。工具调用的监控不能只看成功率,还要追踪参数分布、调用频次和单次耗时。下面是一个我们实际在用的工具封装示例,重点看校验和异常透传部分:

from typing import Literal
import re
from fastapi import HTTPException

class ToolAdapter:
    @staticmethod
    def query_inventory(product_sku: str, warehouse_code: str):
        # 强校验前置拦截
        if not re.fullmatch(r"[A-Z]{2,4}-\d{4,8}", product_sku):
            raise ValueError(f"SKU 格式错误: {product_sku}")
        if warehouse_code not in ALLOWED_WAREHOUSES:
            raise PermissionError(f"无权访问仓库: {warehouse_code}")

        try:
            result = db.query_inventory(sku=product_sku, wh=warehouse_code)
            return {"stock": result.stock, "status": "available"}
        except Exception as e:
            # 统一转为 Agent 可读的错误结构,避免 LLM 猜测
            raise HTTPException(status_code=503, detail={
                "error_type": "SERVICE_UNAVAILABLE",
                "raw_message": str(e)
            })

这段代码看着简单,但把校验、鉴权和错误标准化做透了,Agent 后续的错误恢复才会顺畅。记住:工具的稳定性决定了 Agent 的天花板。

记忆系统

记忆本质上就是上下文窗口管理。长短期记忆混在一起是新手最常见的坑。短期记忆该放什么?最近三轮对话、工具返回的关键结果、用户明确声明的约束。长期记忆不该是什么?全部的历史聊天记录往向量库里一扔,检索出来又杂又慢。

我们当时切到了混合策略:Redis 存业务变量(用户 ID、当前阶段、已完成的工具清单),向量库只存经过清洗的业务知识片段和成功执行的案例模板。对话历史采用滑动窗口,超过 8 轮就做一次摘要压缩,保留实体和关键决策点,丢弃寒暄和冗余推理。这样做下来,单次请求的 Token 开销降了将近一半,且任务连续性没受影响。写简历时强调你做过“记忆分层与压缩策略”,比单纯写“接入了 LangChain Memory”有说服力得多,后者现在已经是框架默认行为,体现不出工程价值。

失败恢复

这是区分 Demo 和生产系统的分水岭。大模型会幻觉,网络会抖动,下游接口会限流。Agent 一旦走到脏数据或半提交状态,最忌讳的做法是让 LLM 自己“想办法补救”。LLM 没有事务概念,它不知道上一笔钱已经扣了,下一笔退款还没发起。

那次线上故障后,我们重构了容错链路,主要抓了三件事:
1. **可观测性埋点**:每个 Agent Turn 记录输入输出、Token 消耗、工具调用链和耗时。接入 OpenTelemetry,设置重试次数 > 2 或单步耗时 > 5s 的告警。
2. **熔断与降级**:对高风险工具(支付、库存扣减、权限变更)加断路器。连续失败两次直接切断,转交人工审核或 fallback 规则引擎。
3. **显式回滚日志**:所有产生副作用的操作必须记录 Before/After 快照。如果第 3 步失败,代码层面按逆序调用撤销方法,而不是让 LLM 生成一句“请忽略之前的操作”。


# 伪代码:显式回滚模式
async def execute_plan(plan_steps):
    rollback_stack = []
    try:
        for step in plan_steps:
            if step.requires_commit:
                snapshot = take_snapshot(step.target_resource)
                rollback_stack.append(snapshot)
            await step.execute()
    except AgentExecutionError as e:
        logger.error(f"Plan failed at {step.name}, rolling back...")
        for snap in reversed(rollback_stack):
            await restore_state(snap)
        raise  # 向上抛出,由调度器决定重试或转人工

线上跑 Agent,监控面板上要有的不是“用户满意度”,而是:平均重试率、回滚触发频率、工具调用超时占比、人工接管数。这些指标能直接反映你设计的健壮程度。

总结

学 Agent 别一上来就追最新框架。先从确定性工作流写起,把边界条件测透,再慢慢引入 LLM 路由和动态规划。工具层做强校验,记忆层做清分,失败链路做显式回滚。这三样稳了,Agent 才敢往生产环境放。

对于想转方向或找项目的开发者,建议少做纯聊天型演示,多做带状态流转、带外部工具调用、带完整错误处理的端到端小系统。把监控日志、回滚逻辑和性能压测数据拍进 README,面试时直接带着架构图和排查记录去聊。Agent 不是魔法,它是工程能力的延伸。把不确定性关进确定的笼子里,才能拿到可交付的结果。

资料展示

下面是我整理的AI大模型学习资料和工具包预览,适合收藏后按主题逐步学习。

AI大模型资料展示 1

AI大模型资料展示 2

AI大模型资料展示 3

AI大模型资料展示 4

AI大模型资料展示 5

如果你想看完整资料目录,可以在评论区留言「资料」;也欢迎告诉我你更关注AI大模型里的哪类内容。

优快云官方大礼包

Harness Engineering:以交付契约为核心的新型工程范式 软件交付正从‘代码打包上线’迈向‘可验证、自洽、合规的契约化执行’。Harness Engineering 本质是将交付过程抽象为机器可读的交付契约(Delivery Contract),通过策略即代码(Policy-as-Code)治理、环境代理(Environment Agent)自主执行、控制面统一编排,实现跨云、边缘、信创等异构环境下的高确定性发布。它不是CI/CD工具升级,而是对‘交付’本身的重新定义——强调契约先行、Agent-First与Spec Coding,天然支撑AI原生开发、信创适配与 阅读详情

相关推荐

Agent可交付设计:从OpenClaw配置到审批流可视化

Agent(智能体)作为大模型落地的关键载体,其核心价值不仅在于任务执行能力,更在于能否被非技术人员稳定、安全、可信地使用。这涉及配置管理、权限控制、审批编排与可观测性四大工程化维度。OpenClaw作为国产主流开源Agent框架,提供了灵活的插件与工作流扩展能力,但默认配置方式和策略定义对业务用户极不友好。本文围绕‘可用层’与‘可信层’交付标准,解析如何将环境变量转化为向导式配置界面、将RBAC权限规则映射为角色-资源-操作三元业务语言、将审批链抽象为拖拽式流程图,并通过Trace链路与SLA看板构建用户

weixin_33845881的博客 321

AI Agent时代:从代码交付到智能系统交付的架构师转型

在人工智能技术快速发展的背景下,大语言模型(LLM)和智能体(Agent)技术正重塑软件开发的范式。传统软件开发以代码为核心交付物,强调确定性的逻辑与结构;而AI Agent的本质是一个具备感知、规划、记忆和行动能力的可执行智能系统,其核心价值在于通过提示词工程(Prompt Engineering)和工具调用(Function Calling)实现与环境的交互。这一转变要求开发者从编写静态代码转向构建动态、可观测、可迭代的智能工作流,技术价值体现在将不确定的模型输出转化为稳定可靠的服务。应用场景已从简单的

weixin_33811539的博客 612

AI Agent产品思维:从技术实现到价值交付的实战指南

AI Agent作为人工智能技术的重要分支,其核心原理是通过感知、决策和执行能力模拟人类智能行为。在工程实践中,Transformer架构和RAG系统构成了关键技术基础,前者解决了序列建模的长期依赖问题,后者实现了知识检索与生成的有机结合。这些技术的价值在于能够处理不确定性环境下的复杂任务,在智能客服、数据分析、自动化流程等场景展现强大潜力。本文聚焦AI Agent产品化过程中的核心挑战,探讨如何建立从意图识别到效果评估的完整产品体系,帮助开发者跨越从Demo到实际应用的鸿沟。通过分层架构设计和反馈机制优化

weixin_33755557的博客 333

Agent 核心原理:把工具用到交付链路里

先把这篇文章的目标说清楚:看完之后,你应该能判断这件事值不值得做,以及从哪里动手。> 摘要:最近跟业务方过需求,发现大家提 Agent 方案时,往往只盯着“能对话”和“参数调优”,却忽略了权限隔离、操作日志和链路可观测。从 Demo 到能进生产环境,差的从来不是模型参数,而是工程化底座。本文复盘我在设计数据同步与审批 Agent 时的取舍,拆解规划、工具调用和记忆的真实写法,给想深入底层机制的开发者一些可执行的判断标准。写到这里,其实想抛出一个很实在的建议:想进这个领域,别急着背架构图或刷框架文档。

2601_96189255的博客 361

基于AI Agent的软件交付流程自动化实战:从概念到多智能体系统构建

软件开发生命周期(SDLC)是软件工程的核心框架,它定义了从需求分析到部署维护的完整流程。传统SDLC依赖大量人工协作,存在效率瓶颈和响应迟缓的问题。随着大型语言模型(LLM)和智能体(Agent)技术的发展,AI原生SDLC应运而生,其核心原理是将AI作为驱动流程的第一性原理,实现从“人驱动机器”到“人设定目标,AI驱动执行”的范式转变。这一变革的技术价值在于通过具备感知、规划、执行、记忆和反思能力的AI Agent,动态理解需求、分解任务并调用工具执行,突破了传统自动化脚本的僵化限制。在实际应用场景中,

weixin_32597009的博客 332

AI开发入门:从Token、LLM到Agent的核心概念与实战避坑指南

在人工智能应用开发领域,理解核心基础概念是构建有效系统的前提。大语言模型(LLM)作为当前AI浪潮的基石,其工作原理基于对文本Token的预测生成。Token不仅是模型处理文本的基本单元,更直接关联到API调用成本与上下文长度限制,是开发中成本控制与性能优化的关键指标。从技术价值看,掌握Token机制能帮助开发者优化提示词设计、避免上下文溢出错误,而理解LLM的预测本质则能更好地进行提示词工程(Prompt Engineering),提升模型输出质量。在实际应用场景中,这些基础知识自然延伸到AI Agent

weixin_30596735的博客 419

Agent 核心原理:用一次交付过程做复盘

先把这篇文章的目标说清楚:看完之后,你应该能判断这件事值不值得做,以及从哪里动手。最近团队在引入 AI 辅助开发时,发现了一个很有意思的现象:之前大家还在纠结用 Claude Code 还是 Codex,现在讨论的重点已经变成了“怎么让这几个工具在团队里协同工作”。这其实是一个信号。当 AI 工具从“个人极客玩具”变成“团队基础设施”时,我们不能再把它当成简单的 Chatbot 来用。

2601_96285279的博客 331

深度对比Kimi OK Computer、Manus、Lovable:厂商型Agent与第三方Agent的核心差异与实战表现

本文深度对比了Kimi OK Computer、Manus和Lovable三款AI Agent在实战中的表现。通过商业分析报告、定制化网站、APP克隆和PPT制作四个真实任务测试,揭示了厂商型Agent(如OK Computer)在任务完整性、数据准确性和工程化能力上的优势,以及第三方Agent在垂直场景的灵活性与局限性。文章为选择适合的AI助手提供了实用参考。

qqq44的博客 1092

AI Agent核心教程:从概念到实战,程序员学习收藏必备

AI Agent类似于一个“人”,它通过LLM,能够自主理解、规划、执行复杂任务的系统。给它一个目标,AI Agents就能完成剩下的全部工作。Agent适用于那些开放性问题,这些问题很难或无法预测所需的步骤数量,并且无法硬编码固定路径。

weixin_59191169的博客 995

AD9361 FIR 滤波器设计

matlab 得到滤波器系数

weixin_44630490的博客 1万+

ESD笔记(三)_常用ESD保护电路优缺点

根据ESD防护器件的TLP I-V特性我们可将ESD器件分为回滞类和非回滞类两种; 回滞类的ESD器件包括NPN三极管、栅极接地 NMOS ( GGNMOS, Gate-grounded NMOS )、可控桂(SCR, siliconcontrolled rectifier)等。 非回滞类的ESD器件包括二极管、二极管串、沟道工作的MOS管、PNP三极管、栅极接电源的PMOS(GDPMOS)等,与回滞类ESD器件相比,其TLP曲线没有负阻区的存在。 常用于ESD防护的器件包括PN结二极管、GGN

weixin_47139649的博客 1万+

从Manus看AI Agent:口碑与营收背离背后的任务交付逻辑

在大模型应用快速普及的今天,AI Agent正成为继Chatbot之后的新一代智能交互范式。与侧重即时对话体验的聊天机器人不同,Agent以任务执行为核心,通过理解目标、规划步骤、调用工具、校验结果等循环机制,完成从用户输入到交付物的完整链路。这种架构让Agent在简历筛选、行业调研、数据整理等重复性场景中具备可量化的生产价值,但同时也带来更高的工程复杂度和成本控制要求。Manus的案例颇具代表性:一边是大众舆论因预期落差产生强烈吐槽,另一边是付费收入实现快速增长。这种背离并非产品失格,而是评价标准的分化—

weixin_29065015的博客 363

ZYNQ千兆网UDP通信实战:从Vivado配置到LWIP优化全流程(附避坑指南)

本文详细介绍了在ZYNQ平台上实现千兆以太网UDP通信的全流程,包括Vivado硬件配置、LWIP协议栈优化及实战代码示例。通过关键参数调整和性能优化,系统吞吐量可提升至850Mbps以上,适用于高速网络通信场景。

weixin_29161785的博客 231

从Agent Skills到Agent Loop,Cowork与Clawdbot的核心原理解析

摘要: AI助理正从“被动响应”向“主动完成”进化,以Cowork、OpenWork、Clawdbot为代表的Agentic AI产品通过两大核心组件实现这一跨越: Agent Skills:将复杂任务拆解为标准化流程(如操作手册+工具包),使AI能复用成熟经验高效执行; Agent Loop:通过迭代循环动态推进任务,模拟人类“走一步看一步”的决策逻辑,确保复杂任务持续交付。 两者结合形成“预制菜”模式——Skills提供方法论,Loop驱动执行,最终实现用户仅需设定目标,AI即可自主规划、执行并交付结果

小程故事多的博客 1121

【抓包工具】Windows 10/11:Charles 从零到精通(下载、安装、配置与HTTPS证书实战)

本文提供了一份详尽的Charles抓包工具在Windows 10/11系统上的从零到精通指南。内容涵盖下载安装、初始配置、解决端口冲突,并重点解析了HTTPS抓包的核心步骤——安装CA证书。此外,还介绍了手机抓包配置及映射、断点等高效使用技巧,帮助开发者和测试人员快速掌握网络调试与安全分析技能。

weixin_29251131的博客 552

LVGL移植教程(正点原子)

学习正点原子LVGL移植教程,根据视频教程写的博客

papalila的博客 944

Hermes Agent与OpenClaw核心差异:确定性交付 vs 可编程探索

AI Agent框架是构建智能自动化系统的基础技术栈,其本质是将大语言模型能力封装为可调度、可编排、可治理的工程化组件。理解其底层设计哲学——如任务分解机制、技能契约规范、错误处理范式和执行图模型——直接决定系统在生产稳定性、调试可观测性与科研灵活性上的表现。Hermes Agent强调确定性交付,通过静态DAG、强Schema约束与熔断审计保障金融、专利等强监管场景的可靠性;OpenClaw则立足不确定性探索,以动态执行图、无契约Skill和可编程Executor支持快速验证与深度定制。二者共同推动Age

weixin_30938149的博客 387

紫光同创PGL50H开发板实战:盘古50KH视频板的多媒体处理与高速通信方案

本文详细介绍了基于紫光同创PGL50H FPGA芯片的盘古50KH视频开发板在多媒体处理与高速通信方面的实战应用。文章从开发板硬件架构解析入手,逐步指导开发环境搭建、DDR3内存控制器配置、HDMI视频输入输出实战,并重点探讨了利用板载HSST高速收发器实现光纤通信与万兆以太网的方案。最后,通过构建一个集多路视频采集、处理与光纤传输于一体的系统案例,展示了该开发板在高性能实时数据处理领域的强大潜力。

b9c0d的博客 486

基于DeepSeek V4构建AI Agent:从核心原理到实战避坑指南

AI Agent作为具备自主规划、执行和反思能力的智能体,正推动人工智能从被动工具向主动伙伴演进。其核心原理在于将大语言模型的推理能力与外部工具的执行功能相结合,通过感知-思考-行动循环完成复杂任务。这一技术价值在于解决大模型应用的“最后一公里”问题,让AI能够理解宏观目标并自主拆解为可执行动作,显著提升自动化水平。在应用场景上,AI Agent广泛应用于数据分析、自动化流程、智能客服等领域,成为连接AI能力与实际业务需求的桥梁。本文以DeepSeek V4 Flash本地部署和Claude Code接入D

weixin_30876945的博客 425

神经进化实践:用遗传算法替代反向传播优化神经网络

神经进化用来定义应用于深度学习的特定优化模式。在本节中,我们通过遗传算法优化简单深度学习网络的权重/参数,替换在误差反向传播训练过程中的所用优化器。

盼小辉丶的博客 3644

【AI大模型应用开发】3.2 RAG实战 - RAG应用+UI实现加载本地文件并对话

前面我们实现了RAG基本流程,今天我们在此基础上给它加个UI界面,在浏览器打开,实现上传本地文件、解析,并用大模型实现与该文档的对话。也就是一个阉割版demo版的ChatPDF或知识库对话系统。

同学小张的博客 3056

零基础构建可交付AI Agent:10+3步打造数字同事

AI Agent 是一种能自主感知、决策与执行的智能体,其核心在于任务编排、工具调用与状态管理,而非单纯调用大模型。它将传统‘人问AI答’升级为‘目标设定→自动执行→异常恢复→结果交付’的闭环工作流,具备明确的技术价值:降低自动化门槛、提升任务可靠性、实现业务流程可追溯。典型应用场景包括行政提效、产品快速验证与IT系统轻量集成。本实践方案聚焦零基础用户,通过可视化界面完成Agent构建,全程无需编程,但严格遵循工业级Agent架构逻辑,覆盖从任务拆解、记忆配置到容错设计、压力校验等关键环节,真正实现‘能跑’

vanadiumlin 361

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

AI Agent开发学习顺序:工具调用到完整交付

2.让模型“会用工具”Agent的价值,是它能直接干。可以先从这几个方向入手工具调用:召回、函数调用、代码执行、接口调用。例如做个“数据分析Agent”,用户丢张表过来,它能独立判断分析方法、写代码跑出结果、最后用人话把结论说清楚。一旦模型能调用工具,它就从聊天对象变成了能干活儿的助理。3.把Agent做成能交付的系统很多人到这里就卡壳了,Demo跑得飞起,但一上强度就不稳定。这里要考虑的因素很多:上下文管理、长对话做记忆、知识图谱库更新、召回避免垃圾召回、模型输出校验、失败后重试、日志和权限做法等。

2601_95522397的博客 258

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

2026 Agent 时代开发者必须掌握的 7 个 AI 核心概念

大多数 AI 系统在进入生产环境之前都运行得很好。演示成功,试点成功,内部测试也成功。到了这个阶段,换一个更强的模型也解决不了问题。因为问题已经不再是智能本身,生产级 AI 系统会以可预测的方式失败。而那些能交付可靠 Agent 的团队,往往是最早识别出这些失败模式,并围绕它们进行设计的团队。而这一切,始于理解如今每一个稳定 AI 系统背后都在悄悄运行的七个概念。

全网120W+关注AI拉呱,专注人工智能以及科技前沿! 567

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

AI Agent落地实战:从任务闭环到可信交付的工程化路径

AI Agent已超越传统对话系统,成为具备自主执行、工具调用与状态感知能力的任务型智能体。其核心原理在于构建意图解析、状态管理与失败恢复三层闭环,通过事件溯源、DAG编排和业务语义化工具定义实现可靠协同。技术价值体现在将LLM从‘自由生成’约束为‘确定性决策源’,大幅提升任务完成率与可审计性。典型应用场景覆盖客户服务自动化、订单履约、合同生成等需多系统联动的业务流程。本文聚焦2026年真实生产环境中的Agent系统设计、内核自建与可信交付实践,深入解析状态感知、多步编排与失败降级等关键门槛。

weixin_32377497的博客 275

Agent Skills标准:AI Agent能力描述与契约化交付指南

AI Agent技能(Skill)是构建可复用、可编排智能体的核心单元,其本质是将函数能力抽象为机器可理解、人类可验证的标准化接口。Agent Skills规范通过SKILL.md(语义说明书)与skill.yaml(结构化契约)双文件协同,实现能力定义、参数校验、执行约束与安全声明的统一表达。该标准解决了当前低代码平台(如Coze、Dify)中技能导入失败、参数误解析、运行时异常难定位等工程痛点,支撑Python函数无缝融入Agent工作流。本文深入解析其设计原理、编写范式与本地验证方法,覆盖从动宾式能力

weixin_29704001的博客 330
上一篇: AI大模型就业:从场景选择到效果验证
下一篇: Codex 实战:从概念到可交付结果
Java技术那些事儿
博客等级 码龄5年 2306粉丝 2584原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值