「我的AIGC咒语库:分享和AI对话交流的秘诀——如何利用Prompt和AI进行高效交流?」1

本文涉及的产品
NLP自然语言处理_高级版,每接口累计50万次
NLP 自学习平台,3个模型定制额度 1个月
NLP自然语言处理_基础版,每接口每天50万次
简介: 前言基础介绍什么是Prompt?什么是 Prompt Engineering?为什么需要 Prompt Engineering?如何进行 Prompt Engineering?Prompt的基本原则Prompt的编写模式AI 可以帮助程序员做什么?技术知识总结拆解任务阅读代码/优化代码代码生成生成单测更多 AI 应用/插件

前言
人工智能(AI)是当今科技领域的热门话题,尤其是自然语言处理(NLP)技术,它可以让机器理解和生成自然语言。随着大型语言模型(LLM)的发展,如 GPT-3、DALL-E 等,我们可以利用这些模型来完成各种有趣和有用的任务,如写诗、画画、编程等。但是,要让这些模型按照我们的意愿工作,并不是一件容易的事情。这就需要用到一种叫做 Prompt Engineering 的技术。

当你还在错误使用对话 AI 工具如 GPT,可能会觉得其作用不过是知识平移总结或简单问答。实际上,当了解先进的用法、知悉如何做到 better prompt,你会发现:AI 不是来替代你的,是来帮助你更好工作。如果还用搜索引擎的“关键词匹配”、“关键词命中”思路去思考人工智能的使用,已然有些落后。本篇在详细介绍几个GPT帮助程序员工作(干货满满)的应用场景之后,将为你分享AI的正确打开方式——better prompt。

基础介绍
AIGC提示词通常由多个单词、词组或短句构成,以,分割组成;
提示词分为正向提示词(positive prompt)和反向提示词(negative prompt)。正向确定生成方向,反向排除生成方向;
总数量建议不超过75个;
AI程序会依照概率来选择性执行,如果提示词之间有冲突,AI会根据权重确定的概率来随机选择执行哪个提示词;
生成图片的尺寸越大,需要的提示词就越多,否则提示词之间会相互污染;
提示词支持使用emoji : call_me_hand:,且表现力较好。
什么是Prompt?
prompt顾名思义就是“提示”的意思。prompt简单来说就是你给AI的指令。prompt可以是一段文字,比如你和ChatGPT等对话的,也可以是按照一定的格式的参数描述,比如AI绘图的软件,使用参数的情况比较多。

提示词(Prompt)是与AI模型交流的语言,用以告诉AI模型想要生成的图像的特征。提示词的准确性、精准度直接决定了生成的图像是否符合我们的预期。

和Prompt对应的一个专业词汇是Prompt Engineering(PE)。PE是人工智能(AI)领域中的一个概念,尤其是自然语言处理(NLP)领域。PE通常通过将问题转换为特定格式的输入,并使用预定义的模板、规则和算法来处理,让AI能够更好地理解任务并给出相应的回答。PE的优点是可以使AI更加灵活和精确地理解任务,并且能够减少因为语言表达不清晰而导致的误解和错误,使其能够准确、可靠地执行特定任务。

通俗来说,就是你要掌握和AI对话的技巧,让AI真正的懂你,特别是现在很多的AI产品的智能化水平都还有待进一步的提升,因此,学一点Prompt Engineering的知识是很有必要的。

什么是 Prompt Engineering?
Prompt Engineering 是一种在人工智能领域,特别是自然语言处理领域的概念。它指的是如何设计输入数据,使其能够清楚地描述任务,并引导模型给出正确和合理的输出。换句话说,它就是给 AI 模型的指令。

Prompt 可以是一个问题、一段文字描述,甚至可以是带有一堆参数的文字描述。AI 模型会基于 prompt 所提供的信息,生成对应的文本或图片。

为什么需要 Prompt Engineering?
你可能用过不少 AI 相关的产品,你或许会觉得好像只需要会说话、会打字,就能让 AI 输出答案。好像不需要什么技术。

但实际上,并不是所有的 prompt 都能得到满意或精确的答案。因为人类的语言从根本上说是不精确的2,目前机器还没法很好地理解人类说的话3。所以才会出现 Prompt Engineering 这个技术。另外,受制于目前大语言模型 AI 的实现原理4,部分逻辑运算问题、格式问题等等都需要额外对 AI 进行提示。

