当前位置: 首页 > news >正文

提示词工程(Prompt Engineering)

1. Prompt 是什么?

Prompt:提示词,是描述 AI 需要执行的任务的自然语言文本。
在这里插入图片描述
如上图所示,Prompt就是用户的提问。其实我们大家都用过Prompt,比如我们使用的ChatGPT、文心一言、豆包等AI产品时的提问就是Prompt,下面是跟豆包的对话,其中"LLM中Prompt是什么?"就是一个简单的Prompt。
在这里插入图片描述

Prompt Engineering:提示工程,是一门专注于研究如何设计、优化提示词,以有效引导大语言模型(LLM)生成期望输出的工程学科。

2. 如何使用?

提示工程是通过上下文学习(In-context-learning)来实现的,指模型能够根据当前的输入临时调整其行为,以使用特定的任务或场景。这种能力与针对每个特定的任务的训练和微调不同,它是临时的。

这里,我们基于千帆的ERNIE-4.0-8K大模型来实现和测试,当然大家可以换成任何其他大模型。

2.1 定义相关使用到的方法

我们定义了一个get_access_token方法用来获取token,并定义qianfan_chat_completions_pro方法来调用千帆ERNIE-4.0-8K的completions_pro方法,具体代码如下:

import urllib3
urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)
import os
import requests
import jsonaccess_token = None#获取token
def get_access_token():api_key = os.getenv("QIANFAN_API_KEY")secret_key = os.getenv("QIANFAN_SECRET_KEY")url = f"https://aip.baidubce.com/oauth/2.0/token?client_id={api_key}&client_secret={secret_key}&grant_type=client_credentials"payload = json.dumps("")headers = {'Content-Type': 'application/json','Accept': 'application/json'}response = requests.request("POST", url, headers=headers, data=payload, verify=False)return  response.json().get("access_token")#调用ERNIE-4.0-8K 
def qianfan_chat_completions_pro(content):global access_tokenif access_token is None:access_token = get_access_token() data = json.dumps({"messages": [{"role": "user","content": content}]})url = f"https://aip.baidubce.com/rpc/2.0/ai_custom/v1/wenxinworkshop/chat/completions_pro?access_token={access_token}" headers = {'Content-Type': 'application/json'}response = requests.request("POST", url, headers=headers, data=data, verify=False)return response.json().get("result")

2.2 调用LLM接口

假设我们的问题是:请用一句话说清楚prompt是什么?
其实这就是一个最简单的prompt,只不过它只包含了用户的问题,我们先来看如何调用:

#prompt
question = """
请用一句话说清楚prompt是什么?
"""
print(qianfan_chat_completions_pro(question))

这是LLM就会给我们返回:Prompt是向用户展示并引导其进行下一步操作的提示信息。

在这里插入图片描述

3. 为什么要使用Prompt Engineering?

从上面LLM返回给我们的结果来看,LLM并没有很好地理解我们的意图,它只是解释了prompt作为提示词的实际含义,但这也不能怪LLM,因为是我们没有把上下文(背景)告诉LLM,LLM它自然不能理解我们问的是LLM领域的Prompt。

那我们来优化一下这个prompt,给出LLM的人设及问问题的特定背景,优化后的prompt如下:
你是AI专家,请用一句话说清楚在LLM中prompt是什么?
我们来看执行结果:
在这里插入图片描述
会发现LLM给出了大致符合我们预期的答案,这就是Prompt Engineering的作用,经过优化Prompt能让LLM生成更如何我们预期的答案。

4. Prompt Engineering的技巧

下面是给出优化前后的prompt以及他们对应的结果,可以使用下面的prompt替换上述的question进行自行测试,就不贴图了。

4.1 清晰、明确,避免含糊的词

内容优化前优化后
Prompt请用几句话来描述AI的前景请用两句话来描述AI的前景
结果AI的前景广阔且充满无限可能。随着技术的不断进步,AI将在各个领域发挥重要作用,包括但不限于医疗、交通、教育等。它将助力实现更高效、更精准的决策,推动社会生产力的提升,甚至可能引领全新的工作和生活方式。同时,AI的发展也将对伦理、隐私和就业等方面带来挑战,需要我们共同探索和解决。总的来说,AI的前景是变革性的,它将深刻影响我们的未来。AI前景广阔,将深刻改变各行各业;随着技术不断进步,AI将在未来发挥巨大潜力,引领智能时代新篇章。

