langchain(基础)一

1 Langchain概述

(1)LangChain是一个基于语言模型开发应用程序的框架。

(2)LangChain 为特定用例提供了多种组件,例如个人助理、文档问答、聊天机器人、查询表格数据、与 API 交互、提取、评估和汇总。

(3)LangChain 中的模型分类:

LLM(大型语言模型):这些模型将文本字符串作为输入并返回文本字符串作为输出。它们是许多语言模型应用程序的支柱。

Chat (聊天模型):聊天模型由语言模型支持,但具有更结构化的 API。他们将聊天消息列表作为输入并返回聊天消息。这使得管理对话历史记录和维护上下文变得容易。

(4)LangChain提供了以下主要组件:

- 模型 ( Models )

- 提示词 ( Prompt )

- 代理( Agents )

- 链( Chains )

- 索引 ( Indexes )

- 内存(Memory)

- 模式 ( Schema )

(5)安装

pip install langchain==0.1.6

# 1、导入大模型的类

from langchain_community.llms import Tongyi
# 实例化
llm = Tongyi()
# 调用通义千问
ret =  llm.invoke("你是谁?")
print(ret)

2 Prompt 提示词

(1) PromptTemplate
<think>嗯,用户想了解关于LangChain的信息,包括介绍、教程和使用案例。首先,我需要整理LangChain的基本概念。根据引用[3],LangChain个开源的应用开发框架,允许将大模型与各种工具结合,实现文档问答、网页解析、表格查询等功能。支持Python和TypeScript,但Python更全面。 接下来,教程部分。引用[1]提到进阶教程,比如自定义模型,而引用[2]介绍了链的类型,如LLMChain、RefineChain和MapReduceChain。需要分入门和进阶两部分,说明链和检索器的作用。 使用案例方面,结合引用中的例子,可以列举文档问答、网页解析、表格查询以及智能客服和数据分析等场景。要确保每个案例都有具体说明,比如用代码示例展示LLMChain的使用。 用户可能还关心如何开始使用LangChain,所以需要给出安装步骤和基础代码示例。同时,注意遵循系统指令,数学公式用$...$,独立公式用$$...$$,但这里可能用不上太多数学内容,主要是代码块和结构。 需要检查是否有遗漏的信息,比如框架支持的模型类型或者与其他工具的整合。此外,用户的问题可能隐含对实际应用的需求,所以案例部分要具体,帮助用户理解如何应用到实际项目中。 最后,生成相关问题时要覆盖概念、教程、案例和对比分析,确保问题能引导用户深入学习。比如,询问核心组件、应用案例或与其他框架的区别。确保引用标记正确,例如引用[1]、[2]、[3]在适当的位置。</think>### LangChain 介绍 LangChain个开源的应用开发框架,支持将大语言模型(LLM)与外部工具(如文档、数据库、API)结合,实现问答、数据分析、自动化任务等复杂功能。其核心目标是通过“链”(Chain)机制管理任务流程,提升模型与工具协作的效率[^3]。目前主要支持 Python 和 TypeScript,其中 Python 生态更为完善。 --- ### LangChain 核心组件 1. **模型(Model)** 支持集成多种大语言模型(如 GPT、Claude 等),通过统接口调用。用户可自定义模型参数,例如温度(控制随机性)和最大生成长度[^1]。 2. **链(Chain)** - **LLMChain**:基础链,用于单步任务(如生成文本摘要)。 - **RefineChain**:多步任务链,通过迭代优化输出结果。 - **MapReduceChain**:并行处理链,适用于大规模数据分块处理[^2]。 3. **检索器(Retriever)** 从外部数据源(如文档、数据库)中提取相关信息,增强模型输入的上下文准确性。例如,结合向量数据库实现语义搜索[^2]。 --- ### LangChain 基础教程 #### 1. 安装与基础使用 ```python pip install langchain from langchain.llms import OpenAI # 初始化模型 llm = OpenAI(temperature=0.9, model_name="gpt-3.5-turbo") response = llm("如何解释量子力学?") print(response) ``` #### 2. 构建简单任务链(LLMChain) ```python from langchain.prompts import PromptTemplate from langchain.chains import LLMChain template = "用句话解释{concept}" prompt = PromptTemplate(input_variables=["concept"], template=template) chain = LLMChain(llm=llm, prompt=prompt) print(chain.run("区块链")) ``` --- ### LangChain 应用案例 1. **文档问答系统** 结合检索器从 PDF 或网页中提取内容,生成精确回答: ```python from langchain.document_loaders import WebBaseLoader from langchain.indexes import VectorstoreIndexCreator loader = WebBaseLoader("https://example.com/article") index = VectorstoreIndexCreator().from_loaders([loader]) query = "文章的主要观点是什么?" answer = index.query(query) ``` 2. **自动化数据分析** 解析 CSV 文件并生成统计结论: ```python from langchain.agents import create_csv_agent agent = create_csv_agent(llm, "data.csv") agent.run("计算销售额的月增长率") ``` --- ### 与其他框架对比 | 框架 | 特点 | 适用场景 | |-------------|-------------------------------|------------------------| | LangChain | 强调任务链和工具集成 | 复杂流程自动化 | | LlamaIndex | 专注检索增强生成(RAG) | 文档问答 | | HuggingFace | 提供预训练模型库 | 模型微调和直接调用 | ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值