基于LangChain的大模型学习手册(入门级)

前言

时间轴来到2024年的下半年,“大模型”这个术语,从几乎是ChatGPT的代名词,转变为AI领域一个划时代产品的广泛词汇。从单一到广泛,代表大模型这个世界级产品,正在走向枝繁叶茂的生命阶段。截止现在,目前已经衍生出特定领域特定功能的大模型类型包括但不限于以下方面:

模型类型主要用途
NLP大模型文本生成式,主要用于处理自然语言文本。有GPT系列、BERT系列等
计算机视觉(CV)大模型主要用于处理图像和视频。包括Inception、ResNet、DenseNet等
语音识别(ASR)大模型专注于语音信号的处理,如语音识别和语音合成,包括WaveNet等
强化学习(RL)大模型专注于解决决策问题,如游戏、机器人等领域的应用。包括DQN等。

可想而知,大模型的“表演赛”,才刚刚完成了“开幕式”,接下来势必将是一轮又一轮的“你方唱罢我登场”。同时,越来越多的大模型也带来一个直接问题:

如何让形色各异的大模型快速投入产品?快速落地?快速产生效益?

为了解决这个问题,LangChain应运而生。

在这里插入图片描述

一、LangChain简介

什么是LangChain?且看这样一段话:

LangChain 是一个用于开发由大型语言模型 (LLM) 提供支持的应用程序的框架。

一句话就是一个支持各类基于大模型的应用开发框架。既然是框架,那么它能解决什么问题?且看它的用途有哪些。

1. 框架用途

1.1. 开发

使用 LangChain 的开源的building blocks构建单元), components组件), 和third-party integrations第三方集成),构建您的应用程序。使用 LangGraph 构建具有一流流式传输人机交互支持的agents(代理)。

1.2. 跟踪调试

使用LangSmith 检查、监控和评估您的chains(链或任务),以便您可以持续优化,并自信的完成部署。可用于调试或跟踪开发的chain。

1.3. 正式部署

使用 LangGraph Cloud 将您的LangGraph应用转换为可用于生产环境的 API 和助手。

2. 框架组成

在这里插入图片描述

核心组成主要作用
langchain-core包含基本抽象和 LangChain 表达式语言(即LCEL
langchain-community用于第三方集成,合作伙伴包有langchain-openai、langchain-anthropic等;有些模型的集成,已被进一步拆分为自有的轻量级包,而这些包仅依赖langchain-core
langchain构成应用程序chain(或任务)、代理和检索策略。
LangGraphLangGraph 是 LangChain 生态系统中新的杰作,为构建基于 LLM (大语言模型)的有状态、多代理应用程序提供了一个全新的范式和强大的框架支持。
LangSmith一个开发者平台,允许您调试、测试、评估和监控 LLM 应用程序。

二、LangChain入门

通过第一部分的概述,我想各位对LangChain有了一个简单的印象。那么是否可以继续通过一个简单的示例,来看看它是如何工作的的? 答案是必须的。

1. 准备环境

如你要正确的使用LangChain,那么必须按照以下步骤完成安装:

1.1 安装Python

1.2 安装LangChain
Step1:安装langchain
pip install langchain
Step2:安装langchain-core
pip install langchain-core
Step3:安装langchain-community
pip install langchain-community
Step4:安装langgraph
pip install langgraph

2. 准备一个大模型

博主这里依然以阿里的“通义千问”为例,提前安装该模型的SDK:

pip install dashscope

3 编写第一个langchain

from getpass import getpass
import os
from langchain_community.chat_models.tongyi import ChatTongyi
from langchain_core.messages import HumanMessage, SystemMessage

# DASHSCOPE_API_KEY = getpass()
os.environ["DASHSCOPE_API_KEY"] = "你已申请的阿里-通义千问大模型API-KEY"

# streaming=True,代表流式输出,提高使用体验
chatLLM = ChatTongyi(
    streaming=True,
)


res = chatLLM.stream([HumanMessage(content="hi")], streaming=True)
for r in res:
    print("chat resp:", r)


返回如下:
在这里插入图片描述
大功告成!


结语

作为第一个致力于集成众多大模型的应用框架,LangChain从去年开始已受到全世界AI研发的关注,并且发展越来越快。也就是说当前掌握的知识,可能随时被淹没或者丢弃。所以尽可能的多去了解,多研究,总结经验。

精彩回顾

基于Python的大模型学习手册(入门级)


在这里插入图片描述

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值