公司动态
提示词的编写技巧
《扣子开发AI Agent智能体应用人工智能技术丛书》(宋立桓王东健陈铭毅程东升)【摘要 书评 试读】- 京东图书提示词Prompt是一种自然语言的指令用于告诉大语言模型需要生成什么样的内容。它也被称为“魔咒”不同的“魔咒”内容可以召唤出指定的“神奇魔法”。通俗地说提示词主要用来指导大语言模型完成具体的任务。一个精心设计的提示词能够最大限度地发挥大语言模型的能力使其生成高质量、符合预期的内容。反之如果提示词不够清晰、具体AI生成的结果可能偏离用户的初衷甚至产生误导性或有害的内容。可以说提示词在人工智能应用中扮演着至关重要的角色其质量直接决定了AI输出内容的质量。在搭建智能体的过程中设置提示词是一个非常重要的步骤。你可以根据自己的业务需求直接编写提示词也可以选择使用现成的提示词模板。如果需要还可以引用一些已有的提示词资源。此外扣子平台支持通过AI自动生成提示词这不仅可以节省时间还能确保提示词更加精准。本章将介绍提示词的工作原理、分类、写作方法、编写技巧以及在扣子平台设置提示词的实操方法。6.1 提示词的工作原理要理解提示词的工作原理我们需要先了解一下当前主流的AI模型—大型语言模型的基本架构。以GPT系列模型为例它们本质上是一个巨大的神经网络通过在海量文本数据上的预训练学习自然语言的统计规律和语义特征。当我们给GPT模型输入一个提示词时模型会将其编码为一个高维向量然后基于这个向量在神经网络中进行前向传播预测下一个最可能出现的词。通过这种自回归Auto-regressive的方式GPT可以根据提示词生成连贯、通顺的文本。举个例子如果我们给GPT输入提示词Once upon a time模型会根据在预训练阶段学到的英语语言模型预测下一个词最有可能是there然后预测下一个词直到生成一个完整的故事。在这个过程中提示词起到了为文本生成定下基调、指明方向的作用。除了文本生成外提示词还可以引导AI完成问答、摘要、翻译等任务。以问答为例我们可以将问题作为提示词输入AI会根据提示词中的关键信息在其知识库中搜索答案并生成自然语言形式的回复。提示词通过给AI提供必要的背景信息和任务指令引导其在海量知识中检索、组合、生成符合人类需求的内容。它是人类赋予AI明确目标和行为约束的重要工具。随着AI模型变得越来越强大提示词的设计也变得越来越关键它已经成为人工智能领域一门新兴的艺术—提示词工程Prompt Engineering。一个优秀的提示词工程师需要深入理解AI模型的工作原理洞察用户的真实需求并用巧妙的语言将二者连接起来。这不仅需要扎实的自然语言处理知识还需要跨学科的思维和丰富的想象力。相信在未来随着AI技术的进一步发展提示词工程将成为一个充满机遇和挑战的热门领域。6.2 提示词的分类和写作方法本节将深入讲解提示词的分类和写作方法以及设计优质提示词的关键技巧。1. 提示词可以分为两大类根据应用场景和目的的不同提示词可以分为两大类任务型提示词和角色扮演型提示词。1任务型提示词任务型提示词直接描述了需要AI完成的具体任务如“请写一篇关于春天的诗歌”“请翻译以下英文段落”等。这类提示词通常包含明确的指令和目标AI会根据提示词中的关键信息在其知识库中检索、组合、生成相应的内容。任务型提示词的优势在于目的性强可以相对容易地引导AI生成符合预期的输出。但其局限性也比较明显即过于依赖提示词本身的质量缺乏灵活性和创造力。2角色扮演型提示词与任务型提示词不同角色扮演型提示词并不直接描述任务而是通过设定一个虚拟的角色或场景让AI代入其中进行创作。例如“假设你是一位中世纪的吟游诗人请创作一首歌颂骑士精神的诗歌”。这类提示词给予了AI更大的想象空间和创作自由有助于生成更加新颖、有趣的内容。同时通过角色扮演AI可以从不同的视角思考问题并提供多元化的观点和见解。但角色扮演型提示词对AI的理解能力和创造力提出了更高的要求如果设定的角色或场景过于抽象、复杂AI可能难以准确把握导致生成的内容偏离预期。2. 优质的提示词写作都应遵循CRISPE原则无论是任务型提示词还是角色扮演型提示词优质的提示词写作都应遵循以下CRISPE原则。1清晰Clear提示词应该用简洁、明了的语言描述任务或角色避免使用模棱两可或过于抽象的表述。AI对自然语言的理解能力虽然在不断提升但仍然存在局限性。清晰的提示词可以帮助AI准确理解人类的意图减少误解和无效输出。2相关Relevant提示词中包含的信息应与目标任务紧密相关。不必要的背景信息或细节不仅会增加提示词的复杂度还可能分散AI的注意力导致生成的内容偏离主题。因此在写作提示词时我们应该聚焦于最关键的信息去除无关的噪声。3具体Specific具体的提示词可以为AI提供更多的约束和指引帮助其生成更加符合预期的内容。例如与其笼统地要求AI“写一篇文章”不如具体说明文章的主题、目标受众、字数要求等。当然也要注意平衡具体和灵活之间的关系过于具体的提示词可能会限制AI的创造力。4全面Comprehensive一个全面的提示词应涵盖完成任务所需的所有关键信息不要遗漏重要的细节或要求。例如在要求AI生成一个故事时除了提供故事梗概外还可以指定故事的体裁、风格、主要角色等。全面的提示词可以最大限度地发挥AI的能力提高输出内容的质量。5示例Examples在提示词中适当举例可以帮助AI更好地理解任务要求和期望输出。例如在要求AI生成一首诗歌时我们可以给出几句示例让AI了解我们想要的风格和意境。示例不仅能阐明人类的意图还能启发AI的创意思维。除了遵循CRISPE原则外我们还可以通过一些写作技巧在提示词中控制AI生成内容的语气、风格和结构。例如语气可以在提示词中明确指定AI应该使用的语气如严肃的、幽默的、专业的等。例如“请用轻松幽默的语气介绍量子力学的基本概念。”风格提示词可以指定生成内容的风格如新闻报道风格、学术论文风格、故事叙述风格等。例如“请以科幻小说的风格创作一个发生在未来火星殖民地的故事。”结构对于较长的生成任务可以在提示词中提供一个大纲或框架引导AI按照特定的结构组织内容。例如“请写一篇关于全球变暖的文章包括以下几个部分全球变暖的定义和成因、全球变暖的影响、应对全球变暖的措施、总结与展望。”总之设计一个优质的提示词需要同时考虑清晰性、相关性、具体性、全面性等因素并根据任务的需求灵活运用示例、语气、风格、结构等元素。这是一个需要不断实践和优化的过程也是提示词工程师必须掌握的核心技能之一。6.3 编写有效提示词的技巧在搭建智能体或配置工作流中的大模型节点时首要步骤是编写提示词明确设定智能体和大模型节点的身份和目标。大语言模型会根据自己对提示词的理解来响应用户问题。一个好的提示词可以显著提升大语言模型的输出质量。本节将逐步拆解编写提示词的技巧并通过举例进行说明。1. 明确目标和任务编写提示词的第一步是明确智能体或大模型节点的目标和任务。问问自己这个智能体需要完成什么它应该如何表现例如你的目标是创建一个旅游助手那么提示词可以这样写“你是一个旅游助手负责提供详细的旅游攻略和建议。”2. 简洁而具体提示词要尽量简洁不要绕弯子。直接告诉智能体或大模型节点需要完成的任务。例如如果想让智能体回答天气问题提示词可以写“回答用户关于当地天气的问题包括温度和降雨情况。”如果让智能体翻译一句话可以写“请将‘我爱中国’翻译成英文”。3. 使用上下文信息加入上下文信息可以让提示词更加精准。例如你正在搭建一个智能客服可以写“用户正在咨询关于退货政策的问题请根据公司的退货政策提供详细解答。”如果让智能体续写一个故事需要在提示词中简单描述故事之前的情节以便它更好地续写。4. 避免歧义提示词中的语言一定要清楚避免模糊或多义的表达。模糊的指令可能导致智能体或大模型节点产生错误的理解从而影响其性能。例如不要写“请提供帮助”而应该改成具体的要求“告诉用户如何重置密码。”5. 反馈和迭代编写提示词是一个迭代的过程根据智能体或大模型节点的反馈不断调整和优化提示词以提高其效果。根据智能体或大模型节点的回答观察效果是否符合预期。如果不满意可以逐步调整提示词。例如最初的提示词是“帮我写一篇关于环境保护的文章。”如果发现结果不够深入可以修改为“写一篇关于环境保护的文章重点讨论塑料污染的危害。”6. 利用示例提供示例输入和预期输出可以帮助智能体或大模型节点学习如何正确响应。例如输入“我需要一份关于意大利的旅游攻略。”期望的输出是智能体提供一份详细的意大利旅游攻略包括景点和美食。如果想让智能体判断句子的情感倾向可以给它几个示例句子如“今天我很开心”是积极的“我考试没及格好难过”是消极的然后让它对新的句子进行判断。7. 考虑多样性用户的表达方式多种多样在编写提示词时需要考虑不同用户的表达方式。智能体或大模型节点应该能够处理多种不同表达方式的输入。例如“无论用户用什么方式提问帮助用户找到最接近的问题答案。”8. 测试和验证在发布智能体或工作流之前进行充分的测试和验证以确保提示词在各种情况下都能正常工作包括测试对异常输入的处理能力。例如测试智能体如何处理一些异常输入。如果用户问了无关的问题智能体能否正确回答如果用户输入错误的信息智能体能否纠正9. 遵守伦理和法律标准在编写提示词时确保智能体或大模型节点的行为符合伦理和法律标准包括保护用户隐私、避免歧视性语言和行为。例如“不要记录用户的隐私信息。不要提供与健康相关的错误建议。”表6-1所示是一个提示词示例包含人物设定、功能流程、约束限制和回复格式。在为扣子的智能体或工作流大模型节点编写提示词时支持通过输入{}来引用已经配置到智能体或工作流的技能例如插件工具、工作流、图像流以及知识库可以实现提示词的高效编写。