利用清华 ChatGLM 做了基于本地知识的问答应用 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
littlepanda0716
V2EX    编程

利用清华 ChatGLM 做了基于本地知识的问答应用

  •  
  •   littlepanda0716 2023-04-06 08:33:48 +08:00 via iPhone 6673 次点击
    这是一个创建于 918 天前的主题,其中的信息可能已经有所发展或是发生改变。

    利用 langchain + ChatGLM-6B 开发了可以基于本地文件内容进行对话的应用,具体形式类似 chatpdf 等利用 chatgpt API 与文件对话的应用。

    实现过程中 embedding 与 LLM 模型均使用开源 HuggingFace 模型,因此可在下载模型参数文件后进行离线部署。

    项目地址:github.com/imClumsyPanda/langchain-ChatGLM

    19 条回复    2023-06-14 16:22:00 +08:00
    perfectar
        1
    perfectar  
       2023-04-06 08:45:51 +08:00
    不错,顶一个!
    1r5b6rRCaViA78f6
        2
    1r5b6rRCaViA78f6  
       2023-04-06 09:01:10 +08:00 via Android
    感谢分享~
    daddyLi
        3
    daddyLi  
       2023-04-06 09:03:00 +08:00
    顶,已 star
    hellojay
        4
    hellojay  
       2023-04-06 09:06:31 +08:00
    如果要本地跑起来这个 LLM ,大概需要的配置能说下吗
    infinityv
        5
    infinityv  
       2023-04-06 09:11:28 +08:00 via iPhone
    是不是类似 gpt index
    littlepanda0716
        6
    littlepanda0716  
    OP
       2023-04-06 09:38:13 +08:00
    @infinityv 之前有考虑用 gpt index 做实现,但是后面发现 gpt index 不太灵活,就直接利用 langchain 做实现了,本质上类似于用 gpt index 做的应用。
    littlepanda0716
        7
    littlepanda0716  
    OP
       2023-04-06 09:41:02 +08:00
    @hellojay LLM 方面占用资源可以参考 ChatGLM 硬件需求: https://github.com/THUDM/ChatGLM-6B/blob/main/README.md#%E7%A1%AC%E4%BB%B6%E9%9C%80%E6%B1%82

    embedding 模型在本项目中选用 GanymedeNil/text2vec-large-chinese ,在 GPU 上运行时约需要 3GB 显存,也可修改为 CPU 上运行或替换为其他 huggingface 中的 embedding 模型
    elppa
        8
    elppa  
       2023-04-06 09:44:51 +08:00
    不错,顶一个,电脑配置要求多少 ?
    WEAlex
        9
    WEAlex  
       2023-04-06 10:55:18 +08:00
    这个是可以训练本地专业方向知识的模型?没看到哪里可以学习本地知识的地方呢
    uilvn
        10
    uilvn  
       2023-04-06 12:59:55 +08:00   1
    已 star
    cwyalpha
        11
    cwyalpha  
       2023-04-06 13:05:20 +08:00 via iPhone
    是不是理论上 colab 也行
    uilvn
        12
    uilvn  
       2023-04-06 13:36:22 +08:00
    @littlepanda0716 在 colab 上运行失败了,装载模型时内存容量超过 12G 被干掉了。有 colabPro 的兄弟可以试试
    niuzhuang
        13
    niuzhuang  
       2023-04-06 21:17:03 +08:00
    很棒,关注了
    littlepanda0716
        14
    littlepanda0716  
    OP
       2023-04-07 00:02:47 +08:00 via iPhone
    @WEAlex 不是再训练 是利用本地文档+embedding 构建索引,然后用问句语义到索引中匹配相近段落,再把段落作为上下文和问题一起提供给 llm
    littlepanda0716
        15
    littlepanda0716  
    OP
       2023-04-07 00:05:12 +08:00 via iPhone
    @elppa chatglm 硬件需求可参考 https://github.com/THUDM/ChatGLM-6B#%E7%A1%AC%E4%BB%B6%E9%9C%80%E6%B1%82

    除此之外 embedding 如果也在 gpu 上运行也需要 3G 左右的显存
    littlepanda0716
        16
    littlepanda0716  
    OP
       2023-04-07 00:07:01 +08:00 via iPhone
    @uilvn @cwyalpha 可以参考 github.com/THUDM/ChatGLM-6B#%E7%A1%AC%E4%BB%B6%E9%9C%80%E6%B1%82 选择适合显存资源的模型,除此之外 embedding 模型目前选用占用 3G 显存的版本,可以替换为其他小模型。
    littlepanda0716
        17
    littlepanda0716  
    OP
       2023-04-12 08:03:09 +08:00 via iPhone
    本项目已于昨日增加 Web UI Demo 和多文件导入支持,欢迎大家持续关注

    https://github.com/imClumsyPanda/langchain-ChatGLM
    superbai
        18
    superbai  
       2023-05-22 17:04:12 +08:00
    歪个楼,请问 github readme 里的流程图是用什么画的呀
    kanchi240
        19
    kanchi240  
       2023-06-14 16:22:00 +08:00
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1027 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 28ms UTC 22:59 PVG 06:59 LAX 15:59 JFK 18:59
    Do have faith in what you're doing.
    ubao 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