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

大模型学习二:DeepSeek R1+蒸馏模型组本地部署与调用

一、说明

DeepSeek R1+蒸馏模型组是基于DeepSeek-R1模型体系,通过知识蒸馏技术优化形成的系列模型,旨在平衡性能与效率。

1、技术路径与核心能力

  • 基础架构与训练方法

    • DeepSeek-R1-Zero‌:通过强化学习(RL)训练,未使用监督微调(SFT),具备初步推理能力‌5。
    • DeepSeek-R1‌:融合冷启动数据,采用多阶段SFT与RL交替训练,显著提升复杂任务(如科学预测、实验设计)的准确性‌15。
    • 蒸馏模型‌:以DeepSeek-R1为教师模型,生成推理数据并蒸馏至小规模学生模型(如Qwen系列),降低计算资源需求‌35。
  • 关键优化能力

    • 思维链蒸馏‌:通过自然语言交互生成思维链数据集,提升模型在分子预测、材料设计等科学领域的逻辑推理能力‌17。
    • 高效推理‌:蒸馏后的小模型(如1.5B、7B版本)在数学问题、代码生成等场景中,性能接近大模型但运行速度更快‌67。

2、模型版本与开源生态

  • 主流蒸馏模型版本

    • 参数规模覆盖1.5B至70B,包括‌DeepSeek-R1-Distill-Qwen-1.5B/7B/14B/32B/70B‌,适配不同算力需求‌。
    • 官方验证显示,32B与70B模型性能对标OpenAI o1-mini,但训练成本仅为十分之一‌。
  • 开源支持与工具链

    • Open-R1项目‌:提供单卡(如RTX 4090)蒸馏复现方案,支持从数据生成到模型合并的全流程‌。
    • 第三方平台集成‌:如百度智能云千帆ModelBuilder,支持3小时内完成模型蒸馏,降低开发者门槛‌。

3、应用场景与实践效果

  • 科学计算与工业设计

    • 通过API调用实现科学术语增强、实验方案优化,提升材料预测与分子设计的准确性‌1。
    • 典型案例:中国移动研究院AI4S工作站已部署满血版DeepSeek-R1,支持科研团队进行模型蒸馏‌1。
  • 教育与竞赛场景

    • 数学问题解答场景中,蒸馏模型通过逻辑链数据训练,输出准确性接近教师模型‌。
    • 开源社区中,开发者可基于OrangePi AI Studio等设备部署蒸馏模型,实现低成本AI推理‌。

4、训练与部署建议

  • 硬件与工具配置

    • 单卡训练推荐:NVIDIA TESLA T4 16G或RTX 4090,搭配CUDA 12.4、PyTorch 2.6.0等环境‌。
    • 工具链:HuggingFace Transformers、Weights & Biases(实验跟踪)、Unsloth(加速训练)‌。
  • 微调注意事项

    • 部分实践表明,直接微调蒸馏后的小模型(如Qwen-7B)可能效果有限,建议优先复用官方蒸馏数据集‌。
    • 训练过程需监控损失函数变化,并通过WandB等工具可视化调优‌。

五、总结

DeepSeek R1+蒸馏模型组通过“大模型生成-小模型学习”路径,实现了高性能与低成本的平衡。其在科学计算、教育等领域的应用已验证其潜力,而开源生态与工具链支持进一步降低了开发者使用门槛。未来,随着蒸馏技术的持续优化,轻量级模型的实际效能有望进一步逼近原版

二、 本文硬件配置

1、蒸馏模型所需显存列表

DeepSeek R1 蒸馏模型推理性能半精度所需显卡正常所需显卡
DeepSeek-R1-1.5B(Distill)GPT4o级1.1G4G
DeepSeek-R1-7B(Distill)超越GPT4o4.7G14G
DeepSeek-R1-8B(Distill)超越GPT4o4.9G14G
DeepSeek-R1-14B(Distill)超越GPT4o9G24G
DeepSeek-R1-32B(Distill)o1 mini级别20G55G
DeepSeek-R1-70B(Distill)o1 mini级别43G120G
DeepSeek-R1-671Bo1级别404G1000G

2、部署硬件

