AI评选
环节
(一)面试环节 候选人自述:如何运用 AI 工具提升本职工作效率、优化工作流程 问题阐述:说明在使用 AI 过程中遇到的典型问题、解决思路与实践经验 现场问答:评委就 AI 工具使用、场景落地、效率提升等进行提问 (二)笔试环节 形式:现场给定若干小型工作项目,使用 AI 工具完成实现与交付
面试
自述
草:在最近的项目开发中,我的工作职责横跨了前端交互、业务逻辑以及后端算法。 我们可以去通过Agent去帮助我们生成一些繁琐的样板代码,包括我们在PR前,让AI去进行审查,检查指针安全,内存泄漏这些问题,以及对于程序开发最为苦恼的,文档编写和单元测试,那么当然现在也是秉承这个逻辑,只不过随着AI自定义化能力的提升,对于AI我们可以有更灵活的使用方式。 在不同的技术栈下去开发,传统的工作流是不足以支持我灵活进行跨越式的工作,因此在AI的辅助,就需要改变和调整过去或者传统Ai的开发模式,让开发者本身处于一个更高的角度去推进项目。 对于不同的技术栈,我就需要就建立不同的工作流:
首先,面对一个需求,我会采用自然问答的形式,将我的要求和思路,借助AI帮助我整理出一个开发流程,以及补充我的思路,这个过程就是保证后续能够完成spec-coding的流程,这样每一个问题都有回答,每一个回答都有记录,那么在最终PRD需求文档,让AI逐步去实现,我们负责审阅和调整,这样我们就能够把控每一个流程,随时往回定位问题,而不是AI自由发挥; 而这里,就要强调不同工作流的重要性,在前端开发中,状态管理和UI效果的实现,往往是非常耗时的,那么在前端的工作流,我们的问答,整理出的就是对应模组交互的骨架,让一个具备前端技能的编写智能体,去完成我们的任务,后续我们只需要微调样式和一些交互细节,就完成了一次前端上的产出。
在业务层上,通过问答,可以把一个设计好的,包括我们需要回调,或者响应信息的业务模型,交给一个拥有框架技能和自检技能的智能体,去完成样板代码,并补全数据库的边界条件,让我更专注核心业务是如何编排的。
在算法层,也是AI影响最为明显的一个场景,借助AI的数学能力在我们能够正确表达应用场景和需求的时候,我们在设计方案的时候就预设计出多个思路和方案,通过算法智能体只需要通过你的方案描述,就可以去快速的验证各个方案的效果,去根据效果实现一些混合策略,并且在算法后期,AI对于时间复杂度的优化能力,是远远超出我们之前能够预设计到的一个标准,并且结合AI我们也可以快速生成极其刁钻的测试数据集来验证算法的鲁棒性。
各位领导评委好,很高兴在这里介绍分享我的AI工作流, 之前使用AI编程的优势:让AI处理高重复、强模式化的工作,将人类的精力释放到系统架构设计和复杂业务逻辑把控上。现在随着大模型能力的提升,各自新概念,新工具的出现,让我们可以自由去开发围绕AI的工作模式和工作流。 那么现在在使用AI工具中仍然存在许多痛点:比如,AI生成质量,上下文幻觉,非标准化,自动化流程不可控等 那么为了解决这些问题,我在3月份以个人项目的形式,启动一个基于目前主流AI编程工具都具备的一个功能 ”runSubAgent“->“委派子智能体” 打造的一个workFlow; 我先简单介绍 ”runSubAgent“是什么,它是Agent在工作当中可以主动调用的一个工具,就像读写的能力一样,有些Agent我们是可以设置它只能读,”runSubAgent的核心作用就是允许对话中的主智能体将任务委派给独立的子智能体,从而协调去执行任务。那么它的具体功能和优势,我会在后面结合工作流设计逐步介绍。
OK,那些说回来,workFlow,首先它得有flow,那么我们flow的设计也是在同期3月参考了由Anthropic(也就是claude公司)研究报告提出一个叫做Harness Design的概念;Harness Design 大家都比较清楚了,就是通过标准化的流程,用文档机制去约束我们的Agent去按照一个约束去进行工作,保证Agent的输出是标准化的,是受控制的。 那么在我的workflow中,基本的harness设计就是通过定义四个子智能体去实现;分别是planner,coder,evaluator,abstracter;负责规划,编写,评估,总结四项工作。
planner 承担的就是 ”vibe“ 到 ”spec“ 这个概念的实现,我们通过与这个智能体自然语言的对话,planner会去记录我们想实现的是什么模组和功能,对应的测试是什么样的,并且不断的给出新的方向和方案去扩展思路,而且只会记录在交流实际确认的需求,不会让AI自由发挥,最终在我们确定需求描述完成的时候,它会进行文档生成。 而在文档设计也是遵循workFlow的三个基本原则:快速部署,高效可控,敏捷开发 那么在敏捷开发的角度上,planner在规划后只会输出一个名为”hybird“的文档,并且在整个开发中都只依赖这个一个文档,这个文档从结构设计上不仅是为了让AI看,也是为了让人类审阅,文档内置PRD文档的基本结构(背景,需求等),还添加了三大部分用于增强AI的检索和能力: 首先第一部分,Ai的检索原理是使用RAG技术,进行索引搜索,那么我们planner在规划的时候,就会自动搜索我们的工程上下文,将与我们本次功能相关的文件索引进行保存,保证下一个Agent能够通过记录的索引快速的定位到具体的有关文件; 第二部分,索引可以快速帮助Agent找到文件,但是是不是仍然要反复理解呢,我们第二部分就是知识图谱,planner使用mcp服务器的知识图谱,在上下文检索过程,生成对应的知识图谱,并只在文档中保存图谱关系,相关知识内容可以通过服务器获取,帮助后续Agent直接理解,节省时间和上下文。 第三部分,评估记录,这个我们一会介绍。 那么索引记录和知识图谱这两个机制的引入,就可以大大减少Agent输入的上下文,并且有效的降低AI幻觉
分为静态区和动态区