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

AI大模型随机初始化权重并打印网络结构方法(以Deepseekv3为例,单机可跑)

背景

当前大模型的权重加载和调用,主要是通过在HuggingFace官网下载并使用transformer的库来加以实现;其中大模型的权重文件较大(部分>100GB),若只是快速研究网络结构和数据流变化,则无需下载权重。本文基于这个背景,做了如下尝试,实现了在无需下载权重的情况下打印模型结构和网络的输入输出

一、基本介绍

1 HuggingFace的文件说明

一般而言,在HuggingFace官网,打开对应的模型,然后点击Files and versions,就会出现模型权重文件和一些相对应的代码和json文件。
config.json文件:模型的配置文件,包含模型的架构和参数配置信息。
configuration_deepseek.py文件:DeepSeekv3模型的配置脚本,定义了模型的具体配置和参数。
model-00001-of-000163.safetensors文件:模型的权重文件之一,存储了模型的部分参数(这里表示总共有163个权重文件,特别庞大)
model.safetensors.index.json文件:模型权重文件的索引文件,记录了各个权重文件的分片信息
modeling_deepseek.py文件:DeepSeekv3模型的实现脚本,包含模型的定义和相关函数
tokenizer.json文件:分词器的配置文件,定义了分词器的词汇表和相关参数
tokenizer_config.json文件:分词器的配置文件,包含分词器的配置信息
在这里插入图片描述

2 加载模型的Python库说明

这里展示一段加载模型权重并打印网络结构的代码示例

from transformers import AutoModelForCausalLM
model_path = "model.safetensors"
model = AutoModelForCausalLM.from_pretrained(model_path)
print(model)

其中,AutoModelForCausalLM 是 Hugging Face 的 transformers 库中的一个类,用于加载预训练的因果语言模型。以下是 AutoModelForCausalLM.from_pretrained 方法的入参说明

pretrained_model_name_or_path:预训练模型的名称或路径,可以是Hugging Face模型库中的模型名称,也可以是本地模型文件夹的路径。
config:自定义的模型配置对象,可以传入一个PretrainedConfig对象,用于手动配置模型。如果未提供,系统会从pretrained_model_name_or_path自动加载相应的配置。
state_dict:预加载的模型权重字典,用于初始化模型权重。
cache_dir:指定缓存目录,用于下载和存储模型文件。
from_tf:是否从TensorFlow模型加载权重。
force_download:是否强制重新下载模型权重。
resume_download:在下载过程中,如果发生中断,是否从中断点继续下载。

二、Deepseekv3的随机权重加载和网络结构分析

硬件说明:一台RTX4090显卡(24GB显存)
工程目录
在这里插入图片描述
其中,config.json、configuration_deepseek.py和modeling_deepseek.py都是从hugging face直接下载的。

2.1 编辑config.json

由于显存受限,因此这里将hidden_size、intermediate_size和moe_intermediate_size,使得61层的网络能够加载在单卡上。

hidden_size: 模型中隐藏层的维度,通常与模型的输入维度相同;原始为7168,现修改为256
intermediate_size: 模型中MLP的中间层维度;原始为18432,现修改为1024
moe_intermediate_size: 模型中MOE的中间层维度;原始为2048,现修改为128

2.2 编写py脚本

import torch
from configuration_deepseek import DeepseekV3Config
from modeling_deepseek import DeepseekV3ForCausalLMdevice = torch.device("cuda:0" if torch.cuda.is_available() else "cpu")config_file = "config.json"model_config = DeepseekV3Config.from_pretrained(config_file)
model = DeepseekV3ForCausalLM(config=model_config).to(torch.float16).eval()
model = model.to(device)# 打印模型结构
print(model)dummy_input = torch.randint(low=0, high=129280, size=(4, 64), dtype=torch.long).to(device)
output = model(dummy_input)
# 打印输出张量的形状
print(output.logits.shape)

2.3 打印网络结构

显存占用情况
在这里插入图片描述
Deepseekv3网络结构和输入输出shape

