中文搜索引擎指南网

 找回密码
 禁止注册

QQ登录

只需一步,快速开始

搜索
查看: 14|回复: 0
打印 上一主题 下一主题

LangChain 提示模板体系的详细介绍与使用指南

[复制链接]
跳转到指定楼层
1#
发表于 昨天 15:13 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在 LangChain 生态中,你提到的“提示模板库”通常包含两个层面的概念:一是代码层面的提示词模板(Prompt Templates),用于在工程化开发中动态生成和管理提示词;二是LangChain Hub,这是一个类似于 GitHub 的社区共享平台,用于上传、浏览和拉取优质的提示词。

以下是关于 LangChain 提示模板体系的详细介绍与使用指南:

1. 核心概念:为什么需要提示模板?

在实际开发中,如果直接在代码里硬编码(拼接字符串)提示词,会面临难以复用、变量拼接易错、缺乏结构等问题。LangChain 的提示模板将“写死的 Prompt”变成了“可配置、可复用的结构化指令系统”,就像填空题一样,固定角色和格式,动态注入用户输入。

2. 代码层面的常用提示模板

LangChain 提供了多种模板类,像搭积木一样满足不同场景的需求:
PromptTemplate(基础文本模板):最基础的模板,用于生成纯字符串 Prompt,适合简单的单轮问答和文本生成。
ChatPromptTemplate(聊天消息模板):生产环境中最常用的模板。专为聊天模型设计,生成的不是字符串,而是包含 system(系统指令)、human(用户输入)、ai(模型回复)等角色的消息列表,非常适合构建多轮对话系统。
FewShotPromptTemplate(少样本模板):当你需要模型严格按照某种格式或风格输出时,可以通过提供少量示例(Few-Shot)让模型“照葫芦画瓢”,这在分类任务或格式转换中非常有效。
MessagesPlaceholder(消息占位符):专门用于多轮对话场景,可以动态地将完整的对话历史记录插入到提示词中,保持上下文连贯。

3. 如何使用(代码实战示例)

以下是使用 ChatPromptTemplate 构建并调用大模型的标准流程:

from langchain_core.prompts import ChatPromptTemplate
from langchain_openai import ChatOpenAI

# 1. 定义聊天消息模板,使用 {变量名} 作为占位符
chat_template = ChatPromptTemplate.from_messages([
    ("system", "你是一个专业的{role},回答要控制在{word_count}字以内。"),
    ("human", "{user_input}")
])

# 2. 传入具体变量,生成最终的 PromptValue
prompt_value = chat_template.invoke({
    "role": "产品经理",
    "word_count": 100,
    "user_input": "帮我写一段AI Agent的需求文档摘要。"
})

# 3. 初始化大模型并调用
llm = ChatOpenAI(model="gpt-4")
response = llm.invoke(prompt_value)
print(response.content)


注:在 LangChain 中,还可以通过管道符 | 将模板和模型直接组合成链(如 chain = chat_template | llm),实现更优雅的链式调用。

4. LangChain Hub(提示词共享平台)

如果你不想从零编写复杂的提示词,可以使用 LangChain Hub。这是一个由 LangChain 官方打造的社区平台,开发者可以在上面分享、拉取和管理经过验证的优质提示词模板。

如何使用:通过 LangSmith 客户端,只需一行代码即可拉取社区中优秀的提示词模板(例如著名的 prompt-maker),直接与大模型结合使用。

官网地址:LangChain Hub 目前集成在 LangSmith 平台中,官方访问地址为:

https://smith.langchain.com/hub/

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏

Archiver|手机版|小黑屋|教你搜 ( 鲁ICP备16006309号

GMT+8, 2026-6-8 16:05 , Processed in 0.368394 second(s), 25 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表