4.2 分割符

将指令和待处理的内容分开,分隔符包括:”””、—、< >、###等

内容优化前优化后
Prompt将下面的话翻译成英文。
尽量用华丽的词语
你真美丽
将下面的话翻译成英文。
###
尽量用华丽的词语
你真美丽
###
结果You are so exquisitely beautiful.Try to use flowery language.
Oh, how exquisitely beautiful you are!

4.3 结构化输出

对输出指定特定的格式,有利于得到稳定的输出,例如:Html、Json

内容优化前优化后
Prompt 请给我列举现在国内销量最高的2款电动汽车,包含名字、特点请给我列举现在国内销量最高的3款电动汽车,包含名字、特点.
只需要给出JSON格式结果,不需要其他解释的内容,JSON中的key如下:name,features.
结果现在国内销量最高的2款电动汽车,按照销量排名,分别是:
1. 比亚迪相关电动汽车
-名字:由于比亚迪有多款热销电动汽车,如秦PLUS、汉EV等,因此这里不特指某一款车型,而是泛指比亚迪品牌的电动汽车。
- 特点:性价比高、续航里程长、车型丰富、技术先进。
2. 理想汽车相关电动汽车
- 名字:由于理想汽车有多款热销车型,如理想L6、理想L7等,因此这里不特指某一款车型,而是泛指理想品牌的电动汽车。
- 特点:车内空间宽敞、乘坐体验舒适、智能驾驶技术先进。
以上内容主要基于当前可获得的公开信息整理而成。
[{“name”:“比亚迪”,“features”:“性价比高,实用性强,在下沉市场销量增长显著,2024年1-9月累计销量为274.79万辆,成为中国市场销量最高的新能源汽车品牌。”},{“name”:“理想汽车”,“features”:“连续36周蝉联新势力销量冠军后,虽在2025年第一周销量滑落至第二,但仍以0.67万辆的销量显示出强大的市场竞争力。”}]

4.4 背景设定

设定LLM作为一个角色,也可以设定自己是一个什么角色

内容优化前优化后
Prompt请用3句话说明如何学习英语?你是高中英语老师,擅长提高高考英语成绩,我是一名高三下学期的学生。请用3句话说明如何学习英语?
结果1. 学习英语首先要打好语言基础,包括掌握单词、语法和句型。
2. 通过大量阅读和听力练习,提高英语理解和口语表达能力。
3. 多与英语母语者交流,积极参与英语实践活动,不断增强英语应用能力。
作为高中英语老师,对于如何高效学习英语,我的建议如下:
首先,要坚持每天阅读英文材料,这不仅能提升阅读理解能力,还能增强语感,为写作和口语表达积累素材。
其次,多做真题和模拟题,通过实战演练来巩固语法知识,提高解题速度和准确性,这是提升英语成绩的关键。
最后,不要忽视听力和口语的练习,通过听英文广播、看英文电影等方式培养语感,同时尝试与英语母语者交流,以提升听说能力。

接下来介绍一些进阶的Prompt Engineering高阶一点的技术

4.5 少量样本提示(Few-shot prompting)

Few-shot prompting 可以用作一种支持上下文学习的技术,以引导模型获得更好的表现。

内容优化前优化后
Prompt请用积极的或者消极的回答
相安无事!//
请用积极的或者消极的回答
这太棒了! // 积极的
这太糟糕了! //消极的
哇,那部电影太棒了!/ /积极的

相安无事!//
结果积极的回答:大家和谐相处,相安无事,真是太好了!
或者
消极的回答:虽然目前相安无事,但谁知道未来会不会出现问题呢。
相安无事! // 积极的(表示一切顺利,没有出现问题或冲突)

4.6 Chain-of-thought(COT,思维链)

https://arxiv.org/abs/2201.11903
思维链允许大模型通过一系列中间步骤解决问题,然后给出最终答案。它是通过提示诱导模型通过模拟思维过程的推理步骤来回答多步问题,从而提高推理能力。

