AIGC:阿里开源大模型通义千问部署与实战

1 引言

通义千问-7B(Qwen-7B)是阿里云研发的通义千问大模型系列的70亿参数规模的模型。Qwen-7B是基于Transformer的大语言模型, 在超大规模的预训练数据上进行训练得到。预训练数据类型多样,覆盖广泛,包括大量网络文本、专业书籍、代码等。同时,在Qwen-7B的基础上,我们使用对齐机制打造了基于大语言模型的AI助手Qwen-7B-Chat。相较于最初开源的Qwen-7B模型,我们现已将预训练模型和Chat模型更新到效果更优的版本。本仓库为Qwen-7B预训练模型的仓库。

体验地址:https://modelscope.cn/studios/qwen/Qwen-7B-Chat-Demo/summary

代码地址:https://github.com/QwenLM/Qwen

通义千问-7B(Qwen-7B)主要有以下特点:

  •  大规模高质量训练语料:使用超过2.4万亿tokens的数据进行预训练,包含高质量中、英、多语言、代码、数学等数据,涵盖通用及专业领域的训练语料。通过大量对比实验对预训练语料分布进行了优化。
  • 强大的性能:Qwen-7B在多个中英文下游评测任务上(涵盖常识推理、代码、数学、翻译等),效果显著超越现有的相近规模开源模型,甚至在部分指标上相比更大尺寸模型也有较强竞争力。具体评测结果请详见下文。
  • 覆盖更全面的词表:相比目前以中英词表为主的开源模型,Qwen-7B使用了约15万大小的词表。该词表对多语言更加友好,方便用户在不扩展词表的情况下对部分语种进行能力增强和扩展。

2 通义千问介绍

2.1 介绍

我们开源了Qwen(通义千问)系列工作,当前开源模型的参数规模为18亿(1.8B)、70亿(7B)、140亿(14B)和720亿(72B)。本次开源包括基础模型Qwen,即Qwen-1.8B、Qwen-7B、Qwen-14B、Qwen-72B,以及对话模型Qwen-Chat,即Qwen-1.8B-Chat、Qwen-7B-Chat、Qwen-14B-Chat和Qwen-72B-Chat。模型链接在表格中,请点击了解详情。同时,我们公开了我们的技术报告,请点击上方论文链接查看。

当前基础模型已经稳定训练了大规模高质量且多样化的数据,覆盖多语言(当前以中文和英文为主),总量高达3万亿token。在相关基准评测中,Qwen系列模型拿出非常有竞争力的表现,显著超出同规模模型并紧追一系列最强的闭源模型。此外,我们利用SFT和RLHF技术实现对齐,从基座模型训练得到对话模型。Qwen-Chat具备聊天、文字创作、摘要、信息抽取、翻译等能力,同时还具备一定的代码生成和简单数学推理的能力。在此基础上,我们针对LLM对接外部系统等方面针对性地做了优化,当前具备较强的工具调用能力,以及最近备受关注的Code Interpreter的能力和扮演Agent的能力。我们将各个大小模型的特点列到了下表。

在这个项目中,你可以了解到以下内容

  • 快速上手Qwen-Chat教程,玩转大模型推理
  • 量化模型相关细节,包括GPTQ和KV cache量化
  • 推理性能数据,包括推理速度和显存占用
  • 微调的教程,帮你实现全参数微调、LoRA以及Q-LoRA
  • 部署教程,以vLLM和FastChat为例
  • 搭建Demo的方法,包括WebUI和CLI Demo
  • 搭建API的方法,我们提供的示例为OpenAI风格的API
  • 更多关于Qwen在工具调用、Code Interpreter、Agent方面的内容
  • 长序列理解能力及评测
  • 使用协议

