大模型应用--prompt工程实践

在使用大模型进行prompt 训练时,自己做的相关笔记。

本文以openai<1.0版为例。

1.调用大模型

定义调用openai大模型的函数 get_completion()

def get_completion(prompt, model="gpt-3.5-turbo"):messages = [{"role": "user", "content": prompt}]response = openai.ChatCompletion.create(model=model,messages=messages,temperature=0,  # 模型输出的随机性,0 表示随机性最小)print(response)return response.choices[0].message["content"]

在openai.ChatCompletion.create函数中,还有以下这些参数:

response = openai.ChatCompletion.create(model=model,messages=_session,# 以下默认值都是官方默认值temperature=1,          # 生成结果的多样性 0~2之间,越大越随机,越小越固定stream=False,           # 数据流模式,一个个字接收top_p=1,                # 随机采样时,只考虑概率前百分之多少的 token。不建议和 temperature 一起使用n=1,                    # 一次生成 n 条结果max_tokens=100,         # 每条结果最多多少个 token(超过截断)presence_penalty=0,     # 对出现过的 token 的概率进行降权frequency_penalty=0,    # 对出现过的 token 根据其出现过的频次,对其的概率进行降权logit_bias={},        # 对指定 token 的采样概率手工加/降权,不常用)

2.定义prompt

下面就开始写prompt中的内容,prompt中的内容通常包含:

	• 角色: 定义一个最匹配任务的角色。• 指示{instruction}:对任务进行描述• 上下文{context}: 给出与任务相关的其它背景信息 (尤其在多轮交互中)• 例子{example}: 必要时给出举例• 输入{input_text}:任务的输入信息;在提示词中明确的标识出输入• 输出{output_format}: 输出的格式描述,比如 (JSON、XML)

对于以上的内容都可以在propmt中定义。

然后,把各个部分都写到propmt中即可,

prompt = f"""{instruction}{output_format}{context}{example}# 用户输入
{input_text}"""

有很多的方法可以调优

在实际应用的过程中,对于prompt的训练还有很多的方法,需要一点一点实践。

下面的链接是官方给的prompt教程,一起学起来吧!!!🥝🥝🥝

Prompt Engineering Guide | Learn Prompting: Your Guide to Communicating with AI

我是大模型的初学者,慢慢完善,欢迎大佬指点一二,欢迎同学一起学习。🍭🍭🍭

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

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

相关文章

C++——友元函数

如下是一个日期类&#xff1a; class Date { public:Date(int year 2023, int month 10, int day 1){_year year;_month month;_day day;if (_month < 1 || month > 12 || _day < 1 || _day > GetMonthDay(_year, _month)){cout << "日期不规范&…

解决鸿蒙系统打开系统相机

AndroidManifest.xml添加 <queries><package android:name"com.huawei.camera" /></queries>

一篇博客读懂单链表——Single-List

目录 一、初识单链表 单链表是如何构造的&#xff1a; 单链表如何解决顺序表中的问题&#xff1a; 二、单链表的初始定义 三、尾插和头插 3.1 新建结点CreateNode 3.2 打印SLTPrint 3.3 尾插SLTPushBack 3.4 头插SLTPushFront 四、尾删和头删 4.1 尾删SLTPopBack…

hub.docker访问不了的问题(一步解决)

暂时我也不清楚&#xff0c;但是下面这个网址可以用(可以先用着)Docker Hub Container Image Library | App Containerization (axlinux.top)https://hub.axlinux.top/

Testng XML文件

目录 概述 XML各部分介绍 概述 当你使用TestNG测试框架时&#xff0c;你可以使用XML文件来配置和运行测试套件。XML文件中包含了测试类、测试方法、测试参数等配置信息&#xff0c;使你能够更灵活地组织和管理测试。 以下是一个简单的TestNG XML文件的例子&#xff1a; &l…

设计模式中的静态工厂,到底解决了什么问题?

设计模式中的静态工厂&#xff0c;到底解决了什么问题&#xff1f; 文章目录 设计模式中的静态工厂&#xff0c;到底解决了什么问题&#xff1f;一、基本说明二、代码演示1、名称更明确2、不必每次调用都创建新对象3、返回接口类型4、降低客户端和具体实现之间的耦合5、参数化实…

Maya 2024 for Mac(3D建模软件)

Maya 2024是一款三维计算机图形软件&#xff0c;具有强大的建模、动画、渲染、特效等功能&#xff0c;广泛应用于影视、游戏、广告等行业。以下是Maya 2024软件的主要功能介绍&#xff1a; 建模&#xff1a;Maya 2024具有强大的建模工具&#xff0c;包括多边形建模、曲面建模、…

数据可视化在监控易中的艺术与实践

在数字化运维管理中&#xff0c;数据可视化成为一种日益重要的工具&#xff0c;它将复杂的数据通过图形化的方式呈现&#xff0c;帮助运维团队更加直观和快速地理解系统的运行状况。监控易&#xff08;MeiXin Era&#xff09;将数据可视化引入到运维监控中&#xff0c;通过科学…

浅谈Elasticsearch 文档操作

Elasticsearch 文档操作 Elasticsearch 是一个基于 Lucene 的分布式搜索引擎&#xff0c;它提供了全文搜索、结构化搜索、分析等功能。在 Elasticsearch 中&#xff0c;文档操作是一个重要的功能&#xff0c;包括文档的索引、更新、删除以及批量操作。本文将详细介绍 Elastics…

【工程实践】Docker使用记录

前言 服务上线经常需要将服务搬到指定的服务器上&#xff0c;经常需要用到docker&#xff0c;记录工作中使用过dcoker指令。 1.写Dockerfile 1.1 全新镜像 FROM nvidia/cuda:11.7.1-devel-ubuntu22.04ENV WORKDIR/data/Qwen-14B-Chat WORKDIR $WORKDIR ADD . $WORKDIR/RUN ap…

洗地机是智商税吗?洗地机有没有必要买?2023洗地机推荐

传统的扫地拖地方式不仅时间长&#xff0c;被毛孩子和萌娃制造的顽固污渍更是让人头痛不已&#xff0c;高效又有效的地面清洁方式成了我们最大的诉求。目前洗地机受到青睐&#xff0c;异常火爆&#xff0c;也成为一众清洁扫地的选择之一&#xff0c;那洗地机到底是不是智商税呢…

C语言从入门到精通之【printf和scanf函数】

printf()是输出函数&#xff0c;scanf()是输入函数&#xff0c;但是它们的工作原理几乎相同。两个函数都使用格式字符串和参数列表。 printf()函数的格式 printf( 格式字符串, 待打印项1, 待打印项2,…);待打印项1、待打印项2等都是要打印的项。它们可以是变量、常量&#xff…

业务出海之服务器探秘

这几年随着国内互联网市场的逐渐饱和&#xff0c;越来越多的公司加入到出海的行列&#xff0c;很多领域都取得了很不错的成就。虽然出海可以获得更加广阔的市场&#xff0c;但也需要面对很多之前在国内可能没有重视的一些问题。集中在海外服务器的选择维度上就有很大的变化。例…

使用validator实现枚举类型校验

使用validator实现枚举类型校验 前言&#xff1a; 在前端调用后端接口传递参数的过程中&#xff0c;我们往往需要对前端传递过来的参数进行校验&#xff0c;比如说我们此时需要对用户的状态进行更新&#xff0c;而用户的状态只有正常和已删除&#xff0c;并且是在代码中通过枚…

react ts实现一个 无限加载组件

页面滑动到底部&#xff0c;直接加载下一页数据 InfiniteScroll.tsx /*** 无限 加载组件*/import { FC, createRef, useEffect, CSSProperties } from react import LoadingText from ../LoadingTexttype PropsType {loadMore: () > voidhasMore: boolean }const Infinit…

【华为云IaaS基础三件套之----计算ECS、网络EIP、存储EVS】

MD[华为云IaaS基础三件套----计算、网络、存储] 华为云IaaS基础三件套之----计算ECS、网络EIP、存储EVS 说明: 这里只是简单从计算/网络/存储&#xff0c;进行介绍&#xff0c;阐明云上对于云下的优势&#xff1b;因ECS是三者综合&#xff0c;故最后说明。 1.网络----弹性公…

STM32 HAL库多路PWM没有输出踩坑记录

之前只弄过单路的&#xff0c;这次想用4路PWM&#xff0c;CUBE里面一顿配置&#xff0c;生成&#xff0c;然后套用之前的代码&#xff1a; HAL_TIM_PWM_Start(&htim3, TIM_CHANNEL_1); 这算是开启第一路了&#xff0c;心想后面无非就复制几条&#xff0c;改下通道的事了&…

算法----删掉一个元素以后全为 1 的最长子数组

题目 给你一个二进制数组 nums &#xff0c;你需要从中删掉一个元素。 请你在删掉元素的结果数组中&#xff0c;返回最长的且只包含 1 的非空子数组的长度。 如果不存在这样的子数组&#xff0c;请返回 0 。 提示 1&#xff1a; 输入&#xff1a;nums [1,1,0,1] 输出&…

Day02_《MySQL索引与性能优化》

文章目录 一、SQL执行顺序二、索引简介1、关于索引2、索引的类型Btree 索引Btree 索引 三、Explain简介四、Explain 详解1、id2、select_type3、table4、type5、possible_keys6、key7、key_len8、ref9、rows10、Extra11、小案例 五、索引优化1、单表索引优化2、两表索引优化3、…

安装 Lua 的 HTTP 库

首先&#xff0c;你需要安装 Lua 的 HTTP 库。可以使用 LuaRocks 来安装。以下是安装命令&#xff1a; luarocks install http然后&#xff0c;你可以使用以下代码来爬取网页内容&#xff1a; local http require http-- 设置代理信息 http.set_proxy(jshk.com.cn)-- 网页UR…