DeepseekV3ForCausalLM((model): DeepseekV3Model((embed_tokens): Embedding(129280, 256)(layers): ModuleList((0-2): 3 x DeepseekV3DecoderLayer((self_attn): DeepseekV3Attention((q_a_proj): Linear(in_features=256, out_features=1536, bias=False)(q_a_layernorm): DeepseekV3RMSNorm()(q_b_proj): Linear(in_features=1536, out_features=24576, bias=False)(kv_a_proj_with_mqa): Linear(in_features=256, out_features=576, bias=False)(kv_a_layernorm): DeepseekV3RMSNorm()(kv_b_proj): Linear(in_features=512, out_features=32768, bias=False)(o_proj): Linear(in_features=16384, out_features=256, bias=False)(rotary_emb): DeepseekV3YarnRotaryEmbedding())(mlp): DeepseekV3MLP((gate_proj): Linear(in_features=256, out_features=1024, bias=False)(up_proj): Linear(in_features=256, out_features=1024, bias=False)(down_proj): Linear(in_features=1024, out_features=256, bias=False)(act_fn): SiLU())(input_layernorm): DeepseekV3RMSNorm()(post_attention_layernorm): DeepseekV3RMSNorm())(3-60): 58 x DeepseekV3DecoderLayer((self_attn): DeepseekV3Attention((q_a_proj): Linear(in_features=256, out_features=1536, bias=False)(q_a_layernorm): DeepseekV3RMSNorm()(q_b_proj): Linear(in_features=1536, out_features=24576, bias=False)(kv_a_proj_with_mqa): Linear(in_features=256, out_features=576, bias=False)(kv_a_layernorm): DeepseekV3RMSNorm()(kv_b_proj): Linear(in_features=512, out_features=32768, bias=False)(o_proj): Linear(in_features=16384, out_features=256, bias=False)(rotary_emb): DeepseekV3YarnRotaryEmbedding())(mlp): DeepseekV3MoE((experts): ModuleList((0-255): 256 x DeepseekV3MLP((gate_proj): Linear(in_features=256, out_features=128, bias=False)(up_proj): Linear(in_features=256, out_features=128, bias=False)(down_proj): Linear(in_features=128, out_features=256, bias=False)(act_fn): SiLU()))(gate): MoEGate()(shared_experts): DeepseekV3MLP((gate_proj): Linear(in_features=256, out_features=128, bias=False)(up_proj): Linear(in_features=256, out_features=128, bias=False)(down_proj): Linear(in_features=128, out_features=256, bias=False)(act_fn): SiLU()))(input_layernorm): DeepseekV3RMSNorm()(post_attention_layernorm): DeepseekV3RMSNorm()))(norm): DeepseekV3RMSNorm())(lm_head): Linear(in_features=256, out_features=129280, bias=False)
)
input shape: torch.Size([4, 64])
output shape: torch.Size([4, 64, 129280])

四、 参考链接

Deepseekv3权重路径
https://huggingface.co/deepseek-ai/DeepSeek-V3/tree/main

附:671B全量的Deepseekv3网络结构