2.2 新闻

  • 2023.11.30 🔥 我们推出 Qwen-72B 和 Qwen-72B-Chat,它们在 3T tokens上进行训练,并支持 32k 上下文。同时也发布了 Qwen-1.8B 和 Qwen-1.8B-Chat。我们还增强了 Qwen-72B-Chat 和 Qwen-1.8B-Chat 的系统指令(System Prompt)功能,请参阅示例文档。此外,我们还对昇腾910以及海光DCU实现了推理的支持,详情请查看ascend-supportdcu-support文件夹。
  • 2023年10月17日 我们推出了Int8量化模型Qwen-7B-Chat-Int8和Qwen-14B-Chat-Int8。
  • 2023年9月25日 在魔搭社区(ModelScope)和Hugging Face推出Qwen-14B和Qwen-14B-Chat模型,并开源 qwen.cpp 和 Qwen-Agent。Qwen-7B和Qwen-7B-Chat的代码和模型也同步得到更新。请使用最新的代码和模型!
    • 相比原版Qwen-7B,新版用了更多训练数据(从2.2T增加到2.4T tokens),序列长度从2048扩展至8192。整体中文能力以及代码能力均有所提升。
  • 2023年9月12日 支持Qwen-7B和Qwen-7B-Chat的微调,其中包括全参数微调、LoRA以及Q-LoRA。
  • 2023年8月21日 发布Qwen-7B-Chat的Int4量化模型,Qwen-7B-Chat-Int4。该模型显存占用低,推理速度相比半精度模型显著提升,在基准评测上效果损失较小。
  • 2023年8月3日 在魔搭社区(ModelScope)和Hugging Face同步推出Qwen-7B和Qwen-7B-Chat模型。同时,我们发布了技术备忘录,介绍了相关的训练细节和模型表现。

2.3 评测表现

Qwen系列模型相比同规模模型均实现了效果的显著提升。我们评测的数据集包括MMLU、C-Eval、 GSM8K、 MATH、HumanEval、MBPP、BBH等数据集,考察的能力包括自然语言理解、知识、数学计算和推理、代码生成、逻辑推理等。Qwen-72B在所有任务上均超越了LLaMA2-70B的性能,同时在10项任务中的7项任务中超越GPT-3.5.

ModelMMLUC-EvalGSM8KMATHHumanEvalMBPPBBHCMMLU
5-shot5-shot8-shot4-shot0-shot3-shot3-shot5-shot
LLaMA2-7B46.832.516.73.312.820.838.231.8
LLaMA2-13B55.041.429.65.018.930.345.638.4
LLaMA2-34B62.6-42.26.222.633.044.1-
ChatGLM2-6B47.951.732.46.5--33.7-
InternLM-7B51.053.431.26.310.414.037.051.8
InternLM-20B62.158.852.67.925.635.652.559.0
Baichuan2-7B54.756.324.65.618.324.241.657.1
Baichuan2-13B59.559.052.810.117.130.249.062.0
Yi-34B76.381.867.915.926.238.266.482.6
XVERSE-65B70.868.660.3-26.3---
Qwen-1.8B45.356.132.32.315.214.222.352.1
Qwen-7B58.263.551.711.629.931.645.062.2
Qwen-14B66.372.161.324.832.340.853.471.0
Qwen-72B77.483.378.935.235.452.267.783.6

对于以上所有对比模型,我们列出了其官方汇报结果与OpenCompass结果之间的最佳分数。

更多的实验结果和细节请查看我们的技术备忘录。点击这里。

2.4 推理性能

这一部分将介绍模型推理的速度和显存占用的相关数据。下文的性能测算使用 此脚本 完成。

我们测算了BF16、Int8和Int4模型在生成2048个token时的平均推理速度(tokens/s)和显存使用。结果如下所示:

Model SizeQuantizationSpeed (Tokens/s)GPU Memory Usage
1.8BBF1654.094.23GB
Int855.563.48GB
Int471.072.91GB
7BBF1640.9316.99GB
Int837.4711.20GB
Int450.098.21GB
14BBF1632.2230.15GB
Int829.2818.81GB
Int438.7213.01GB
72BBF168.48144.69GB (2xA100)
Int89.0581.27GB (2xA100)
Int411.3248.86GB
72B + vLLMBF1617.602xA100