内容优化前优化后
Prompt食堂有23个苹果,如果他们用掉了20个后又买了6个。他们现在有多少个苹果?问:食堂有23个苹果,如果他们用掉了20个后又买了6个。他们现在有多少个苹果?
请一步一步思考
结果食堂开始时有23个苹果。
1. 他们首先用掉了20个苹果,所以食堂里剩下的苹果数量变为:23 - 20 = 3个苹果。
2. 接着,他们又买了6个苹果,所以食堂现在的苹果数量变为:3 + 6 = 9个苹果。
综上所述,他们现在有9个苹果。
首先,我们需要理解题目中的关键信息,食堂最初有23个苹果。
第一步,食堂用掉了20个苹果。
最初的苹果数量是23个,用掉20个之后,剩余的苹果数量就是23 - 20 = 3个。
第二步,食堂又买了6个苹果。
在剩余3个苹果的基础上,再增加6个新购买的苹果,所以现在的苹果总数是3 + 6 = 9个。
所以,他们现在有9个苹果。

可以发现,其实不加”请一步一步思考“,千帆大模型也能得到正确的答案(实际在GPT4上也能得到正确的结果),只是加了以后更清晰一些,但如果是在GTP3.5上,加不加”请一步一步思考“会体现不同的效果,这个可以自行验证。这里主要是体现思维链的使用方式。
主要就是:请一步一步思考,对应英文Let’s think step by step

4.7 Self-consistency decoding(自洽编码)

https://arxiv.org/abs/2203.11171
自洽编码,同时执行多个思维链展开,然后从所有展开中选择最常达到的结论。

内容优化前优化后
Prompt看这一串数字:36、34、30、28、24,下一个数字是什么?
假设有3个数学专家,来计算一下答案,最后少数服从多数,最后给出结论,请记录中间过程
看这一串数字:36、34、30、28、24,下一个数字是什么?
结果首先,我们要找出这一串数字:36、34、30、28、24之间的关系或规律,以便预测下一个数字。
观察这一串数字,我们可以尝试找出每两个相邻数字之间的差值:
* 36 - 34 = 2
* 34 - 30 = 4
* 30 - 28 = 2
* 28 - 24 = 4
可以看出,相邻两个数字的差值在2和4之间交替变化。这是一个明显的规律。
现在,我们来应用这个规律来找出下一个数字。最后一个给出的数字是24,它之前的数字是28,它们之间的差值是4。根据我们找到的规律,下一个差值应该是2。
因此,下一个数字应该是24减去2,即22。
首先,我们观察给出的数字序列:36、34、30、28、24,我们需要找出这些数字之间的关系或规律,从而推测出下一个数字。
观察发现:
* 36到34,减少了2;
* 34到30,减少了4;
* 30到28,减少了2;
* 28到24,减少了4。
可以看出,数字之间的差值在2和4之间交替变化。这是一个明显的规律,我们可以根据这个规律来推测下一个数字。
由于最后一个差值是从28到24,差值是4,那么根据交替变化的规律,下一个差值应该是2。因此,我们从24减去2,得到下一个数字是22。
现在,我们请三位数学专家进行计算和验证:
专家1的计算过程:
观察数字序列,发现差值是2和4交替出现,因此下一个差值应是2。从24减去2得到22。
专家2的计算过程:
分析序列中相邻数字的差值,发现它们以2和4的差值交替递减。既然最后一个差值是4,那么下一个差值应该是2。所以,从24减去2,结果是22。
专家3的计算过程:
查看数字序列,注意到数字之间的差值在2和4之间变化,且这种变化是交替的。由于最后一个差值是4,根据规律,下一个差值应为2。从24中减去这个差值,我们得到22。
三位专家的结论都是下一个数字是22。根据“少数服从多数”的原则,由于所有专家都得出了相同的结论,我们可以确定下一个数字是22。

可以发现,如果没有优化的Prompt也能得到正确的答案,只是优化后的Prompt看起来更专业而已,这也证明了千帆模型的强大,GPT3.5在这个上面也会体现出差异。

4.8 Three-of-thought(思维树)

https://arxiv.org/abs/2305.10601
思维树,思维树提示通过提示模型生成一个或多个”可能的后续步骤”,然后通过广度优先、波束搜索或者其他所有方法在每个可能的步骤上运行模型来概括思维链。
在这里插入图片描述

内容优化前优化后
Prompt鲍勃在客厅里。
他拿着一个杯子走向厨房。
他把一个球放进杯子里,把杯子拿到卧室。
他把杯子倒过来,然后走向花园。
他把杯子放在花园里,然后走向车库。
球在哪里?
想象一下,三个不同的专家正在回答这个问题。
所有的专家都会写下他们思考的第一步,
然后与大家分享。
然后所有专家将进入下一步,以此类推。
如果任何专家在任何时候意识到他们错了,他们就会离开。

