已有项目引入AI Agent实战

发布时间:2026/11/5 3:59:08

已有项目引入AI Agent实战 回忆下 之前做agent demo时的代码流程。接收消息内容、补充上下文、转成词向量、遍历数据库数据、做余弦相似度匹配、把查询到的知识库数据汇总到消息中、调用LLM模型得出自然语言输出。重复循环处理几次。项目一人力智能问答对比于上面的流程。有主要变化的几个点1词向量的数据来源汇总了多个表的多个字段并转成json格式化的数据结构。2是余弦相似度的匹配方式升级了用onnx模型并用第三方api做词向量匹配。重点对数据的操作2个点1是定时任务加载所有词向量到缓存中2是数据匹配通过建4个工具先对数据根据权限过滤、userid等做精准过滤再通过依次for循环余弦相似度匹配。需求已有的人力项目要添加ai助手问答功能。要在不修改已有代码、表结构的前提下完成可以新增代码。以案例为导向思考怎么解决这些问答介绍下张三 主要来源是基本信息维度张三在哪个部门 也是有明确的答案的评价下张三 属于比较模糊问题要从多个维度回答需要打分、权重介入找跟张三类似的员工给同上财务部有哪些人也是有明确答案的思考1.其实还是做RAG。只是要求不能改变已有的功能。2.主要是在kimi的帮助下反复沟通需求把项目代码丢给kimi分析让kimi给出一个完整的设计方案并自动生成代码。需求的主要内容是做员工画像、人才推荐。定义输出规则不要有废话做关键字输出即可、不要无中生有、要基于知识库回答比如说查人必须要先根据人名查出在知识库中的人的userid再去查其他的基本信息。3.思考需要什么工具。首先要有自然语言模型这个有公司公共的大模型接口因为不能影响已有功能所有要加表、加接口主要是词向量的生成、匹配、存储。采用生成词向量生成工具要复用已有的项目代码的方法做人员、部门、标签等信息的查询。重点要在已有代码和agent之间建一个层把二者粘起来方案kimi生成的方案技术栈原项目是java8springboot2 .LLM由接口提供应该是qwen323embedding词向量使用beg-base-zh-v1.5.onnx文本向量化模型 300M左右以及三个操作向量模型的jar包向量化怎么生成词向量词向的内容怎么设计呢我们是基于文本问答所以要把相同维度的数据放在一起按人分开。把人拆分为多个维度基本信息、教育、所在部门、员工标签、能力、年度事件等。词向量表字段一个人划分为多个维度每个维度是一条数据。所以表结构字段有维度名、userid、权重、embedding、md5时间向量生成定时任务触发人员信息很少变化所有就先只加全员检查变更内容。分为每日更新和每年更新。通过md5字段判断词向量是否需要变更。存储放到es中查询快。支持余弦相似度查询数量级人力就几千人也就百兆左右查询秒级别工具4个工具1是把人名、部门名、公司名、转移成知识库中的id2是查询筛选枚举值3是结构化条件筛选4是语义找人能力、经历、推荐类模糊需求这个工具重点说一下这是模糊查询的重要工具可以做推荐类功能。所有有对标签的打分。在项目启动阶段会根据提示词把es数据库中的人员、部门等数据转成根据不同维度打分后的结果放到内存中。比如说能力特长型就把能力标签的权重提高、教育型就把学历标签提高。循环处理上下文在经过一轮的tool处理、余弦相似度匹配、自然语言模型处理后会再进行一轮同样的处理并加入再次一次循环的上下文。知道模型不再输出不同于上次的内容为止。整个过程的上下文有很多有 角色信息、用户问题、上下文、系统固定信息、tool工具附带的上下文、提示循环处理的上下文等。最后说明代码基本都是kimi生成的程序员主要是做提示词、调试打通。整个代码很复杂尤其是tool工具的处理、条件过滤、实施回查富化 需要考虑到的字段很多、很麻烦如果只是靠人的思维一点点优化试错、需要大量的时间或者根本不可能实现。项目二基于接口的项目知识库助手也是在已有的项目上改造。对原项目基本上一点改动都没有。原理项目已有的接口能够满足项目的所有相关知识问答。模型要做的就是调用大模型弄清用户意图、汇总查询参数、精准调用对应接口、汇总查询结果、调用大模型转结果为自然语言输出。要求需要项目接口说明、请求参数说明、返回字段说明都要很详细。类似的需求要做出语言上的区分。需要反复调试对每个功能点都要测试一遍以防调错接口。做成可配置的对于有争议的接口调用方式要通过人为的修改注册表通过语义调用到配置的的接口其实也就是固定提示词。缺点相对于在原项目上调用方法调接口会比较慢而且会返回一些无用的信息。二是权限处理麻烦。因为大部分权限配置是基于前端菜单配置的。并没有对接口做权限管理。这样就导致用户问看不到的菜单内容也会有相应。至今没有很好很便捷的处理方式。
延伸阅读