评测运行于单张A100-SXM4-80G GPU(除非提到使用2xA100),使用PyTorch 2.0.1、CUDA 11.8和Flash-Attention2。(72B + vLLM 使用 PyTorch 2.1.0和Cuda 11.8.)推理速度是生成2048个token的速度均值。

注意:以上Int4/Int8模型生成速度使用autogptq库给出,当前AutoModelForCausalLM.from_pretrained载入的模型生成速度会慢大约20%。我们已经将该问题汇报给HuggingFace团队,若有解决方案将即时更新。

我们还测量了不同上下文长度、生成长度、Flash-Attention版本的推理速度和 GPU 内存使用情况。可以在 Hugging Face 或 ModelScope 上的相应的模型介绍页面找到结果。

3 大模型部署与实战

3.1 conda环境准备

conda环境准备详见:annoconda

3.2 运行环境构建

git clone https://github.com/fishaudio/Bert-VITS2
cd Bert-VITS2conda create -n vits2 python=3.9
conda activate vits2pip install -r requirements.txt
pip install gradio
pip install mdtex2html

3.3 预训练模型下载

Qwen-7B模型:https://huggingface.co/Qwen/Qwen-7B/tree/main

也可以使用git下载,下载文成后,存储到根目录的Qwen文件夹下,如下所示:

(qwen) [root@localhost Qwen]# ll Qwen/Qwen-7B-Chat/
总用量 15083460
-rw-r--r-- 1 root root       8404 12月 20 10:51 cache_autogptq_cuda_256.cpp
-rw-r--r-- 1 root root      51991 12月 20 10:51 cache_autogptq_cuda_kernel_256.cu
-rw-r--r-- 1 root root        911 12月 20 10:51 config.json
-rw-r--r-- 1 root root       2345 12月 20 10:51 configuration_qwen.py
-rw-r--r-- 1 root root       1924 12月 20 10:51 cpp_kernels.py
-rw-r--r-- 1 root root        273 12月 20 10:51 generation_config.json
-rw-r--r-- 1 root root 1964066488 12月 20 10:52 model-00001-of-00008.safetensors
-rw-r--r-- 1 root root 2023960808 12月 20 10:53 model-00002-of-00008.safetensors
-rw-r--r-- 1 root root 2023960816 12月 20 10:54 model-00003-of-00008.safetensors
-rw-r--r-- 1 root root 2023960848 12月 20 10:55 model-00004-of-00008.safetensors
-rw-r--r-- 1 root root 2023960848 12月 20 10:57 model-00005-of-00008.safetensors
-rw-r--r-- 1 root root 2023960848 12月 20 10:58 model-00006-of-00008.safetensors
-rw-r--r-- 1 root root 2023960848 12月 20 10:59 model-00007-of-00008.safetensors
-rw-r--r-- 1 root root 1334845784 12月 20 10:59 model-00008-of-00008.safetensors
-rw-r--r-- 1 root root      55563 12月 20 10:59 modeling_qwen.py
-rw-r--r-- 1 root root      19547 12月 20 10:59 model.safetensors.index.json
-rw-r--r-- 1 root root      14604 12月 20 10:59 qwen_generation_utils.py
-rw-r--r-- 1 root root    2561218 12月 20 10:59 qwen.tiktoken
-rw-r--r-- 1 root root       9618 12月 20 10:59 tokenization_qwen.py
-rw-r--r-- 1 root root        174 12月 20 10:59 tokenizer_config.json

3.4 运行模型

修改web_demo.py中的代码

    parser.add_argument("--server-name", type=str, default="127.0.0.1",help="Demo server name.")修改为:(改为本地局域网地址)parser.add_argument("--server-name", type=str, default="192.168.1.150",help="Demo server name.")

运行web

python web_demo.py

启动界面如下:

4 Qwen能力测试

4.1 知识问答