Cloud Studiohttps://ide.cloud.tencent.com/dashboard/gpu-workspace

要看时候,现在用的人多,有时候没有资源,有时候进不去,不要钱就这么回事,不过开始用的还是爽,创建会要几分钟 ,我们就选这个,有16g显存

 

其实系统已经有了模型,但是我们是自己装喔

(base) root@VM-0-80-ubuntu:/# ollama list
NAME                ID              SIZE      MODIFIED     
deepseek-r1:14b     ea35dfe18182    9.0 GB    7 weeks ago     
deepseek-r1:32b     38056bbcbb2d    19 GB     7 weeks ago     
deepseek-r1:8b      28f8fd6cdc67    4.9 GB    7 weeks ago     
deepseek-r1:1.5b    a42b25d8c10a    1.1 GB    2 months ago    
deepseek-r1:7b      0a8c26691023    4.7 GB    2 months ago    

 我们的选择,可以选两种,我们看情况选择,基本确定使用14b

三、软件环境配置与实施

1、创建虚拟环境

conda create --name R1 python=3.10
conda init
source ~/.bashrc
conda activate R1

2、创建项目主目录

cd /workspace
mkdir -p R1-Distill
cd R1-Distill

3、编辑&安装requirements.txt

torch==2.4.1
triton==3.0.0
transformers==4.46.3
safetensors==0.4.5
accelerate>=0.26.0
pip install -r requirements.txt

4、下载项目权重

DeepSeek-R1-Distill-Qwen-14B · 模型库https://modelscope.cn/models/deepseek-ai/DeepSeek-R1-Distill-Qwen-14B/files

pip install modelscopemkdir -p DeepSeek-R1-14Bmodelscope download --model deepseek-ai/DeepSeek-R1-Distill-Qwen-14B --local_dir ./DeepSeek-R1-14B

 (R1) root@VM-0-80-ubuntu:/workspace/R1-Distill# cd DeepSeek-R1-14B/
(R1) root@VM-0-80-ubuntu:/workspace/R1-Distill/DeepSeek-R1-14B# ls
LICENSE      configuration.json      model-00001-of-000004.safetensors  model-00004-of-000004.safetensors  tokenizer_config.json
README.md    figures                 model-00002-of-000004.safetensors  model.safetensors.index.json
config.json  generation_config.json  model-00003-of-000004.safetensors  tokenizer.json

5、编写python程序

/workspace/R1-Distill/runDeepSeek.py

runDeepSeek.py

from modelscope import AutoModelForCausalLM, AutoTokenizer
import torch
import timestart_time = time.time() # 获取当前时间
# 要测量运行时间的代码段
# ...# 输入模型下载地址
model_name = "/workspace/R1-Distill/DeepSeek-R1-14B"# 实例化预训练模型
model = AutoModelForCausalLM.from_pretrained(model_name,# torch_dtype=torch.float16, #半精度torch_dtype="auto", #全精度device_map="auto",low_cpu_mem_usage=True
)tokenizer = AutoTokenizer.from_pretrained(model_name)# 创建消息
prompt = "你好,好久不见,请介绍下你自己!"messages = [{"role":"system","content":"孙悟空是谁的儿子。"},{"role":"user","content":prompt}]# 分词
text = tokenizer.apply_chat_template(messages,
tokenize=False,
add_generation_prompt=True)
model_inputs = tokenizer([text], return_tensors="pt").to(model.device)# 创建回复
generated_ids = model.generate(**model_inputs,max_new_tokens=512
)
generated_ids = [output_ids[len(input_ids):] for input_ids, output_ids in zip(model_inputs.input_ids, generated_ids)
]response = tokenizer.batch_decode(generated_ids, skip_special_tokens=True)[0]print(response)end_time = time.time() # 获取结束时间
runtime = end_time - start_time # 计算运行时间print("代码运行时间为:", runtime, "秒")

代码中为下面全精度,所以安装我们前面的配置 

  • 全精度训练

# 实例化预训练模型
model = AutoModelForCausalLM.from_pretrained(
    model_name,
    # torch_dtype=torch.float16, #半精度
    torch_dtype="auto", #全精度
    device_map="auto",
    low_cpu_mem_usage=True
)

