每个设计师都在纠结中挣扎,我们的甜蜜,兴奋,郁闷,敏感,来自生活,来自设计,来自每次完成一个页面后的反馈,来自每次回看的满足和成就,这些词汇已经融入到我生活与工作的点点滴滴。 把自己当成用户来看,抓住两个原则,快速,准确,让用户10秒种可以明白这个页面的中心。 我们根据这个原则来归纳出这个需求的重点是什么,次重点是什么,这样你才知道你要表现的视觉中心是什么。 字体设计的重要性大家都知道,没有捷径可走,只能是一点点积累经验,根据字题的意思和情景来做创意,至于怎么变形,怎么做质感,就见仁见智了。 素材的运用:肯定是寻找像素高,精度好,有创意,简洁的素材。 有的产品经理也会从设计的角度给出自己的意见。 这时,作为设计师考虑他的建议是否可行,是否对活动有益,要客观的看待和沟通这个问题,如果发现他的观点对活动无益,或者影响整体设计,可以试着说服他。 我的做法是不给朋友解释这个活动页,就是让他自己看,如果他能在10秒钟内明白这个页面的意思,能用一句话解释出来。并且愿意尝试参加这个活动,那就基本成功了。 ?
这是"Agent设计模式"系列文章的最后一篇。 可扩展:新增功能只需添加新Agent 二、Agent角色设计:职责分离 Multi-Agent系统的第一步是角色定义。 每个Agent必须明确: 它负责什么 它的输入是什么 它的输出是什么 它和其他Agent如何交互 ▪ 代码审查系统的角色设计 # agent_roles.py from dataclasses import 已停止 ✓ Agent summarizer 已停止 ✓ 系统已关闭 六、系列总结与学习路线 ▪ 6.1 六篇文章回顾 这个系列我们完整覆盖了Agent设计的核心模式: 文章 模式 核心思想 适用场景 在单Agent能解决问题时,不要为了"炫技"而使用Multi-Agent。系统的价值在于解决问题,而不是技术有多复杂。 这个系列到这里就结束了。 希望这几篇文章能给你一个清晰的Agent设计地图。
我从AIP平台架构设计Agent产品经验软件架构师罗小东,多年架构和平台产品设计经验,目前在Agent场景落地结合中。 这里的经验更多偏向于架构设计与工程实践,每个架构师有自己的思路,我有我思。前期的时候,也是考虑了很久,觉得企业级AI智能体平台在架构设计上相对来说是会有些不一样的。 这里要说说我们在知识库管理方面的一些经验。多源数据整合的技术难点前期的时候,知识库都是单一数据源的,比如只支持PDF或者只支持数据库。 这里要说说我们在可视化编排方面的一些经验。拖拽式界面的设计逻辑前期的时候,工作流配置都是代码式的,需要写JSON或者YAML配置文件。但是随着用户群体的扩大,我们发现这种方式门槛太高了。 每个产品设计思路不一,这个是建设企业级AI智能体平台的一些经验,期望给有兴趣的朋友参考,也欢迎交流。
TOC高可用架构和系统设计经验图片本文从研发规范层面、应用服务层面、存储层面、产品层面、运维部署层面、异常应急层面这六大层面去剖析一个高可用的系统需要有哪些关键的设计和考虑一、高可用架构和系统设计思想可用性和高可用概念可用性是一个可以量化的指标 高可用系统设计思想高可用系统的设计,需要有一套比较科学的工程管理套路,要从产品、开发、运维、基建等全方位去考量和设计,高可用系统的设计思想包括但不限于:做好研发规范,系统都是研发人员设计和编码写出来的, 容量规划阶段,更多是要依靠自身和团队的经验,比如要了解我们的 log 的性能、redis 的性能、rpc 接口的性能、服务化框架的性能等等,然后根据各种组件的性能来综合评估自己设计的系统的整体性能情况。 这个在上线之前,首先要根据经验来判断,然后是一定要经过性能压测得出准确结论的。性能压测要关注的指标很多,但是重点要关注是两个指标,一个是 QPS、一个是响应耗时,要确保压测的结果符合预期。 推荐阅读推荐阅读我的其他文章:《高并发架构和系统设计经验》《TCP 长连接层的设计和 在 IM 项目中实战应用》《万字解读云原生时代,如何从 0 到 1 构建 K8s 容器平台的 LB(Nginx)负载均衡体系
用户与Agent的多轮对话过程中会出现很多记忆,包括用户原始的意图、诉求、关键词,还包括Agent的推理、规划、工具调用的执行结果及模型最终的响应。 智能体毕竟是一个软件系统,所以越来越多人用软件设计的思想实现[记忆模块]。 我们将智能体类比于一台计算机,文件系统就是计算机的记忆模块。 如果哪天底层切换存储组件,Agent层完全不需要感知,切换很灵活。 因为在接口层面做了抽象,所以可以很好的面向功能进行接口涉及,而无需关注这个功能接口究竟是用了一个文件系统还是多个类型的文件系统。 回过头来,我们看一下从用户提出问题,到最终Agent给出回答的整个流程如下。 最终实现类似于操作系统的文件系统能力,让智能体的记忆可追溯(每一步有据可查)、可审计(所有操作都有日志)、可演化(新组件无缝接入),整个Agent的记忆历史都是可以回溯的,而不是黑盒了。
Colossus汲取了GFS的经验教训,正如在《Storage Architecture and Challenge》中所提及的GFS的不足。 基础知识: 谷歌的第一个集群级文件系统(2001) 为具有大文件的批处理应用程序设计 同时管理metadata和chunk的单一主程序 为了可靠性,chunk通常被复制3份 GFS教训: 扩展到大约50M 元数据大约是数据大小的1/10000 所以如果我们在Colossus上建造一个Colossus… 100PB数据→10TB元数据 10TB元数据→1GB元元数据 1GB元元数据→100KB元… 现在我们可以把它放进 Colossus简史 2001年,谷歌设计第一个集群文件系统——GFS。GFS支持P级的数据存储,以及数千客户机与数千服务器的交互。 谷歌需要将系统迁移到集群级的文件系统,该文件系统具有容错能力,设计用于大规模扩展,能够更有效地使用机器资源,并且对面向用户的服务提供最小的干扰。
MOOON-agent系统设计与使用说明.pdf MOOON-agent系统设计与使用说明 易剑 2012/6/16 1. 设计目标 一个通用的agent框架,提供编程接口,并内置通用的功能。 2. 应用场景 ? 3. 列表方式指定center 3) 与center断开后自动重连接 4) 支持多种重连接center策略,如轮询方式 5) 自动上报数据到center 6) 可选多种心跳方式,简单心跳不附带数据,富心跳可携带系统状态数据 系统骨架 ? 5. 资源接口 暂略。 6. 内置CommandProcessor 暂略。 7. 编程接口 除宏外,所以内容均位于agent名字空间内。 实例 */ extern void destroy(IAgent* agent); 7.2. message.h #pragma pack(4) // 网络消息按4字节对齐 /*** * Agent
但软硬结合的架构设计以及操作系统层面的自研,其实可以很好的解决这个问题。 介绍完OS整体架构之后,我们会进一步介绍OS中的几个关键设计(双核通信,UI框架等)以及典型功耗问题的解决思路和方法(实战经验)。 这种设计方式让应用开发者感受到“应用”开发是各自独立的,也是节约RAM并让OS超低功耗的关键一步。小系统支持“大应用”。很多用户误以为我们的系统就是安卓系统,UI效果参考下图。 ? 核心方法就是通过针对性的测试以及相关的摘件实验来缩小范围,然后通过软硬件的设计、代码与电路的走查等方式抓住根本原因。下面是一些典型问题的经验总结。 除了常规的硬件器件选型和硬件设计之外,本文总结的经验如下: 1.CPU选取需要尽可能平衡好功耗与算力的关系 2.双核架构需要引入,充分利用小核做更多算法与缓存工作,也有利于解耦 3.通过自研OS,可以将算力和
静电说:近期我们将连续翻译海外作者Danny Sapio的设计经验法则文章。 请记住,设计需要跳出固有的思维,这意味着你要打破规则。因此,这些经验法则仅仅作为你的参考即可,而非公式。 01 设计基于密度而非像素 请记住,像素密度的定义。 在适当时候,系统会及时的告诉他们,或者用一种很方便的方式让用户查看到。” 09 不要放慢交互动画速度 ? 在UX中正确使用动画 对于用户来说,速度和效率是非常重要的东西。 10 少即是多 ? 每次我们向页面添加其他信息的时候:按钮,文本,图像,动画,插图等,这些内容就会与其它相关信息存在竞争。如果页面上内容过多,元素的重要性则会降低。 原文:https://uxdesign.cc/10-rules-of-thumb-in-ui-design-aa5f91885444 作者:Danny Sapio 翻译:静电
秒杀无外乎解决两个核心问题,一是并发读,一是并发写,对应到架构设计,就是高可用、一致性和高性能的要求。 关于秒杀系统的设计思考,本文即基于此 3 层依次推进,简述如下: 高性能。 如何保障应用在复杂工况环境下还能高效稳定运行,如何预防和面对突发问题,系统设计时应该从哪些方面着手? 采集访问URL或 Agent 采集热点日志(一些中间件本身已具备热点发现能力),提前识别潜在的热点数据 聚合分析热点数据,达到一定规则的热点数据,通过订阅分发推送到链路系统,各系统根据自身需求决定如何处理热点数据 比如针对恶意下单的场景,虽然可以把有效付款时间设置为 10 分钟,但恶意买家完全可以在 10 分钟之后再次下单。 尤其在秒杀这一场景下,为了保证系统的高可用,必须设计一个 Plan B 方案来进行兜底。 高可用建设,其实是一个系统工程,贯穿在系统建设的整个生命周期。 ?
情感: 理解何时应用 zero-shot、one-shot 和 few-shot 提示技术,并精心设计和组织示例,对于提升 Agentic 系统的效能至关重要。 例如,一个经过上下文工程设计的 Agent 在响应查询前,会整合用户的日历可用性(工具输出)、与邮件收件人的专业关系(隐式数据)以及过往会议记录(检索文档)。 然后,她吃了 3 个苹果,所以从总数中减去 3:13 - 3 = 10。Sarah 还剩 10 个苹果。答案是 10。 CoT 具有多个优势。 这些技术对于构建能够主动与世界互动、检索实时信息并执行需要与外部系统交互任务的 Agent 至关重要。 底层模型设计为在整个对话过程中始终遵循这些预定义指令。 这允许为专注应用创建高度专业化的 AI Agent。例如,可配置 Gem 作为仅引用特定编程库的代码解释器。
本框架致力于在人类领导与底层模型原始能力间建立最纯净对话通道,确保每个 Agent 均以峰值潜力运行。 该框架构建为专业化 Agent 团队,每个 Agent 针对开发生命周期中的核心功能专门设计。 核心组件架构 为高效运用前沿大语言模型,本框架将不同开发角色分配给专业化 Agent 团队。这些 Agent 并非独立应用,而是通过精心设计的角色特定提示与上下文在 LLM 中调用的概念化人格。 流程编排者:人类开发者: 在此协作框架中,人类开发者承担编排者职能,作为 AI Agent 的中央智能节点与最终权威。 角色定位: 团队领导、系统架构师及最终决策者。 明确界定"目标愿景"与"设计 rationale",借助 Agent 团队加速"实施方案"落地。作为设计决策的最终仲裁者,确保各组件严格遵循项目长期愿景与质量标准。 通过将战术执行委派予 Agent,开发者得以将认知资源聚焦于真正核心领域:战略创新、韧性架构设计,以及打造用户惊喜产品所需的创造性问题破解。
这次我们不再讨论前文的招聘场景,而是学习一种更为广泛使用的Agent模式:ReACT (推理+行动)。先来看示意图: 这跟人类解决问题的思考方式很像:loop(思考-行动)。 定义ReAct Agent 1 public interface ReActAssistant { 2 @SystemMessage(""" 3 你是一个使用ReAct 13 """) 14 @UserMessage("问:{{request}}") 15 @Agent("基于用户提供的问题进行思考和回答") 16 String SampleTools sampleTools = context.getBean("sampleTools", SampleTools.class); 8 9 ReActAssistant agent \n\n计算过程:\n- 长方体体积 = 长 × 宽 × 高\n- 10 × 5 × 3 = 150\n\n所以这个长方体的体积为150立方单位。"
然而,MCP 是"Agent 接口"的契约,其有效性很大程度上取决于其所公开底层 API 的设计。存在开发人员仅简单包装现有遗留 API 而不进行修改的风险,这对 Agent 可能并非最优。 Agent 可使用 MCP 向智能家居电器、工业传感器或机器人发送命令,实现自然语言控制和物理系统自动化 金融服务自动化:在金融服务中,MCP 可使 LLM 与各种金融数据源、交易平台或合规系统交互。 此外,MCP 支持 AI 应用程序的媒体生成工具 使用 ADK 的实践代码示例 本节概述了如何连接到提供文件系统操作的本地 MCP 服务器,使 ADK Agent 能够与本地文件系统交互。 使用 MCPToolset 的 Agent 设置 要配置 Agent 进行文件系统交互,必须创建一个 agent.py 文件(例如,在 . 这种标准化方法促进了可互操作和可重用组件生态系统,显著简化复杂 Agent 工作流开发 经验法则:在构建需要与各种不断发展的外部工具、数据源和 API 交互的复杂可扩展或企业级 Agent 系统时,使用模型上下文协议
责编:周建丁 在我上一篇博客中,我介绍了10点新的经验,并且讲述了其中5个。 模型的可调试性实际上可以弥合产品设计和机器学习算法之间的差距。 我可以这么说,模型的可调式性至关重要,它可以最终确定,或至少影响所用的模型,依赖的特征,或用于实现的工具。 ? 最终的C++实现目前运行在一台机器上而且只花了10分钟来完成计算! 10.数据科学与机器学习工程不为人知的故事 我们都听说并阅读过关于什么是数据科学家的回答。 同样还包括解决方案的初始版本,以及将来迭代来优化和改善当前系统。 漏斗的第三个也是最后一个部分的重点是运行在线实验(AB测试)和分析结果。 如果我要在几个维度上对这10点新的经验进行总结,我想要强调以下几点: 确保你训练的模型可以学习你想要的 结合监督式/非监督式技术是许多机器学习应用的关键 专注于特征工程非常重要 对机器学习基础设施/工具考虑周到
,今天1分钟就可以完成过去10年的编排发现 面向生命周期的,简单讲就是这类Agent设计出来没有具体目标,就是让它自己在开放自由的环境中自生自灭,自己生长,看它能长成什么样子,我们从之吸取有益的部分 现阶段而言 那么,我们应该如何来设计一套系统,实现这样的诉求呢? Agent功能分类 我们按照最小职责原则,将所有的功能进行划分,尽可能的把功能拆分开,每一个功能,都有一个Agent与之对应。 AI系统设计示意图(注意,这里的中枢层和Agent的中枢大脑是两个概念) 对于我们开发者,主要是在软件侧做一些事情,不同的硬件传感器它的数据结构是不同的,因此,我们需要有一个针对性的agent来处理这类传感器的信号 AI应用设计示意图 通过这一架构,我们可以让Agent被无限扩展,而无需调整已有代码。随着agents的数量越来越多,系统能支持的能力也越来越强。 就如上文展示的一样,将来,在AI系统的基础上,我们只需要使用非常简单的自然语言,就能设计出以目标为导向的任务,而无需关心它的具体实现,以及它的内部原理。
今天这篇文章,我将从源码层面,逐模块拆解这套系统的完整实现。如果你是AIAgent开发者、LLM应用架构师,或者对"AI如何从经验中学习"这个问题感兴趣,这篇文章值得你收藏细读。 HermesAgent的Skills闭环系统由7个紧密协作的模块组成,覆盖了从经验提取到知识复用的完整生命周期。 下面这张图展示了一个Skill从"诞生"到"被使用并自我改进"的完整数据流:让我用一句话概括这个系统的本质:Skills系统让AIAgent像人类专家一样积累经验——把成功的做法写成SOP,在使用中持续修订 设计者希望Agent在完成当前任务的同时就修正Skill,而不是留到下次再说。因为如果不立即修正,这个过时的信息会在下一次使用时再次导致错误。 ……十一、设计权衡与改进空间任何系统设计都是权衡。
虽然每种模式都针对特定的设计挑战,但可以通过将它们归类到反映智能 Agent 核心能力的基础类别中来整体理解它们。 核心执行和任务分解: 在最基本的层面上,Agent 必须能够执行任务。 学习和适应模式更进一步,允许 Agent 的行为根据反馈和经验而演变,使其随时间变得更加有效。 协作和通信: 许多复杂问题最好通过协作来解决。 多 Agent 协作模式允许创建系统,其中多个专门的 Agent(每个都有不同的角色和能力集)共同努力实现共同目标。这种劳动分工使系统能够处理对单个 Agent 来说难以解决的多方面问题。 为复杂系统组合模式 Agentic 设计的真正力量不是来自孤立地应用单一模式,而是来自巧妙地组合多种模式以创建复杂的多层系统。 这些 Agentic 设计模式是您的调色板和笔触——使您能够超越简单的提示词并创建动态的、响应式的和目标导向的实体的基础元素。
多Agent视角下的自动驾驶系统设计:车端Agent与RSUAgent协同机制解析一、引言:为什么自动驾驶需要协作式Agent在传统自动驾驶系统中,车辆往往被设计为高度自治的单体智能体:依赖车载传感器( VehicleAgent(vehicle_id=1)rsu=RoadsideAgent(rsu_id="RSU-001")#车端感知vehicle.perceive({"speed":45,"position":(10,20 通过合理划分车端Agent与路侧Agent的职责边界,并设计高效、鲁棒的交互机制,可以显著提升系统在复杂场景下的安全性与通行效率。 从工程视角看,这一体系本质上是一个分布式、多智能体协同决策系统,其设计思想对智慧交通、无人系统集群等领域同样具有重要参考价值。 该设计不仅符合自动驾驶工程落地对可靠性与可扩展性的要求,也为后续引入多Agent强化学习、博弈论协同决策等高级方法奠定了清晰、可演进的系统基础。
近年来,FEP也被应用于合成agent的设计「7,8,9,10]o基于FEP的代理的一个显著特点是,他们在勘探和开发之间进行动态权衡[11,12,13],这是在学习导航HA参数空间时非常需要的属性。 :整个系统不是离线设计过程,而是在情境条件下不断设计。HA设备本身包含基于生成声学模型中的状态推断的定制助听器算法。声学模型包含两个子模型:1)源动态模型和2)背景动态模型。 请注意,如果HAW10个调优参.数和每个参数的5个感兴趣的值(非常低、低、中、高、非常高),则有510方个(大约1000万个)参数设置。 AIF提供了—个单一的,统一的方法来设计AIDA的所有组件。由AIF设计代理控制的HA系统的设计涉及解决以下任务: 1.声学环境的分类 2.为HA调整参数选择声学上下文相关试验。 由于我们可以通过概率编程语言使变分自由能最小化自动化,人类设计者剩下的唯一任务就是指定生成模型。 下一节描述模型规范。 3型号规格 在本节中,我们将展示AIDA控制的HA系统的生成模型,如图2所示。