一个让 ChatGPT API “学习”超过 4096 tokens 上下文的思路 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
chuangbo
V2EX    OpenAI

一个让 ChatGPT API “学习”超过 4096 tokens 上下文的思路

  •  1
     
  •   chuangbo 2023-03-03 09:59:01 +08:00 7858 次点击
    这是一个创建于 965 天前的主题,其中的信息可能已经有所发展或是发生改变。
    想要将 ChatGPT 应用到某个领域,让它学习专有的上下文是必不可少的。例如,想让 OpenAI 成为智能客服,需要让它学习常见问题的回答。

    然而,ChatGPT API 有一个限制,即一次只能处理 4096 个 tokens 的上下文。这意味着,在每一个对话中都无法将完整的上下文传递给 ChatGPT 。即使 4096个 tokens 对于放置上下文来说足够,控制成本也是个问题。

    下面介绍的一个开源项目,提供了一个思路。这个项目让 AI 学会了所有 Paul Graham 的文章内容,共计 605,870 个 tokens 。借助这个项目,你可以自由提问,进行自然回答。

    这个项目的基本原理是,通过 Embedding 模型和数据库在大量物料中搜索可能与用户回答相关的段落,然后从这些段落中生成 prompt ,以便 ChatGPT 进行聊天式的回答。如果你对该项目感兴趣,可以在下面的链接中了解更多信息。

    作者介绍项目的 tweet: https://twitter.com/mckaywrigley/status/1631328308116996097

    项目地址: https://github.com/mckaywrigley/paul-graham-gpt
    第 1 条附言    2023-03-05 00:49:29 +08:00

    另外再给大家补充推荐两个参考

    1. llama-index (gpt-index)

    它是一个 Python 工具包,它封装了上面提到的思路,实现了突破 4096 tokens 限制的功能。除此之外,它还有许多功能:

    • 长文本摘要
    • 个人数据库自然语言查询
    • 预测分析 OpenAI API 成本

    项目地址:https://github.com/jerryjliu/gpt_index

    2. OpenAI Cookbook

    它是 OpenAI 官方提供的一系列实用的例子和指南,其中包括了各种场景和功能的演示和代码,让你轻松上手 OpenAI 的强大能力

    项目地址:https://github.com/openai/openai-cookbook

    15 条回复    2023-04-27 09:51:00 +08:00
    rajesh941
        1
    rajesh941  
       2023-03-03 10:14:57 +08:00
    本地有 100 篇文章,能让它学习下吗?
    chuangbo
        2
    chuangbo  
    OP
       2023-03-03 10:30:11 +08:00
    @rajesh941 可以的,这个项目的思路相当于让 OpenAI “学习”了 60 万字的文章,成本只有 0.24 美元。
    shuxiaokai
        3
    shuxiaokai  
       2023-03-03 11:49:56 +08:00
    可以做智能客服,训练好数据集。
    hanbing135
        4
    hanbing135  
       2023-03-03 11:59:38 +08:00
    这个思路很猛啊
    vToExer
        5
    vToExer  
       2023-03-03 12:45:29 +08:00 via Android
    这个思路看起来和 gptindex 相似,都是在外部存放一份数据供 chatgpt 读取使用,以突破 4096 的上下文限制
    leimao
        6
    leimao  
       2023-03-03 12:53:24 +08:00 va iPhone   1
    这个做法很早就有人做了,比如说 BERT 时期的 Universal Sentence Encoder ,可以用来做检索。
    kongkongye
        7
    kongkongye  
       2023-03-03 13:23:16 +08:00
    amazing!!!
    rajesh941
        8
    rajesh941  
       2023-03-03 13:39:55 +08:00
    @chuangbo 感觉挺适合给公务员用的
    mrgeneral
        9
    mrgeneral  
       2023-03-03 13:46:55 +08:00   2
    ChatGPT 官方提供了这个解决方案的,我上周刚研究完,主要是数据安全不太好解决。

    官方提供的思路是:通过关键词对物料进行关联度匹配(官方给的例子是余弦算法),选择关联度高的来做 prompt 。
    mrgeneral
        11
    mrgeneral  
       2023-03-03 17:39:13 +08:00
    @chuangbo 是的
    xiabill
        12
    xiabill  
       2023-03-04 20:57:13 +08:00
    这个有人在实践了嘛
    wodema
        13
    wodema  
       2023-03-05 11:22:14 +08:00
    @xiabill 这个 chatpdf.com 处理 PDF 文件的方式应该就是这样的
    chuangbo
        14
    chuangbo  
    OP
       2023-03-05 12:21:17 +08:00
    @wodema 感觉 ChatPDF 的功能,llama-index 已经实现了,包括提取 PDF 文字,创建索引和查询功能。
    Ervin
        15
    Ervin  
       2023-04-27 09:51:00 +08:00
    embedding 模型有 8191 的 token 限制,我丢了一堆 pdf 进去,就报这个限制
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     5272 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 25ms UTC 07:54 PVG 15:54 LAX 00:54 JFK 03:54
    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