问题:按照你认为的顺序列出中国古代最著名的都城,不超过10个

Qwen-Chat: 中国古代最著名的都城有:长安(西安)、洛阳、南京、开封、杭州、北京、成都、南京、上海。

问题:冬是24节气中的哪个节气

Qwen-Chat: 立冬是农历二十四节气之一,斗柄指向西北,太阳黄经达225°,于每年公历11月7-8日之间交节。此时,北斗七星已由夏季星空移到冬季星空。由于太阳直射南半球,北半球昼短夜长,天气也逐渐转冷,开始进入冬季。农业生产上,需要做好农作物的越冬防冻工作;同时人们也开始着手准备冬季的取暖设备,并储备足够的过冬食物。

问题:背诵24节气,并支出立夏是哪个节气

24节气是中国古代劳动人民根据太阳在黄道上的位置,把一年划分为24等份,每份为一个节气,始于立春,终于大寒,每个节气分别有3天(干支计法)或4天(太阳记时法)。以下是24节气名称及其对应日期:<br>1. 立春:每年公历2月3-5日<br>2. 雨水:每年公历2月18-20日<br>3. 惊蛰:每年公历3月5-7日<br>4. 春分:每年公历3月20-22日<br>5. 清明:每年公历4月4-6日<br>6. 谷雨:每年公历4月19-21日<br>7. 立夏:每年公历5月5-7日<br>8. 小满:每年公历5月20-22日<br>9. 芒种:每年公历6月5-7日<br>10. 夏至:每年公历6月21-22日<br>11. 小暑:每年公历7月6-8日<br>12. 大暑:每年公历7月22-24日<br>13. 立秋:每年公历8月7-9日<br>14. 处暑:每年公历8月22-24日<br>15. 白露:每年公历9月7-9日<br>16. 秋分:每年公历9月22-24日<br>17. 寒露:每年公历10月8-9日<br>18. 霜降:每年公历10月23-24日<br>19. 立冬:每年公历11月7-8日<br>20. 小雪:每年公历11月22-23日<br>21. 大雪:每年公历12月7-8日<br>22. 冬至:每年公历12月21-23日<br>23. 小寒:每年公历1月5-7日<br>24. 大寒:每年公历1月20-22日

4.2 文本生成

问题:写一遍200字的描述月亮的散文

Qwen-Chat: 月亮,那宁静而神秘的自然现象,它不仅是夜晚最明亮的星体,也是人类内心深处的象征。月亮以其独特的光芒照亮了黑夜,让世界变得温柔而浪漫。它不仅带给我们光明,还给了我们许多故事和传说,让我们对宇宙充满了好奇与敬畏之心。无论是在东方还是西方,月亮都是文化中不可或缺的一部分,它给我们的生活带来了无尽的乐趣和启示。月亮的存在使我们感到温暖和安慰,让我们在黑暗中找到了希望和力量。月亮,你是那么的美丽,那么的神秘,你让人们在你的光辉下感到无比幸福和安宁。

4.3 数理逻辑

问题:一堆土豆,原来每次运9吨,12次才能运完,现在每次运11吨,多少次可以运完

Qwen-Chat: 设原来堆土豆的重量为x吨,则每次运输9吨,需要12次才能运输完毕。可得:x = 9 * 12<br>而现在每次运输11吨,所以需要运输的次数为:x / 11 = 12次<br>因此,现在需要12次就可以将全部土豆运完。

4.4 语言理解

问题:请总结塞万提斯的作品--《唐吉坷德》的主要内容和中心思想