DeepseekV3ForCausalLM((model): DeepseekV3Model((embed_tokens): Embedding(129280, 7168)(layers): ModuleList((0-2): 3 x DeepseekV3DecoderLayer((self_attn): DeepseekV3Attention((q_a_proj): Linear(in_features=7168, out_features=1536, bias=False)(q_a_layernorm): DeepseekV3RMSNorm()(q_b_proj): Linear(in_features=1536, out_features=24576, bias=False)(kv_a_proj_with_mqa): Linear(in_features=7168, out_features=576, bias=False)(kv_a_layernorm): DeepseekV3RMSNorm()(kv_b_proj): Linear(in_features=512, out_features=32768, bias=False)(o_proj): Linear(in_features=16384, out_features=7168, bias=False)(rotary_emb): DeepseekV3YarnRotaryEmbedding())(mlp): DeepseekV3MLP((gate_proj): Linear(in_features=7168, out_features=18432, bias=False)(up_proj): Linear(in_features=7168, out_features=18432, bias=False)(down_proj): Linear(in_features=18432, out_features=7168, bias=False)(act_fn): SiLU())(input_layernorm): DeepseekV3RMSNorm()(post_attention_layernorm): DeepseekV3RMSNorm())(3-60): 58 x DeepseekV3DecoderLayer((self_attn): DeepseekV3Attention((q_a_proj): Linear(in_features=7168, out_features=1536, bias=False)(q_a_layernorm): DeepseekV3RMSNorm()(q_b_proj): Linear(in_features=1536, out_features=24576, bias=False)(kv_a_proj_with_mqa): Linear(in_features=7168, out_features=576, bias=False)(kv_a_layernorm): DeepseekV3RMSNorm()(kv_b_proj): Linear(in_features=512, out_features=32768, bias=False)(o_proj): Linear(in_features=16384, out_features=7168, bias=False)(rotary_emb): DeepseekV3YarnRotaryEmbedding())(mlp): DeepseekV3MoE((experts): ModuleList((0-255): 256 x DeepseekV3MLP((gate_proj): Linear(in_features=7168, out_features=2048, bias=False)(up_proj): Linear(in_features=7168, out_features=2048, bias=False)(down_proj): Linear(in_features=2048, out_features=7168, bias=False)(act_fn): SiLU()))(gate): MoEGate()(shared_experts): DeepseekV3MLP((gate_proj): Linear(in_features=7168, out_features=2048, bias=False)(up_proj): Linear(in_features=7168, out_features=2048, bias=False)(down_proj): Linear(in_features=2048, out_features=7168, bias=False)(act_fn): SiLU()))(input_layernorm): DeepseekV3RMSNorm()(post_attention_layernorm): DeepseekV3RMSNorm()))(norm): DeepseekV3RMSNorm())(lm_head): Linear(in_features=7168, out_features=129280, bias=False)
)

相关文章:

AI大模型随机初始化权重并打印网络结构方法(以Deepseekv3为例,单机可跑)

背景 当前大模型的权重加载和调用,主要是通过在HuggingFace官网下载并使用transformer的库来加以实现;其中大模型的权重文件较大(部分>100GB),若只是快速研究网络结构和数据流变化,则无需下载权重。本文…...

介绍下SpringBoot常用的依赖项

Spring Boot 是一个用于快速开发 Spring 应用程序的框架,它通过自动配置和依赖管理简化了开发过程。以下是一些 Spring Boot 项目中常用的依赖项: 1. Spring Boot Starter Web 作用: 用于构建 Web 应用程序,包括 RESTful 服务。依赖项: spr…...

第四节 docker基础之---dockerfile部署JDK

本地宿主机配置jdk 创建test目录: [rootdocker ~]# mkdir test 压缩包tomcat和jdk上传到root/test目录下: 本机部署Jdk 解压jdk: [rootdocker test]# tar -xf jdk-8u211-linux-x64.tar.gz [rootdocker test]# tar -xf apache-tomcat-8.5.…...

Vue基础:index.html、App.vue、main.js三个文件的联系

index.html、App.vue、main.js三个文件的联系 当vue项目npm run dev启动成功后, 浏览器就可以通过路径访问页面,那么这个页面到底展示的是哪个文件里的内容呢? 如果对前端vue有一定的基础知识,这篇文章可忽略。 在vue项目的目录结…...

数据库 绪论

目录 数据库基本概念 一.基本概念 1.信息 2.数据 3.数据库(DB) 4.数据库管理系统(DBMS) 5.数据库系统(DBS) 二.数据管理技术的发展 1.人工管理阶段 2.文件系统阶段 3.数据库系统阶段 4.数据库管…...

26~31.ppt

目录 26.北京主要的景点 题目 解析 27.创新产品展示及说明会 题目​ 解析 28.《小企业会计准则》 题目​ 解析 29.学习型社会的学习理念 题目​ 解析 30.小王-产品展示信息 题目​ 解析 31.小王-办公理念-信息工作者的每一天 题目​ 解析 26.北京主要的景点…...

AutoMQ 如何实现没有写性能劣化的极致冷读效率

前言 追赶读(Catch-up Read,冷读)是消息和流系统常见和重要的场景。 削峰填谷:对于消息来说,消息通常用作业务间的解耦和削峰填谷。削峰填谷要求消息队列能将上游发送的数据堆积住,让下游在容量范围内消费…...

启动gateway时Failed to configure a DataSource

