精选

汇报下基于jenie二次开发的图像多智能体开发进度

前端开发

智能体展示页

在之前的帖子里也就是9月初我把genie进行初步的开发,在那之后我就对前端做了定制化的开发,也就是自己搞了个crispix Agent页面,可以看到基本的页面已经有了,美感上还算的过去,这个页面我打算之后加些动效,结合动效库react bit提供的现成模板

屏幕截图 2025-10-03 230443.png

项目对话页

因为对话详情的东西比较多,也是一个独立的部分,所以我采用了对话页面和项目页路由分开的结构设计,/project是一个单独页面,需要/chat发送消息传参跳转。对话部分采用ant design x组件,还有沿用jenie项目的对话气泡,给对话区域背景加了个亮色渐变背景,右侧部分就是图像空间区域,用于展示图片,这部分感觉还是要加些什么,而且我还需要个可以让用户看到图片详细信息的功能,但不知道怎么设计啊啊啊啊,有没有前端大佬给点建议设计。不过就设计还有前端对话的完整性也算有了个初步成果,不过这肯定不是最终版本,我个人还是比较追求完美的嘻嘻。

屏幕截图 2025-10-03 214412.png

后端智能体开发

修改 planningAgent 提示词

前端对话部分基础开发完后,我就去开发后端了,还是沿用genie项目的plan and executor模式,在这基础上进行二次开发,genie是通过前端设置是react还plan and executor模式的,我这里一律使用plan模式,只用plan模式当然会出现一些问题,比如你在问一些简单的任务的时候,比如去水印,这时我们一般只需要将这个需求给图像编辑工具即可,等他返回图片就ok,但是plan容易出现过度拆分的情况比如他会拆成 1.分析图片 2.去除水印 3.检查效果 ,这时就需要我们在提示词约束,找到 任务规划智能体planningAgent的提示词 对他进行修改

屏幕截图 2025-10-04 034056.png

屏幕截图 2025-10-04 034105.png

屏幕截图 2025-10-04 034117.png

这里面主要添加在处理需求 规则 示例部分,限制他过度拆分,当然这个提示词肯定还有场景是覆盖不到的,随着工具和需求的增加和改变,这个提示词需要反复更改,如果内容多的话就需要使用rag了。

这里我还发现jenie的一个bug,也不能说bug只能说未开发吧,就是在计划智能体执行完0个任务的场景 ,这里是直接返回,也没有触发总结智能体,甚至内部的维持sse连接的心跳机制也没有断开。这就相当于程序你明明给他断了但是他还是在持续运行,这对用户的体验还有程序的维护肯定是不好的,之后给他改进一下 屏幕截图 2025-10-04 041321.png

修改 executorAgent 的提示词

计划部分改完之后我就继续开发工具部分了,近期出现了很多更强大的图像编辑模型,比如nanoBanana和seedDream 4.0,这些工具在一些特定的场景都有出色的地方,比如seedDream在中文场景很优秀,nanoBanana在人物一致性很好,所以需要让执行智能体可以判断选择适合的工具,怎么让他可以选呢?当然是改提示词了,找到 executorAgent的提示词修改,加上约束和描述和示例,这样子在执行任务的时候就会遵循这些规则了

屏幕截图 2025-10-04 035310.png

屏幕截图 2025-10-04 035320.png

开发工具funtion call

提示词描述完了,工具部分也有对这个工具的描述我们也可以对这个工具进一步细致描述

屏幕截图 2025-10-04 035915.png

屏幕截图 2025-10-04 035945.png 工具开发的过程就不说了,主要说我遇到的坑吧,框架类的就是jenie会在工具完成一次调用的时候默认给前端sse发send一次返回消息tool_result,但是没办法自定义参数,他工具允许携带的返回的只是一个字符串,那我的工具要返回的可是一个对象的,包含图片名字宽度等等怎么办呢?

屏幕截图 2025-10-04 040308.png 参考其他的工具,我发现原来可以在工具内部自定义返回的发送,默认返回那边只需要加个判断就可以,让他识别到我这个工具名字比如image_editing_tool就不默认发送tool_result,

屏幕截图 2025-10-04 040403.png

屏幕截图 2025-10-04 040425.png 问题解决了,为了返回链接的安全性和持久性我还加了图片的url返回就存到对象存储再返回对象存储的链接,属于是吃图库的老本了,不过记得加cdn,对防盗 安全性和图片加载速度都有好处。后面我又加了文生图工具和视觉理解模型,相当于是一个子智能体通过工具调用的形式搞,也是费了一番功夫,到今天下午才搞定,看看效果。这里我传一张图片让他根据这张图片反推提示词,并生图,也就是我要让他生一张差不多的图片 原图

download (10).jpg 智能体执行

屏幕截图 2025-10-03 214412.png

屏幕截图 2025-10-03 214420.png

屏幕截图 2025-10-03 214444.png 结果图片

2025-10-03_dgn5hybd0ew9y1q4.jpg

2025-10-03_pmebl30xgl42ohi4.jpg 这里生成了几张,执行智能体还需要修改一下,不过效果还不错对吧,生成的几乎一模一样。这就是我这一个月搞的了,废了很多心思也想了很多,不过看到结果的一刻内心还是激动的

下一步计划

这个智能体看起来可以了,但其实功能还没全,我打算再加一个提示词调优模型智能体,然后通过rag检索知识库的提示词模板,这样子就可以进行专业的提示词调优了,智能体也会更完整,不过难点来了,我对rag一窍不通啊啊啊啊,又要学。。。有没有大佬指定一下大概该咋搞。

感想

京东的开源框架纯源码确实花了我很多时间去理解,不过好处是理解后可以高度定制化,不用受框架的限制,坏处就是需要时间去理解,就总体而言还是好的,也可以学到大厂的开发思维,和严谨的逻辑

开发这个东西纯属兴趣推动,因为开发他并收获结果让我有很好的成就感,而且家人也有需求,这是我为什么一直坚持搞图像智能体的原因,我常常幻想这有一天我能让相当一部分人用上我这个,并可以确确实实帮助到他们就可以了,像我帮助我家人一样,不过市面上产品这么多,而且我这个纯属小作坊搞的,怎么可能比得过呢?我家人纯属不了解这些新东西,要是他们了解了肯定有更好的选择不是吗?

如果就论我大三学生这个身份,能自己一条龙搞这个东西出来似乎也是胜过很多人了,我也幻想自己有一天可以进去大厂 干自己喜欢agent开发(ps:昨天还在看牛客的agent实习岗)。但是看到上面招聘的硬性要求985 211 研究生等字眼,我意识到或许自己报的期望有点太大。是啊,那么多985 211都不一定搞得到,你一个大专怎么可能呢?agent岗这么技术的东西换做我也不可能让一个大专来搞,虽然说学历代表不了全部,但是社会筛选人的基本一步不就是看你学历嘛。你可能说专升本啊,考上去就行了,这我也意识到了,也一直在准备,不过在我们广东,就算是考到最好的也是个二本,还是在粤东地区。。。 这这么跟那些985 211竞争呢?对于这个现状,我无力改变,只能走一步看一步了

0个评论
点击登录,快来和大家讨论吧~
表情
图片
暂无评论
阿轩
下载 APP