零基础构建基于LangChain的聊天机器人(3)

检索对象

review_chain的目标是回答有关患者在医院就医体验的问题。到目前为止,已经将患者对医院的评论作为问题的上下文。虽然能回答少量问题,但它不具有很好的扩展性。此外,即使将所有评论放入模型的上下文中,也不能保证它使用正确的评论内容回答问题。

为了克服这个问题,通常需要需要一个检索器。检索相关文档并将它们传给语言模型,用以回答问题,这个过程称为检索增强生成(retrieval-augmented generation, RAG)。

对于这个例子,将把所有评论数据存储在一个名为ChromaDB的向量数据库中。用以下命令安装ChromaDB:

(venv) $ python -m pip install chromadb==0.4.22

安装之后,用以下代码创建一个带有患者评论的ChromaDB向量数据库:

在这里插入图片描述

在 2 到 4 行中,导入了创建向量数据库所需的依赖项。然后定义 REVIEWS_CSV_PATHREVIEWS_CHROMA_PATH ,它们分别是存储原始评论数据的路径和向量数据库存储数据的路径。

稍后会了解医院系统数据的概览,其中 reviews.csv 存储了患者评论。reviews.csv 中的 review 列是一个字符串,包含了患者的评论。

在 11 和 12 行中,使用 LangChain 的 CSVLoader 加载评论。在 14 到 16 行中,使用默认的OpenAI嵌入模型从评论中创建一个ChromaDB实例,并将评论嵌入存储在 REVIEWS_CHROMA_PATH 中。

接下来,在终端中运行以下命令,从项目目录开始:

(venv) $ python langchain_intro/create_retriever.py

它应该只需要一分钟或更短时间就可以运行,之后就可以开始对评论嵌入执行语义搜索:

在这里插入图片描述
在这里插入图片描述

导入了调用ChromaDB所需的依赖项,并指定了存储ChromaDB数据的路径 REVIEWS_CHROMA_PATH 。然后使用dotenv.load_dotenv() 加载环境变量,并创建了一个新的 Chroma 实例,指向向量数据库。注意,当连接到向量数据库时,必须再次指定嵌入函数。确保与用来创建嵌入的嵌入函数相同。

接下来,定义一个问题,并在 reviews_vector_db 上调用 .similarity_search() ,其参数为 questionk=3。这为问题创建了一个嵌入,并在向量数据库中搜索与问题最相似的三个评论。在这种情况下,会看到三个评论输出。

最后一件事是将刚才所编写的评论检索器添加到 review_chain 中,以便将相关评论作为上下文传递给提示。

在这里插入图片描述

像以前一样,导入了ChromaDB的依赖项,指定了ChromaDB数据的路径,并实例化了一个新的Chroma对象。然后通过在 reviews_vector_db 上调用 .as_retriever() 创建了 review_retriever ,这就是即将添加到 review_chain 的检索器对象。因为指定了 k=10 ,检索器将获取与用户问题最相似的十个评论。

然后在 review_chain 的前面添加了一个带有上下文和问题键的字典。而不是手动传递上下文,review_chain 将把问题传递给检索器以获取相关评论。将问题分配给一个 RunnablePassthrough 对象确保问题不变地传递到链的下一步。

现在有了一个完全功能的链,可以根据评论回答有关患者体验的问题。启动一个新的REPL会话并尝试一下:

在这里插入图片描述

如上操作,只需要调用 review_chain.invoke(question) 就可以获得有关患者体验的检索增强答案。稍后还将通过在Neo4j 中存储评论以及其他元数据来改进这个链。

现在你了解了聊天模型、提示、链和检索,接下来会深入了解LangChain的最后一个概念——代理。

如何学习AI大模型?

作为一名热心肠的互联网老兵,我决定把宝贵的AI知识分享给大家。 至于能学习到多少就看你的学习毅力和能力了 。我已将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

这份完整版的大模型 AI 学习资料已经上传优快云,朋友们如果需要可以微信扫描下方优快云官方认证二维码免费领取【保证100%免费

一、全套AGI大模型学习路线

AI大模型时代的学习之旅:从基础到前沿,掌握人工智能的核心技能!

img

二、640套AI大模型报告合集

这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。

img

三、AI大模型经典PDF籍

随着人工智能技术的飞速发展,AI大模型已经成为了当今科技领域的一大热点。这些大型预训练模型,如GPT-3、BERT、XLNet等,以其强大的语言理解和生成能力,正在改变我们对人工智能的认识。 那以下这些PDF籍就是非常不错的学习资源。

img

四、AI大模型商业化落地方案

img

作为普通人,入局大模型时代需要持续学习和实践,不断提高自己的技能和认知水平,同时也需要有责任感和伦理意识,为人工智能的健康发展贡献力量。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值