问题 在启动网关时候启动失败,报错: 原因很明显,就是没有配制数据库连接信息 实际上是因为在网关模块中导入的某个依赖里面引入了MyBatis的依赖,导致启动的时候自动配置数据库源 但是在这个网关模块中是不需要数据数据库的 解决...

node 程序占用处理方法与后台运行方法

程序占用 如果你在关闭终端后重新运行 node server.js,但提示端口 3000 被占用,说明之前的服务器进程仍然在后台运行。以下是解决方法: 1. 检查后台运行的 Node.js 进程 首先,检查是否有 Node.js 进程正在占用端口 3000。 在 L…...

C# OpenCV机器视觉:对位贴合

在热闹非凡的手机维修街上,阿强开了一家小小的手机贴膜店。每天看着顾客们自己贴膜贴得歪歪扭扭,不是膜的边缘贴不整齐,就是里面充满了气泡,阿强心里就想:“要是我能有个自动贴膜的神器,那该多好啊&#xf…...

【计算机网络】TCP/IP 网络模型有哪几层?

目录 应用层 传输层 网络层 网络接口层 总结 为什么要有 TCP/IP 网络模型? 对于同一台设备上的进程间通信,有很多种方式,比如有管道、消息队列、共享内存、信号等方式,而对于不同设备上的进程间通信,就需要网络通…...

本地部署Deepseek R1

使用Ollama open-webui部署Deepseek R1 一、安装Ollama 官网地址:https://ollama.com/,点击下载按钮选择windows版本。并安装 打开命令提示符输入ollama,出现一下提示命令表示ollama安装完成 二、使用Ollama下载deepseek R1不同模型 打开o…...

PHP盲盒商城系统源码 晒图+免签+短信验证+在线回收 thinkphp框架

源码介绍 PHP盲盒商城系统源码 晒图免签短信验证在线回收 thinkphp框架 源码前端uniapp开发,可以打包成APP(非H5封壳)H5,接其他平台支付通道,前后端全开源 H5盲盒首页可以直接开盒新UI 修复优化BUG,修复无…...

[Do374]ansible-nagivator考前整理

[Do374]ansible-nagivator考前整理 1. Ansible-Navigator 升级后的变化1.1 主要变化1.2 重大改变 2. ansible主要配置文件2.1 .ansible-navigator.yml2.2 ansible.cnf 3. 常用模块3.1 file模块3.2 copy模块3.3 user模块和lookup模块3.4 yum和yum_repository模块3.5 systemd和se…...

deepseek+kimi自动生成ppt

打开deepseek官网,输入详细的需求,让他生成个ppt 接着deepseek开始思考生成了 接着复制生成了的内容 打开kimi粘贴刚才deepseek生成的内容 可以一键生成啦,下载编辑使用吧...

循环神经网络学习01——transformer:输入部分-嵌入层位置编码

一、介绍 1、核心思想 利用自注意力机制来捕获输入序列中各元素之间的全局依赖关系,无论这些元素之间的实际距离有多远。 自注意力机制:允许模型在处理序列的每个元素时,考虑到序列中的所有其他元素,从而捕捉它们之间的关系和依…...

centos系统清理docker日志文件

在CentOS系统中,Docker日志文件的不断增长可能会占用大量磁盘空间,影响系统性能和正常运行。为了保持系统的健康状态,需要定期清理Docker日志文件。本文将详细介绍如何在CentOS系统上清理Docker日志文件的具体步骤和方法。 Docker日志文件位…...

低成本+高性能+超灵活!Deepseek 671B+Milvus重新定义知识库搭建

“老板说,这个项目得上Deepseek,还得再做个知识库...” 还有哪个开发者,最近没听到这样的抱怨? Deepseek爆火,推理端的智能提速,算力成本急剧下降,让不少原本不想用大模型,用不起大模型的企业&a…...

Windows 本地部署大模型 OpenWebUI+Ollama

安装Ollama Ollama官方网址:https://ollama.com 下载运行大模型 在Ollama官网中查看需要下载的大模型 https://ollama.com/library 复制图片中的链接 打开cmd,运行此命令(此过程会时间会很久) 下载Miniconda Miniconda作用是…...