问题是:
鲍勃在客厅里。
他拿着一个杯子走向厨房。
他把一个球放进杯子里,把杯子拿到卧室。
他把杯子倒过来,然后走向花园。
他把杯子放在花园里,然后走向车库。
球在哪里?
结果这是一道物品位置分析的问题。为了确定球的当前位置,我们需要基于题目的描述仔细分析每一步发生的事件。

首先,我们梳理一下题目中给的关键信息:

1.鲍勃在客厅里。
2.他拿着一个杯子走向厨房。
3.他把一个球放进杯子里,把杯子拿到卧室。
4.他把杯子倒过来,然后走向花园。
5.他把杯子放在花园里,然后走向车库。

接下来,我们分析这些事件对球位置的影响:

1.鲍勃首先拿着一个空杯子走向厨房,这个动作对球的位置没有影响,因为此时球还未被引入。
2.在厨房里,鲍勃把球放进了杯子,并随后将杯子带到了卧室。这表明球被放入杯子中,并随着杯子移动到了卧室。
3.在卧室,鲍勃将杯子倒过来。这个动作是关键,因为如果杯子里有球,倒过来的动作会导致球掉出来,除非杯子口非常小或者有东西阻止球掉出。但题目没有提及任何阻止球掉出的机制,因此我们可以合理推断,球在杯子倒过来后已经从杯子里掉出。
4.鲍勃之后将杯子带到花园并放下,但此时球已经不在杯子里了。
5.鲍勃离开花园走向车库,这个动作对球的位置没有影响。

综上所述,球现在应该在卧室里,因为它是从那里掉出来的。

因此,球现在在卧室。
首先,让我们设定三位专家:专家A、专家B和专家C。下面是他们思考的第一步和后续步骤。

专家A
* 第一步:首先,我需要理解问题的整体流程和关键动作。鲍勃的一系列动作表明,他首先将球放入杯子,然后将杯子带到卧室,接着倒置杯子,并最后将其放置在花园。

专家B
* 第一步:我会关注与球位置变化有关的关键信息。鲍勃在客厅拿起一个杯子,走到厨房,放入球后带到卧室,然后倒置杯子。这是决定球最终位置的关键步骤。

专家C
* 第一步:我的第一步是识别出问题中的关键转折点。在这个场景中,鲍勃将球放入杯子,并将杯子带到卧室,然后倒置,这是一个重要的转折点,因为它可能改变了球的位置。

专家A的下一步
* 接下来,我需要考虑倒置杯子的动作对球位置的影响。如果杯子被完全倒置且没有泄漏,球应该还在杯子里。但是,鲍勃之后将杯子放在了花园,这个动作可能改变了球的位置。

专家B的下一步
* 接下来,我要考虑球在倒置后的可能位置。如果杯子被紧密封闭且没有漏洞,球可能还在杯子里。但鲍勃走到花园放下杯子的行为可能是一个关键因素,需要仔细分析。

专家C的下一步
* 我需要考虑鲍勃将杯子倒置并带到花园后,球的可能位置。如果倒置后球没有掉出,并且在去花园的过程中也没有掉出,那么球应该还在杯子里。

所有专家的共同结论
* 在没有额外信息表明球在过程中掉出的情况下,我们可以合理推断,在鲍勃将倒置的杯子放在花园后,球应该还在杯子里。因此,球在花园里的杯子里。

在这个过程中,没有专家意识到他们错了,所以他们都没有离开。最终,所有专家都得出了相同的结论:球在花园里的杯子里。

在优化前和优化后得出了不同的结论,关键点在于问题中没有给出球是否掉下来,从解释上看使用了使用了思维树的结论显示更专业。

几者的差别:
在这里插入图片描述

5.第三方Prompt优化工具

百度千帆Prompt优化
在这里插入图片描述

会发现如果我们选择了思维链条,千帆优化Prompt也是加上了我们的黑魔法:让我们一步一步来思考

Prompt中文调教指南

Prompt英文调教指南

6. 思考

有人说,Prompt Engineering是大语言模型初级阶段的中间产物,的确在本文的部分测试(思维链和自洽编码)中,发现:
千帆的ERNIE-4.0-8K ≈ ChatGPT4 ≈ ChatGPT3.5 + Prompt Engineering > ChatGPT3.5
从这个方面来讲,的确随着大语言模型的不断发展,大语言模型的理解能力、逻辑推理能力在不断增强,不过我认为Prompt Engineering是有它存在的价值,毕竟人总是要跟大语言模型交互的,而交互就会有噪音,而Prompt Engineering就是来降低噪音让大语言模型更好地理解我们的真实需求。

