【LLM】LangChain入门:构建LLM驱动的应用程序入门指南
LangChain教程,用于在Python中使用大型语言模型构建任何东西
“What did the stochastic parrot say to the other?” (Image drawn by the author)
自从ChatGPT发布以来,大型语言模型(LLM)获得了很大的流行。尽管你可能没有足够的资金和计算资源在地下室从头开始训练LLM,但你仍然可以使用预先训练的LLM来构建一些很酷的东西,例如:
- 可以根据您的数据与外界互动的个人助理
- 为您的目的定制聊天机器人
- 对您的文档或代码进行分析或总结
LLM正在改变我们构建人工智能产品的方式
【LLM】LangChain的LangFlow
LangFlow是LangChain的一个GUI,可以轻松地进行LLM应用程序和提示链接的实验和原型制作。
LangFlow是一个基于LangChain的本地LLM图形开发接口。如果你以任何方式熟悉LangChain,在链、代理和提示工程方面,这个开发界面都会感觉非常直观。
在下图中,是所有可用组件分组的列表。展开后,可以看到链、提示、代理和LLM的开发可供性列表。这个列表肯定会随着兴趣的增加而增加。
以下是关于如何构建一个非常简单的LLM Chaining应用程序以及如何与该应用程序聊天的简短教程。
要构建最简单的LLM应用程序,需要选择三个组件并将其拖到设计画布上:
【LLM】LangChain 代理和大型语言模型
目前在LLM上开发的方法正在迅速发展,即时工程在某种程度上被链接和代理的概念所吸收。
在最近的一篇文章中,我写到了即时工程的演变,以及即时工程是如何被吸收到更大的开发结构中的。
这些更大的开发结构允许:
- 更长、更复杂的用户交互
- 进程可以串行或并行运行
- 提示可以编程、共享、存储和模板化
- 链接是创建提示流或提示序列的概念。
对于现有流退出并且可以创建预先确定的会话或工作流的情况,Chaining工作得很好。
另一方面,在流量未知或高度不可预测的情况下,链接并不能很好地服务于场景。在这些情况下,预定的流程将不能很好地工作,并且需要一定程度的自主权。
什么是代理?
代理可以通过使用其可支配的一组工具或资源来接收查询。这些工具可以包括访问维基百科、网络搜索、数学库、LLM等。
【ChatGPT 】如何使用自定义知识库构建自己的自定义ChatGPT
ChatGPT已经成为大多数人每天用来自动化各种任务的不可或缺的工具。如果你使用过ChatGPT任何一段时间,你都会意识到它可能会提供错误的答案,并且在一些小众主题上限制为零上下文。这就提出了一个问题,即我们如何利用chatGPT来弥合差距,并允许chatGPT拥有更多的自定义数据。
丰富的知识分布在我们日常互动的各种平台上,即通过工作中的融合wiki页面、松弛组、公司知识库、Reddit、Stack Overflow、书籍、时事通讯和同事共享的谷歌文档。掌握所有这些信息来源本身就是一项全职工作。
如果你能有选择地选择你的数据源,并将这些信息轻松地输入到ChatGPT与你的数据的对话中,那不是很好吗?
1.通过Prompt Engineering提供数据
在我们讨论如何扩展ChatGPT之前,让我们看看如何手动扩展ChatGPT以及存在哪些问题。扩展ChatGPT的传统方法是通过即时工程(prompt engineering)。
这很简单,因为ChatGPT是上下文感知的。首先,我们需要通过在实际问题之前附加原始文档内容来与ChatGPT进行交互。
【ChatGPT】如何在你的电脑上离线运行类似LLM的ChatGPT
目前市场上有许多人工智能玩家,包括ChatGPT、Google Bard、Bing人工智能聊天等等。然而,所有这些都需要你有互联网连接才能与人工智能交互。如果你想在电脑上安装类似的大型语言模型(LLM)并在本地使用它怎么办?一个人工智能聊天机器人,你可以在没有互联网连接的情况下私下使用。好吧,通过斯坦福大学发布的新羊驼模型,你可以接近这个现实。是的,你可以离线在你的电脑上运行类似ChatGPT的语言模型。因此,请注意,让我们继续学习如何在没有互联网的情况下在本地使用LLM。
在没有互联网的情况下本地运行类似于LLM的ChatGPT(私有且安全)
在这篇文章中,我提到了如何在没有互联网的情况下在本地PC上运行类似ChatGPT的LLM的所有内容。您可以展开下表,详细了解步骤。
目录