【iOS自动化】Xcode配置WebDriverAgent

WebDriverAgent 是 iOS 端自动化测试的工具,这里记录下 MacOS 环境 Xcode 如何配置 WebDriverAgent。 【重要】环境准备 ‼️ 注意:Xcode 版本需要支持对应的 iOS 版本,而 Xcode 版本又依赖 MacOS 版本;在开始部署前&#xff0c…...

RabbitMQ 延迟队列

1.延迟队列插件安装(版本号要对其) Releases rabbitmq/rabbitmq-delayed-message-exchange GitHub 下载的文件: rabbitmq_delayed_message_exchange-3.13.0.ez 直接复制到以下文件夹: \RabbitMQ Server\rabbitmq_server-3.13.7\plugins\ 执行命令…...

JVM-Java虚拟机

基础知识 JVM的定义与作用 定义:JVM是Java语言的一部分,它是一个虚拟的计算机,通过它可以执行Java程序。 作用: 跨平台支持:实现了“编译一次,到处运行”的目标。 自动内存管理:通过垃圾回收…...

Unity底层C#处理机制深度解析

一、Unity脚本执行架构 Unity采用分层架构处理C#脚本,核心由以下组件构成: 脚本引擎层 Mono Runtime(旧版本) IL2CPP(2015版本) Burst Compiler(DOTS体系) 原生交互层 Runtime …...

【WB 深度学习实验管理】使用 PyTorch Lightning 实现高效的图像分类实验跟踪

本文使用到的 Jupyter Notebook 可在GitHub仓库002文件夹找到,别忘了给仓库点个小心心~~~ https://github.com/LFF8888/FF-Studio-Resources 在机器学习项目中,实验跟踪和结果可视化是至关重要的环节。无论是调整超参数、优化模型架构,还是监…...

MFC 应用最小化到系统托盘

本指南将实现 MFC 应用程序在关闭时最小化系统托盘的功能,并左键和右键系统托盘图标进行交互。 目标: 左键点击托盘图标:恢复对话框窗口。右键点击托盘图标:弹出右键菜单,提供 恢复窗口 和 退出程序 两个选项。退出时…...

C++ ——从C到C++

1、C的学习方法 (1)C知识点概念内容比较多,需要反复复习 (2)偏理论,有的内容不理解,可以先背下来,后续可能会理解更深 (3)学好编程要多练习,简…...

【OCPP】ocpp1.6J协议框架说明

目录 1.简介 1.1.本文件的目的 1.2.目标受众 1.3. OCPP-S and OCPP-J 1.4. 约定 1.5.定义和缩写 1.6.参考 2.优点和问题 3.连接 3.1.客户要求 3.1.1.连接URL 3.1.2.OCPP版本 3.1.3.打开HTTP请求的示例 3.2.服务器响应 3.3.更多信息 4.RPC框架 4.1.介绍 4.1.1…...

Swipe横滑与SwipeItem自定义横滑相互影响

背景 vue项目&#xff0c;H5页面&#xff0c;使用vant的组件库轮播组件<Swipe>&#xff0c;UI交互要求&#xff0c;在每个SwipeItem中有内容&#xff0c;可自横滑&#xff0c;查看列表内容 核心代码 <template><Swipeclass"my_swipe":autoplay&quo…...

渗透利器工具:Burp Suite 联动 XRAY 图形化工具.(主动扫描+被动扫描)

Burp Suite 联动 XRAY 图形化工具.&#xff08;主动扫描被动扫描&#xff09; Burp Suite 和 Xray 联合使用&#xff0c;能够将 Burp 的强大流量拦截与修改功能&#xff0c;与 Xray 的高效漏洞检测能力相结合&#xff0c;实现更全面、高效的网络安全测试&#xff0c;同时提升漏…...

C# 学习目录

以下内容仅供参考 基础概念 数据类型(使用与定义)-CSDN博客 var使用-CSDN博客 运算符&#xff08;new、sizeof、is、as)_new 运算符-CSDN博客 数据结构 数组定义与使用-CSDN博客 动态数组和泛型集合-CSDN博客 字典&#xff08;Dictonary)-CSDN博客 集合类型&#xff0…...

react native学习【9】——动态路由