当然,我们还可以利用RAG、NLP、Question Rewrites、Embedding、Function Calling等技术来不断让Prompt Engineering做的更好,不过了解这些底层的优化思路是很有必要的。

相关文章:

提示词工程(Prompt Engineering)

1. Prompt 是什么&#xff1f; Prompt&#xff1a;提示词&#xff0c;是描述 AI 需要执行的任务的自然语言文本。 如上图所示&#xff0c;Prompt就是用户的提问。其实我们大家都用过Prompt&#xff0c;比如我们使用的ChatGPT、文心一言、豆包等AI产品时的提问就是Prompt&…...

后端开发Web

Maven Maven是apache旗下的一个开源项目&#xff0c;是一款用于管理和构建java项目的工具 Maven的作用 依赖管理 方便快捷的管理项目依赖的资源&#xff08;jar包&#xff09;&#xff0c;避免版本冲突问题 统一项目结构 提供标准、统一的项目结构 项目构建 标准跨平台(…...

set和map(二)详解

文章目录 mapoperator[ ]的底层operator[ ]使用的实例 multimapequal_range 两道题目题目解析算法原理代码题目解析算法原理代码 map map和set大部分都相似&#xff0c;只有insert插入键值对不同&#xff0c;insert要插入pair,pair中有key和value。erase和find只与key有关&…...

第4章:Python TDD消除重复与降低依赖实践

写在前面 这本书是我们老板推荐过的&#xff0c;我在《价值心法》的推荐书单里也看到了它。用了一段时间 Cursor 软件后&#xff0c;我突然思考&#xff0c;对于测试开发工程师来说&#xff0c;什么才更有价值呢&#xff1f;如何让 AI 工具更好地辅助自己写代码&#xff0c;或许…...

【语言处理和机器学习】概述篇(基础小白入门篇)

前言 自学笔记&#xff0c;分享给语言学/语言教育学方向的&#xff0c;但对语言数据处理感兴趣但是尚未入门&#xff0c;却需要在论文中用到的小伙伴&#xff0c;欢迎大佬们补充或绕道。ps&#xff1a;本文不涉及公式讲解&#xff08;文科生小白友好体质&#xff09;&#xff…...

vue3+uniapp开发鸿蒙初体验

去年7月20号&#xff0c;uniapp官网就已经开始支持鸿蒙应用开发了&#xff0c;话不多说&#xff0c;按照现有规则进行配置实现一下鸿蒙开发效果&#xff1b; 本文基于macOS Monterey 版本 12.6.5实现 开发鸿蒙的前置准备 这里就直接说我的版本&#xff1a; DevEco Studio 5.…...

Android四种方式刷新View

Android四种方式刷新View 1.前言&#xff1a; 最近在切换主题时有个TextView是Gone的状态&#xff0c;切换主题后内容没有显示&#xff0c;于是排查代码&#xff0c;刚开始以为是textView没有设置内容&#xff0c;但是打印日志和排查发现有setText. 2.View.VISIBLE与View.GO…...

【数学建模美赛速成系列】O奖论文绘图复现代码

文章目录 引言折线图 带误差棒得折线图单个带误差棒得折线图立体饼图完整复现代码 引言 美赛的绘图是非常重要得&#xff0c;这篇文章给大家分享我自己复现2024年美赛O奖优秀论文得代码&#xff0c;基于Matalab来实现&#xff0c;可以直接运行出图。 折线图 % MATLAB 官方整理…...

【27】Word:徐雅雯-艺术史文章❗

目录 题目​ NO1.2 NO3 NO4 NO5 NO6.7 NO8.9 NO10.11 注意&#xff1a;修改样式的字体颜色/字号&#xff0c;若中英文一致&#xff0c;选择所有脚本。格式相似的文本→检查多选/漏选格式刷F4重复上一步操作请❗每一步检查和保存 题目 NO1.2 F12另存为布局→行号布局…...

web端ActiveMq测试工具

如何用vue3创建简单的web端ActiveMq测试工具&#xff1f; 1、复用vue3模板框架 创建main.js,引入APP文件&#xff0c;createApp创建文件&#xff0c;并加载element插件&#xff0c;然后挂载dom节点 2、配置vue.config.js脚本配置 mport { defineConfig } from "vite&qu…...