举个例子,在 ChatGPT 里输入这样一个简单数学题:

What is 100100/40056?
1
ChatGPT 会返回一个错误答案:

0.4464
1
但如果我们稍微改变一下 prompt 的格式:

Calculate: (100100)/(40056)
1
ChatGPT 就会返回正确答案:

0.04464
1
可见 prompt 的设计对于结果有很大影响。

如何进行 Prompt Engineering?
Prompt Engineering 是一门艺术也是一门科学。它需要结合创造力和逻辑思维来设计出最优化的 prompt 。目前还没有统一标准或规则来指导 prompt 的设计 ,但有一些基本原则和建议可以参考:

包含完整且相关的信息:prompt 应该尽可能地提供足够多和具体化的信息来描述任务,并避免无关或冗余信息。

简洁易懂并减少歧义:prompt 应该使用简单明了且无歧义性质词汇表达任务,并避免使用复杂或模棱两可词汇。

明确标签空间:prompt 应该清楚地定义输出结果所属范围,并在示例中按照真实分布采样标签。

统一格式:prompt 应该保持输入和输出数据格式统一,并在示例中展示格式的要求。

下面是一些 prompt 的实例,可以看出不同的 prompt 对于结果有不同的影响:

Less effective prompt:

Write a poem about OpenAI.
1
Output:

OpenAI is a visionOf a future that is brightWhere machines can learn and createAnd help us do what's rightOpenAI is a missionTo make AI accessibleTo everyone who wants to use itAnd make it beneficialOpenAI is a challengeTo push the boundaries of AIAnd explore the possibilitiesThat lie beyond the sky
1
Better prompt:

Write a short inspiring poem about OpenAI, focusing on the recent DALL-E product launch (DALL-E is a text to image ML model) in the style of William Blake.Output:To see the world in a grain of sand,And a heaven in a wild flower,Hold infinity in the palm of your hand,And eternity in an hour.This is the power of DALL-E,The latest wonder from OpenAI,A model that can generate images,From any text that you supply.With DALL-E you can create,A new world of imagination,Where anything you can think of,Becomes a visual sensation.DALL-E is not just a tool,But a source of inspiration,A glimpse of what AI can do,To enrich our human nation.
1
Prompt的基本原则
和AI交互时,Prompt的基本原则是十分重要的。提交Prompt时,应该遵循以下原则,以确保机器能够更好地理解用户的意图并给出相应的回答:

明确任务描述:在提交Prompt时,应该尽可能清晰明确地描述任务的具体信息,包括任务目标、所需操作、相关条件等。
例如,在与AI聊天机器人交互时,可以通过简单的问题来引导机器理解用户需求。如:“你需要我帮你做什么?” “你需要查询什么信息?” 能够尽量明确任务描述,让机器能够更好地理解用户需求并给出相应建议。

使用常用词汇:在提交Prompt时,应使用常见的词汇和语言表达方式,避免使用生僻单词和复杂的句式,以便机器更容易理解。

考虑语境和上下文:在提交Prompt时,应该考虑到所处的语境和上下文环境,以便机器能够从语言环境中获取更多的信息来理解用户的意图。

提供多样化信息:在提交Prompt时,应该尝试提供多样化的信息,包括文字、图像、语音等,以促进机器更全面地理解用户需求。

确定回答形式:在提交Prompt时,应该确定回答的形式,例如文字、语音等,并确保机器可以合理地解析和输出回答信息。

更进一步的原则包括,向机器提供足够的上下文信息、结构清晰地组织Prompt以使机器更容易进行处理,使用简单明了的问题引导用户去表述建议,从而更好地理解需求。此外,在交互中,用户还应该尽量用简短的句子提出问题,以便AI机器人更快速和准确地回答问题。

Prompt的编写模式
这里介绍4种常用的Prompt模式,平时遇到的可能是这几种的变种或是组合。

特定指令(By specific)
在这种模式下,我们给模型提供一些特定信息,例如问题或关键词,模型需要生成与这些信息相关的文本。这种模式通常用于生成答案、解释或推荐等。特定信息可以是单个问题或多个关键词,具体取决于任务的要求。
如以 翻译、告诉我,等关键字开头:

翻译一下:Prompt Engineering?