react native学习【9】——动态路由 1、进入终端2、动态路由dynamic router3、编写app/_layout.jsx布局文件4、创建动态路由5、完善index.jsx文件6、完善[id].jsx文件扩展运算符...7、完整的index.jsx文件1、进入终端 2、动态路由dynamic router 官方网站 视频中的举例:当我们…...

[AI]Mac本地部署Deepseek R1模型 — — 保姆级教程

[AI]Mac本地部署DeepSeek R1模型 — — 保姆级教程 DeepSeek R1是中国AI初创公司深度求索&#xff08;DeepSeek&#xff09;推出大模型DeepSeek-R1。 作为一款开源模型&#xff0c;R1在数学、代码、自然语言推理等任务上的性能能够比肩OpenAI o1模型正式版&#xff0c;并采用MI…...

LeetCodehot 力扣热题100 验证二叉搜索树

class Solution {vector<int> nums; // 用来存储二叉树节点值的数组 public:bool isValidBST(TreeNode* root) {inorder(root); // 中序遍历二叉树&#xff0c;填充 nums 数组// 遍历 nums 数组&#xff0c;检查是否为严格递增序列for(int i0; i<nums.size()-1; i){…...

使用Kickstart配置文件封装操作系统实现Linux的自动化安装

使用Kickstart配置文件封装操作系统实现Linux的自动化安装 创建ks.cfg配置文件 可以使用已经安装完成的Linux操作系统中的/root目录下的anaconda.cfg配置文件 注意&#xff0c;配置文件会因为kickstart的版本兼容性的问题导致无法安装报错需要在实际使用过程中删除某些参数 …...

前端开发架构师Prompt指令的最佳实践

前端开发架构师Prompt 提示词可作为系统提示词使用&#xff0c;可基于用户的需求输出对应的编码方案。 本次提示词偏向前端开发的使用&#xff0c;如有需要可适当修改关键词和示例。 推荐使用 Cursor 中作为自定义指令使用Cline 插件中作为自定义指令使用在力所能及的范围内使…...

flink判断两个事件之间有没有超时(不使用CEP)

1.为啥不使用cep呢&#xff0c;cep的超时时间设置不好配置化&#xff0c;无法满足扩展要求 2.超时怎么界定。A事件发生后&#xff0c;过了N时间&#xff0c;还没有收到B事件&#xff0c;算超时。 代码如下&#xff1a; import com.alibaba.fastjson.JSONObject; import lombo…...

vue3+ts+vite+element plus设置日期时间禁止选择小于当前时间精确到时分秒

ts组件 // timeUtils.ts/*** 生成一个数组* param start* param end*/ export const makeRange (start: number, end: number): number[] > {const result: number[] [];for (let i start; i < end; i) {result.push(i);}return result; };/*** 限制今天之前的时间不…...

2025web寒假作业二

一、整体功能概述 该代码构建了一个简单的后台管理系统界面&#xff0c;主要包含左侧导航栏和右侧内容区域。左侧导航栏有 logo、管理员头像、导航菜单和安全退出按钮&#xff1b;右侧内容区域包括页头、用户信息管理内容&#xff08;含搜索框和用户数据表格&#xff09;以及页…...

2025.2.8——二、Confusion1 SSTI模板注入|Jinja2模板

题目来源&#xff1a;攻防世界 Confusion1 目录 一、打开靶机&#xff0c;整理信息 二、解题思路 step 1&#xff1a;查看网页源码信息 step 2&#xff1a;模板注入 step 3&#xff1a;构造payload&#xff0c;验证漏洞 step 4&#xff1a;已确认为SSTI漏洞中的Jinjia2…...

Mysql 函数解析

文章目录 一、模糊匹配【like】二、CASE函数1、简单case2、搜索case3、搜索case 聚合函数 一、模糊匹配【like】 一般形式为&#xff1a;列名 [NOT] LIKE ‘%关键字%’&#xff0c;示例如下&#xff1a; like %北京%列名包括北京的字样like ‘北京%’ 列名北京开头like ‘%北…...

Docker 部署 MongoDB | 国内阿里镜像

一、简易单机版 1、镜像拉取 docker pull registry.cn-hangzhou.aliyuncs.com/farerboy/mongo:8.0.5-rc1 2、运行镜像 docker run -it --name mongodb \ -e MONGO_INITDB_ROOT_USERNAMEmongoroot \ -e MONGO_INITDB_ROOT_PASSWORDmongoroot \ -v /wwwroot/opt/docker/mong…...

加速度计信号处理

【使用 DSP 滤波器加速速度和位移】使用信号处理算法过滤加速度数据并将其转换为速度和位移研究&#xff08;Matlab代码实现&#xff09;_加速度计滤波器-CSDN博客 https://wenku.baidu.com/view/622d38b90f22590102020740be1e650e52eacff9.html?_wkts_1738906719916&bdQ…...

Baumer工业相机堡盟相机的相机传感器芯片清洁指南

Baumer工业相机堡盟相机的相机传感器芯片清洁指南 Baumer工业相机1.Baumer工业相机传感器芯片清洁工具和清洁剂2.Baumer工业相机传感器芯片清洁步骤2.1、准备步骤2.2、清洁过程1.定位清洁工具2.清洁传感器3&#xff0e;使用吹风装置 Baumer工业相机传感器芯片清洁的优势设计与结…...

20240824 美团 笔试

文章目录 1、单选题1.11.21.31.41.51.61.71.81.91.101.111.121.131.141.151.161.171.181.191.202、编程题2.12.2岗位:硬件开发工程师(嵌入式系统软件开发方向) 题型:20 道单选题,2 道编程题题 1、单选题 1.1 C 语言中,如果输入整数 v 是 2 的幂,下面表达式中哪个会返…...

【扫描件PDF】如何批量识别扫描件PDF多个区域内容保存到Excel表格,基于WPF和腾讯OCR的详细解决方案

在很多实际业务场景中&#xff0c;需要对大量扫描件 PDF 中的特定区域内容进行识别并整理到 Excel 表格里&#xff0c;以下是一些常见的应用场景&#xff1a;物流运单扫描件 PDF 中包含发货人信息、收货人信息、货物信息等。批量识别这些区域内容到 Excel 表格&#xff0c;有助…...

Django开发入门 – 3.用Django创建一个Web项目

Django开发入门 – 3.用Django创建一个Web项目 Build A Web Based Project With Django By JacksonML 本文简要介绍如何利用最新版Python 3.13.2来搭建Django环境&#xff0c;以及创建第一个Django Web应用项目&#xff0c;并能够运行Django Web服务器。 创建该Django项目需…...

C# OpenCV机器视觉:OSTU算法实现背景差分的自适应分割

在一个热闹的科技公司里&#xff0c;阿强是一个负责图像分析的员工。他的日常工作就是从各种复杂的图像中提取出有用的信息&#xff0c;可这可不是一件轻松的事情哦 最近&#xff0c;阿强接到了一个艰巨的任务&#xff1a;要从一堆嘈杂的监控图像中分离出运动的物体&#xff0c…...

SIPp的参数及命令示例

以下是SIPp参数的分类表格整理&#xff0c;方便快速查阅和使用&#xff1a; SIPp 参数分类表格 分类参数描述默认值示例基本参数-sc指定XML场景文件&#xff08;客户端模式&#xff09;无-sc uac.xml-sd指定XML场景文件&#xff08;服务器端模式&#xff09;无-sd uas.xml-i本…...

【Mac排错】ls: command not found 终端命令失效的解决办法

【TroubleShooting on Mac】ls: command not found 终端命令失效的解决办法 A Solution to Solve “Command not found” of Terminal on Mac 一直在使用心爱的MacBook Pro的Terminal&#xff0c;并且为她定制了不同的Profile。 这样&#xff0c;看起来她可以在不同季节&…...

【OneAPI】通过网页预渲染让搜索引擎收录网页

API简介 网页预渲染&#xff0c;适用于动态网页以及单页面的SEO&#xff0c;支持网页缓存。 您无须更改代码即可让搜索引擎收录您的网页。只要将需要预渲染的页面转发的本接口即可。 如果您使用Nginx作为网页服务器&#xff0c;推荐使用以下配置&#xff1a; #您的网站locat…...