Qwen-Chat: 《唐吉诃德》是西班牙作家塞万提斯的一部经典小说,它的主要情节是关于一个名叫唐吉诃德的乡村骑士,他误以为自己是一名英勇的骑士,开始了一系列荒谬而又滑稽的行为。在这个过程中,他遇到了各种各样的人物,包括他的朋友桑丘、一位富商和他的家臣,以及各种骗子和恶棍。<br>这部小说的核心思想是对现实主义文学的一种挑战,同时也反映了当时社会的一些问题,如愚昧无知、贪欲横行和道德败坏。唐吉诃德的行为虽然荒诞,但却是对社会现状的一种讽刺和批评。此外,小说还探讨了一些深刻的主题,如爱情、友情、家庭、权力和正义等。<br>总的来说,《唐吉诃德》是一部充满幽默和智慧的作品,通过主角唐吉诃德的经历,作者向读者传达了一个重要的信息:人类不应该被虚幻的理想所迷惑,而是应该勇敢面对现实,追求真理和正义。

4.5 常识问题

问题:树上有9只鸟,猎人开一枪打死了一只,树上还剩几只鸟

Qwen-Chat: 如果树上原来有9只鸟,猎人开一枪打死了一只,那么树上剩下的鸟应该是8只。因为当一只鸟被打死后,其他鸟会受到影响,可能会受到惊吓或者逃跑,导致剩下的鸟的数量减少。但是,在这个问题中,由于没有提供更多信息,所以无法确定最后剩下的鸟的数量是否会少于8只。

4.6 代码生成

问题:请用python编写一个冒泡排序算法,带测试例子

Qwen-Chat: <pre><code class="language-python"><br>def&nbsp;bubble&lowbar;sort&#40;arr&#41;:<br>&nbsp;&nbsp;&nbsp;&nbsp;n&nbsp;=&nbsp;len&#40;arr&#41;<br>&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;i&nbsp;in&nbsp;range&#40;n&#41;:<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#&nbsp;Last&nbsp;i&nbsp;elements&nbsp;are&nbsp;already&nbsp;sorted<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;j&nbsp;in&nbsp;range&#40;0,&nbsp;n&#45;i&#45;1&#41;:<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#&nbsp;traverse&nbsp;the&nbsp;array&nbsp;from&nbsp;0&nbsp;to&nbsp;n&#45;i&#45;1<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#&nbsp;Swap&nbsp;if&nbsp;the&nbsp;element&nbsp;found&nbsp;is&nbsp;greater&nbsp;than&nbsp;the&nbsp;next&nbsp;element<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;arr[j]&nbsp;&gt;&nbsp;arr[j+1]&nbsp;:<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;arr[j],&nbsp;arr[j+1]&nbsp;=&nbsp;arr[j+1],&nbsp;arr[j]<br>&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;arr<br>#&nbsp;Test&nbsp;example<br>arr&nbsp;=&nbsp;[64,&nbsp;34,&nbsp;25,&nbsp;12,&nbsp;22,&nbsp;11,&nbsp;90]<br>print&#40;"Before&nbsp;sorting"&#41;<br>print&#40;arr&#41;<br>bubble&lowbar;sort&#40;arr&#41;<br>print&#40;"\nAfter&nbsp;sorting"&#41;<br>print&#40;arr&#41;<br></code></pre><br>输出:<pre><code class="language-"><br>Before&nbsp;sorting<br>[64,&nbsp;34,&nbsp;25,&nbsp;12,&nbsp;22,&nbsp;11,&nbsp;90]<br>After&nbsp;sorting<br>[11,&nbsp;12,&nbsp;22,&nbsp;25,&nbsp;34,&nbsp;64,&nbsp;90]<br></code></pre><br>这只是一个基本的冒泡排序算法实现,实际应用中可能需要考虑一些优化策略,比如记录交换次数、停止条件等。

4.7 医疗问题

问题:乳腺癌发病的原因是什么

