大模型应用:Prompt-Engineering优化原则

在这里插入图片描述

1.Prompt-Engineering

随着大模型的出现及应用,出现了一门新兴“技术”,该技术被称为Prompt-Enginerring。Prompt Engineering即提示工程,是指在使用大语言模型时,编写高效、准确的Prompt(提示词)的过程。通过不同的表述、细节和关键词,使大模型更好服务于特定任务。

为什么需要提示词工程?
如果把大模型看作一个灯神,我们在向灯神许愿,那么我们许愿的“愿望”就是提示词,如果我们说的愿望无法被灯神很好理解,那么灯神给我们的还愿就会出现歧义。

比如:我许愿想要100万,没有指明币种,可能灯神会认为我想要的是100万津巴布韦币。

2.具体优化原则

Prompt-Enginerring的优化原则为:

  1. 指定角色及随机度
  2. 编写清晰、具体的指令
  3. 给予执行步骤及思考过程

2.1.指定角色及温度值

角色

指定角色可以让大模型更好地约束自己的行为,给到更专业的输出结果,如在Prompt中指定:

  1. 你是一个认真的审核员
  2. 你是一个高级软件工程师
  3. 你是一个小红书文案生成器
  4. 你是一个数学老师

温度值

在OpenAPI接口或者Playground中,可以指定大模型的输出温度值(temperature)。
温度值越高,大模型的输出越具有不确定性和跳脱性,一般在文科类或情感类需求中,会指定较高的温度值。
温度值越低,大模型的输出会越严格和逻辑慎密,一般在理科类或工程推理等需求中,会指定较低温度值,一般设置为0。

2.2.编写清晰具体的指令

使用分隔符

