大模型实战 P10 LangChain简介与初体验
前面课程当中,我们一起学习了用 OpenAI 接口的方式,直接调用GPT模型的方法。从这节课开始,我们就正式开始学习 LangChain 框架,用框架的思维,去管理项目。
LangChain是什么
LangChain 是一个框架,用于帮助开发者使用语言模型来构建应用程序。这个框架提供了一系列工具和组件,让你可以更简单地创建基于大型语言模型和聊天模型的应用程序。LangChain 允许你方便地管理语言模型的交互,将多个组件链接在一起,并集成额外的资源,例如 API 和数据库等。
为什么要用LangChain
1、大模型的限制,如知识不是最新、Token数量限制、无法外挂知识库等。
2、代码风格各异,没有统一标准,多人协作开发效率低。
LangChain 框架可以帮开发者,轻松实现可扩展的标准化应用。
六大核心模块
Models(模型):LangChain 支持的各种模型类型和模型集成。
Prompts(提示词):包括提示管理、提示优化和提示序列化。
Memory(记忆):内存是在链/代理调用之间保持状态的概念。LangChain 提供了一个标准的内存接口、一组内存实现及使用内存的链/代理示例。
Indexes(检索):与您自己的文本数据结合使用时,语言模型往往更加强大,此模块涵盖了执行此操作的最佳实践。
Chains(模型链):链不仅仅是单个 LLM 调用,还包括一系列调用(无论是调用 LLM 还是不同的实用工具)。LangChain 提供了一种标准的链接口、许多与其他工具的集成。LangChain 提供了用于常见应用程序的端到端的链调用。
Agents(代理):代理涉及 LLM 做出行动决策、执行该行动、查看一个观察结果,并重复该过程直到完成。LangChain 提供了一个标准的代理接口,一系列可供选择的代理,以及端到端代理的示例。
代码示例
1、安装三方包
pip install langchain-core==0.1.3 pip install langchain==0.0.352
2、Openai方式调用(回顾)
# langchain_01_base.py from dotenv import load_dotenv from openai import OpenAI load_dotenv() # 用openai调用 client = OpenAI() response = client.chat.completions.create( model="gpt-3.5-turbo-1106", messages=[ {"role": "user", "content": "写一首描写秋天的诗"}, ] ) print(response.choices[0].message.content)
3、LangChain初体验
# Langchain方式调用 from langchain.chat_models import ChatOpenAI llm = ChatOpenAI(model_name='gpt-3.5-turbo-1106') print(llm.predict('写一首描写秋天的诗'))
通过以上例子,可以明显看出,通过 LangChain 框架封装的类,去调用 OpenAI 模型,比原生方法方便很多。这只是初体验环节,后面还会学到 LangChain 更多强大的功能。
本文链接:http://edu.ichenhua.cn/edu/note/689
版权声明:本文为「陈华编程」原创课程讲义,请给与知识创作者起码的尊重,未经许可不得传播或转售!