Java 端怎么弄大模型的长期记忆 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术题时复制粘贴 AI 生成的内容
edg
V2EX    程序员

Java 端怎么弄大模型的长期记忆

  •  1
     
  •   edg 10 小时 0 分钟前 450 次点击
    目前第一次做大模型的长期记忆这方面,不知道有没有有经验的大哥指导一下。
    目前的难点是不知道用哪种库去存以及怎么去做更新。
    当前想法:
    用 es 做大模型长期记忆存储,现在的 es 结构大致为 category ,key ,value 。其中 category 是大分类,比如用户偏好,需求,个人信息,key 是一个 category 的具体方面,如个人信息中 key 可以是身高,体重,血糖等具体方面,value 就是对应的值。
    目前的大致流程:用户问题进来-->通过某种技术来判断是否是长期记忆并且解析出对应的 category ,key ,value(这种技术在我的认知里 java 应该实现不了,这个先不深究,就当能够实现)---->我拿到这些信息对用户记忆做添加或者修改--->再把记忆拼接到 prompt 里面。
    因为我第一次弄这方面也不知道可不可行,在网上看了很多也没有一个明确的方向,所以想请教下各位大哥,不知道有没有业界更先进的做法。
    9 条回复    2025-11-25 23:25:27 +08:00
    frandy
        1
    frandy  
       9 小时 10 分钟前
    了解下 langchain4j 或者 spring ai ,不需要自己从头写,2023 年的时候自己写过,原理是将 AI 和人的对话存储到数据库,按照时间排序,然后每次新的对话,就把之前的对话一起拼起来扔给模型,是的,没错,就是这么做的,你去看一些成熟的框架,也是这么做的,好的是,可以根据对话轮次或者文字长度,进行截取。为什么这么做?因为受限于大模型的 token 最大值不是无限的
    MIUIOS
        2
    MIUIOS  
       9 小时 4 分钟前
    楼上说的基本没错,找下现成框架没必要自己手撸,人家带全套的生态工具,直接套用就行了,都是调 api 只是看谁调的花。
    aisk
        3
    aisk  
       8 小时 57 分钟前
    拿过去的用户输入,或者做了简单关键词命中的输入,给大模型解析一下让它提取关键信息成你想要的格式,写到 es 里?
    Solix
        4
    Solix  
       8 小时 52 分钟前 via iPhone
    找个开源记忆项目,vibe coding 重构成 java 结束
    maolon
        5
    maolon  
       8 小时 50 分钟前   1
    长期记忆一般分为几种做法
    1. 个人 profile ,这种提取信息结构化存 json ,一个用户有且只有一个,读的时候固定读取,用 rdb 就行了
    2. 知识库/摘要信息,这种就是你现在用 es 在做的事,但是更常见的做法是存 vector db(然后走 rag 那一套),或者走 graph db 那一套(知识提取为三元组,具体看是哪种类型的知识),这两种市面上都有很多开源库的实现
    3. 行为记忆/日程,也就是最近有什么 events/日程之类的,一般用于 recall 用户最近行为(而且需要准确 recall ),很多人会把这个功能合并到知识库里(但是这种一般是 time sensitive ,所以直接合并知识库其实不是特别好管理)

    然后在此之上,就是记忆的读取/业务层,比如语义检索,关键字检索,retreive ,trim, summary function 之类的东西,这个看你们业务怎么做了,都是自由发挥

    记忆读取出来都是拼接回当前的 context 内(你可以简单理解为 prompt ,但是我更愿意叫他 context ),然后调用模型 api
    soap0X
        6
    soap0X  
       8 小时 49 分钟前 via Android
    大模型是无状态无记忆的。最好向量库,不要用传统的库(最近看搜索知道了向量库回想了下之前的知识库,但这里我没实践过)
    edg
        7
    edg  
    OP
       8 小时 42 分钟前
    @frandy 也考虑过用框架,但是我们有自己训练的模型所以很早之前手搓了一个,如果引入框架感觉动的刀子太大
    edg
        8
    edg  
    OP
       8 小时 41 分钟前
    @aisk 对,目前我的想法就是这样
    edg
        9
    edg  
    OP
       8 小时 39 分钟前
    @maolon 好的,谢谢哥,这个我再看下
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     3613 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 34ms UTC 00:04 PVG 08:04 LAX 16:04 JFK 19:04
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86