在编写Prompt时常会出现大模型阅读上下文混淆的问题,比如输入的文本包含与预设Prompt相冲突的内容,如果不加分隔,这些输入就可能“注入”并操纵大模型,导致模型产生毫无关联的乱七八糟的输出。
这种由输入文本影响预设Prompt导致非预期输出的问题,被称为“提示词注入”。
为了避免提示词注入,我们可以在输入文本中使用特定分隔符,强制将不同内容分隔出来,让大模型更好地理解。
常用的分隔符为```、{}、“”、<>等。

  • promptDelimiter
func promptDelimiter(ctx context.Context) {systemText := `你是一个文本总结器,可以把{}扩起来的内容总结为20个字内的概要`gptCaller, err := llm_caller.NewGptLLMCaller(ctx, systemText, 0.0, 512)if err != nil {logrus.Errorf("gpt caller init fail, err = %v,", err)return}{text := `大模型问世仅仅一年,就迎来了免费时代。
在字节跳动的大模型喊出比行业便宜99.3%之后,其“行业最低价”正在被不断打破。近日,阿里云、百度等巨头公司纷纷宣布将大模型价格降到更低,百度甚至直接宣布免费。科大讯飞更是宣布,其讯飞星火API能力正式免费开放。其中,讯飞星火Lite API永久免费开放。
多位业内人士在接受《中国经营报》记者采访时表示,尽管宣布降价的模型产品众多,但真正大规模、高性能并且支持高并发的大模型推理仍然需要收费,降价幅度有限。不过,可以明确的是,这场关于大模型免费使用的价格战才刚刚开始。也许很快人们就会看到,在大模型这场比赛中,大多数的大模型公司都将被淘汰。
没有最低,只有更低
5月22日,腾讯云正式对外宣布了全新的大模型升级方案,其核心模型之一的混元-lite模型价格策略发生重要调整,由原先的0.008元/千tokens调整为全面免费使用。同时,最高配置的万亿参数模型混元-pro也进行了价格优化,从原有的0.1元/千tokens下降至0.03元/千tokens。
短短数日,百度、阿里云、腾讯、字节跳动、科大讯飞等各家大模型厂商均已投入到这场“价格战”中。而国内这场“价格战”最早可追溯到5月6日,幻方量化旗下DeepSeek发布第二代MoE(专家模型)DeepSeek-V2,API定价为每百万tokens输入1元、输出2元(32K上下文),价格为GPT-4-Turbo的近百分之一。`resp, err := gptCaller.Call(ctx, fmt.Sprintf("{%v}", text))if err != nil {logrus.Errorf("gpt caller call fail, err = %v", err)return}logrus.Infof("-原始文本:%v\n-总结文本:%v", text, resp)}{text := `百度文心大模型5.0将在2025年发布
据知情人士消息,百度或将于2025年百度世界大会期间发布新一代文心大模型5.0。目前,文心大模型最新版本为4.0版本,具备理解、生成、逻辑和记忆四大核心能力。公开信息显示,百度文心大模型于2019年3月首发,同年7月迭代至2.0版本,2021年7月发布3.0版本,2023年10月升级至4.0版本。截至目前,百度方面暂未就此传闻给出回应。
OpenAI宣布已启动下一代前沿模型训练
当地时间周二,OpenAI发布公告称董事会成立了一个负责把控AI开发方向的安全委员会。同时,OpenAI还在公告中表示,近些日子已经开始训练公司的“下一代前沿模型”,该新模型预计带来更高水平的能力,将成为聊天机器人、智能助手、搜索引擎和图像生成器在内的各类人工智能产品的核心引擎,助力Open AI实现“通用人工智能”(AGI)的目标。`resp, err := gptCaller.Call(ctx, fmt.Sprintf("{%v}", text))if err != nil {logrus.Errorf("gpt caller call fail, err = %v", err)return}logrus.Infof("-原始文本:%v\n-总结文本:%v", text, resp)}
}
  • 输出
-原始文本:大模型问世仅仅一年,就迎来了免费时代。
在字节跳动的大模型喊出比行业便宜99.3%之后,其“行业最低价”正在被不断打破。近日,阿里云、百度等巨头公司纷纷宣布将大模型价API永久免费开放。
多位业内人士在接受《中国经营报》记者采访时表示,尽管宣布降价的模型产品众多,但真正大规模、高性能并且支持高并发的大模型大模型这场比赛中,大多数的大模型公司都将被淘汰。
没有最低,只有更低
522日,腾讯云正式对外宣布了全新的大模型升级方案,其核心模型之一的混元-lite模型价格策略发生重要调整,由原先的0.008/1/千tokens下降至0.03/千tokens。
短短数日,百度、阿里云、腾讯、字节跳动、科大讯飞等各家大模型厂商均已投入到这场“价格战”中。而国内这场“价格战”最早可追溯kens输入1元、输出2元(32K上下文),价格为GPT-4-Turbo的近百分之一。
-总结文本:大模型价格战:巨头公司纷纷降价,部分免费使用,行业竞争激烈,价格不断下降。 -原始文本:百度文心大模型5.0将在2025年发布
据知情人士消息,百度或将于2025年百度世界大会期间发布新一代文心大模型5.0。目前,文心大模型最新版本为4.0版本,具备理解、0217月发布3.0版本,202310月升级至4.0版本。截至目前,百度方面暂未就此传闻给出回应。
OpenAI宣布已启动下一代前沿模型训练
当地时间周二,OpenAI发布公告称董事会成立了一个负责把控AI开发方向的安全委员会。同时,OpenAI还在公告中表示,近些日子已经图像生成器在内的各类人工智能产品的核心引擎,助力Open AI实现“通用人工智能”(AGI)的目标。
-总结文本:百度计划2025年发布文心大模型5.0,OpenAI启动下一代前沿模型训练,旨在实现通用人工智能目标。 

结构化的输出

许多时候我们需要大模型给我们一些结构化的输出,而不仅仅是连续的文本,例如JSON、HTML等。这种输出非常适合在代码中进一步解析和处理。

  • promptJSON
func promptJSON(ctx context.Context) {systemText := `你是一个文本总结器,可以把{}括起来的内容总结并提炼出对应的关键字。
你需要以JSON形式返回提炼文本、文本中涉及到的关键字列表,对应的Key分别为summarizeText、keywords`gptCaller, err := llm_caller.NewGptLLMCaller(ctx, systemText, 0.0, 512)if err != nil {logrus.Errorf("gpt caller init fail, err = %v,", err)return}{text := `大模型问世仅仅一年,就迎来了免费时代。
在字节跳动的大模型喊出比行业便宜99.3%之后,其“行业最低价”正在被不断打破。近日,阿里云、百度等巨头公司纷纷宣布将大模型价格降到更低,百度甚至直接宣布免费。科大讯飞更是宣布,其讯飞星火API能力正式免费开放。其中,讯飞星火Lite API永久免费开放。
多位业内人士在接受《中国经营报》记者采访时表示,尽管宣布降价的模型产品众多,但真正大规模、高性能并且支持高并发的大模型推理仍然需要收费,降价幅度有限。不过,可以明确的是,这场关于大模型免费使用的价格战才刚刚开始。也许很快人们就会看到,在大模型这场比赛中,大多数的大模型公司都将被淘汰。
没有最低,只有更低
5月22日,腾讯云正式对外宣布了全新的大模型升级方案,其核心模型之一的混元-lite模型价格策略发生重要调整,由原先的0.008元/千tokens调整为全面免费使用。同时,最高配置的万亿参数模型混元-pro也进行了价格优化,从原有的0.1元/千tokens下降至0.03元/千tokens。
短短数日,百度、阿里云、腾讯、字节跳动、科大讯飞等各家大模型厂商均已投入到这场“价格战”中。而国内这场“价格战”最早可追溯到5月6日,幻方量化旗下DeepSeek发布第二代MoE(专家模型)DeepSeek-V2,API定价为每百万tokens输入1元、输出2元(32K上下文),价格为GPT-4-Turbo的近百分之一。`resp, err := gptCaller.Call(ctx, fmt.Sprintf("{%v}", text))if err != nil {logrus.Errorf("gpt caller call fail, err = %v", err)return}logrus.Info(resp)}{text := `百度文心大模型5.0将在2025年发布
据知情人士消息,百度或将于2025年百度世界大会期间发布新一代文心大模型5.0。目前,文心大模型最新版本为4.0版本,具备理解、生成、逻辑和记忆四大核心能力。公开信息显示,百度文心大模型于2019年3月首发,同年7月迭代至2.0版本,2021年7月发布3.0版本,2023年10月升级至4.0版本。截至目前,百度方面暂未就此传闻给出回应。
OpenAI宣布已启动下一代前沿模型训练
当地时间周二,OpenAI发布公告称董事会成立了一个负责把控AI开发方向的安全委员会。同时,OpenAI还在公告中表示,近些日子已经开始训练公司的“下一代前沿模型”,该新模型预计带来更高水平的能力,将成为聊天机器人、智能助手、搜索引擎和图像生成器在内的各类人工智能产品的核心引擎,助力Open AI实现“通用人工智能”(AGI)的目标。`resp, err := gptCaller.Call(ctx, fmt.Sprintf("{%v}", text))if err != nil {logrus.Errorf("gpt caller call fail, err = %v", err)return}logrus.Info(resp)}
}
  • 输出
{"summarizeText": "大模型问世仅仅一年,就迎来了免费时代。多家巨头公司宣布大模型价格降低甚至免费,引发了一场关于大模型免费使用的价格战。各家厂商纷纷加入这场价格战,价格不断被打破。","keywords": ["大模型", "免费时代", "字节跳动", "阿里云", "百度", "科大讯飞", "价格战", "腾讯云", "混元-lite模型", ", "MoE", "GPT-4-Turbo"]
} {"summarizeText": "百度计划在2025年百度世界大会期间发布新一代文心大模型5.0,该模型具备理解、生成、逻辑和记忆四大核心类人工智能产品的核心引擎,助力实现通用人工智能的目标。","keywords": ["百度", "文心大模型", "5.0版本", "OpenAI", "前沿模型", "训练", "人工智能", "通用人工智能", "AGI"]
} 

检查是否满足条件

如果任务包含不一定能满足的假设(条件),我们可以告诉大模型先检查这些假设,如果不满足,则会指出并停止执行后续的完整流程。

  • promptCheck
func promptCheck(ctx context.Context) {systemText := `你是一个操作步骤总结器,请阅读{}括起来的输入内容,并提炼出输入内容中提到的执行步骤。
提炼出的步骤按以下格式返回:
- 第一步:...
- 第二步:...
注意,对于不存在明确步骤的输入内容,直接说"不存在步骤"`gptCaller, err := llm_caller.NewGptLLMCaller(ctx, systemText, 0.0, 512)if err != nil {logrus.Errorf("gpt caller init fail, err = %v,", err)return}{text := `制作牛排首先需要准备材料有牛肉1块,洋葱半个,蒜头2个,黄油1小块,黑胡椒粉少许。
首先把牛肉切成半个巴掌大小的块状,然后往肉上撒盐和黑椒粉,两面抹匀,腌制一两小时。剁碎蒜头和洋葱放入
热锅,待油融化后摆好牛排,慢火煎至你想要的成熟度。制作完成后将牛排装盘,用锅中的余油把蒜头碎和洋葱碎爆香。
随后把洋葱碎炒软后,加入一碗清水煮开,放几滴酒,再用盐和黑椒粉调味,慢慢炒匀成稠汁状。将熬好的黑椒汁淋到牛排上即可`resp, err := gptCaller.Call(ctx, fmt.Sprintf("{%v}", text))if err != nil {logrus.Errorf("gpt caller call fail, err = %v", err)return}logrus.Info(resp)}{text := `今天天气很不错,也不会下雨,也没有多云,阳光明媚`resp, err := gptCaller.Call(ctx, fmt.Sprintf("{%v}", text))if err != nil {logrus.Errorf("gpt caller call fail, err = %v", err)return}logrus.Info(resp)}
}
  • 输出
- 第一步:将牛肉切成半个巴掌大小的块状,撒盐和黑椒粉,腌制一两小时。
- 第二步:剁碎蒜头和洋葱,放入热锅,摆好牛排,慢火煎至理想的成熟度。
- 第三步:将煎好的牛排装盘,用余油爆香蒜头碎和洋葱碎。
- 第四步:炒软洋葱碎后,加入清水煮开,加入几滴酒,用盐和黑椒粉调味,慢慢炒匀成稠汁状。
- 第五步:将熬好的黑椒汁淋到牛排上即可。 不存在步骤

提供少量示例

对于不提供任何示例直接给出提示词并要求模型给出结论的过程,被称为zero-shot(零样本提示),对于某些比较复杂的、需要让大模型先参考一些示例的情况被称为few-shot(少样本提示),通过few-shot可以更好地让大模型了解自己应该输出怎么样的内容,以及完成怎样特定的任务。

  • promptFewShot
func promptFewShot(ctx context.Context) {systemText := `你是一个小红书文案生成器,你需要将{}括起来的输入内容改写为小红书的文案风格并输出改写后的文案。以下是几段小红书风格的博文参考:
1、嘴上说不要,钱包却很诚实嘛。
2、原谅我一生放浪不羁爱shopping!
3、草!我又拔草了!
4、工资已经到账,快递还会远吗?
5、掐指一算,姑娘你命中缺钱。
注意,只需要给出一句话作为文案,不要有多余的特殊符号输出`gptCaller, err := llm_caller.NewGptLLMCaller(ctx, systemText, 0.0, 512)if err != nil {logrus.Errorf("gpt caller init fail, err = %v,", err)return}text := `大模型是当今的潮流,学习及应用大模型是一个大趋势,让我们一起学习大模型`resp, err := gptCaller.Call(ctx, fmt.Sprintf("输入内容为{%v}", text))if err != nil {logrus.Errorf("gpt caller call fail, err = %v", err)return}logrus.Info(resp)
}
  • 输出
大模型是当今的潮流,学习及应用大模型是一个大趋势,让我们一起探索大模型的魅力吧!

2.3.指定执行步骤及思考过程

语言模型与人类一样,需要时间来思考并解决复杂问题。如果让语言模型匆忙给出结论,其结果很可能不准确。在让大模型处理复杂的推理逻辑类问题时,可以指明执行步骤,并要求其输出思考过程,这样可以大提高大模型处理复杂问题的效果。

指定执行步骤

对于一个复杂任务,我们可以给出完成该任务的一系列步骤让大模型遵守,一步步完成并给到最终的输出。

  • promptStructure
func promptStructure(ctx context.Context) {systemText := `请你对{}括起来的文本执行以下操作:
1.首先判断该文本属于哪类语言
2.将该文本翻译为英文
3.总结出中文文本中有哪些地点
4.总结出中文文本中有哪些人物使用JSON形式表达上述操作结果,输出以下Key及值:原始语言、英文翻译、地点汇总、人物汇总`gptCaller, err := llm_caller.NewGptLLMCaller(ctx, systemText, 0.0, 512)if err != nil {logrus.Errorf("gpt caller init fail, err = %v,", err)return}text := `小村庄里,老师小林找到了一把古老的钥匙,决定带领李雷和韩梅梅探索传说中的秘密花园。
他们穿过幽深的森林,解开了一系列谜题,最终发现花园中隐藏的是一座知识的宝库,让整个村庄的孩子们受益无穷。`resp, err := gptCaller.Call(ctx, fmt.Sprintf("输入文本:{%v}", text))if err != nil {logrus.Errorf("gpt caller call fail, err = %v", err)return}logrus.Info(resp)
}
  • 输出
{"原始语言": "中文","英文翻译": "In a small village, teacher Xiao Lin found an ancient key and decided to lead Li Lei and Han Meimei tplore the legendary secret garden. They passed through a deep forest, solved a series of puzzles, and finally discovered that the hidden treasure in the garden was a treasury of knowledge, benefiting all the children in the village.","地点汇总": ["小村庄", "秘密花园", "幽深的森林"],"人物汇总": ["小林", "李雷", "韩梅梅"]
} 

思考过程

在设计Prompt时,我们还可以通过明确指导语言模型进行自主思考,来获得更好的效果。举个例子,假设我们要语言模型判断一个数学问题的解答是否正确。仅仅提供问题和解答是不够的,模型可能会匆忙做出错误判断。
相反,我们可以在Prompt中先要求语言模型自己尝试解决这个问题,给出思考过程,然后再与提供的解答进行对比,判断正确性。这种先让语言模型自主思考的方式,能帮助它更深入理解问题,做出更准确的判断。

  • promptCoT
func promptCoT(ctx context.Context) {systemText := `你是一个数学老师,请你批改{}括起来的含有作业题目及答案的文本,执行以下操作:
1.首先阅读题目,并自己计算得到答案,写下推理过程
2.将你的推理过程与文本中的答案比对
3.判断文本中的答案是否正确
4.总结文本中的答案错在了哪里最后,上述操作无需输出,只需要使用JSON格式输出以下Key及值:推理过程、答案是否正确、答案错在哪里对于JSON格式中Key的说明:
1.推理过程:你解答这个题目的推理过程
2.答案是否正确:输入文本中的答案是否正确,输出值为:正确、不正确  
3.答案错在哪里:输入文本中的答案错在哪里`gptCaller, err := llm_caller.NewGptLLMCaller(ctx, systemText, 0.0, 1024)if err != nil {logrus.Errorf("gpt caller init fail, err = %v,", err)return}text := `题目:
土地费用为 100美元/平方英尺
我可以以 250美元/平方英尺的价格购买太阳能电池板
我已经谈判好了维护合同,每年需要支付固定的10万美元,并额外支付每平方英尺10美元
作为平方英尺数的函数,首年运营的总费用是多少。
答案:
设x为发电站的大小,单位为平方英尺。
费用:
土地费用:100x
太阳能电池板费用:250x
维护费用:100,000美元+100x
总费用:100x+250x+100,000美元+100x=450x+100,000美元`resp, err := gptCaller.Call(ctx, fmt.Sprintf("输入文本:{%v}", text))if err != nil {logrus.Errorf("gpt caller call fail, err = %v", err)return}logrus.Info(resp)
}
  • 输出
{
"推理过程": "首年运营的总费用应包括土地费用、太阳能电池板费用和维护费用。土地费用为100x,太阳能电池板费用为250x,维护费100,000美元。",
"答案是否正确": "不正确",
"答案错在哪里": "计算总费用时,维护费用额外支付每平方英尺10美元,而不是10,000美元。因此,总费用应为360x+10x+100,000美元=370x+100,000美元。"
} 

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

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

相关文章

【JavaEE 进阶(二)】Spring MVC(下)

❣博主主页: 33的博客❣ ▶️文章专栏分类:JavaEE◀️ &#x1f69a;我的代码仓库: 33的代码仓库&#x1f69a; &#x1faf5;&#x1faf5;&#x1faf5;关注我带你了解更多进阶知识 目录 1.前言2.响应2.1返回静态界面2.2返回数据2.3返回HTML代码 3.综合练习3.1计算器3.2用户登…

ROS简介

ROS概念 学习路线 操作系统 Linux环境下编译执行c文件&#xff08;需安装vim超文本编辑器&#xff09; sudo g MyCoding.cpp -o CodeTest //生成一个名字为CodeTest的可执行文件 sudo ./CodeTest //执行c文件版本问题 ROS Melodic Morenia 和 ROS Noetic Ninjemys 是…

基于Django的博客系统之登录增加忘记密码(八)

需求 描述&#xff1a; 用户忘记密码时&#xff0c;提供一种重置密码的方法&#xff0c;以便重新获得账户访问权限。规划&#xff1a; 创建一个包含邮箱输入字段的表单&#xff0c;用于接收用户的重置密码请求。用户输入注册时使用的邮箱地址&#xff0c;系统发送包含重置密码…

CTF本地靶场搭建——基于阿里云ACR实现动态flag题型的创建

接上文&#xff0c;这篇主要是结合阿里云ACR来实现动态flag题型的创建。 这里顺便也介绍一下阿里云的ACR服务。 阿里云容器镜像服务&#xff08;简称 ACR&#xff09;是面向容器镜像、Helm Chart 等符合 OCI 标准的云原生制品安全托管及高效分发平台。 ACR 支持全球同步加速、…

如何恢复 Android 设备上丢失的照片

由于我们的大量数据和日常生活都存储在一台设备上&#xff0c;因此有时将所有照片本地存储在 Android 智能手机或平板电脑上可能是一种冒险行为。无论是由于意外&#xff08;损坏、无意删除&#xff09;&#xff0c;还是您认识的人翻看您的设备并故意删除了您想要保留的照片&am…

从0开始学统计-什么是回归?

1.什么是回归&#xff1f; 回归&#xff08;Regression&#xff09;是统计学中一种用于探索变量之间关系的分析方法。它主要用于预测一个或多个自变量&#xff08;输入变量&#xff09;与因变量&#xff08;输出变量&#xff09;之间的关系。在回归分析中&#xff0c;我们尝试根…

【Leetcode笔记】40.组合总和II

1. 题目要求 这道题目和39.组合总和不一样的地方在于&#xff1a;数组中含有相同的元素。同样地&#xff0c;结果不能含有重复组合。 拿第一个示例来看&#xff0c; candidates [1, 1, 2, 5, 6, 7, 10]问题在于&#xff1a;第一个path[1(index 0), 2]&#xff0c;绝不能出现…

大语言模型实战——最小化模型评测

1. 引言 现在国内外的主流模型&#xff0c;在新模型发布时都会给出很多评测数据&#xff0c;用以说明当前模型在不同数据集上的测评表现&#xff08;如下面llama3发布的评测数据&#xff09;。 这些评测数据是如何给出来的呢&#xff1f;这篇文章会用一个最小化的流程来还原下…

echarts绘制三维柱状图

echarts ECharts 是一个使用 JavaScript 实现的开源可视化库&#xff0c;主要用于数据的可视化展示。ECharts 支持丰富的图表类型&#xff0c;如折线图、柱状图、饼图、地图、K线图等&#xff0c;可以满足不同类型数据的展示需求。 文档地址&#xff1a;echarts 本次所绘制三…

从零开始实现自己的串口调试助手(3) - 显示底部收发,优化串口打开/关闭

注意: 1. 我们要实现自发自收&#xff0c;要将tx&#xff0c;rx连起来 2.发送的 不能是中文符号&#xff0c;因为这可能导致&#xff0c;读取到的是英文符号 --> 导致接收到的size 和发送的size 大小不一致 3.注意同时定义两个槽函数的时候两个槽函数都会被调用&#xff0c;…

MySQL数据表的设计

实际工程中, 对于数据表的设计和创建, 我们遵循以下步骤: 首先确定实体, 找到关键名词, 提取关键信息, 设计表有哪些列, 每一列是什么. (有几个实体, 一般就创建几个表, 一般一个表对应一个实体) 实体之间的关系: 1. 一对一关系 例如: 一个学生, 只能有一个账号; 一个账号只…

基于单片机的病床呼叫系统设计研究

摘要&#xff1a;随着无线技术的快速发展&#xff0c;无线应用技术已经运用到人们生产生活中的多个领域&#xff0c;运用无线技术来设计病床呼叫系统能够实现无线信号的远距离传输&#xff0c;减少材料耗费&#xff0c;使医患之间的沟通更加便捷&#xff0c;该系统运用单片机作…

决定短视频打开率的要素:成都鼎茂宏升文化传媒公司

​ 在当下这个短视频盛行的时代&#xff0c;无论是个人创作者还是企业品牌&#xff0c;都希望通过短视频平台获得更多的曝光和关注。然而&#xff0c;如何让自己的短视频在众多内容中脱颖而出&#xff0c;吸引用户的点击和观看&#xff0c;成为了摆在我们面前的重要问题。成都…

nginx隐藏版本号、错误信息页面隐藏nginx软件、修改 HTTP 头信息中的connection 字段,防止回显具体版本号、curl命令

目录 安装之后隐藏 配置文件 源代码配置安装之前隐藏 修改nginx.h文件中的 13、14行 修改 HTTP 头信息中的connection 字段&#xff0c;防止回显具体版本号 配置文件49行 错误页面程序返回版本号、nginx隐藏 配置文件36行 ​编辑 安装nginx 相关选项说明 curl命令测试…

更新详情 | Flutter 3.22 与 Dart 3.4

作者 / Michael Thomsen 过去几个月&#xff0c;Dart & Flutter 部门可谓忙碌非凡&#xff0c;但我们很高兴地宣布&#xff0c;Flutter 3.22 和 Dart 3.4 已经在今年的 Google I/O 大会上精彩亮相&#xff01; Google I/Ohttps://io.google/2024/intl/zh/ 我们始终致力于提…

记一次mysql索引优化

生产日志告警出现一条慢 sql 告警, 通过 sql 监控平台拿到 这条sql 语句是 : SELECTid,report_id,report_detail_id,item_code,report_type,photo FROM**** 表 WHEREdel_flag 0 AND (report_type 1 AND report_detail_id IN ( 1742 )) 之后用 explain 分析这条 sql 的命中…

FPGA新起点V1开发板(九)——流水灯

文章目录 一、模块框图二、代码编写三、注意点四、总结 一、模块框图 二、代码编写 endmodule下面需要敲出一个回车代码拼接是大括号 led < {led[2:0],led[3]}注意二进制和十进制 module flow_led(input sys_clk50,input rst_n,output reg [3:0] le…

Java开发分析工具:JProfiler 14 for Mac/win 激活版下载

JProfiler是一款功能强大的Java应用程序性能分析工具&#xff0c;适用于Java开发人员和企业用户&#xff0c;可帮助他们识别和解决Java应用程序中的性能问题&#xff0c;提高应用程序的性能和稳定性。使用JProfiler&#xff0c;开发人员可以实时查看Java应用程序的性能数据&…

Redis数据类型(下篇)

5.Redis有序集合zset(sorted set) 本质就是在set的基础上&#xff0c;每个val值前面加了一个score分数值。 &#xff08;1&#xff09;向有序集合中添加多个&#xff08;或者一个&#xff09;元素和其对应的分数 127.0.0.1:6379> zadd zset1 100 a 90 b 80 c 70 d 60 e (…

【VMware虚拟机中ubuntu系列】—— 在虚拟机中使用本机摄像头的详细教程与常见问题分析及解决

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、虚拟机调用本机摄像头(1) 启动VMware USB 服务(2) 连接本机摄像头(3) 测试摄像头的连接 二、安装usb驱动二、运行usb_cam.launch时出现select timeout的报错…