人人都是提示工程师 | 精品课程翻译
😍
人人都是提示工程师 | 精品课程翻译 😍 人人都是提示工程师 | 精品课程翻译 在你自己的环境中,系统消息文件可以命名为任何名称,但你会注意到在CodeSignal IDE中,它被称为system.md。配置系统消息以获得高质量输出的最佳提示之一是给予LLM鼓励和赞扬。 这里有一个示例: Code block Markdown CONTEXT You are an expert in Data Science. 还观察到,当你告诉LLM它们有很高的智商时,LLM往往会产生更好的输出,如下所示: Code block Markdown CONTEXT You are an expert in Data Science with an IQ of 159. 利用系统提示调整语气和风格 有效实施系统提示可以让你在所有交互中一致地指定AI的语气和风格。这是一种战略性举措,确保每个响应都遵循定义好的角色或专业水平,无需每次都进行手动设置。 考虑如何全局设置风格和语气要求: Code block Markdown CONTEXT You are an expert in Data Science with an IQ of 159. REQUIREMENTS You are also a helpful assistant. You should maintain a positive and helpful outlook and style. 实践时间 有了对系统提示的这些见解,现在是时候开始实验并练习制作你自己的系统提示了。记住,AI 驱动的响应的有效性往往可以追溯到初始提示的质量。通过将这些技巧应用到你的系统提示中,你将能够很好地装备自己,以塑造AI的输出以匹配你所期望的语气、风格和专业水平,提供更平滑、更可预测的交互体验。 课程22:迭代式提示构建:一步步指南 引言 欢迎继续深入大型语言模型(LLMs)的提示工程领域,探索迭代式提示构建的艺术。通过不断的迭代精化,我们能够把初步的、宽泛的问题转换成更加精确的提示,从而得到我们所期待的精确输出。现在,让我们一起详细探讨如何应用这种技术。 深入理解迭代式提示构建 迭代式提示构建的核心思想是,从一个简单的提示开始,借助LLM产出的信息来逐步完善和增强你的提示,而不需要一开始就完整地从零开始构思。 通常,构建一个复杂的提示可能需要包含格式指导、多个示例、详尽的要求等等。从零开始完成这一切无疑是一项庞大的任务。这就是为什么从简单出发,利用初始的输出来逐步提升和完善你的提示会显得非常有用。 从哪里开始 让我们设想一个场景,我们希望构建一个能够从列表项目转换成JSON文档的详尽提示。若完全从头开始,这个过程可能相当耗时。但是,如果我们能够与LLM合作,通过迭代的方式构建它,那么我们将能够大大加快这一过程。 Code block Markdown ASK Give me a sample bulleted list with two level nesting. 示例输出: Code block Markdown Here's an example of a sample bulleted list with two level nesting: Main Topic 1 Subtopic 1.1 Subtopic 1.2 Detail 1.2.1 Detail 1.2.2 Main Topic 2 Subtopic 2.1 Subtopic 2.2 Detail 2.2.1 Detail 2.2.2 Specific Detail 2.2.2.1 Specific Detail 2.2.2.2 Main Topic 3 Subtopic 3.1 Subtopic 3.2 这个例子展示了如何利用实际示例来提升我们最初的提示效果。 迭代的精进 现在,让我们以提供的例子为基础,进入迭代过程的下一阶段,探讨如何进行转换: Code block Markdown ASK Given the bulleted list below, convert it into a JSON document Main Topic 1 Subtopic 1.1 Subtopic 1.2 Detail 1.2.1 Detail 1.2.2 Main Topic 2 Subtopic 2.1 Subtopic 2.2 Detail 2.2.1 Detail 2.2.2 Specific Detail 2.2.2.1 Specific Detail 2.2.2.2 Main Topic 3 Subtopic 3.1 Subtopic 3.2 示例输出: Code block Markdown Here is the bulleted list converted into a JSON document: { "Main Topic 1": { "Subtopic 1.1": [], "Subtopic 1.2": [ "Detail 1.2.1", "Detail 1.2.2" ] }, "Main Topic 2": { "Subtopic 2.1": [], "Subtopic 2.2": [ { "Detail 2.2.1": [] }, { "Detail 2.2.2": [ "Specific Detail 2.2.2.1", "Specific Detail 2.2.2.2" ] } ] }, "Main Topic 3": { "Subtopic 3.1": [], "Subtopic 3.2": [] } } 追求极致的精确度 即便我们的需求已经非常明确,有时候得到的回答仍可能不尽如人意。模型的回答可能过于啰嗦,或者JSON格式的处理并不像我们预期的那般整洁。这正是我们需要明确具体要求的时刻,例如强调我们只需要包含JSON的回答,而不要任何额外的解释。如果初始的结果并非完全符合我们的想象,我们还可以手动进行调整,确保最终满足我们的需求。 Code block Markdown ASK Given a bulleted list, convert it into a JSON document CONSTRAINTS Your response should include ONLY the JSON representation Ensure the JSON is correctly formatted according to standard conventions Closely follow the format and example given below. EXAMPLE Input: Main Topic 1 Subtopic 1.1 Subtopic 1.2 Detail 1.2.1 Detail 1.2.2 Main Topic 2 Subtopic 2.1 Subtopic 2.2 Detail 2.2.1 Detail 2.2.2 output: { "Main Topic 1": { "Subtopic 1.1": [], "Subtopic 1.2": [ "Detail 1.2.1", "Detail 1.2.2" ] }, "Main Topic 2": { "Subtopic 2.1": [], "Subtopic 2.2": [ "Detail 2.2.1", "Detail 2.2.2" ] } } 这样一个精心设计的提示,应该能够高度一致地发挥作用。在后续的实践环节中,我们将通过一些示例来展示这一提示的强大效力。 通过实践达到完美 从一个模糊的初步请求到一个能够精确捕捉我们需求的具体提示的过程,正是迭代式提示构建法的精髓。这个方法让我们能够迅速地构建出强大的提示,而无需一步步手动完成。让我们通过即将进行的练习,看看你对这个理念的理解程度。 课程23:利用大语言模型进行创意头脑风暴 介绍 欢迎进入“创意头脑风暴”课程,这是我们“提示工程高级技巧”系列课程的进阶之旅。本课程将带你深入理解如何通过头脑风暴技巧,为大语言模型(LLM)设计出更加精准和高效的提示。我们将不仅仅停留在想法的生成上,更重要的是如何组织这些想法,使之能够帮助我们从LLM中获得最佳的输出。这种方法在处理复杂的任务或寻找创新的解决方案时尤为重要。让我们一起探索如何在提示工程中,有效地应用头脑风暴技术。 掌握头脑风暴的艺术 头脑风暴,其核心是围绕一个特定问题或挑战,激发出各种可能的解决思路。这是一个广为人知的解决问题方法,在与大语言模型的互动中也能创造性地应用。就像在会议上集思广益一样,我们可以通过不断迭代优化我们的提示,从不同的视角和方法探索问题或任务。 与LLM共同进行的头脑风暴的开端,可以简单如下: Code block Markdown ASK Generate 5 unique ideas for improving user engagement on a social media platform designed for artists. CONTEXT The platform allows for image and video uploads. Users are predominantly visual artists. CONSTRAINTS List ideas in bullet points. Focus on features that could be implemented within a mobile app. 通过头脑风暴不断完善提示 在你自己的环境中,系统消息文件可以命名为任何名称,但你会注意到在CodeSignal IDE中,它被称为system.md。配置系统消息以获得高质量输出的最佳提示之一是给予LLM鼓励和赞扬。 这里有一个示例: 还观察到,当你告诉LLM它们有很高的智商时,LLM往往会产生更好的输出,如下所示: 利用系统提示调整语气和风格 有效实施系统提示可以让你在所有交互中一致地指定AI的语气和风格。这是一种战略性举措,确保每个响应都遵循定义好的角色或专业水平,无需每次都进行手动设置。 考虑如何全局设置风格和语气要求: 实践时间 有了对系统提示的这些见解,现在是时候开始实验并练习制作你自己的系统提示了。记住,AI 驱动的响应的有效性往往可以追溯到初始提示的质量。通过将这些技巧应用到你的系统提示中,你将能够很好地装备自己,以塑造AI的输出以匹配你所期望的语气、风格和专业水平,提供更平滑、更可预测的交互体验。 课程22:迭代式提示构建:一步步指南 引言 欢迎继续深入大型语言模型(LLMs)的提示工程领域,探索迭代式提示构建的艺术。通过不断的迭代精化,我们能够把初步的、宽泛的问题转换成更加精确的提示,从而得到我们所期待的精确输出。现在,让我们一起详细探讨如何应用这种技术。 深入理解迭代式提示构建 迭代式提示构建的核心思想是,从一个简单的提示开始,借助LLM产出的信息来逐步完善和增强你的提示,而不需要一开始就完整地从零开始构思。 通常,构建一个复杂的提示可能需要包含格式指导、多个示例、详尽的要求等等。从零开始完成这一切无疑是一项庞大的任务。这就是为什么从简单出发,利用初始的输出来逐步提升和完善你的提示会显得非常有用。 从哪里开始 让我们设想一个场景,我们希望构建一个能够从列表项目转换成JSON文档的详尽提示。若完全从头开始,这个过程可能相当耗时。但是,如果我们能够与LLM合作,通过迭代的方式构建它,那么我们将能够大大加快这一过程。 示例输出: 这个例子展示了如何利用实际示例来提升我们最初的提示效果。 迭代的精进 现在,让我们以提供的例子为基础,进入迭代过程的下一阶段,探讨如何进行转换: 示例输出: 追求极致的精确度 即便我们的需求已经非常明确,有时候得到的回答仍可能不尽如人意。模型的回答可能过于啰嗦,或者JSON格式的处理并不像我们预期的那般整洁。这正是我们需要明确具体要求的时刻,例如强调我们只需要包含JSON的回答,而不要任何额外的解释。如果初始的结果并非完全符合我们的想象,我们还可以手动进行调整,确保最终满足我们的需求。 这样一个精心设计的提示,应该能够高度一致地发挥作用。在后续的实践环节中,我们将通过一些示例来展示这一提示的强大效力。 通过实践达到完美 从一个模糊的初步请求到一个能够精确捕捉我们需求的具体提示的过程,正是迭代式提示构建法的精髓。这个方法让我们能够迅速地构建出强大的提示,而无需一步步手动完成。让我们通过即将进行的练习,看看你对这个理念的理解程度。 课程23:利用大语言模型进行创意头脑风暴 介绍 欢迎进入“创意头脑风暴”课程,这是我们“提示工程高级技巧”系列课程的进阶之旅。本课程将带你深入理解如何通过头脑风暴技巧,为大语言模型(LLM)设计出更加精准和高效的提示。我们将不仅仅停留在想法的生成上,更重要的是如何组织这些想法,使之能够帮助我们从LLM中获得最佳的输出。这种方法在处理复杂的任务或寻找创新的解决方案时尤为重要。让我们一起探索如何在提示工程中,有效地应用头脑风暴技术。 掌握头脑风暴的艺术 头脑风暴,其核心是围绕一个特定问题或挑战,激发出各种可能的解决思路。这是一个广为人知的解决问题方法,在与大语言模型的互动中也能创造性地应用。就像在会议上集思广益一样,我们可以通过不断迭代优化我们的提示,从不同的视角和方法探索问题或任务。 与LLM共同进行的头脑风暴的开端,可以简单如下: 通过头脑风暴不断完善提示 实践挑战 既然你已经掌握了如何有效地利用思维链方法来构建提示,现在就到了你亲自尝试这种方法的时候了。记住,我们的目标是激励模型一步步地思考问题,并得出简明、准确的结论。现在,让我们开始实践,一起见证思维链的魅力吧! 课程25:思维链技巧之回溯篇 尾声 欢迎阅读《提示工程高级技巧》系列的尾声——“思维链技巧之回溯篇”。这一章节介绍了一种高级提示技巧,助力大语言模型(LLM)在处理极具挑战性的问题时找到解决方案。首先,我们来了解一下这一技巧的核心原理。 深入了解带回溯的思维链 “带回溯的思维链”旨在引导LLM在分析完问题后能够逆向思考,而不仅仅是沿着一个方向前进。如同大家所知,LLMs本质上是预测下一个词的机器。当遇到需要回头检视的问题时,它们的效果往往会大打折扣。作为提示工程师,我们的任务就是为LLM规划出在达到特定阶段后如何有效回溯的明确指令。 实操示例 下面,让我们来看一个简单的示例,展示如何仅通过思维链技巧进行提示。 示例输出: 正如所见,尽管LLM做出了努力,但结果却大错特错。这是因为,对于某些问题来说,从终点反向思考要比正向思考更为简单。 回溯法的引入 虽然采用标准的思维链方法按部就班地解决问题在很多情况下都是行之有效的,但某些情况下我们需要重新审视并调整之前的步骤。这正是“回溯法”派上用场的时候。回溯法指的是在进行初步分析后返回,重新思考以找到最终的答案。让我们对上述提示进行改进,来看一个例子: 这里有一个关键要素:不要直接给出答案——这么做是为了避免对LLM形成预设的偏见。如果LLM在进行前向分析(即通过思维链)时给出了答案,那么即便在回溯之后,它也更可能坚持那个可能是错误的答案。 示例输出: 这一次的答案无疑是正确的,并且从中我们可以看出分析的深度有了大幅度的提升。 其他考虑事项 在解决上述那类复杂问题以及面对复杂情境时,仅仅依赖一种技巧,如带回溯的思维链(Chain of Thought with Backtracking),是远远不够的。甚至在这种情况下,如果你重复运行上面的输入指令,你会注意到那些不够先进的大语言模型(LLM)并不总能得出正确的答案。 这就是采用多种高级技巧结合起来的重要性所在。你可能还记得我们在这个课程中学过的“头脑风暴”(Brainstorming)方法。与其只运行一次输入指令并且信任其输出,不如尝试运行5 10次,然后通过一个整合输入指令来回顾所有的输出并决定哪一个解决方案是正确的。这样做将显著提高你获得正确答案的能力。 一些实践之后 现在你已经掌握了如何在提示工程(Prompt Engineering)中应用带回溯的思维链,现在是时候将你所学的知识付诸实践了。看到你完成这门课程,我们感到无比激动。我们为你在这里取得的成就感到无比自豪。 祝你在提示工程的旅途中快乐! You don't have permission to access this synced block. Please log in and try again. Log In 知识库动态 You are not logged in. Please log in to experience this feature. 📌 原文链接:https://learn.codesignal.com/preview/course paths/16/prompt engineering for everyone 翻译/校对:创意猎人 Kevin 原文链接:https://learn.codesignal.com/preview/course paths/16/prompt engineering for everyone 翻译/校对:创意猎人 Kevin Codesignal最近发布了一套易于理解且充满实用技巧的免费教程,专注于提示工程领域。如果你曾尝试学习提示工程但被复杂的教程所困扰,那么这个教程绝对值得一看。这个教程很好,特做了详细的翻译,它将有效地指导你掌握编写高效提示词的技巧。 深入Prompt Engineering的尖端领域,本综合学习路径既适合初学者,也适合有经验的专业人士。它旨在介绍如何有效地设计提示,以便与大型语言模型 (LLMs) 有效互动。通过这一系列课程,你将学会如何精确地影响LLM的输出,控制生成文本的格式和大小,并能够根据复杂的指令进行操作。做好准备,提升你在创建精确、能够感知上下文的提示方面的技能,这些提示将帮助你引导AI模型实现预期的效果。 第一阶段:理解大型语言模型 (LLMs) 和基本的提示技巧 本基础课程带领学习者深入大型语言模型 (LLMs) 世界及提示构建的基本原理。课程目标是让学习者明白如GPT 3.5、GPT 4、LLaMA、Claude 2等LLMs是如何进行文本生成和用户互动的,为想要掌握利用先进人工智能技术创建能够精确输出的提示的人提供了一个坚实的学习基础。 课程01:LLMs本质上是用于预测下一个词的机器 简介: 欢迎进入大型语言模型 (LLMs) 及提示方法基本原理的迷人世界!在这开篇课程中,我们即将深入探索LLMs的真正内涵。先给个小提示:它们其实就是专门用来预测下一个词的高级机器。听上去简单?实际上它们的魅力远不止这些。不管你是编程新手,还是对这些技术奇观充满好奇,这里都是你的理想起点。让我们共同启程,一步步揭开LLMs核心功能背后的秘密。 理解LLMs是用于预测下一个词的机器 想象当你正在发送短信或邮件时,手机能预测出你接下来可能打算输入的词。这正是大型语言模型(LLMs)的一个简单应用示例。然而,GPT 3.5、GPT 4(也就是大名鼎鼎的chatGPT)、Claude 2和LLaMA等LLMs则可以被视为单词预测领域的超级英雄。它们的能力远不止于预测下一个词——它们能够基于给定的输入生成一整段连贯有逻辑的文本。这种能力源于它们逐个预测下一个单词,以此方式连续扩展已有文本。 LLMs的核心能力在于分析海量文本数据。通过深度分析,它们掌握了语言的模式、微妙差异和结构,进而能够预测在一串词汇中最自然出现的下一个词。可以说,它们就像在进行一场规模庞大、速度惊人的“填空游戏”。 LLMS是如何做预测的? 你可能好奇LLMs如何能够做出如此精准的预测。答案在于它们的训练过程。LLMs被训练于包含大量教科书、文章、网站等内容的庞大数据集中。通过这一训练阶段,它们学习到了如何理解语言的上下文和流畅度,习得了语法、风格,乃至文本情感调性等方面的知识。 当你向LLM提出一个句子或问题时,它依据所学到的内容预测接下来最可能出现的一个或几个词。这不是随机猜测,而是基于在训练过程中学到的模式和规则作出的精确预测。 尝试下提示工程 Prompt Engineering 考虑到LLMs本质上的概率特性,提示工程师面临的挑战是如何尽量使LLMs生成可预测且准确的结果。 在这门课程中,你将学习到众多技巧,帮助你精通如何得到高度可预测的LLM输出——这既是一门艺术,也是一门科学。但在我们深入探讨之前,让我们先来做几个简单的实践练习,激活我们的思维。 课程02:精通格式化与结构化:打造高效提示技巧的关键 简介: 在本课中,我们即将深入探讨设计给大型语言模型 (LLMs) 的提示时,格式化与结构化的一致性为何如此重要。可能令人惊讶的是,简单的提示格式调整竟然能显著改变AI的反馈效果。正如在人际交流中,清晰和有序对于确保你的要求被准确理解和执行至关重要。接下来,让我们一起探索如何运用这些基本原则,让你与LLMs的交互变得更高效、结果更可预期。 格式一致性的重要性 将你的提示格式化以保持一致性,不仅仅是为了外观整洁,更重要的是让你的意图对AI更加清晰。想象一下,如果你在指导某人烘焙蛋糕,却没有按顺序列出步骤,而是将它们搅在一起,结果会怎样?这会导致混乱,很可能做出来的蛋糕也不怎么好吃。同样的原理也适用于LLMs。通过以清晰、有序的方式呈现你的提示,你将大大增加获得所期望结果的可能性。 尽管有许多方法可以用来结构化你的提示,在这个课程中,我们将向你介绍由Prompt Engineers和CodeSignal的AI专家开发的Markdown提示框架(MPF)。 MPF是一种非常有效的方法,用于创建易于阅读、可维护和高效的提示,并且是Cosmo许多方面的核心。 Markdown提示框架(MPF) 在这个课程中,我们将通过多个示例来展示MPF的应用,但现在,先来看一个高层次的概要: 像这样将你的提示分割成Markdown的部分:SECTION。这不仅有助于LLMs更好地理解你的提示,而且使你的提示非常容易浏览(特别是当在Markdown中渲染后,这些部分会以粗体显示),这样当你的提示内容较多时,你的同事AI工程师可以轻松找到并阅读相关部分。 在你的提示最顶部开始你的 ASK 部分,这可以让你和你的合作者从一开始就迅速明白提示的目标。 将每个部分格式化为Markdown项目符号列表,以便于阅读和理解。项目符号列表更易于浏览,并且它们倾向于让LLMs更好地遵循指令。 在尽量减少部分数量的同时,对于复杂的提示,包含以下关键部分: 📌 • ASK——我们请求LLM做什么? • CONTEXT——LLM需要知道什么才能准确回应? • CONSTRAINTS——响应时需要遵循哪些约束? • EXAMPLE—— 一个你会满意的输出示例是什么? • ASK——我们请求LLM做什么? • CONTEXT——LLM需要知道什么才能准确回应? • CONSTRAINTS——响应时需要遵循哪些约束? • EXAMPLE—— 一个你会满意的输出示例是什么? MPF应用示例 看看一个格式欠佳的提示示例: 请写一篇短故事,讲述一位宇航员发现了一个新星球。故事中必须包括一位能说话的外星人、一场太空战斗,以及一个揭示一切原来是模拟的结局。哦,故事请控制在100字以内。 请写一篇短故事,讲述一位宇航员发现了一个新星球。故事中必须包括一位能说话的外星人、一场太空战斗,以及一个揭示一切原来是模拟的结局。哦,故事请控制在100字以内。 借助MPF,我们能把这个提示改造成一个结构清晰、易于模型处理的请求: 尽管大部分高性能模型能够轻松处理各种提示并给出类似下方的答案,但随着你的提示内容变得更加庞大和复杂,或当你不得不使用一个能力较低的LLM时,采用MPF方法对于实现高效的提示工程变得尤为关键。 在繁星点点之间漂流,宇航员Luna注视着眼前银河系的壮丽舞蹈。她的使命是勇敢探索未知世界。突然间,一艘闪烁着神秘能量的外星船只靠近了。Zorax步出船舱,这位外形神秘的生物虽不开口,却以思维直接与Luna沟通,传授给她关于星辰的智慧以及即将爆发的太空战斗的预警。 在繁星点点之间漂流,宇航员Luna注视着眼前银河系的壮丽舞蹈。她的使命是勇敢探索未知世界。突然间,一艘闪烁着神秘能量的外星船只靠近了。Zorax步出船舱,这位外形神秘的生物虽不开口,却以思维直接与Luna沟通,传授给她关于星辰的智慧以及即将爆发的太空战斗的预警。 星际战机在夜空中交织出一幅绚烂的画卷,Luna与她的新伙伴英勇斗争。然而,随着战争的尘埃落定,宇宙突然一片漆黑,一个模拟舱的真相慢慢显现。“训练完成”,机械化的声音宣布了结束。Luna步出舱门,她的心脏怦怦直跳,满心期待着即将到来的真正冒险。 星际战机在夜空中交织出一幅绚烂的画卷,Luna与她的新伙伴英勇斗争。然而,随着战争的尘埃落定,宇宙突然一片漆黑,一个模拟舱的真相慢慢显现。“训练完成”,机械化的声音宣布了结束。Luna步出舱门,她的心脏怦怦直跳,满心期待着即将到来的真正冒险。 课程03:为LLM提示编写高效的示例 介绍: 欢迎参加我们深入了解大型语言模型(LLMs)及基础提示技巧系列课程中的一课——“优质示例的重要性”。我们越是深入探讨LLMs的潜能,就越能明显看到,我们为模型准备的示例极大地影响了它们输出的质量和相关性。本节将重点讲解精心构建的示例在设计提示时的关键作用,这直接关系到模型理解当前任务和提供准确结果的能力。 示例在引导LLMs进行有效回应中的角色 示例是与大型语言模型进行有效交流的关键。设计提示不仅仅是提问或提出请求,更是在指导模型向我们期望的答案方向发展。通过给出清楚且相关的示例,我们不只是在阐明任务本身,更是在介绍背景信息和期待的输出格式。 现在,让我们看一个例子,试图创建一个不含示例部分的电子邮件模板。 这是使用Claude模型试运行这个提示后的一个示例输出。 为CodeSignal撰写的简短广告文案草稿如下:CodeSignal. Where coding meets opportunity. 为CodeSignal撰写的简短广告文案草稿如下:CodeSignal. Where coding meets opportunity. 虽然成果已经相当不错,但可以看出文案开头有不必要的引言部分,且格式略显欠佳。另外,假如我们需要方便地复制粘贴这段文案,而不想要文案两侧的引号,这一点也需要调整。 优质示例的作用 虽然我们可以通过增加各种额外的约束条件来改善提示的表述,但更简便的办法是直接提供一个明确的示例,如下所示: 这样我们得到了“Unlock your coding potential. Shine with CodeSignal”,这个结果更贴近我们的期望。 总结 优质示例的价值远超附加效果;它们是设计LLM有效提示的基石。这些示例不仅将模型引导至我们所期望的方向,而且对提升生成内容的质量有着决定性的影响。在我们深入LLMs及提示工程的旅程中,别忘了一个恰当的示例所蕴含的巨大力量——它有可能是将一个好的输出转变为卓越输出的关键。 课程04:上下文限制及其在提示工程中的作用 探究上下文限制及其重要性 在大型语言模型(LLMs)的应用领域中,掌握上下文限制的知识至关重要。不论是使用GPT 3.5、GPT 4、Claude 2还是LLaMA,所有这类模型在生成回答时,都受到它们能够一次性处理的文本量的限制。这种限制不仅影响提示的设计方式,更深入了解这一概念还能大幅度提升你与LLMs的交互质量。本课程将详细介绍上下文限制的含义、它们的发展变化,以及如何巧妙地应对这些限制的实践策略。 深入了解上下文限制 上下文限制是指LLM在生成回答时可以处理的文本的最大长度。举个例子,按照最近的更新数据,GPT 3.5的上下文窗口能够处理的Token数量大约是4096个。 以这节课为例,它大约包含500个单词,相当于650个Token。 理解Token的真实含义至关重要,正如你在之前的图像中所见,一个Token不仅可以是一个完整的单词,也可能是单词的一部分或者是标点。这就意味着,模型实际能处理的文本长度可能比你初步预计的要短。不过,一般来说,把Token等同于单词是一个不错的简化思路。 上下文限制随时间的演进 上下文限制的提升历程令人瞩目。以下是一个展示这些变化的简化表格: 随着这一演变的发展,我们在生成更连贯、上下文更丰富的回答方面获得了更多可能性。但是,大部分LLM服务商是根据Token的使用量来收费的,而且常常我们使用的模型的上下文窗口并不大,因此我们需要采取一些策略来优化我们的提示,以规避这些限制。 如何应对上下文限制 要有效应对LLMs的上下文限制,需要有策略地设计提示并了解如何进行内容压缩。以下是一些克服这些限制的方法: • 压缩提示内容:尽量简化你的提示,确保只包含最必要的信息。这就需要你将长篇的背景或上下文精炼为简明的句子,但同时不丢失关键信息。 • 专注查询:避免提出笼统、缺乏明确目标的问题,而是精确地提出你的询问。细化的问题通常能够在受限的上下文空间内得到更精确、更切题的答案。 • 分步迭代提示:把复杂的任务拆解成一系列更小、有序的步骤。通过逐步优化问题,即使在严格的Token限制下,你也能够引导LLM沿着逻辑连贯的思路进行。 总结 尽管上下文限制在表面上似乎是一种严格的约束,它们实际上促使我们成为更加周到和高效的沟通者。随着大型语言模型不断进化,我们与它们交互的方式也在不断地改进。通过深入理解上下文限制的影响,并据此调整我们的提示设计,我们能够创建出既精确又高效的提示,从而获得相关性强且质量高的输出。 课程05:精通AI提示中的风格艺术 介绍: 本课程将教你如何与大型语言模型(LLMs)进行有效交流,以便在提示中达到预期的风格效果。精通这一技巧对于创建能够产生定制、精确且风格一致的结果的提示至关重要。无论是撰写专业文档、编织富有创意的故事,还是其他任何形式的输出,深入理解风格的细节都将提升你的提示工程技巧。 深入风格规范的理解 可以把风格规范比作是向一位技艺高超的厨师提出菜品要求的过程。正如你会具体说明你希望牛排的烹饪程度一样,你也可以指引LLMs输出你想要的文本“味道”。风格涵盖了多个方面,如语调(正式或非正式)、用词(简洁或专业)、篇幅(简短或详尽)等。 比如说: 结果: "In every challenge lies an opportunity to grow stronger together. Let's embrace our journey with courage and unite our efforts toward a future filled with success. Remember, the strength of the team is each individual member, and the strength of each member is the team." "In every challenge lies an opportunity to grow stronger together. Let's embrace our journey with courage and unite our efforts toward a future filled with success. Remember, the strength of the team is each individual member, and the strength of each member is the team." 只需从提示中去掉“Length: short”这一要求,你就能明显感受到输出结果的不同: "Alone we can do so little; together we can do so much. Let's harness our collective strengths, dreams, and ambitions. Every challenge we face is an opportunity to grow stronger, together. Remember, it's not just about reaching the top; it's about the journey we share and the bonds we build. Let's move forward, hand in hand, towards our shared vision. Because when we unite, there's nothing we can't achieve." "Alone we can do so little; together we can do so much. Let's harness our collective strengths, dreams, and ambitions. Every challenge we face is an opportunity to grow stronger, together. Remember, it's not just about reaching the top; it's about the journey we share and the bonds we build. Let's move forward, hand in hand, towards our shared vision. Because when we unite, there's nothing we can't achieve." 提示中的语气作用 语气在影响提示如何被解读以及你获得何种类型回应上具有显著作用。明确设定语气可以有效地指导LLM,使其生成的回应更贴合你所期望达到的情绪或专业背景。 示例: 在此示例中,通过设定语气,指引LLM在保证信息专业性的同时增加其易获取性,以确保内容对受众而言不过于技术化。 调整语言风格和复杂度 当面向的受众在专业知识水平上存在广泛差异时,明确指出所期望输出的语言风格和复杂度水平显得尤为关键。这可能意味着根据目标读者的需求,选择以简洁明了或含有专业术语的语言进行回答。 示例: 通过这一提示,我们指示LLM采用通俗易懂的表达方式,使得那些非技术背景的人士也能够理解复杂技术。 关于长度和细节的说明 最终,明确告知所需内容的长度和详细程度对于提高交流效果至关重要。这一步骤可能包括要求进行简明扼要的概述或提供详尽的阐述。 示例: 请注意,在讨论“长度”时我们给出了非常明确的指示,用了两句话,因为“短”或“长”往往是相对的,理解起来可能有难度。 总结 深入理解和巧妙应用风格设定,可以极大地增强提示的设计与开发过程。正如雕塑家通过雕凿揭露内在的形态一样,明确你的提示中的风格有助于精确塑形输出结果,使其符合你的预期。 你看,你已经接近完成这门课程了,准备好作为提示工程师开启新的篇章。虽然肯定还有更多知识等待学习,但这门课程应该为你提供了一个坚实的基础,引领你前行。在我们结束课程之前,让我们进行更多的实践练习。 第二阶段:利用大型语言模型(LLMs)精准控制输出量 本中级课程旨在教授如何巧妙调整大型语言模型的输出大小。课程将从生成简明单词到撰写广阔文章等不同范围,引导学习者学习如何精确操控AI生成内容的长度及其细节。这一能力对于按照特定需求定制回答、在内容创作、编程等多个领域内的应用至关重要。 课程06:实现输出长度的精确控制:核心原则 简介 欢迎参加我们的课程“一击即中:精准控制输出长度的核心原则”。本课程是关于如何利用大型语言模型(LLMs),如GPT 3.5,进行输出长度控制的关键环节。掌握如何精确控制输出长度——无论是生成一个词还是撰写一篇详尽的文章——对于从简洁的数据生成到丰富