对话:关于架构、设计与需求

《揭秘:AI应用架构师构建稳健智能对话系统架构的要点》 当用户问“我买的衣服太大能换吗?”时,一个稳健的智能对话系统需要准确识别意图、记住上下文、调用知识库政策,还要优雅处理“尺寸没说清楚”的追问——这背后是架构师对模块化设计、容错机制、 scalability的精准把控。本文将以“餐厅服务”为类比,拆解智能对话系统的核心架构(NLU/DM/NLG),结合10个关键决策(比如如何解决意图歧义、如何设计对话状态、如何应对高并发),用代码示例、流程图和案例分析,揭秘架构师构建“能抗造、会聊天”的对话系统的底层逻辑。 阅读详情

wwe: ...
wwe: 我这几年的大部分工作也是偏重架构设计
Aim: 有什么感想呢?
wwe: 个人觉得架构设计就像生活中的一部分
Aim: EN..这个怎么讲?
wwe: 架构设计就像规划你的生活一样,都想把它变好、变美
Aim: 但是,你也应该知道。会有很多人、很多因素让生活变得不美好。
wwe: 当然
wwe: 但有一个美好的愿景是很重要的
Aim: 规划就如同畅想,你甚至可以认为:床与床头柜之前应该是U形连结的最为美观,但最后发现那样的一套家俱大概要40平米的卧室,而你现在的卧室只有25平米。
Aim: 客户的需要向来没个定准。而且你又不能指望他在需求说明书签完字之后,就不再变更。我们不能在他变更的时候讲法律、讲合约。那没意义。
Aim: 怎么办呢?设计的弹性需要多大?你如何把握客户的变更,而是不仅是接受他当下的需求?

wwe: 当然首先要满足客户的需求,贴近客户
wwe: 合适的才是美好的
wwe: 我觉得需求的变化是正常的,就像装修房子,我觉得可以尝试拥抱变化,一种方式就是用迭代、增量,快速用户反馈等方法来把握变化
wwe: 还有就是需求一直没有变化过,可能就因为我们自己没有很好的理解需求,这就要求我们多同领域专家多沟通交流了

Aim: 你能让这个拥抱变得快乐些吗?我的意思是说,你认为哪些是不变的,以一个实例来说,你认为一套考试系统中有哪些是不变的?
Aim: 你围绕什么在做、在实施。又为什么能保证在三届学生之后、五年之后、五任教师之后、两套教材之后,这套考试系统是不需要做框架级的变动的呢?
wwe: 通过分层来理清业务模块,比如可以有基础构件层,考试通用构件层,通用构件层,再加上业务流程层
wwe: 考试系统的最终必须可以个性化,通过个人定制流程来符合各种各样人的需求
wwe: 让使用者来制定流程,比如老师等;学生自己也可以制定流程(比如自学等)
Aim:
是吗?我为什么要让考生定制流程?

Aim: 哈哈。
Aim: 第一,你现在已经掉在了一个坑里。
Aim: 第二,你已经被需求淹没了。

Aim: 首先,你现在已经掉在了一个坑里。因为我最开始说是“一套考试系统中有哪些是不变的”。而你并没有明确地问我是什么样的“一套考试系统”。
Aim: 你说“是考试过程管理,考试数据管理,考生成绩管理,还是考场管理等等”
Aim: 所以你接下来的设计“通过分层来理清业务模块,比如可以有基础构件层,考试通用构件层,通用构件层,再加上业务流程层……”这看起来合理,但没有任何的针对性。因为原本需求就不明确,所以你的结构就只能是通用结构,而不是专门的设计。
wwe: 哈哈,是的
wwe: 确实到坑理了,我想起一本书《你的灯还亮着吗》
wwe: 问题是什么,非常重要,:)

