【AI大模型应用开发】1.0 Prompt Engineering(提示词工程)- 典型构成、原则与技巧,代码中加入Prompt

从这篇文章开始,我们就正式开始学习AI大模型应用开发的相关知识了。首先是提示词工程(Prompt Engineering)。

文章目录

    • 0. 什么是提示词(Prompt)
    • 1. 为什么Prompt会起作用 - 大模型工作原理
    • 2. Prompt的典型构成、原则与技巧
    • 3. 开始使用Prompt
    • 4. 代码中加入Prompt
      • 4.1 OpenAI API解释

0. 什么是提示词(Prompt)

AI大模型火了也已经有一年多了,相信大家或多或少都听过或见过一个词叫“Prompt”,这就是提示词。
用户给大模型输入一个Prompt,大模型会根据你的Prompt给出一个回复,这是目前为止,最常用的使用大模型的方法。网络上很多号称“不用编程,轻松实现自己的应用、助理”等,都是基于Prompt来做的。即使是需要通过编程的方式来使用大模型达到自己需求的,过程中也会大量使用Prompt,将Prompt固化到程序中,作为“代码”的一部分
所以,在现在的AI时代,Prompt也可以看作是一门【编程语言】,最近新兴了一个职业叫做【提示词工程师】,也就类似是AI时代的程序员。

现在Prompt工程并没有形成一套完整的标准化体系,网络上关于如何使用Prompt的文章也是铺天盖地,非常杂乱,让人眼花缭乱。因为本人想以实战为主,因此本文只是总结一下Prompt的最基本构成和原则

重要提醒

  • Promt是一个需要不断优化的过程,没有哪一篇文章或哪一个Prompt是适用于所有场景,或者拿来直接可用的。
  • 即使同一个场景,相同的Prompt,不同的大模型之间也会效果不同。如果换了大模型,提示词大概率需要重新优化
  • 所以不要光看网上的什么【最佳实践】,还是要下场实操,在不断迭代中学会优化Prompt的方法,才是最重要的。

1. 为什么Prompt会起作用 - 大模型工作原理

简要概括:它只是根据上文,猜下一个词的概率,在前几个概率大的词中选择一个输出。
在这里插入图片描述

2. Prompt的典型构成、原则与技巧

在这里插入图片描述

3. 开始使用Prompt

如果不会编程,或不想写代码,可以直接在AI软件中使用Prompt,例如:

  • ChatGPT
    在这里插入图片描述

  • 文心一言
    在这里插入图片描述

4. 代码中加入Prompt

4.1 OpenAI API解释

下面是上篇文章【AI大模型应用开发】0. 开篇,用OpenAI API写个Hello World !我们的“Hello World”程序,里面包含了一个函数chat.completions.create

from openai import OpenAI
# 加载 .env 到环境变量
from dotenv import load_dotenv, find_dotenv
_ = load_dotenv(find_dotenv())client = OpenAI()response = client.chat.completions.create(model="gpt-3.5-turbo-1106",messages=[{"role": "user","content": "你是谁?"}],
)print(response.choices[0].message.content)

该函数有几个重要参数解释下:

  • model:用来指定使用哪个模型,例如:gpt-3.5-turbo-1106

  • messages:传入大模型的prompt,prompt有三种角色:

    • system:系统指令,最重要,用于初始化GPT行为,以及规定GPT的角色、背景和后续行为模式。system是主提示,可以进行更加详细的设置。
    • user: 用户输入的信息。
    • assistant: 机器回复,由 API 根据 system 和 user 消息自动生成的。
  • temperature:参数值越小,模型就会返回越确定的一个结果。如果调高该参数值,大语言模型可能会返回更随机、创意的结果,如诗歌、写作等,可以适当提高。

  • max_token:控制了输入和输出的总的token上限,要求我们的prompt不能太长,或者控制上下文轮次!(给你估算成本和节省成本用的)

  • Top_p:与 temperature 一起称为核采样的技术,可以用来控制模型返回结果的真实性。如果你需要准确和事实的答案,就把参数值调低。如果你想要更多样化的答案,就把参数值调高一些。

Temperature和Top_p,一般建议是改变其中一个参数就行,不用两个都调整。调了效果也不一定显著;

本篇文章就先写到这里,下篇文章我们开始在代码中将Prompt用起来,并尝试将一些技巧加进去看下效果。


从今天开始,持续学习,开始搞事情。踩坑不易,欢迎关注我,围观我!
在这里插入图片描述

