LangChain 三大核心概念
- [一、LangChain 三大核心概念](#一、LangChain 三大核心概念)
-
- [1. 提示词模板 PromptTemplate](#1. 提示词模板 PromptTemplate)
- [2. 模型调用 ChatOpenAI / ChatZhipuAI](#2. 模型调用 ChatOpenAI / ChatZhipuAI)
- [3. 链 Chain](#3. 链 Chain)
- 二、完整可运行代码(带角色设定)
- [三、如果你想用 **智谱 GLM**](#三、如果你想用 智谱 GLM)
- 四、总结
一、LangChain 三大核心概念
1. 提示词模板 PromptTemplate
作用:把固定的角色/规则 + 动态的用户输入,做成可复用模板。
- 固定部分:角色、要求、语气
- 动态部分:
{question}替换用户的问题
优势:不用每次手写拼接字符串,干净、规范、好维护。
2. 模型调用 ChatOpenAI / ChatZhipuAI
LangChain 把所有大模型封装成统一调用接口,写法几乎一样:
ChatOpenAI:调用 GPTChatZhipuAI:调用 GLMChatTongyi:调用 通义千问ChatQwen:调用 通义千问
只需要换类名 + API Key,其他代码不动。
3. 链 Chain
Chain = 模板 + 模型 + 执行流程
原理:
- 把用户输入塞进模板
- 送给模型
- 返回结果
最简单的链叫 LLMChain = 提示词 + 模型 绑在一起,一键调用。
二、完整可运行代码(带角色设定)
功能
- 设定角色:专业、耐心、简洁的AI助教
- 支持连续对话
- 结构清晰,适合学习
python
# 1. 安装依赖(如未安装)
# pip install langchain langchain-openai langchain-community python-dotenv
# 2. 导入核心模块
from langchain.prompts import PromptTemplate
from langchain.chains import LLMChain
from langchain_openai import ChatOpenAI # 想用GLM就换成ChatZhipuAI
# 3. 初始化模型(GPT 示例)
llm = ChatOpenAI(
model="gpt-3.5-turbo",
temperature=0.3, # 越低越严谨
api_key="你的API_KEY",
base_url="https://api.chatanywhere.tech/v1" # 国内中转
)
# 4. 提示词模板(带角色设定)
prompt_template = PromptTemplate(
input_variables=["question"], # 动态变量
template="""
你是一位【专业、耐心、简洁的AI学习助教】。
规则:
1. 只回答AI、大模型、LangChain、RAG相关问题
2. 语言通俗易懂
3. 不编造内容
4. 回答控制在3句话内
用户问题:{question}
""".strip()
)
# 5. 创建链(Chain = 模板 + 模型)
chain = LLMChain(llm=llm, prompt=prompt_template)
# 6. 运行对话
print("==== AI学习助手(输入 exit 退出)====")
while True:
user_input = input("你:")
if user_input.lower() == "exit":
print("结束对话")
break
# 执行链
response = chain.run(question=user_input)
print("AI助教:", response)
三、如果你想用 智谱 GLM
只需要把模型部分替换成:
python
from langchain_community.chat_models import ChatZhipuAI
llm = ChatZhipuAI(
model="glm-4",
api_key="你的智谱API_KEY"
)
其他代码完全不用改。
四、总结
PromptTemplate(角色+规则)
↓
LLMChain(把模板和模型绑起来)
↓
chain.run(question="xxx")(执行)