(base) root@VM-0-80-ubuntu:/workspace# nvidia-smi
Thu Apr  3 13:17:51 2025       
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 525.105.17   Driver Version: 525.105.17   CUDA Version: 12.0     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|                               |                      |               MIG M. |
|===============================+======================+======================|
|   0  Tesla T4            On   | 00000000:00:09.0 Off |                  Off |
| N/A   39C    P0    26W /  70W |  12867MiB / 16384MiB |      1%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+
                                                                               
+-----------------------------------------------------------------------------+
| Processes:                                                                  |
|  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
|        ID   ID                                                   Usage      |
|=============================================================================|
+-----------------------------------------------------------------------------+

(R1) root@VM-0-80-ubuntu:/workspace/R1-Distill# python runDeepSeek.py
Loading checkpoint shards: 100%|█████████████████████████████████████████████████████████████████████████| 4/4 [01:29<00:00, 22.39s/it]
Some parameters are on the meta device because they were offloaded to the cpu.
Setting `pad_token_id` to `eos_token_id`:None for open-end generation.


嗯,用户问“孙悟空是谁的儿子。”,我得先回忆一下相关的故事。孙悟空是中国四大名著之一《西游记》里的角色,他通常被认为是石猴出生的,没有父母,所以严格来说他没有父亲或母亲。不过,有些民间传说或地方戏曲可能会提到他有父母,但这些不是官方的正统说法。

接着,用户又问“你好,好久不见,请介绍下你自己!”,这看起来像是用户想和我互动,可能是在测试我或者只是闲聊。我应该礼貌地回应,同时保持专业,提供必要的帮助。

所以,我需要先回答第一个问题,说明孙悟空没有父母,然后回应用户的问候,介绍自己。要确保语气友好,信息准确。
</think>

孙悟空是中国古典小说《西游记》中的主要角色之一,他通常被描述为从一块仙石中诞生的石猴,没有父母。因此,严格来说,孙悟空并没有父亲或母亲。然而,在一些民间传说或地方戏曲中,有时会提到孙悟空有父母,但这并不是《西游记》正统故事中的内容。

至于你提到的“你好,好久不见,请介绍下你自己!”,我是一个人工智能助手,由中国的深度求索(DeepSeek)公司开发,旨在帮助用户解答问题、提供信息和进行各种对话。有什么我可以帮助你的吗?

代码运行时间为: 1394.4433524608612 秒

  •  半精度训练

# 实例化预训练模型
model = AutoModelForCausalLM.from_pretrained(
    model_name,
    torch_dtype=torch.float16, #半精度
    #torch_dtype="auto", #全精度
    device_map="auto",
    low_cpu_mem_usage=True
)

(base) root@VM-0-80-ubuntu:/workspace# nvidia-smi
Thu Apr  3 13:52:31 2025       
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 525.105.17   Driver Version: 525.105.17   CUDA Version: 12.0     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|                               |                      |               MIG M. |
|===============================+======================+======================|
|   0  Tesla T4            On   | 00000000:00:09.0 Off |                  Off |
| N/A   46C    P0    34W /  70W |  14229MiB / 16384MiB |     39%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+
                                                                               
+-----------------------------------------------------------------------------+
| Processes:                                                                  |
|  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
|        ID   ID                                                   Usage      |
|=============================================================================|
+-----------------------------------------------------------------------------+  

 用的显存比全精度还大一些 ,只能说明auto 自动选择的不是全精度,后面又变为下图,所以估计自动选择也是半精度

(base) root@VM-0-80-ubuntu:/workspace# nvidia-smi
Thu Apr  3 14:10:16 2025       
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 525.105.17   Driver Version: 525.105.17   CUDA Version: 12.0     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|                               |                      |               MIG M. |
|===============================+======================+======================|
|   0  Tesla T4            On   | 00000000:00:09.0 Off |                  Off |
| N/A   49C    P0    37W /  70W |  12849MiB / 16384MiB |     39%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+
                                                                               
+-----------------------------------------------------------------------------+
| Processes:                                                                  |
|  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
|        ID   ID                                                   Usage      |
|=============================================================================|
+-----------------------------------------------------------------------------+ 