告诉我“Prompt Engineering”的定义?

在这种模式下,AI可以帮我完成:补全句子,文字翻译,文本摘要,问答和对话等任务,这是最常用的Prompt模式。

指令模板(Instruction Template)
在这种模式下,我们给模型提供一些明确的指令,模型需要根据这些指令生成文本。这种模式通常用于生成类似于技术说明书、操作手册等需要明确指令的文本。指令可以是单个句子或多个段落,具体取决于任务的要求。
这种模式下,可以让AI具体地了解你想要的内容:

例如,让AI推荐三本中文科幻小说,可以这样写

给我推荐三中文的科幻小说,

推荐格式:1、书名:2、作者:3、主要内容:4、推荐理由:

在这种模式下,你还可以将一段话按照你给的模板,让AI帮你总结。也可以是你给AI一些答案的例子,AI通过学习,给出他的答案。

代理模式(By proxy)
Proxy 模式是指用户可以要求 ChatGPT 以特定的身份、角色或者身份扮演某个特定的人、角色或对象来生成回答。这种模式通常用于模拟某个特定人物的语言风格和语境,生成特定情境下的对话、回答或其他形式的文本。
这个模式也是比较的常用的,前段时间大家让chatGPT写申论就是代理模式。例如,描述秋天,小学生、大学生、老年人的不同身份,内容是有很大的不同,AI的身份和角色的把握还是很准确的。因此,在提问前告诉你的身份很重要。

示例模式(By demonstration)
在这种模式下,我们给模型提供一些示例文本,模型需要生成与示例文本类似的文本。这种模式通常用于生成类似于给定示例的文本,例如自动生成电子邮件、产品描述、新闻报道等。示例文本可以是单个句子或多个段落,具体取决于任务的要求。
AI 可以帮助程序员做什么?
技术知识总结
刚开始接触学习一门技术的时候,难免需要去查看文档。现在的手册非常丰富。往往对于一个初学者来说,需要接触的信息太多、排版五花八门,学起来云里雾里。

这时候就可以借助 ChatGPT 的总结能力,例如我想学习一下 K8S 的相关知识,我发给它一个文档的地址,让它帮我总结。

prompt: https://kubernetes.io/zh-cn/docs/concepts/overview/ 总结这篇文档。
image.png
可以看到,它很好地总结了这篇中文的文档,并且对每一个关键点进行了概括。用最少的语言让你能够搞懂你想要的知识点。

因为 ChatGPT 是有上下文的,它知道你需要的内容是中文的总结,所以在这里你继续发一篇英文的文档给它,它也会用中文帮你总结。

prompt: 总结这篇文档https://kubernetes.io/docs/concepts/overview/components/
image.png
目前 chatgpt 的免费版本数据库的截止时间是 2021 年,也就是说如果问它比较新的内容,它是无法总结的,甚至是会随意编撰。例如这里询问一个关于电影《流浪地球 2》的问题,让它总结一下 wikipedia 里的介绍。image.png
因为这时候电影还没有上映,所以之前的内容还都是错误的,它的总结是不准确的。

当我们将整个网站的内容复制进来,让 chatgpt 进行总结。但是这时候会发现,文章太长了,会收到报错。
image.png
这时候,就要运用自己的想象力,使用 prompt 来进行突破了。我们需要把文章进行段落拆分,每一段都符合它的标准。
image.png
将内容拆分成 7 段,发送完成之后,它就会自动总结了。image.png
image.png
这样,才能得到了一篇文档的正确总结。

拆解任务
上文所描述的内容,可以算是借助 AI 让程序猿日常生活效率提升。那么在工作当中,AI 如何帮助我们提效?

我们从需求端获取一个需求以后,很多情况下我们的任务并不能够非常准确的估计时,原因就是我们并没有将任务拆分清楚,所以并不能够对每一项任务进行估计,导致风险的发生。

这时候可以简要描述一下我们这次的需求点,让 ChatGPT 帮我们进行任务拆解。
image.png