Qwen-Chat: 乳腺癌是一种恶性肿瘤,其发病原因可能是多种因素共同作用的结果,包括遗传因素、环境因素和生活方式因素等。<br>1. 遗传因素:家族中有乳腺癌病史的人,患乳腺癌的风险比其他人高。研究发现,大约20%的乳腺癌病例是由遗传因素引起的。<br>2. 环境因素:环境污染、辐射暴露、内分泌失调等因素都可能导致乳腺癌的发生。例如,长期接触有害化学物质,如石棉、苯等,或暴露于放射线中,都可能增加患乳腺癌的风险。<br>3. 生活方式因素:不健康的生活方式也可能增加患乳腺癌的风险。例如,长期吸烟、饮酒、缺乏运动、饮食不均衡等都可能导致乳腺癌的发生。<br>4. 其他因素:包括年龄、性别、初潮年龄、绝经年龄、激素替代疗法等也可能影响乳腺癌的发生率。<br>需要注意的是,这些因素单独或组合起来并不能保证一定会发生乳腺癌,而且这些因素的影响程度也会因个体差异而有所不同。因此,预防乳腺癌的关键在于改变不良生活习惯,定期体检,并积极治疗早期疾病。

4.8 内容总结

问题:对以下内容做个总结:今天一放学,我和同学一起蹦蹦跳跳地回家。因为,今天是美好的圣诞节平安夜。一回家,爸爸就告诉我今天在国际大厦吃饭。我听了,高兴得一蹦三尺高。等妈妈一回家,我和爸爸就拉着妈妈出门去吃饭。一路上,我看到今晚行人的脸上都洋溢着笑脸,给人一种祥和,温馨的感觉。走到国际大厦的门口就感觉到一股暖流,玻璃门外寒风刺骨,推门进入温暖如春。大厦里的圣诞老人不停地向我们招手。圣诞树那翠绿的树枝上面挂满了千盏万盏五彩缤纷的彩灯。一闪一闪地眨着闪亮的眼睛。一进大厦,我就直奔2楼,西餐厅里回旋着一首圣诞歌,歌声悠扬,让心情舒畅。墙上挂着一张和蔼可亲的圣诞老人的照片。我和爸爸,妈妈还有叔叔阿姨坐在一张桌子上,大家好像一个大家庭。没过多长时间,那些美味可口的菜就来了。一见那香喷喷的鸭肉,我再也控制不住自己,狼吞虎咽地吃起来。等我吃完这些可口以后,贪玩的我和许多小朋友在国际大厦跑来跑去,跑上跑下,一会儿去看那和蔼可亲的圣诞老人,一会儿去看那些五彩缤纷光芒的圣诞树。圣诞节是一个收礼物的好节日。小时候的我总是梦想有一天圣诞老人能到我家,送我美好的圣诞礼物。长大了,我知道小时候那些礼物都是爸爸妈妈送的。今天的圣诞节,我缠着爸爸妈妈给我礼物。妈妈笑着告诉我。妈妈笑着告诉我:“明天早上你醒来,圣诞老人的了礼物就回送到。”虽然我知道礼物是爸爸妈妈送的,但是晚上,我仍然拿了一双袜子放在床头上。早上醒来,我发现袜子里塞着一张35元的书卡,我太高兴了,在床上跳着喊到:“圣诞老人万岁!”我拿着书卡去上学,去向同学们炫耀炫耀。

Qwen-Chat: 好的,您的概括是:<br>这篇文章描述了作者在圣诞节那天的经历。那天放学后,作者和同学一起回家,然后在家中得知晚上要去国际大厦吃饭,十分开心。他们在路上看到了人们的笑容,感到祥和温馨。走进国际大厦后,他们去了2楼的西餐厅吃饭,听到了优美的圣诞歌曲,看到了圣诞老人的照片。晚餐结束后,他们和许多人一起玩耍,看圣诞树,度过了一个快乐的圣诞节。

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

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

相关文章

百度侯震宇:AI原生与大模型将从三个层面重构云计算

12月20日&#xff0c;2023百度云智大会智算大会在北京举办&#xff0c;大会以「大模型重构云计算&#xff0c;Cloud for AI」为主题&#xff0c;深度聚焦大模型引发的云计算变革。 百度智能云表示&#xff0c;为满足大模型落地需求&#xff0c;正在基于「云智一体」战略重构…

ubuntu qt 源码编译