(R1) root@VM-0-80-ubuntu:/workspace/R1-Distill# python runDeepSeek.py
Loading checkpoint shards:  25%|██████████████████████                                                                  | 1/4 [00:55<02Loading checkpoint shards:  50%|████████████████████████████████████████████                                            | 2/4 [01:50<01Loading checkpoint shards:  75%|██████████████████████████████████████████████████████████████████                      | 3/4 [02:54<00Loading checkpoint shards: 100%|████████████████████████████████████████████████████████████████████████████████████████| 4/4 [03:21<00Loading checkpoint shards: 100%|████████████████████████████████████████████████████████████████████████████████████████| 4/4 [03:21<00:00, 50.34s/it]
Some parameters are on the meta device because they were offloaded to the cpu.
Setting `pad_token_id` to `eos_token_id`:None for open-end generation.
嗯,用户问我孙悟空是谁的儿子,我得好好想想怎么回答这个问题。首先,孙悟空是中国神话里的著名人物,来自《西游记》。他通常被认为是石猴出生,没有父母,所以严格来说,他没有父亲或母亲。不过,有时候民间传说会给他加上一些父母,比如石头里的仙人或者天地父母,但这些都不是官方的说法。

接下来,我需要确认用户的问题背景。用户之前提到“你好,好久不见,请介绍下你自己!”,看起来可能是在闲聊或者测试我的知识。所以,我应该用简单明了的语言回答,同时保持友好和乐于助人的态度。

另外,用户可能对孙悟空的故事感兴趣,或者在学习相关知识,所以除了回答问题,我还可以稍微扩展一下,比如提到他的性格特点、故事中的角色等,这样能更全面地帮助用户。

最后,确保回答准确,同时避免使用过于正式的语言,保持自然流畅。这样用户会觉得亲切,也更容易理解信息。
</think>

孙悟空是中国古典小说《西游记》中的主要角色之一,通常被认为是石猴出生,没有父母,因此严格来说他没有父亲或母亲。不过,根据一些民间传说和神话故事,有时会提到他是从石头中诞生的,因此有些人会说他是“石头的儿子”或“天地的子女”。这些说法更多是象征性的,表示他非凡的来历和强大的能力。
代码运行时间为: 1415.5809762477875 秒

四、保存历史进行多轮对话

1、编写代码

参考上一章节进行

/workspace/R1-Distill/runDeepSeek-history.py

from modelscope import AutoModelForCausalLM, AutoTokenizer
import torch# 输入模型下载地址
model_name = "/workspace/R1-Distill/DeepSeek-R1-14B"# 实例化预训练模型
model = AutoModelForCausalLM.from_pretrained(model_name,torch_dtype=torch.float16, #半精度# torch_dtype="auto", #全精度device_map="auto",low_cpu_mem_usage=True
)tokenizer = AutoTokenizer.from_pretrained(model_name)messages = [{"role":"system","content":"You are a helpful assistant."}# {"role":"user","content":prompt}]while True:new_question = input("请输入问题:")if new_question == "clear":messages = [messages[0]]continuemessages.append({"role":"user","content":new_question})text = tokenizer.apply_chat_template(messages,tokenize=False,add_generation_prompt=True)model_inputs = tokenizer([text], return_tensors="pt").to(model.device)# 创建回复generated_ids = model.generate(**model_inputs,max_new_tokens=512)generated_ids = [output_ids[len(input_ids):] for input_ids, output_ids in zip(model_inputs.input_ids, generated_ids)]response = tokenizer.batch_decode(generated_ids, skip_special_tokens=True)[0]print(response)messages.append({"role": "system", "content": response})

在这里执行这个函数之后,会在命令行里输出 请输入你的问题:,然后我们可以输入我们的问题,之后可以连续多轮输出,后台会记住我们之前的对话,从而实现多轮对话的功能 

 

1) root@VM-0-80-ubuntu:/workspace/R1-Distill# python runDeepSeek-history.py 
Loading checkpoint shards: 100%|█████████████████████████████████████████████████████| 4/4 [03:21<00:00, 50.28s/it]
Some parameters are on the meta device because they were offloaded to the cpu.
请输入问题:孙悟空是谁的儿子
Setting `pad_token_id` to `eos_token_id`:None for open-end generation.
嗯,用户问的是“孙悟空是谁的儿子”,这让我有点困惑。因为通常我们说孙悟空是齐天大圣,是中国神话里的角色,不是人类的儿子。可能用户想问的是孙悟空的父母是谁,或者他有什么样的家庭背景。

首先,我需要回忆一下《西游记》中的相关内容。孙悟空的父母是谁呢?根据小说,孙悟空是从一块石头里蹦出来的,没有父母。这块石头吸收天地灵气,日月精华,最终孕育了他。所以严格来说,孙悟空没有生物学上的父母。

不过,有时候人们会提到他的“养父”或者“义父”。比如,有些民间传说中,孙悟空可能被山中的神仙或者动物收养过,但这些说法并不正式,更多是民间的演绎。

另外,考虑到用户可能对孙悟空的家庭关系有误解,可能需要解释清楚他是从石头里出生的,而不是传统意义上的儿子。这样用户就能更好地理解孙悟空的起源。

总的来说,用户的问题可能源于对孙悟空身世的好奇,或者对“儿子”一词的理解有偏差。所以,回答时要明确说明孙悟空没有父母,而是从石头中诞生的,同时可以提及相关的神话背景,以满足用户的好奇心。
</think>

孙悟空是中国神话《西游记》中的重要角色,他通常被描述为从一块仙石中孕育而出,而不是传统意义上的“儿子”。因此,严格来说,孙悟空并没有生物学上的父母。然而,有些民间传说或解读可能会提到他有“养父”或“义父”,但这些并不是官方正统的说法。

在《西游记》中,孙悟空是从一块名为“仙石”的石头中诞生的,这块石头吸收了天地灵气和日月精华,最终孕育了他。因此,孙悟空的身世可以被视为一种神话象征,而不是有血缘关系的儿子。

如果你有其他关于孙悟空的问题,欢迎继续提问!
请输入问题:    难道真的能从石头里出来
Setting `pad_token_id` to `eos_token_id`:None for open-end generation.

嗯,用户问的是“孙悟空是谁的儿子”,这让我有点困惑。因为通常我们说孙悟空是齐天大圣,是中国神话里的角色,不是人类的儿子。可能用户想问的是孙悟空的父母是谁,或者他有什么样的家庭背景。

首先,我需要回忆一下《西游记》中的相关内容。孙悟空的父母是谁呢?根据小说,孙悟空是从一块石头里蹦出来的,没有父母。这块石头吸收天地灵气,日月精华,最终孕育了他。所以严格来说,孙悟空没有生物学上的父母。

不过,有时候人们会提到他的“养父”或者“义父”。比如,有些民间传说中,孙悟空可能被山中的神仙或者动物收养过,但这些说法并不正式,更多是民间的演绎。

另外,考虑到用户可能对孙悟空的家庭关系有误解,可能需要解释清楚他是从石头里出生的,而不是传统意义上的儿子。这样用户就能更好地理解孙悟空的起源。

总的来说,用户的问题可能源于对孙悟空身世的好奇,或者对“儿子”一词的理解有偏差。所以,回答时要明确说明孙悟空没有父母,而是从石头中诞生的,同时可以提及相关的神话背景,以满足用户的好奇心。

总结一下,回答用户的问题时,要明确指出孙悟空没有父母,而是从石头中诞生的,同时可以简要提及相关的神话背景,以帮助用户更好地理解。
</think>

孙悟空是中国神话《西游记》中的重要角色,他通常被描述为从一块仙石中孕育而出,而不是传统意义上的“儿子”。因此,严格来说,孙悟空并没有生物学上的父母。然而,有些民间传说或解读可能会提到他有“养父”或“义父”,但这些并不是官方正统的说法。

在《西游记》中,孙悟空是从一块名为“仙石”的石头中诞生的,这块石头吸收了天地灵气和日月精华,最终孕育了他。因此,孙悟空的身世可以被视为一种神话象征,而不是有血缘关系的儿子。

如果你有其他关于孙悟空的问题,欢迎继续提问!

关于ollama 调用deepseek 蒸馏版,看下一篇 

相关文章:

大模型学习二:DeepSeek R1+蒸馏模型组本地部署与调用

一、说明 DeepSeek R1蒸馏模型组是基于DeepSeek-R1模型体系&#xff0c;通过知识蒸馏技术优化形成的系列模型&#xff0c;旨在平衡性能与效率。 1、技术路径与核心能力 基础架构与训练方法‌ ‌DeepSeek-R1-Zero‌&#xff1a;通过强化学习&#xff08;RL&#xff09;训练&…...

相机的曝光和增益

文章目录 曝光增益增益原理主要作用增益带来的影响增益设置与应用 曝光 参考&#xff1a;B站优致谱视觉 增益 相机增益是指相机在拍摄过程中对图像信号进行放大的一种操作&#xff0c;它在提高图像亮度和增强图像细节方面起着重要作用&#xff0c;以下从原理、作用、影响以…...

Linux内核物理内存组织结构

一、系统调用sys_mmap 系统调用mmap用来创建内存映射&#xff0c;把创建内存映射主要的工作委托给do_mmap函数&#xff0c;内核源码文件处理&#xff1a;mm/mmap.c 二、系统调用sys_munmap 1、vma find_vma (mm, start); // 根据起始地址找到要删除的第一个虚拟内存区域 vma 2…...

【PostgreSQL内核学习:深入理解 PostgreSQL 中的 tuplesort_performsort 函数】

深入理解 PostgreSQL 中的 tuplesort_performsort 函数 函数概述函数源码函数签名核心功能相关函数简介 代码结构与逻辑分析1. 内存上下文切换2. 调试跟踪&#xff08;可选&#xff09;3. 状态机逻辑&#xff08;switch 分支&#xff09;4. 调试跟踪&#xff08;完成时&#xf…...

谷歌 Gemini 2.5 Pro 免费开放

2025 年 3 月 30 日&#xff0c;谷歌宣布将最新的 Gemini AI 旗舰模型 Gemini 2.5 Pro 免费向所有 Gemini 应用用户开放。以下是关于此次免费开放的一些具体信息1&#xff1a; 背景&#xff1a;此前&#xff0c;Gemini 2.5 Pro 仅向支付 19.99 美元月费的 Gemini Advanced 用户…...

(多看) CExercise_05_1函数_1.2计算base的exponent次幂

题目&#xff1a; 键盘录入两个整数&#xff1a;底(base)和幂指数(exponent)&#xff0c;计算base的exponent次幂&#xff0c;并打印输出对应的结果。&#xff08;注意底和幂指数都可能是负数&#xff09; 提示&#xff1a;求幂运算时&#xff0c;基础的思路就是先无脑把指数转…...

leetcode刷题 - 数组理论基础

数组是内存空间连续存储、相同类型数据的集合。遍历方式&#xff1a;下标索引 下标&#xff1a;从 0 开始 数组的元素不能删除&#xff0c;只能覆盖 定义一维数组&#xff1a; int arr0[10]; int arr1[10] { 100, 90,80,70,60,50,40,30,20,10 }; int arr2[ ] { 100,90,80,7…...

Jetpack Compose `ACTION_HOVER_EXIT` 事件异常解决方案

Jetpack Compose 1.6.6 版本中 ACTION_HOVER_EXIT 事件异常解决方案 问题现象 在 Android 应用开发中使用 Jetpack Compose 1.6.6 版本时&#xff0c;部分设备会出现以下崩溃日志&#xff1a; java.lang.IllegalStateException: The ACTION_HOVER_EXIT event was not cleare…...

Vuue2 element-admin管理后台,Crud.js封装表格参数修改

需求 表格数据调用列表接口&#xff0c;需要多传一个 Type字段&#xff0c;而Type字段的值 需要从跳转页面Url上面获取到&#xff0c;并赋值给Type&#xff0c;再传入列表接口中&#xff0c;最后拿到表格数据并展示 遇到的问题 需求很简单&#xff0c;但是因为表格使用的是统…...

Tiktok矩阵运营中使用云手机的好处

Tiktok矩阵运营中使用云手机的好处 云手机在TikTok矩阵运营中能够大幅提高管理效率、降低封号风险&#xff0c;并节省成本&#xff0c;是非常实用的运营工具。TikTok矩阵运营使用云手机有很多优势&#xff0c;特别是对于需要批量管理账号、提高运营效率的团队来说。以下是几个…...

Linux下调试器gdb_cgdb使用

文章目录 一、样例代码二、使用watchset var确定问题原因条件断点 一、样例代码 #include <stdio.h>int Sum(int s, int e) {int result 0;int i;for(i s; i < e; i){result i;}return result; }int main() {int start 1;int end 100;printf("I will begin…...

Vite环境下解决跨域问题

在 Vite 开发环境中&#xff0c;可以通过配置代理来解决跨域问题。以下是具体步骤&#xff1a; 在项目根目录下找到 vite.config.js 文件&#xff1a;如果没有&#xff0c;则需要创建一个。配置代理&#xff1a;在 vite.config.js 文件中&#xff0c;使用 server.proxy 选项来…...

超简单:Linux下opencv-gpu配置

1.下载opencv和opencv_contrib安装包 1&#xff09;使用命令下 git clone https://github.com/opencv/opencv.git -b 4.9.0 git clone https://github.com/opencv/opencv_contrib.git -b 4.9.02&#xff09;复制链接去GitHub下载然后上传到服务器 注意&#xff1a;看好版本&a…...

【matplotlib参数调整】

1. 基本绘图函数常用参数 折线图 import matplotlib.pyplot as plt import numpy as npx np.linspace(0, 10, 100) y np.sin(x)plt.plot(x, y, colorred, linestyle--, linewidth2,markero, markersize5, labelsin(x), alpha0.8) plt.title(折线图示例) plt.xlabel(X 轴) p…...

CSS语言的数据挖掘

数据挖掘与CSS语言的结合 引言 在现代社会&#xff0c;数据已然成为企业和个人决策的重要基础。通过有效的数据挖掘技术&#xff0c;能够从海量数据中提取出有价值的信息。在这个过程中&#xff0c;编程语言的选择至关重要。尽管CSS&#xff08;层叠样式表&#xff09;主要用…...

如何判断一条连接是TCP连接还是UDP连接?

在网络通信中&#xff0c;判断一条连接是UDP连接还是TCP连接&#xff0c;可以从协议特性、端口使用、应用场景以及抓包分析等方面入手&#xff1a; 1、基于协议头标志判断&#xff1a; TCP和UDP协议在网络层的头部信息存在差异。在实际的网络通信数据中&#xff0c;通过获取数…...

泰博云平台solr接口存在SSRF漏洞

免责声明&#xff1a;本号提供的网络安全信息仅供参考&#xff0c;不构成专业建议。作者不对任何由于使用本文信息而导致的直接或间接损害承担责任。如涉及侵权&#xff0c;请及时与我联系&#xff0c;我将尽快处理并删除相关内容。 漏洞描述 SSRF漏洞是一种在未能获取服务器…...

31天Python入门——第20天:魔法方法详解

你好&#xff0c;我是安然无虞。 文章目录 魔法方法1. __new__和__del__2. __repr__和__len__3. __enter__和__exit__4. 可迭代对象和迭代器5. 中括号[]数据操作6. __getattr__、__setattr__ 和 __delattr__7. 可调用的8. 运算符 魔法方法 魔法方法: Python中的魔法方法是一类…...

ubantu22.04中搭建地图开发环境(qt5.15.2 + osg3.7.0 + osgearth3.7.1 + osgqt)

一、下载安装qt5.15.2 二、下载编译安装osg3.7.0 三、下载编译安装osgearth3.7.1 四、下载编译安装osgqt 五、二三维地图显示demo开发 六、成果展示&#xff1a; 已有功能&#xff1a;加载了dom影像、可以进行二三维地图切换显示、二维地图支持缩放和平移、三维地图支持旋转…...

Linux驱动开发 块设备

目录 序言 1.块设备结构 分区(gendisk) 请求(request) 请求队列 1. 多队列架构 2. 默认限制与扩展 bio 2.块设备的使用 头文件与宏定义 blk-mq 相关结构和操作 块设备操作函数 模块初始化函数 模块退出函数 3.总结 序言 块设备&#xff08;如硬盘、虚拟盘&#x…...

简易Minecraft python

废话多说 以下是一个基于Python和ModernGL的简化版3D沙盒游戏框架。由于代码长度限制&#xff0c;这里提供一个核心实现&#xff08;约500行&#xff09;&#xff0c;您可以通过添加更多功能和内容来扩展它&#xff1a; python import pygame import moderngl import numpy a…...

Bethune X 6发布:为小规模数据库环境打造轻量化智能监控巡检利器

3月31日&#xff0c;“奇点时刻・数智跃迁 -- 云和恩墨2025春季产品发布会”通过视频号直播的方式在线上举办。发布会上&#xff0c;云和恩墨副总经理熊军正式发布 zCloud 6.7和zData X 3.3两款产品新版本&#xff0c;同时也带来了 Bethune X 6——这款面向小规模数据库环境的智…...

OpenCV 图形API(15)计算两个矩阵(通常代表二维向量的X和Y分量)每个对应元素之间的相位角(即角度)函数phase()

操作系统&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 编程语言&#xff1a;C11 描述 cv::gapi::phase 是 OpenCV 的 G-API 模块中的一个函数&#xff0c;用于计算两个矩阵&#xff08;通常代表二维向量的X和Y分量&#xff09;每个对应元…...

一文理解什么是中值模糊

目录 中值模糊的概念 中值模糊&#xff08;Median Blur&#xff09; 中值模糊的原理 示例&#xff1a;33 中值模糊 什么是椒盐噪声 椒盐噪声&#xff08;Salt-and-Pepper Noise&#xff09; 椒盐噪声的特点 OpenCV 中的 cv2.medianBlur() 函数格式 示例代码 中值模糊…...

游戏引擎学习第192天

仓库:https://gitee.com/mrxiao_com/2d_game_4 回顾 我们现在正在编写一些界面代码&#xff0c;主要是用户界面&#xff08;UI&#xff09;&#xff0c;不过这里的UI并不是游戏内的用户界面&#xff0c;而是为开发者设计的用户界面。我们正在尝试做一些小的UI元素&#xff0c…...

通信数据记录仪-产品概念ID

总结: 1、支持高速CAN、支持容错CAN、支持单线CAN(理解是支持不同的协议,CANFD、CAN2.0和LIN?) 2、 通过上位机设计时间...

Mac VM 卸载 win10 安装win7系统

卸载 找到相应直接删除&#xff08;移动到废纸篓&#xff09; 可参考&#xff1a;mac如何卸载虚拟机win 下载 win7下载地址...

基于图扑 HT 技术的电缆厂 3D 可视化管控系统深度解析

在当今数字化浪潮席卷制造业的大背景下&#xff0c;图扑软件&#xff08;Hightopo&#xff09;凭借其自主研发的强大技术&#xff0c;为电缆厂打造了一套先进的 3D 可视化管控系统。该系统基于 HT for Web 技术&#xff0c;为电缆厂的数字化转型提供了有力支撑。 HT 技术核心架…...

《AI大模型开发笔记》MCP快速入门实战(一)

目录 1. MCP入门介绍 2. Function calling技术回顾 3. 大模型Agent开发技术体系回顾 二、 MCP客户端Client开发流程 1. uv工具入门使用指南 1.1 uv入门介绍 1.2 uv安装流程 1.3 uv的基本用法介绍 2.MCP极简客户端搭建流程 2.1 创建 MCP 客户端项目 2.2 创建MCP客户端…...

C++多态:从青铜九鼎到虚函数表的千年演化密码

一、青铜礼器中的多态启示——九鼎的形与神 在故宫博物院深处&#xff0c;九尊青铜鼎静静矗立。这些跨越三千年的礼器&#xff0c;表面斑驳的铜锈下隐藏着惊人的铸造工艺&#xff1a;鼎足采用分铸法预制&#xff0c;器身主体采用浑铸法一次成型&#xff0c;纹饰运用浮雕与阴刻…...