EricGT
(EricGT)
2023 年11 月 26 日 16:55
23
我说的隐藏是指一个对大多数用户不可见的类别。它不一定需要隐藏,但如果有一个类别只包含供 RAG 使用的 PDF,那么其他用户可能会将其弄得杂乱无章。
我以 PDF 为例,因为许多手册可能已经以 PDF 格式存在,并指出将它们隐藏在一个类别中更容易理解。对于不需要隐藏类别的其他可能性,Langchain Retrieval 是一个很好的起点。
我对此没有意见,这有助于朝着正确的方向推进所需工作的思路。
然而,“助手”这个词在某些上下文中似乎正在被新出现的 GPTs 取代。“GPTs”似乎也在取代 ChatGPT 插件,但我已经几个月没用过 ChatGPT 插件了,所以真的没注意到,只在论坛上看到一些关于这方面的讨论。
1 个赞
EricGT
(EricGT)
2023 年11 月 26 日 17:43
25
Richard - Communiteq:
助手 API 和 GPT 是同一天推出的吗?
是的
https://platform.openai.com/docs/assistants/overview
你在那里吗?我不在。
我知道 Discourse 的一名工作人员在那里。
我必须说实话。我不知道足够的信息来回应,所以观看了这个视频。
VIDEO
关于 Assistant,似乎 GPT 提供了
我同意你所说的绝大多数内容。
在观看视频并了解了更多关于 GPT 的信息后,我会说它令人印象深刻,但仍然无法满足大多数人的需求,不过它正在取得进展。看到一些与 ChatGPT 插件相同/相似的 JSON 也很有趣。
关于这个话题,我将指出,OpenAI 论坛上的许多人试图上传文件以用于 RAG,但很快发现文件数量限制为 10 个。也可以共享 GPT 的链接,但其他用户也需要是 ChatGPT Plus 订阅者,因此对于许多商业项目来说,这很可能是一条死胡同。
1 个赞
OpenAI Assistant API 尚处于早期阶段,基本上处于预览状态:
据报道,它成本高昂(无论是否需要,它都会填满每次迭代的可用上下文,无论您是否需要,您都需要为此付费)
它似乎存在“无限循环”问题,有时会无限迭代。鉴于该公司的专业知识,这是一个令人惊讶的问题,因为设计缓解措施非常简单。
我怀疑它需要更多时间来完善,并需要整合早期用户的反馈。
作为未来 AI 服务(如 Chatbot)下游消费者的潜在简化,我对此表示欢迎。
无论如何,您都需要一个与 Discourse 的接口。
Chatbot 已经提供了与 Assistant API 相同的强大功能,并且没有其任何问题,此外还提供了与 Discourse 的接口。它最终与 API 迭代无关,并将随着可用服务而发展,并且很有可能在未来提供 Assistant API 选项,但目前这样做没有任何好处,因为它只会带来问题(包括上述问题)。
3 个赞
RGJ
(Richard - Communiteq)
2023 年11 月 26 日 18:27
27
EricGT:
你在那里吗?我不在。
没有实际在
20 ,是的,数量非常有限——可以通过将所有需要的文件附加到一个大文件中来(某种程度上)规避(这很快就会变得相当昂贵)
Robert:
据报道,这价格高得令人望而却步
令人惊讶的是,你不知道价格有多高,直到之后……
差不多——Assistant API 能够包含外部于 Discourse 的私有、自定义知识。
EricGT:
所以这很可能对许多商业项目来说是一个死胡同。
很高兴不是只有我这么想
1 个赞
这与使用上传到 Discourse 的数据或私有提示有何不同?
当然,数据是上传到他们的服务的。
RGJ
(Richard - Communiteq)
2023 年11 月 26 日 18:44
29
请参阅上面的示例 - 如果您有包含用户手册的 PDF 文件并将其上传到 Discourse,它们将不会被处理和索引。您需要将它们转换为 markdown。这不仅很繁琐,而且还需要额外的自动化和转换。
谁强迫您上传旧版 PDF?
我想,最好是转换一次,然后在本地进行编辑。
无论如何,请关注此空间,聊天机器人领域将有更多内容……
1 个赞
RGJ
(Richard - Communiteq)
2023 年11 月 26 日 18:47
31
Robert:
谁强迫你上传古老的PDF?
也许是现实?
事实是,大多数领域知识不易以Markdown格式获取。
Robert:
我想象一下,一次性转换并能在本地编辑会更好
同样,以上面的例子为例。他们有很好的PDF用户手册,这些手册是由一个完全不同的部门创建的。一次性转换并在本地编辑将行不通。
1 个赞
欢迎 Richard 提交 PDF 阅读器 PR!
但我怀疑目前 Markdown 功能已经足够好了。
RGJ
(Richard - Communiteq)
2023 年11 月 26 日 18:52
33
Robert:
Richard,欢迎提交 PDF 阅读器 PR!
回到 Eric
我们将等到助手价格稍微下降一些。是的,与此同时 markdown 也能正常工作!
1 个赞
EricGT
(EricGT)
2023 年11 月 26 日 19:14
34
很高兴其他人也加入了这个讨论,希望这对Ryan有益。
也许@37Rb(Ryan)可以提供更多信息
您是否打算在Discourse网站上使用RAG(检索增强生成)的Discourse AI机器人手册?
a. 这些手册目前的格式是什么?印刷版、PDF、网站还是其他?
b. 知识库多久会更新一次手册的新内容或版本?
c. 手册是否会在网站上公开?
除了Discourse论坛,还有哪些信息对AI在支持网站上做出回应有价值?
在创建Discourse AI机器人时,您是否预见到该机器人还有其他需求?我之所以这样问,是因为如果您阅读Discourse创建AI机器人的历史,您会看到它经历了许多变化,它在最初的创建时并不是一个完美的机器人,并且仍在不断变化。
您能否举例说明您设想的机器人或代理的使用方式?例如,展示用户与机器人聊天的几种不同情况。
请注意,我使用“代理”一词是类比Langchain agent ,而不是与OpenAI assistant 混淆。
2 个赞
只有机器人能直接看到的非公开信息(但最终会影响其与用户的沟通方式)
EricGT
(EricGT)
2023 年11 月 26 日 19:49
37
@37Rb
现在我看到了 OpenAI GPT 在 YouTube 演示 中被创建,我有一个想法。
你可以创建一个 OpenAI GPT,这需要 ChatGPT Plus 订阅,并且可能需要等待名单才能访问,这与你想要了解此类技术的优缺点类似,并且可以用来创建一个 Discourse AI 机器人。我并不是建议你创建机器人,而是让你更好地了解 AI 的能力以及它会惨败的地方。
2 个赞
37Rb
(Ryan)
2023 年11 月 26 日 20:11
38
是的。
PDF或HTML(在线托管),但我可以将其转换为文本/Markdown格式,并将其作为Discourse帖子进行维护。我们可以编写一个脚本来简化这个过程。
EricGT:
知识库多久会更新一次新手册或手册版本?
产品手册不会频繁更新,但知识库中的其他内容会。例如,常见问题解答、频繁/热门问题等会更频繁地更新。我们尽可能多地公开发布,但有些内容保留在私有状态会更有意义——不是因为信息敏感,而是因为公开发布可能会显得奇怪和令人困惑。
EricGT:
手册会公开在网站上吗?
是的,官方产品手册通常是PDF格式。例如…
目前可能没有。让它搜索互联网并获得不准确的结果风险太大了。
未来,我可以看到让机器人获取有关客户自身安全系统的额外上下文信息有价值,但这可能由于隐私问题而永远无法实现。
在我看来,由于它完全基于RAG,最重要的是让我们能够精细地控制机器人如何搜索论坛和提示AI。根据我所读到的信息,merefield的Discourse Chatbot目前在这方面做得更好。我希望本周能验证这个理论。
EricGT:
您能否举例说明您设想机器人或代理将如何被使用?
对我们来说,这始终是提供用户/客户支持,回答他们的问题或解决他们的问题。例如:
帮助他们确定购买什么来保护他们的特定房屋,有时还会考虑他们已有的家庭安防设备。
帮助他们安装和使用他们的系统。
在他们遇到问题时提供故障排除帮助。
回答他们关于事物运作方式、未来可能有哪些产品等的好奇心问题。
最好的例子是每天发布的真实案例 ,以及我们的支持团队(有时是社区成员)的回答。
4 个赞
EricGT
(EricGT)
2023 年11 月 26 日 20:28
39
Ryan:
是的,官方产品手册通常是 PDF 格式。例如…
谢谢!
我知道这对您来说只是一个简单的链接,但对于许多效仿您建立支持网站、让 AI 机器人做出回应并允许其他人公开交流想法的人来说,这代表了最前沿的技术。我知道很多公司都在私下进行,而您正在公开进行。
看到图表我也很高兴,这证实了我之前的想法是正确的。
我不会这么做。
机器人实际上不会像搜索文本帖子那样搜索论坛。您需要学习的关键词和相关技术是 向量数据库 和 最近邻搜索 。
要查看此类用法的代码示例,请查看
Ryan:
我希望本周能测试这个理论。
祝您一切顺利!
1 个赞
EricGT
(EricGT)
2023 年11 月 26 日 20:35
40
通常我不会推荐需要付费的产品,但多年前我了解到
当我在 StackExchange 上 回答 这个 问题 时。
我曾几次使用过免费在线版本,正如我在答案中提到的,我多年来一直在寻找从 PDF 中提取文本和其他信息的方法,但没有找到比这更好的了。
EricGT
(EricGT)
2023 年11 月 27 日 12:05
41
我想就此补充一些信息,因为有些人可能会认为参考(手册名称、出版日期、章节和段落)是 RAG 使用的信息的一部分,而我并非如此设想,也没有提供一些必要的细节。我设想的是使用元数据;对我来说,数据 和元数据 有非常不同的含义和用法。
当我向 ChatGPT 询问此事时,它的回复与我的设想类似,但增加了一些更具体的细节,例如 Elasticsearch。
提示
如何使用 RAG(检索增强生成)处理产品 PDF 手册,并从手册中获取标题、出版日期、页码和段落号作为参考信息?
完成
使用检索增强生成(RAG)处理 PDF 手册以提取特定信息,如标题、出版日期、页码和段落号,涉及多个步骤。RAG 由 Facebook AI 开发,结合了检索(获取相关文档或数据)和语言生成的能力,使模型能够引用和整合外部知识。以下是使用 RAG 处理 PDF 手册的一般方法:
将 PDF 手册转换为文本格式:
首先,您需要将 PDF 手册转换为可处理的文本格式。可以使用 Adobe Acrobat、pdftotext(Xpdf 项目的一部分)或 PyPDF2 或 PDFMiner 等 Python 库。
预处理文本:
获得文本后,您可能需要对其进行预处理。这包括删除不必要的格式、处理特殊字符,以及可能将文本分段为具有可识别标记的部分、页面和段落。
索引手册:
为了使 RAG 有效工作,需要对手册内容进行索引。这意味着创建一个数据库或结构化格式,其中每个信息片段(如段落或部分)都与其对应的元数据(页码、段落号等)一起存储。Elasticsearch 或类似的搜索引擎可用于此目的。
集成 RAG:
在索引了手册后,您现在可以集成 RAG。RAG 通常结合使用基于 Transformer 的语言模型(如 BERT 或 RoBERTa)进行检索,以及序列到序列模型(如 BART 或 T5)进行生成。您需要设置 RAG 以查询您的索引手册。这可能涉及自定义检索组件以与您的搜索引擎配合使用。
查询系统:
当您查询 RAG 系统时,检索组件首先根据您的查询查找手册中最相关的部分。然后将此信息传递给生成组件,该组件会生成响应。
提取参考信息:
要获取标题、出版日期、页码和段落号,您需要确保这些详细信息包含在检索到的片段中,或者系统可以引用索引数据来获取这些元数据。这可能需要在您的系统中添加额外的逻辑。
后处理参考信息:
生成响应后,您可能需要一个后处理步骤来正确格式化参考信息,确保标题、出版日期、页码和段落号准确包含在内。
微调和评估:
根据您的具体要求和手册的复杂性,您可能需要针对相似类型的文档或查询对 RAG 模型进行微调。评估系统的性能并根据需要调整您的方法。
与用户界面集成:
最后,如果该系统面向最终用户,请将其与用户友好的界面集成,用户可以在其中输入查询并获得带有参考信息的响应。
请记住,此方法的有效性在很大程度上取决于索引数据的质量、检索模型的能力以及生成模型在您的特定用例中的训练或微调程度。
注意:虽然我确实使用 ChatGPT 来生成信息,但如果我认为信息是错误的,我不会发布来自 ChatGPT 的信息。换句话说,ChatGPT 很有用,但您必须知道所提供的信息是否正确。虽然我没有完全实现 ChatGPT 所述的内容,但我有足够的经验,我会使用它或其变体。
2 个赞
37Rb
(Ryan)
2023 年11 月 28 日 17:39
42
我为每个插件设置了一个测试论坛,Discourse AI 和 Discourse Chatbot 。
Discourse Chatbot 插件有一个步骤,您可以在其中 创建嵌入 ,它使用 OpenAI 的嵌入 API。Discourse AI 插件似乎没有这样做(在 OpenAI 仪表板上没有显示任何嵌入活动),但它仍然可以在我们的论坛上找到帖子。如果它不生成嵌入来进行语义搜索,Discourse AI 插件是如何搜索论坛的?它是否使用常规文本搜索?它是否计算自己的嵌入?
1 个赞