官方源码下载地址 : 源码地址 选择要下载的版本 dmg结尾的是MacOS系统里使用的Qt库&#xff0c;qt-everywhere-opensource-src-4.7.0是Qt源码包&#xff0c;有zip和tar.gz两个压缩格式的&#xff0c;两个内容是一样的&#xff0c;只是zip一般在Windows下比较流行&#xff0c;…

Java:语法速通

参考 菜鸟教程 java 继承 class 父类 { }class 子类 extends 父类 { }继承的特性&#xff1a; 子类拥有父类非private的属性和方法子类可以对父类进行扩展子类可以重写父类的方法使用extends只能单继承&#xff0c;使用implements可以变相的多继承&#xff0c;即一个类继承…

无人机支持的空中无蜂窝大规模MIMO系统中上行链路分布式检测

无人机支持的空中无蜂窝大规模MIMO系统中上行链路分布式检测 无人机支持的空中无蜂窝大规模MIMO系统中上行链路分布式检测介绍题目一. 背景&#xff08;解决的问题&#xff09;二. 系统模型2.1 信道模型2.1.1 信道系数2.1.2 进行标准化 2.2 信道估计 和 数据传输2.2.1 信道估计…

在Windows系统平台下部署运行服务端Idea工程的jar服务

前言 目前云原生docker等技术&#xff0c;加上部署流水线大大的简化了各种流程&#xff0c;我们后端开发的人员只需要提交代码后&#xff0c;构建、部署、测试、发布等环节都无需人员接入&#xff0c;完全的自动化交付了。那么你肯定不禁想问&#xff0c;如题的需求不是点击一…

Web 前端—HTML+CSS系列

HTML、CSS 一、HTMLCSS1.1什么是HTML、CSS1.2宇宙第一编辑器VS Code1.3Chrome浏览器1.4、深入了解网站开发 一、HTML基本操作1.web前端三大核心技术2.HTML初始代码3.HTML注释4.HTML语义化5.标题与段落6.文本修饰标签7.图片标签与图片属性8.引入文件的地址路径9.跳转链接10.跳转…

Leetcode—75.颜色分类【中等】

2023每日刷题&#xff08;六十五&#xff09; Leetcode—75.颜色分类 实现代码 class Solution { public:void sortColors(vector<int>& nums) {int red 0, white 0, blue 0;for(auto num: nums) {if(num 0) {red;} else if(num 1) {white;} else {blue;}}for…

机械、电气、自动化与人工智能融合:发展历程、问题与前景

导言 机械、电气、自动化行业与人工智能的结合&#xff0c;推动了工业革命的新浪潮。本文将深入研究这一融合的发展历程、遇到的问题、解决过程&#xff0c;以及未来的可用范围&#xff0c;着重分析在各国的应用现状和未来的研究趋势。同时&#xff0c;探讨在哪些方面能够取得胜…

环境搭建及源码运行_java环境搭建_idea版本下载及安装

1、介绍 Idea是一款被广泛使用的Java集成开发环境&#xff0c;它提供了丰富的功能和工具来帮助开发人员更高效地编写和调试代码。作为一款开源软件&#xff0c;Idea不仅提供了基本的代码编辑、自动完成和调试功能&#xff0c;还支持大量的插件和扩展&#xff0c;可为开发人员提…

MySQL基本操作 DDL DML DQL三大操作介绍

DDL 数据(结构)定义 创建表DML 数据操作 增删改DQL 查询语句 DDL 数据(结构)定义 创建表 创建 删除数据 注释 --空格内容 创建数据库 CREATE DATABASE [if not exists] 数据库名 [ CHARSET utf8]eg:CREATE DATABASE IF NOT EXISTS school CHARSET utf8如果对应school不存在,…

【NextJS】API请求执行两次的原因及解决方法

实验环境 next&#xff1a; 14.0.4react&#xff1a; ^18 实验代码 // file: app\page.tsx use client;export default function Home() {console.log(test)return (<></>) }原因 测试发现创建默认工程上面代码会输出两次test&#xff0c;其原因是为了模拟立即卸…