有任何问题,欢迎+vx:jasper_8017,我也是个小白,期待与志同道合的朋友一起讨论,共同进步!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/342180.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

聚会喝酒摇色子活跃气氛神器小程序源码系统 附带完整的搭建教程

在中国的传统聚会文化中,喝酒摇色子是一种非常受欢迎的游戏方式。它能迅速拉近人与人之间的距离,使气氛更加活跃。然而,传统的摇色子方式存在很多不便,如需要手动计数、无法记录历史数据等。因此,开发一款聚会喝酒摇色…

mp4文件全部转换为mp3

问题 今天突发奇想,想把mp4视频转换为mp3来收听,于是想到了ffmpeg工具 步骤 安装ffmpeg环境 要在 Windows 上配置 FFmpeg 环境,你可以按照以下步骤进行操作: 下载 FFmpeg: 首先,你需要下载 FFmpeg 的 W…

spaceship

通过数字平台启动您的网站、想法和未来,该平台旨在提供和连接您所需的域、托管、电子邮件和 Web 工具,并让您完全掌控 如果需要购买可以开5347的卡,点击获取

【AI视野·今日NLP 自然语言处理论文速览 第七十四期】Wed, 10 Jan 2024

AI视野今日CS.NLP 自然语言处理论文速览 Wed, 10 Jan 2024 Totally 38 papers 👉上期速览✈更多精彩请移步主页 Daily Computation and Language Papers Model Editing Can Hurt General Abilities of Large Language Models Authors Jia Chen Gu, Hao Xiang Xu, J…

Linux CentOS 7.6安装nginx详细保姆级教程

一、通过wget下载nginx压缩包 1、进入home文件并创建nginx文件夹用来存放nginx压缩包 cd /home //进入home文件夹 mkdir nginx //创建nginx文件夹 cd nginx //进入nginx文件夹2、下载nginx,我这里下载的是Nginx 1.24.0版本,如果要下载新版本可以去官网进行下载:…

汽车中的ECU、VCU、MCU、HCU

一、ECU是汽车电脑,刷汽车电脑可以提高动力,也可以减低动力,看需求。 简单原理如下。 1.汽车发动机运转由汽车电脑(即ECU)控制。 2.ECU控制发动机的进气量,喷油量,点火时间等,从而…

1.12寒假集训

A: 解题思路: 输出整体可以分成两部分: 第一部分循环3*n次,第一部分又可以分成三个部分,分别是*,.,*,分别循环n,2 * n,n次 第二部分循环n次,又可以分成五个部分,.,*,.,*,.,循环i,n(n - i) * 2,n,i次 下…

【深度学习 | 风格迁移】神经网络风格迁移,原理详解附详细案例源码

🤵‍♂️ 个人主页: AI_magician 📡主页地址: 作者简介:CSDN内容合伙人,全栈领域优质创作者。 👨‍💻景愿:旨在于能和更多的热爱计算机的伙伴一起成长!!&…

京东宣布启动鸿蒙原生应用开发,全力支持鸿蒙生态 | 百能云芯

华为常务董事、终端BG CEO、智能汽车解决方案BU董事长余承东于1月10日在微博上发布了一条令人振奋的消息:京东即将启动鸿蒙原生应用的开发。这一消息在科技圈掀起了不小的波澜,也为鸿蒙系统的发展注入了新的动力。 京东集团首席执行官兼执行董事许冉和余…

Android中两种选择联系人方式

1.在选择联系人方式网上也有很多案例 有的说是使用ContactsContract.CommonDataKinds.Phone.CONTENT_URI也有的说是使用ContactsContract.Contacts.CONTENT_URI其实这两种方式都可以使用 只不过ContactsContract.Contacts.CONTENT_URI这种方式需要多查询一遍 一、使用Contacts…

Linux NLTK 安装下载nltk_data

一、前提条件/环境 已经成功安装anaconda环境和nltk。anaconda环境和nltk可参考下面链接进行配置,nltk_data参考本文进行。 Linux安装Anaconda和配置nltk环境_cetons7安装nltk-CSDN博客 二、安装nltk_data 推荐离线安装,亲测成功! 1、nltk_…

LLM大模型显存计算

一、目录 模型参数单位内存计算案例显卡算力推理显存计算训练显存计算huggface 官网计算 模型推理/训练 需要的显存大模型输入长度与显存的关系大模型推理 多线程与显存的关系 参考:https://blog.csdn.net/Johntill/article/details/132629075 二、实现 模型参数…