Aim: 第二个问题,“你已经被需求淹没了”。当你发现我提了一堆问题“……你围绕什么在做、在实施。又为什么能保证在三届学生之后、五年之后、五任教师之后、两套教材之后,这套考试系统是不需要做框架级的变动的呢?”
Aim: 之后,你给了很复杂的答案:让使用者来制定流程,比如老师等;学生自己也可以制定流程(比如自学等)
Aim: 但事实上,因为你需求并不明确,所以产品的使用角色也就不清晰。所以,你并不知道,可能考生根本不需要参与这个系统。所以我提出的需求中有一部分是“错的”,需要被过滤掉。因此,你无可避免地被淹没了。
wwe: 是的
Aim: 我提出问题时并没想——也就是说,这不是我专门挖的坑。但我看到你的第二个答案时,我便意识到最先的需求描述出了问题。
Aim: 你应该更敏锐一些。因为我出问题时很随意,但你回答则应该更小心。8-|

Aim: 说起来,《你的等还亮吗》这本书我也非常喜欢。在《大道至简》的纸质版中,我还引用过几处呢。
Aim: 我在盛大学到的第一课,就是争论起源于问题的不一致,而不是问题。也就是说,对于两个同样聪明的人来说,如果他们面临的问题一致,那么就不应该有争论。
wwe: 确实,很有可能两个人在讨论“同一个问题”,而实际上“问题”是不一样的
wwe: 另外我觉得波莉亚写的《怎样解题》这本书也非常不错
Aim: 这个我倒没看,哈哈,谢谢推荐,回头找来看看呵。
 

注:wwe是某公司的架构师与经理。



Trackback: http://tb.blog.youkuaiyun.com/TrackBack.aspx?PostId=1836526


工程师必读一次性讲明白系列(十三)眼图、阻抗匹配、信号一致性、射频匹配、电磁感应 概念主要作用影响因素解决方法眼图评估信号质量,显示失真和噪声噪声、信号失真、时序抖动改善信号源、使用低噪声组件阻抗匹配避免信号反射,提高传输效率阻抗不匹配、传输线路特性使用匹配电路、适配器信号一致性保证信号稳定准确传输传输线路、噪声干扰使用屏蔽、滤波器,选择合适线路射频匹配确保射频信号高效传输天线设计、阻抗不匹配使用射频匹配器、调整天线设计电磁感应防止电磁干扰对信号的影响设备之间的电磁干扰(EMI)屏蔽、接地、滤波器。 阅读详情

相关推荐

从聊天框到AI智能体:Agent原理、落地路径与工程实践

大模型时代,AI智能体(Agent)正从概念走向工程实践。与传统的聊天框一问一答不同,Agent强调目标驱动、任务拆解、工具调用与自主执行,其核心是一个由大模型、工具集、记忆和控制循环构成的闭环系统。理解这一原理,是开发者从“提问者”升级为“任务定义者”的关键。Agent的技术价值在于能处理重复性信息收集、多步骤内容生产、代码辅助和数据分析等真实场景,显著提升自动化水平。然而,大多数用户仍停留在聊天框阶段,原因包括产品入口、用户习惯、使用成本和提示词能力等多重因素。从聊天框平滑迁移到Agent,需要经历目标

weixin_29048309的博客 324

软件架构概述

软件架构概述什么是软件架构软件架构在软件开发过程中的位置需求和架构的关系需求分类关于功能需求关于质量属性需求小结 功能需求/质量属性需求与架构关系==质量属性需求可以引出架构决策==架构是详细设计的载体本文参考《Software Architecture in Practice 3rd》 最近在了解软件架构,结合一些学习资料和自身的思考有了一些体会,现记录如下以备今后查阅: 什么是软件架构 软件架构是一套用于推理系统的结构,这套结构由系统元素、元素之间的关系、元素和关系两者本身的属性构成。 软件架构在软件开

老照片 1405

信息系统项目管理师(高项)重点!

学习高项自己做的笔记

PanJWei的博客 3302

从需求到上线:需求→业务→架构→功能→实现 全链路落地方法论

需求层是所有项目的起点,核心不是记录“要做什么功能”,而是锁定“要解决什么业务问题、创造什么价值”。这一层的核心目标是锁定范围、统一目标、杜绝无效开发。核心定位:价值与问题定义所有功能开发都必须服务于明确的业务痛点与目标,无价值、无痛点、无指标的需求,一律可以暂缓或砍掉,从源头避免资源浪费。标准输出内容场景与痛点:真实业务场景、用户核心诉求、现有流程的短板与问题量化目标:效率提升、成本降低、转化率提升、合规达标等可量化指标边界与约束:需求范围、适配终端、工期约束、合规要求、第三方依赖。

