在ChatGPT相关API推出之后,各种工具如雨后春笋一般层出不穷,这篇文章就列举一些日常使用到的工具。
myreader.io
myReader主页
这款工具的作者是@madawei2699,github主页地址为t.co/adJBYWbjkF,…
在线读取任意网页内容包括视频(YouTube),并根据这些内容回答你提出的相关问题或总结相关内容
支持读取电子书与文档(支持PDF、EPUB、DOCX、Markdown、TXT),并根据这些内容回答你提出的相关问题或总结相关内容
定时发送每日热榜新闻,无论新闻是中文还是其他语言,它都能使用chatGPT用中文自动总结新闻的内容,方便快速获取热点新闻信息
支持 prompt 模版,能根据消息历史记录的上下文回答你的问题,甚至能和你玩游戏
支持多国语音交互(英文、中文、德语与日语),它会根据你的语言使用相关语言的声音来回答你的问题,从而帮助你训练外语能力,可以理解为它是你的私人外教
具体功能演示可以参考我的AI阅读助手。
chatpdf
ChatPDF主页
这个可以看作是一个PDF辅助阅读的工具,用户上传自己的PDF之后,可以以对话的方式与工具进行交互,快速获取PDF文件的内容。
ChatPaper
专注于“科研狗”的工具,通过ChatGPT实现对论文进行总结,帮助“科研人”进行论文初筛(目前不支持针对论文内容进行对话)。
ChatPaper主页
另外相关的工具还有润色工具、审稿工具、审稿回复工具。
最后,这篇文章——ChatGPT应用开发小记中提到的基于chatGPT的应用类型的分类也有借鉴意义。
原理
之前准备写一篇专门介绍上述工具类的原理介绍(其实ChatGPT的 插件——chatgpt-retrieval-plugin),但是后来查看了几个项目的源码之后发现,这类工具的主要原理其实比较直观:
解析相关输入为文本
将文本分句后获取句子的embedding(这一步目前处理的处理方式大都是根据长度截断)并存储至数据库
用户输入转换为embedding,并在数据库中召回相关性最高的句子集合
将召回的句子与用户输入句子组装为ChaptGPT的输入,获取输出
上述思路虽然直观,但要获取更好的结果,其实除了第三步,其余每一步都有优化的空间:
文本解析可以针对不同类型的数据针对性解析
文本分句方式可以采取特殊标点进行分句,同时句子embedding也有很多可选生成方法
召回的句子与用户输入句子组装为ChaptGPT的输入,结合任务特定的prompt,获取更适合任务的输出
具体流程图可以参考gpt-langchain-pdf:
gpt-langchain-pdf
作者:centurysee链接:https://juejin.cn/post/7220775341727399991