宝箱配钥匙:走进吴恩达系列的prompt!

最近关注到的吴恩达系列让我受益匪浅,学到了里面的Prompt Engineering,讲解如何有效地构造和优化问题(prompts)以引导大型语言模型(LLMs)产生高质量、目标导向的响应。在这里梳理思路,展示出prompt的魅力。

何为prompt

大家应该都知道LLM ------大型语言模型 (Large Language Model) 。把LLM比作财富无数的宝库,蕴含着巨大的潜力和价值,它们能够理解和生成人类语言,从而在各种应用场景中发挥重要作用,比如内容创作、代码生成、语言翻译等。

而prompt就是打开宝库的钥匙,通过精心设计的提示,我们可以引导这些模型按照我们的意图输出信息或完成特定任务。正确的prompt能极大地提升模型的性能和实用性。

在人工智能(AI)领域,Prompt(提示词)是一种用来引导或激发AI模型(尤其是大型语言模型)生成特定输出或执行特定任务的文本输入。它充当了用户与AI系统之间沟通的桥梁,通过提供上下文、指令或问题的形式,帮助AI理解期望的回应内容和格式。简单来说,Prompt就像是给AI的"提示",告诉它应该做什么或者如何响应。

编程中prompt的魅力

前面我们介绍了prompt与编程的结合,现在通过代码来感受prompt的魅力。我们需要总结一段文字,可以这样完成:

  1. 先从本地node_modules 引入openai模块并实例化,创建main()入口主函数,搭建好基本的框架。这里的apiKey属于个人财富,所以我们要保证它的安全性。创建一个.env 文件,环境变量对象,包含着所有的环境变量,我们在里面定义好自己的apiKey,然后引入dotenv模块。
javascript 复制代码
const OpenAI = require('openai')
require('dotenv').config()

const client = new OpenAI({
    apiKey: 'OPENAI_API_KEY', //安全
    baseURL: 'https://api.chatanywhere.tech/v1'
}) 

async function main() {}
  1. 调用OpenAI API来创建一个聊天完成(chat completion)请求。指定适合聊天的的模型版本'gpt-3.5-turbo'。
php 复制代码
const chatCompletion = await client.chat.completions.create({
    model: 'gpt-3.5-turbo', // 适合聊天的模型
    messages: [
        {
            role: 'user',
            content: prompt
        }
    ]
})
console.log(chatCompletion.choices);
  1. 将我们想要总结的文本写出来,在prompt中简单直接地输入我们想要得到的结果。
javascript 复制代码
let text = `
    您应该提供尽可能清晰、具体的指示,以表达您希望模型执行的任务\
    这将引导模型朝向所需的输出,并降低收到无关或不正确响应的可能性。\
    不要将写清晰的提示词与简短的指示词混淆。\
    在许多情况下,更长的提示词可以为模型提供更多的清晰度和上下文信息,\
    从而拿到更详细的相关输出。
`
let prompt = `
    把下面的文本总结成一句话。
    ${text}
`

这是最后返回的结果,但是如果说可以做的更好呢,这里就要提到prompt设计模式了。

Prompt设计模式

Prompt设计模式是指构建高效、引导性和创造性的提示(prompts)以优化AI回应质量的方法策略。这些模式旨在帮助用户明确表达需求,同时促使AI系统产生准确、有创意且符合上下文的回答。

1. 长提示效果更好

提供较为详尽、具体或包含多个元素的指令、问题或描述。这类提示往往旨在引导AI进行更复杂、细致的生成或分析任务,相比简短的命令,它们能够提供更多上下文信息、细节说明或是创意指引,帮助AI更准确地理解和执行用户的意图。甚至可以添加要求,将需求细致化,分步化。

r 复制代码
let prompt = `
    把用三个反引号括起来的文本总结成一句话,20字以内,英文。
    \`\`\`${text}\`\`\`
`
2. 给它一些例子,展示LLM的学习能力

向其提供大量标注好的数据样本,这些样本包含了预期输出的结果。这个过程是机器学习和深度学习的核心部分,通过这些例子,AI模型能够学习特征、规律和模式,并基于此进行预测、分类、生成等任务。

markdown 复制代码
let prompt = `
    您的任务是以一致的风格回答问题。

    <孩子>: 教我耐心。

    <祖父母>: 挖出最深峡谷的河流源于一处不起眼的泉眼;最宏伟的交响乐从单一的音符开始;最复杂的挂毯以一根孤独的线开始编织。

    <孩子>: 教我韧性。
`

prompt的魅力无限,让我们一起学习,一起进步!

相关推荐
棒棒的皮皮6 小时前
【深度学习】YOLO核心原理介绍
人工智能·深度学习·yolo·计算机视觉
2501_941804326 小时前
从单机消息队列到分布式高可用消息中间件体系落地的互联网系统工程实践随笔与多语言语法思考
人工智能·memcached
mantch6 小时前
个人 LLM 接口服务项目:一个简洁的 AI 入口
人工智能·python·llm
档案宝档案管理6 小时前
档案宝自动化档案管理,从采集、整理到归档、利用,一步到位
大数据·数据库·人工智能·档案·档案管理
小二·6 小时前
Pinia 完全指南:用 TypeScript 构建可维护、可测试、可持久化的 Vue 3 状态管理
javascript·vue.js·typescript
bug总结7 小时前
Vue3 实现后台管理系统跳转大屏自动登录功能
前端·javascript·vue.js
wenzhangli77 小时前
Ooder A2UI 框架中的矢量图形全面指南
人工智能
躺柒7 小时前
读共生:4.0时代的人机关系07工作者
人工智能·ai·自动化·人机交互·人机对话·人机关系
码丽莲梦露7 小时前
ICLR2025年与运筹优化相关文章
人工智能·运筹优化
ai_top_trends7 小时前
2026 年度工作计划 PPT 模板与 AI 生成方法详解
人工智能·python·powerpoint