Thubier 435

BarTender破解版风险与低成本正版替代方案全解析

在工业自动化和企业信息化领域,标签打印与条形码技术是连接物理世界与数字系统的关键环节。其核心原理是通过软件驱动打印设备,将可变数据(如序列号、生产日期)与固定模板结合,生成可追溯的标识载体。这项技术的价值在于实现生产流程可视化、供应链管理精细化与质量控制自动化,广泛应用于仓储物流、制造执行、零售门店等场景。然而,软件授权合规性常成为企业成本控制的痛点,尤其面对BarTender这类行业标准工具时,部分用户可能寻求破解方案。但破解版软件通常采用内存补丁、伪造许可证等技术手段绕过验证,不仅存在法律风险,更会引发

weixin_32736961的博客 752

工厂自动化布线实战:从功率计算到线槽布局的完整避坑指南

本文详细介绍了工厂自动化布线的实战经验,从功率计算到线槽布局的完整避坑指南。通过三步计算法确定线径需求,强调电压降控制的重要性,并分享线槽布局的50%法则和强弱电分离技巧。特别针对移动设备和多芯信号线提供专业解决方案,帮助工程师避免常见错误,提升布线效率和质量。

weixin_29266007的博客 355

如何做架构规划

架构师的职责和在架构流程7个节点中的作用

qq_40369829的博客 2162

go语言实现服务器server端与客户client端即时通信(附完整源码)

go语言实现服务器server端与客户client端即时通信(附完整源码)

希望我的博客,能帮上你解决学习中工作中所遇到的问题 631

需求以及架构设计

需求、设计以及架构## 需求分析 需求分析原则 从用户的诉求出发 注意边界:那些需求需要做的,那些需求是不需要做的 需求分类 伪需求:没有调研,没有目的,没有逻辑的需求 强需求或者强势力方提出需求 先肯定需求然后在提出成本等问题 根据实际情景来做推演 架构设计 用户,业务,产品,技术不同层次 KISS原则 keep it simle and smile 大道至简 simle :可扩展性和可维护性 smile:价值,可测试性 DRY原则 DRY是Andy Hunt 和 Dave Th

weixin_43751271的博客 454

OpenClaw 子代理配对失败问题分析与解决方案

OpenClaw子代理配对失败问题分析与解决方案 问题核心在于agent设备权限不足,仅有operator.approvals权限而缺少operator.admin权限,导致子代理启动时形成权限死锁。本文提供三种解决方案: 直接编辑设备配对文件(推荐):修改本地JSON文件,为agent设备添加完整operator.admin权限,操作简单快捷。 标准重新配对流程:删除现有agent设备后重新配对,通过正常审批流程获取完整权限,符合系统安全设计。 修改源码降低权限要求(仅限开发环境):调整子代理代码避免强制

多媒体编程、网络编程、系统编程、网络安全编程、驱动编程 151

使用MATLAB求解二维顶盖驱动流问题的详细代码和说明

本文介绍了使用MATLAB求解二维顶盖驱动流问题的涡量-流函数方法。代码采用129×129网格,雷诺数Re=1000,通过迭代求解Navier-Stokes方程,包含流函数方程和涡量输运方程的离散求解。程序实现了边界条件处理、收敛性检查,并提供丰富后处理功能:流线图、涡量分布图、中心线速度曲线、矢量图和三维涡量可视化。计算结果可与Ghia等(1982)的经典数据进行验证。该代码完整展示了CFD问题的数值求解流程,包括参数设置、主循环计算和多种结果呈现方式,适用于流体力学教学和科研验证。

AI的内部世界的博客 227
上一篇: Silverlight技术应用篇“photo viewer”动画效果欣赏
下一篇: 我的程序语言实践
techweb
博客等级 码龄19年 226粉丝 3842原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值