《开发基于提示工程的大语言模型(LLM)应用》课程学习笔记

机缘巧合,参加了英伟达官网的《开发基于提示工程的大语言模型(LLM)应用》课程免费学习活动,注册和福利领取地址已经为大家准备好:NVIDIA 深度学习培训中心(DLI)| 在线实战培训,赶快行动起来吧!

通过学习还获得了学习完成的证书,对于课程的学习有感,写此课程学习笔记,课程笔记将围绕课程核心内容,从提示工程基础、LangChain 应用、消息提示、结构化输出及工具智能体等方面,梳理课程关键知识点与实践要点,为你呈现这门课程的精华笔记。
一、课程概述
大语言模型(LLM)能力强大,企业机构尝试将其整合到产品和内部应用中,如文本生成、大规模文档分析和聊天机器人助手等。融入 LLM 的最快方法是使用先进的提示工程技术,它是更高级 LLM 技术(如检索增强生成(RAG)、参数高效微调(PEFT))的基础技能。本课程使用由开源 Llama-3.1 大语言模型驱动的 NVIDIA NIM™和流行的 LangChain 库,学习提示工程基本技能,构建基于 LLM 的应用。
二、提示工程基础
(一)提示工程的重要性
提示工程是与大语言模型(LLM)交互的核心。不同人群对大模型的使用需求不同,普通使用者关注快速准确反馈,而开发者期望大模型处理复杂任务场景。通过精心设计提示词,能引导 LLM 生成符合特定格式、风格或内容的输出,满足精准的应用需求。
(二)零样本提示(Zero-Shot Prompting)
大模型知识丰富,可利用这一特点让其完成通用任务。零样本提示下,无需给大模型过多信息提示,适用于简单任务场景,如简单查询操作。例如,让大模型判断文本情感倾向,因其本身知晓分类概念,即使未提供额外提示信息,也能完成任务。但对于非普遍通用任务,零样本提示难以发挥作用。
(三)少样本提示(Few-Shot Prompting)
当大模型对特定工作内容不了解时,可提供一些具体例子帮助其理解任务要求,即少样本提示。例如,老师依据学生成绩规划假期活动,大模型预先不知活动详情,通过给出不同成绩区间对应活动的实例,如成绩 85 分及以上预习下学期课程,60 至 85 分完成假期作业,低于 60 分复习本学期课程内容,再提问小刚成绩 74 分的假期活动,大模型可参照实例推理得出答案。少样本学习在简单分类场景有效,但在复杂推理任务中存在局限。
(四)思维链提示(Chain-of-Thought Prompting)
大模型在语言处理方面优势明显,但在数学与推理领域存在短板,常凭直觉快速作答易出错。思维链提示可引导大模型放缓回应速度,进行理性思考,严谨准确地处理问题。例如,在数学题求解中,标准提示样例直接给出答案,模型可能 “未加思索” 得出错误答案;而思维链提示样例呈现完整推导流程,模型给出的答案伴有思考进程,能得出正确答案。在提示词里添加 “Let’s think step by step” 可实现零样本思维链提示,让大模型放慢节奏逐步思考。实际开发应用时,需基于特定模型测试提示词有效性。
三、利用 LangChain 表达语言(LCEL)构建 LLM 应用
(一)创建链
使用 LCEL 创建模块化、可复用和可组合的 LLM 工作单元(链)。通过创建自定义链组件并组合链,掌握并行处理技术,简化代码并提高效率。例如,可将多个 LCEL 链组合成一个更大的应用链,通过组合并行 LCEL 链发挥并行工作的能力。
(二)迷你项目实践
重温第一部分迷你项目,利用 LCEL 链简化代码,实现项目子任务的并行处理,加深对链的理解和应用能力。在实践中,通过对一批输入执行分析和生成任务,体会 LCEL 在提高应用性能方面的作用。
四、使用消息进行提示
(一)消息类型控制
明确控制发送给聊天模型和从中接收的消息类型,包括少样本提示、系统消息更新和思维链提示等,以实现更强大的提示工程。例如,通过少样本提示技术为聊天模型提供指导性示例,明确使用系统消息为聊天模型定义总体角色和职责,使用思维链提示增强 LLM 执行复杂推理任务的能力。
(二)聊天机器人创建
通过消息创建能够保留对话历史并假设人格的聊天机器人,提升聊天交互的真实感和智能性。在创建过程中,管理消息以保留对话历史,使聊天机器人能够根据之前的对话内容进行更智能的回复。例如,完成一个小项目,构建一个简单但灵活的聊天机器人应用,使其能够担任各种角色。
五、结构化输出
(一)定义数据结构
学习定义精确的数据结构,并提供给 LLM,使其生成可直接在代码中使用的结构化数据,提高数据处理的准确性和便捷性。例如,结合 Pydantic 类和 LangChain 的JsonOutputParser生成结构化输出。
(二)迷你项目实践
运用结构化数据生成技术对非结构化文本文档进行数据提取和文档标记,实现文本信息的有效整理和利用。在实践中,学习从长篇文本中提取数据和进行标记,完成对非结构化文本文档执行数据提取和文档标记的小项目。
六、工具使用和智能体
(一)工具创建与应用
创建独立于 LLM 的功能单元(工具),增强 LLM 使其能利用工具,并将工具工作结果包含在生成的响应中,突破 LLM 的固有局限。例如,创建一个能够推理何时适合使用工具,并将工具使用结果整合到其响应中的智能体。
(二)智能体开发
创建能利用外部 API 调用的 LLM 智能体,使用实时数据增强其响应,提升智能体的实用性和智能水平。例如,完成一个小项目,创建一个 LLM 智能体,使其能够利用外部 API 调用来增强响应,提供实时数据。
七、学习收获
基础交互技能:掌握使用 OpenAI API 和 LangChain 发送基本提示词并接收聊天 LLM 生成响应的方法,学会流式传输响应和进行批处理。
提示工程能力:认识到迭代提示工程的重要性,通过重复测试和改进提示词,引导 LLM 响应朝期望方向发展。学会抽象和复用提示词组件,使用多种提示模板。
LCEL 应用能力:了解 LangChain 表达式语言,学会创建模块化、可复用且可组合的功能链,通过自定义运行时向 LCEL 链添加自定义功能,掌握链的组合与并行执行技术。
消息交互与聊天机器人开发:深入了解与聊天 LLM 交互时的消息类型,实践少样本提示、思维链提示和控制系统消息等技术,学会存储消息以捕捉对话历史并创建聊天机器人。
结构化输出与文本分析:学会定义 LLM 输出的期望结构,利用结构化数据集合对文本进行分析和标记,包括长文档处理。
工具与智能体开发:学会创建和提供自定义工具增强 LLM 应用,开发能推理何时使用工具并整合工具结果的智能体。

以上是完成该课程之后的学习笔记总结。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值