2025年最新深度学习环境搭建:Win11+ cuDNN + CUDA + Pytorch +深度学习环境配置保姆级教程

本文目录 一、查看驱动版本1.1 查看显卡驱动1.2 显卡驱动和CUDA对应版本1.3 Pytorch和Python对应的版本1.4 Pytorch和CUDA对应的版本 二、安装CUDA三、安装cuDANN四、安装pytorch五、验证是否安装成功 一、查看驱动版本 1.1 查看显卡驱动 输入命令nvidia-smi可以查看对应的驱…...

FPGA中场战事

2023年10月3日,英特尔宣布由桑德拉里维拉(Sandra Rivera)担任“分拆”后独立运营的可编程事业部首席执行官。 从数据中心和人工智能(DCAI)部门总经理,转身为执掌该业务的CEO,对她取得像AMD掌门人苏姿丰博士类似的成功,无疑抱以厚望。 十年前,英特尔花费167亿美元真金白银…...

[Computer Vision]实验二:图像特征点提取

目录 一、实验内容 二、实验过程及结果 2.1 Harris角点检测 2.2 SIFT算法 三、实验小结 一、实验内容 采用Harris与SIFT分别提取特征点及对应的描述子&#xff0c;对比两者的区别&#xff08;特征点数量、分布、描述子维度、图像变化对二者的影响等&#xff09;利用特征匹…...

TCP状态转移图详解

状态 描述 LISTEN represents waiting for a connection request from any remote TCP and port. SYN-SENT represents waiting for a matching connection request after having sent a connection request. SYN-RECEIVED represents waiting for a confirming connect…...

curl简介与libcurl开源库的使用总结

curl工具和libcurl不是同一个东西&#xff0c;二者的关系主要体现在以下方面&#xff1a; 定义与性质 curl工具&#xff1a; 是一个利用URL语法在命令行下工作的文件传输工具&#xff0c;1997年首次发行。它支持多种协议&#xff0c;如HTTP、HTTPS、FTP、FTPS等&#xff0c;可用…...

Win10系统部署RabbitMQ Server

文章目录 版本说明依赖安装添加Erlang环境变量验证Erlang安装 RabbitMQ Server安装解压启动查看RabbitMQ插件安装rabbitmq_management插件再次启动设置RabbitMQ为系统服务 版本说明 ErlangRabbitMQ27.24.0.5 可以在Erlang官网和RabbitMQ官网下载安装包&#xff0c;安装已下载…...

uniapp APP端页面触发调用webview(页面为uniapp开发的H5)里的方法

原理&#xff1a; 使用 getCurrentInstance() 获取当前组件的 Vue 实例&#xff0c;通过 instance.proxy.$scope.$getAppWebview() 获取 Uniapp 的原生 WebView 对象。 使用 WebView 提供的 evalJS 方法&#xff0c;执行嵌入 H5 页面内的 JavaScript 代码 <template>&l…...

嵌入式知识点总结 C/C++ 专题提升(七)-位操作

针对于嵌入式软件杂乱的知识点总结起来&#xff0c;提供给读者学习复习对下述内容的强化。 目录 1.位操作基础 2.如何求解整型数的二进制表示中1的个数 ? 3.如何求解二进制中0的个数 4.交换两个变量的值&#xff0c;不使用第三个变量。即a3,b5,交换之后a5,b3: 5.给定一个…...

新星杯-ESP32智能硬件开发--ESP32的I/O组成

本博文内容导读&#x1f4d5;&#x1f389;&#x1f525; ESP32系统的基础外设开发&#xff1a;IO_MUX和GPIO矩阵 IO_MUX和GPIO矩阵 ESP32的I/O组成了与外部世界交互的基础&#xff0c;ESP32芯片有34个物理GPIO引脚。每个引脚都可用作一个通用I/O&#xff0c;或者连接一个内部…...

航空航天混合动力(7)航空航天分布式电推进系统

航空航天分布式电推进系统 1.概述2.分布式电推进系统组成3.关键技术4.分布式电推进系统优势5.国内外研究情况5.1 国外5.2 国内6.分布式电推进系统应用场景6.1 航空领域6.2 航天领域tips:资料来自网上,仅供参考学习使用 1.概述 分布式推进系统是指飞行器推力由位于整个航空器…...