更多相关文章

2026/10/25 9:08:38

智能体专用型轻量服务器:AI Agent 部署与Tokens成本全解析

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

2026/10/25 11:22:18

AI Agent入门指南:零基础搭建你的智能体助手

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

2026/11/1 9:58:40

FOC系统中UART的实战定位与调试价值

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

2026/11/5 3:57:49

Java后端想转Agent开发?别走弯路!收藏这份高效学习路线

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

2026/11/5 3:57:49

C++ 锁所有权管理(Lock Ownership Management):std::unique_lock

C 锁所有权管理(Lock Ownership Management):std::unique_lock flyfish 术语对照表中文术语英文术语定义锁所有权Lock Ownership锁的持有权,持有者负责最终释放锁所有权转移Ownership Transfer通过移动语义将锁管理权移交另一对象…

2026/11/5 3:52:47

memory pte_marker_handle_uffd_wp

pte_marker_handle_uffd_wp 是 handle_pte_marker() 中用于处理 UFFD-WP(userfaultfd 写保护)类型 PTE marker 的专用函数。它的核心职责是:当 CPU 访问一个带有 UFFD-WP marker 的地址时,决定是直接清除 marker,还是将…

2026/11/4 12:38:23

面向复杂光照与角度的宠物面部识别鲁棒性增强策略

在智慧养宠时代,基于视觉的宠物身份识别技术正逐步从实验室走向家庭应用。然而,与配合度高的人类不同,宠物是典型的“非合作生物识别对象”——它们不会主动配合摄像头调整姿态,更无法控制光照环境。实际应用中,我们常…

2026/11/4 21:04:25

SSM电子书店源码全解析:结构、原理、部署与排错实战

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

2026/11/5 0:02:07

多智能体协作系统架构设计与实践优化

1. 多智能体协作系统的时代背景2017年Transformer架构的诞生彻底改变了人工智能的发展轨迹。当行业还沉浸在单一大模型带来的性能突破时,Anthropic的研究团队已经将目光投向了更前沿的领域——如何让多个智能体通过协作产生超越单体能力的系统智能。这就像交响乐团中…

2026/11/5 0:02:07

大模型系统性入门实战指南:从原理到部署微调的全链路路线

提到大模型的系统性入门,我先说个结论:这事真不难,难的是资料太散、路线太多,今天这个框架明天那个工具,新人很容易在“收藏夹吃灰”和“教程看到一半放弃”之间反复横跳。市面上关于大模型的内容少说有几十万篇&#…

2026/11/5 0:02:07

鸿蒙文件系统沙箱机制解析与开发实践

1. 鸿蒙文件系统沙箱机制深度解析作为一名从Android转向鸿蒙开发的工程师,我深刻体会到文件系统访问是迁移过程中最先遇到的"拦路虎"。在Android上运行良好的文件读写代码,在鸿蒙真机环境却频频出现文件写入后神秘消失或直接抛出权限拒绝错误的…

2026/11/4 12:38:23

面向复杂光照与角度的宠物面部识别鲁棒性增强策略

在智慧养宠时代,基于视觉的宠物身份识别技术正逐步从实验室走向家庭应用。然而,与配合度高的人类不同,宠物是典型的“非合作生物识别对象”——它们不会主动配合摄像头调整姿态,更无法控制光照环境。实际应用中,我们常…

2026/11/4 21:04:25

SSM电子书店源码全解析:结构、原理、部署与排错实战

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

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
☎咨询二维码 ☎ ↑