相关文章
|
1月前
|
人工智能 开发框架 安全
Smolagents:三行代码就能开发 AI 智能体,Hugging Face 开源轻量级 Agent 构建库
Smolagents 是 Hugging Face 推出的轻量级开源库,旨在简化智能代理的构建过程,支持多种大语言模型集成和代码执行代理功能。
307 69
Smolagents:三行代码就能开发 AI 智能体,Hugging Face 开源轻量级 Agent 构建库
|
28天前
|
Web App开发 机器学习/深度学习 人工智能
Weebo:支持多语言和实时语音交流的开源 AI 聊天机器人,回复具备语调、情感的语音
Weebo 是一款基于 Whisper Small、Llama 3.2 和 Kokoro-82M 技术的 AI 语音聊天机器人,支持实时语音交互和多语言对话,适用于个人助理、娱乐互动和教育辅导等多种场景。
194 17
Weebo:支持多语言和实时语音交流的开源 AI 聊天机器人,回复具备语调、情感的语音
|
2月前
|
机器学习/深度学习 人工智能 安全
CCF-CV企业交流会:打造大模型时代的可信AI,探索AI安全治理新路径
近日,由中国计算机学会计算机视觉专委会主办的《打造大模型时代的可信AI》论坛顺利举行。论坛邀请了来自上海交通大学、中国科学技术大学等机构的专家,从立法、监管、前沿研究等多角度探讨AI安全治理。合合信息等企业展示了图像篡改检测等技术,助力AI向善发展。
75 11
CCF-CV企业交流会:打造大模型时代的可信AI,探索AI安全治理新路径
|
1月前
|
人工智能 物联网
AI电影从这个LoRA开始:魔搭AIGC1月赛题公布&12月赛题获奖作品新鲜出炉
魔搭社区LoRA创意挑战赛月度赛第三期来啦! 1月赛题揭晓:电影风格模型训练大赛
|
1月前
|
人工智能 数据处理 C#
AI Dev Gallery:微软开源 Windows AI 模型本地运行工具包和示例库,助理开发者快速集成 AI 功能
微软推出的AI Dev Gallery,为Windows开发者提供开源AI工具包和示例库,支持本地运行AI模型,提升开发效率。
87 13
|
1月前
|
SQL 人工智能 关系型数据库
PolarDB-PG AI最佳实践 2 :PolarDB AI X EAS实现自定义库内模型推理最佳实践
PolarDB通过POLAR_AI插件支持使用SQL调用AI/ML模型,无需专业AI知识或额外部署环境。结合阿里云EAS在线模型服务,可轻松部署自定义模型,在SQL中实现如文本翻译等功能。
|
30天前
|
人工智能 编解码 安全
全球AI新浪潮:智能媒体服务的技术创新与AIGC加速出海
本文介绍了智能媒体服务的国际化产品技术创新及AIGC驱动的内容出海技术实践。首先,探讨了媒体服务在视频应用中的升级引擎作用,分析了国际市场的差异与挑战,并提出模块化产品方案以满足不同需求。其次,重点介绍了AIGC技术如何推动媒体服务2.0智能化进化,涵盖多模态内容理解、智能生产制作、音视频处理等方面。最后,发布了阿里云智能媒体服务的国际产品矩阵,包括媒体打包、转码、实时处理和传输服务,支持多种广告规格和效果追踪分析,助力全球企业进行视频化创新。
|
3月前
|
存储 人工智能 搜索推荐
Memoripy:支持 AI 应用上下文感知的记忆管理 Python 库
Memoripy 是一个 Python 库,用于管理 AI 应用中的上下文感知记忆,支持短期和长期存储,兼容 OpenAI 和 Ollama API。
175 6
Memoripy:支持 AI 应用上下文感知的记忆管理 Python 库
|
4月前
|
人工智能 自然语言处理 数据挖掘
Claude 3.5:一场AI技术的惊艳飞跃 | AIGC
在这个科技日新月异的时代,人工智能(AI)的进步令人惊叹。博主体验了Claude 3.5 Sonnet的最新功能,对其卓越的性能、强大的内容创作与理解能力、创新的Artifacts功能、视觉理解与文本转录能力、革命性的“computeruse”功能、广泛的应用场景与兼容性以及成本效益和易用性深感震撼。这篇介绍将带你一窥其技术前沿的魅力。【10月更文挑战第12天】
187 1
|
5月前
|
人工智能 物联网 开发者
魔搭上线AIGC专区,为开发者提供一站式AI创作开发平台
魔搭上线AIGC专区,首批上架157个风格化大模型,专业文生图全免费~
182 16

热门文章

最新文章