Prompt Engineering
Prompt是用户向模型提供的输入,用于引导模型生成特定类型、主题或格式的文本输出。这种输入可以是一个问题、一个描述、一组关键词或上下文信息,它告诉模型用户希望得到的输出类型和内容。
Prompt
提示工程(Prompt Engineering)涉及到如何设计、优化和管理这些Prompt,以确保AI模型能够准确、高效地执行用户的指令。
Prompt Engineering
一、Prompt(提示词)
为什么需要Prompt?大语言模型(LLM)本身已具备极高的性能与复杂性,但还有很大潜力需要挖掘。Prompt如同钥匙一般,能够精确引导模型生成特定需求的输出。
调整Prompt,实际上就是在改变我们与模型交流的语言和方式,这种变化往往能带来出乎意料的输出效果差异。更重要的是,这一过程无需微调模型修改参数,只需在外部灵活调整提示词输入。
Prompt
Prompt的核心要素包括:明确的任务指示、相关上下文、示例参考、用户输入以及具体的输出要求。
-
指示(Instructions):想要模型执行的特定任务或指令。
-
上下文(Context):包含外部信息或额外的上下文信息,引导语言模型更好地响应。
-
例子(Examples):通过给出具体示例来展示期望的输出格式或风格。
-
输入(Input):用户输入的内容或问题。
-
输出(Output):指定输出的类型或格式。
Prompt:` `指令:请撰写一段关于“未来科技”的描述。``输入数据:无特定输入数据,直接基于主题创作。``输出指示:生成一段约100字的文本,要求内容富有想象力且积极向上。` `开始你的创作:
二、In-context Learning__**(上下文学习)**
什么是In-contxt Learning?In-context learning,即上下文学习,是一种机器学习方法,它利用文本、语音、图像等数据的上下文环境以及数据之间的关系和上下文信息来提高预测和分类的准确性和有效性。
In-context learning的优势在于它不需要对模型进行微调(fine-tuning),从而节省了大量的计算资源和时间。
In-context Learning
在GPT-3中,In-context learning表现为模型能够在给定的任务示例或自然语言指令的上下文中,理解任务要求并生成相应的输出。具体来说,In-context learning可以分为以下几种情况:
- Zero-shot Learning:不给GPT任何样例,仅通过自然语言指令来指导模型完成任务。
假设你有一个任务,需要将文本分类为三种情感之一:正面,负面或中性。` `文本:我认为这次假期还可以。` `情感倾向标签(选择一个):正面、负面、中性
-
One-shot Learning:给GPT一个任务示例,模型根据这个示例来理解任务并生成输出。
-
Few-shot Learning:给GPT多个任务示例,模型通过这些示例来更好地理解任务并生成输出。
假设你有一个任务,需要将文本分类为三种情感之一:正面,负面或中性。``示例 1: 文本:“我度过了一个非常愉快的周末!” 情感倾向标签:正面` `示例 2: 文本:“这部电影太令人失望了。” 情感倾向标签:负面` `示例 3: 文本:“今天的天气和昨天一样。” 情感倾向标签:中性 ``现在,请根据你从上述示例中学到的知识,对以下文本进行情感分类:` `文本:“我认为这次假期还可以。” ``情感倾向标签(选择一个):正面、负面、中性
In-context Learning
三、Chain-of-Thought(思维链)
什么是Chain-of-Thought?Chain-of-Thought(思维链,简称CoT)是一种改进的提示技术,旨在提升大型语言模型(LLMs)在复杂推理任务上的表现。
Chain-of-Thought要求模型在输出最终答案之前,先展示一系列有逻辑关系的思考步骤或想法,这些步骤相互连接,形成了一个完整的思考过程。
Chain-of-Thought
Chain-of-Thought的概念最早是在2022年由Google发布的论文**《Chain-of-Thought Prompting Elicits Reasoning in Large Language Models》**中提出的。该论文展示了如何通过思维链提示(chain-of-thought prompting)来引导大型语言模型生成类似人类思维过程的推理链条,从而提升模型在复杂推理任务上的性能。
Chain-of-Thought可以通过两种主要方式实现:Zero-Shot CoT和Few-Shot CoT。
Chain-of-Thought
- Zero-Shot CoT:在没有示例的情况下,仅仅在指令中添加一行经典的“Let’s think step by step”,就可以激发大模型的推理能力,生成一个回答问题的思维链。
Zero-Shot CoT
- Few-Shot CoT:通过提供几个包含问题、推理过程与答案的示例,让模型学会如何逐步分解问题并进行推理。这种方式需要少量的示例来引导模型,但通常能够获得更好的效果。
如何学习大模型 AI ?
由于新岗位的生产效率,要优于被取代岗位的生产效率,所以实际上整个社会的生产效率是提升的。
但是具体到个人,只能说是:
“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。
这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。
我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。
我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。
第一阶段(10天):初阶应用
该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。
- 大模型 AI 能干什么?
- 大模型是怎样获得「智能」的?
- 用好 AI 的核心心法
- 大模型应用业务架构
- 大模型应用技术架构
- 代码示例:向 GPT-3.5 灌入新知识
- 提示工程的意义和核心思想
- Prompt 典型构成
- 指令调优方法论
- 思维链和思维树
- Prompt 攻击和防范
- …
第二阶段(30天):高阶应用
该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。
- 为什么要做 RAG
- 搭建一个简单的 ChatPDF
- 检索的基础概念
- 什么是向量表示(Embeddings)
- 向量数据库与向量检索
- 基于向量检索的 RAG
- 搭建 RAG 系统的扩展知识
- 混合检索与 RAG-Fusion 简介
- 向量模型本地部署
- …
第三阶段(30天):模型训练
恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。
到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?
- 为什么要做 RAG
- 什么是模型
- 什么是模型训练
- 求解器 & 损失函数简介
- 小实验2:手写一个简单的神经网络并训练它
- 什么是训练/预训练/微调/轻量化微调
- Transformer结构简介
- 轻量化微调
- 实验数据集的构建
- …
第四阶段(20天):商业闭环
对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。
- 硬件选型
- 带你了解全球大模型
- 使用国产大模型服务
- 搭建 OpenAI 代理
- 热身:基于阿里云 PAI 部署 Stable Diffusion
- 在本地计算机运行大模型
- 大模型的私有化部署
- 基于 vLLM 部署大模型
- 案例:如何优雅地在阿里云私有部署开源大模型
- 部署一套开源 LLM 项目
- 内容安全
- 互联网信息服务算法备案
- …
学习是一个过程,只要学习就会有挑战。天道酬勤,你越努力,就会成为越优秀的自己。
如果你能在15天内完成所有的任务,那你堪称天才。然而,如果你能完成 60-70% 的内容,你就已经开始具备成为一名大模型 AI 的正确特征了。