AIGC视频生成明星——Emu Video模型

大家好&#xff0c;这里是好评笔记&#xff0c;公主号&#xff1a;Goodnote&#xff0c;专栏文章私信限时Free。本文详细介绍Meta的视频生成模型Emu Video&#xff0c;作为Meta发布的第二款视频生成模型&#xff0c;在视频生成领域发挥关键作用。 &#x1f33a;优质专栏回顾&am…...

Cyber Security 101-Security Solutions-Firewall Fundamentals(防火墙基础)

了解防火墙并亲身体验 Windows 和 Linux 内置防火墙。 任务1&#xff1a;防火墙的用途是什么 我们看到商场、银行、 餐馆和房屋。这些警卫被安置在 这些区域用于检查进出人员。这 维护此检查的目的是确保没有人在没有 被允许。这个警卫充当了他所在区域和访客之间的一堵墙。 …...

备赛蓝桥杯之第十五届职业院校组省赛第一题:智能停车系统

提示&#xff1a;本篇文章仅仅是作者自己目前在备赛蓝桥杯中&#xff0c;自己学习与刷题的学习笔记&#xff0c;写的不好&#xff0c;欢迎大家批评与建议 由于个别题目代码量与题目量偏大&#xff0c;请大家自己去蓝桥杯官网【连接高校和企业 - 蓝桥云课】去寻找原题&#xff0…...

Docker核心命令与Yocto项目的高效应用

随着软件开发逐渐向分布式和容器化方向演进&#xff0c;Docker 已成为主流的容器化技术之一。它通过标准化的环境配置、资源隔离和高效的部署流程&#xff0c;大幅提高了开发和构建效率。Yocto 项目作为嵌入式 Linux 系统构建工具&#xff0c;与 Docker 的结合进一步增强了开发…...

idea plugin插件开发——入门级教程(IntelliJ IDEA Plugin)

手打不易&#xff0c;如果转摘&#xff0c;请注明出处&#xff01; 注明原文&#xff1a;idea plugin插件开发——入门级教程&#xff08;IntelliJ IDEA Plugin&#xff09;-CSDN博客 目录 前言 官方 官方文档 代码示例 开发前必读 Intellij、Gradle、JDK 版本关系 plu…...

61,【1】BUUCTF WEB BUU XSS COURSE 11

进入靶场 左边是吐槽&#xff0c;右边是登录&#xff0c;先登录试试 admin 123456 admiin# 123456 admin"# 123456 不玩了&#xff0c;先去回顾下xss 回顾完就很尴尬了&#xff0c;我居然用SQL的知识去做xss的题 重来 吐槽这里有一个输入框&#xff0c;容易出现存储型…...

开发环境搭建-1:配置 WSL (类 centos 的 oracle linux 官方镜像)

一些 Linux 基本概念 个人理解&#xff0c;并且为了便于理解&#xff0c;可能会存在一些问题&#xff0c;如果有根本上的错误希望大家及时指出 发行版 WSL 的系统是基于特定发行版的特定版本的 Linux 发行版 有固定组织维护的、开箱就能用的 Linux 发行版由固定的团队、社…...

Spring Boot MyBatis Plus 版本兼容问题(记录)

Spring Boot & MyBatis Plus 版本兼容问题&#xff08;Invalid value type for attribute factoryBeanObjectType: java.lang.String&#xff09; 问题描述问题排查1. 检查 MapperScan 的路径2. 项目中没有配置 FactoryBean3. 检查 Spring 和 MyBatis Plus 版本兼容性 解决…...

26. 【.NET 8 实战--孢子记账--从单体到微服务】--需求更新--用户注销、修改用户名、安全设置

在实际开发过程中&#xff0c;项目需求的变更和增加是常见的情况&#xff0c;因此这篇文章我们就模拟一下项目需求新增的情况。 一、需求 项目经理今天提出了新的功能&#xff0c;需要增加重置密码、安全设置、修改用户名、注销账户这四个功能&#xff0c;这四个功能必须是独…...

神经网络|(一)加权平均法,感知机和神经元

【1】引言 从这篇文章开始&#xff0c;将记述对神经网络知识的探索。相关文章都是学习过程中的感悟和理解&#xff0c;如有雷同或者南辕北辙的表述&#xff0c;请大家多多包涵。 【2】加权平均法 在数学课本和数理统计课本中&#xff0c;我们总会遇到求一组数据平均值的做法…...