智慧安防视频监控EasyCVR如何通过回调接口向第三方平台推送RTSP视频通道离线通知

安防视频监控系统EasyCVR能在局域网、公网、专网等复杂的网络环境中部署&#xff0c;可支持4G、5G、WiFi、有线等方式进行视频的接入与传输、处理和分发。平台能将接入的视频流进行汇聚、转码、多格式输出和分发&#xff0c;具体包括&#xff1a;RTMP、RTSP、HTTP-FLV、WebSock…

文件传输软件SecureFX mac支持多种协议

SecureFX mac是一款文件传输客户端&#xff0c;可在 Mac 操作系统上使用。它由 VanDyke Software 公司开发&#xff0c;旨在为用户提供安全、可靠、高效的文件传输服务。 SecureFX 支持多种协议&#xff0c;包括 SFTP、SCP、FTP、FTP over SSL/TLS 和 HTTP/S。它使用强大的加密…

GEM5 Garent CPU cache消息传递路径:1. NI部分

简介 我们仔细分析下图怎么连的&#xff0c;以及消息传递路径。 图来自https://www.gem5.org/documentation/general_docs/ruby/ 代码的连接 fs.py->ruby.py-> gem5/configs/ruby/MESI_Two_Level.py 中的 create_system( options, full_system, system, dma_ports, b…

uniapp运行到手机模拟器

第一步&#xff0c;下载MUMU模拟器 下载地址&#xff1a;MuMu模拟器官网_安卓12模拟器_网易手游模拟器 (163.com) 第二步&#xff0c;运行mumu模拟器 第三步&#xff0c;运行mumu多开器 第三步&#xff0c;查看abs 端口 第四步&#xff0c;打开HBuilder,如下图&#xff0c;将…

使用TikTok云手机轻松拓展全球市场

TikTok作为一款风靡全球的短视频应用&#xff0c;全球影响力不断扩大。越来越多的商家开始借助TikTok分享作品、在海外市场上获取商业机会。要想更好地借助TikTok扩大海外市场&#xff0c;使用TikTok云手机是一个好选择。本文将介绍TikTok云手机的几大作用&#xff0c;以助您更…

AI创作系统ChatGPT商业运营网站系统源码,支持AI绘画,GPT语音对话+DALL-E3文生图

一、前言 SparkAi创作系统是基于ChatGPT进行开发的Ai智能问答系统和Midjourney绘画系统&#xff0c;支持OpenAI-GPT全模型国内AI全模型。本期针对源码系统整体测试下来非常完美&#xff0c;可以说SparkAi是目前国内一款的ChatGPT对接OpenAI软件系统。那么如何搭建部署AI创作Ch…

Keil编译STM32工程,提示__align(4)处语法错误

好久没有用Keil编程&#xff0c;因为别人的代码是用Keil写的&#xff0c;所以又得安装起来&#xff0c;编译时遇到__align(4)的错误提示。 这个问题主要是编译器版本的问题&#xff0c;默认使用的是v6.19版本的编译器&#xff0c;而工程原来使用的是v5版本的&#xff0c;两个编…

探索 Vuex 的世界:状态管理的新视角(上)

&#x1f90d; 前端开发工程师&#xff08;主业&#xff09;、技术博主&#xff08;副业&#xff09;、已过CET6 &#x1f368; 阿珊和她的猫_CSDN个人主页 &#x1f560; 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 &#x1f35a; 蓝桥云课签约作者、已在蓝桥云…

简易版chalk

简易版chalk 参考文档 chalk/chalk: &#x1f58d; Terminal string styling done right (github.com) 【MINI 系列】五颜六色的控制台) ANSI转义序列 - 维基百科&#xff0c;自由的百科全书 (wikipedia.org) “ANSI 转义序列&#xff08;ANSI escape sequences&#xff09;…