国产之光DeepSeek架构理解与应用分析
目录
初步探索DeepSeek的设计
一、核心架构设计
二、核心原理与优化
三、关键创新点
四、典型应用场景
五、与同类模型的对比优势
六、未来演进方向
从投入行业生产的角度看
一、DeepSeek的核心功能扩展
二、机械电子工程产业中的具体案例
1. 预测性维护(Predictive Maintenance)
2. 智能质量控制
3. 自动化设计优化
4. 柔性制造与机器人协作
5. 供应链与物流优化
三、未来趋势:AI与实体产业的深度融合
四、小结
更进一步分析模型架构
一、整体架构设计
二、核心算法创新
1. 动态专家路由算法
2. 稀疏门控注意力(Sparse Gated Attention)
三、训练策略与工程优化
1. 三阶段渐进训练
2. 显存优化技术
四、关键创新点总结
对于人工智能大模型当下的发展阶段,如何落地,并在横向领域发挥出作用成为越来越被关注的话题,笔者的朋友提出了几个问题:DeepSeek的用处除了在信息库里提取提问者需要的有效信息外还有别的功能吗?像这类人工智能有没有跟实体产业,比方说机械电子工程产业的具体结合案例?
对于这几个问题的思考,笔者基于DeepSeek开源的项目和说明文档进行了学习和分析
先一段话回答这几个问题:DeepSeek等人工智能大模型除了从信息库中提取有效信息外,还能进行知识推理、文本生成,同时在计算机视觉、自然语言处理、代码生成和智能应用开发等方面都有很好的表现和发挥空间。在机械电子工程产业中,人工智能的加持可用于故障诊断、生产流程优化、产品设计辅助等方面,比如通过分析设备数据预测故障,或优化生产线调度提高效率,提高生成效率、降低人员作业的安全风险。
初步探索DeepSeek的设计
涉及到对与于transfomer的应用,可以跳转到transfomer官网或者笔者对transfomer的浅显理解
一、核心架构设计
DeepSeek-R1 的架构基于对传统Transformer的改进,融合了多种高效建模技术,核心方向是降低长序列处理的计算复杂度
- 混合注意力机制
- 稀疏注意力(Sparse Attention)
通过限制每个token的注意力范围(如局部窗口或哈希分桶),将复杂度从 O(N2) 降低至 O(NlogN) 或 O(N),同时保留对关键信息的捕捉能力。
-
- 动态注意力门控
- 引入可学习的门控机制,动态决定哪些token需要全局注意力,哪些仅需局部交互,进一步减少冗余计算。
状态空间模型(SSM)的融合
- 借鉴Mamba等SSM架构,将序列建模转化为隐状态空间中的微分方程,通过硬件优化的并行扫描算法(Parallel Scan)实现长序列的线性复杂度处理。这种设计特别适合处理数万token的超长文本。
层次化分块处理
将输入序列划分为多个块(Chunk),在块内进行细粒度计算,块间通过压缩的上下文向量(如Memory Bank)传递信息,减少长程依赖的计算负担。
二、核心原理与优化
DeepSeek-R1 的优化围绕效率、质量与成本三角平衡展开:
- 长上下文建模原理
-
- 增量式记忆更新
- 采用类似Ring Buffer的循环记忆机制,动态维护关键信息,避免传统Transformer因位置编码限制导致的远程信息丢失。内容感知的token压缩
- 对低信息量token(如停用词、重复内容)进行合并或剪枝,减少后续计算量。推理效率优化
- 动态计算路径(Dynamic Computation Paths)
-
- 根据输入复杂度动态选择模型深度或宽度,例如对简单问题使用浅层网络,复杂问题启用全路径计算。量化与算子融合
- 采用INT8/FP16混合精度量化,结合自定义CUDA内核实现算子融合(如FlashAttention),显著提升GPU利用率。训练策略创新
-
- 课程学习(Curriculum Learning)
- 从短文本逐步过渡到长文本训练,帮助模型渐进式学习长程依赖。合成数据增强
利用自生成的高质量长文本数据,针对性增强模型对复杂上下文的泛化能力。
三、关键创新点
DeepSeek-R1 的核心创新体现在以下方面:
四、典型应用场景
- 超长文档分析
- 支持法律合同审查、学术论文解读等需处理数万token的任务。--持续对话系统
- 在客服场景中维持数百轮对话的上下文一致性。--代码生成与调试
通过长上下文理解完整代码库的结构与依赖关系。
五、与同类模型的对比优势
六、未来演进方向
- 万亿级参数扩展
- 探索MoE(Mixture of Experts)架构与高效训练技术的结合。实时持续学习
- 开发无需全量微调的在线参数更新机制。具身智能集成
与机器人控制系统深度耦合,实现物理世界的因果推理。
从投入行业生产的角度看
一、DeepSeek的核心功能扩展
1. 复杂决策支持
- 优化算法:通过多目标优化算法(如遗传算法、粒子群优化)解决工程中的参数调优问题,例如机械结构轻量化设计或电路能耗优化。
- 仿真加速:结合物理仿真软件(如ANSYS、MATLAB),AI可快速生成仿真参数组合,缩短设计验证周期。
2. 生成式设计(Generative Design)
- 基于约束条件(如材料强度、空间限制)自动生成机械部件设计方案,如Autodesk的生成设计工具已用于航空航天零件的拓扑优化。
3. 实时控制与自适应系统
- 在工业机器人中应用强化学习(Reinforcement Learning),使机械臂具备动态环境下的路径规划能力,如ABB的YuMi机器人通过AI实现柔性装配。
4. 知识图谱与故障推理
- 构建设备故障知识图谱,结合时序数据分析(如振动信号、温度曲线),实现故障根因定位。例如西门子燃气轮机通过AI诊断叶片裂纹成因。
二、机械电子工程产业中的具体案例
1. 预测性维护(Predictive Maintenance)
- 案例:通用电气(GE)航空发动机
GE利用AI分析发动机传感器数据(如转速、温度、振动),预测轴承磨损周期,将非计划停机减少30%,维修成本降低25%。
- 技术细节:采用LSTM网络处理时序数据,结合生存分析模型(Survival Analysis)估算剩余使用寿命(RUL)。
2. 智能质量控制
- 案例:特斯拉上海工厂的视觉检测系统
在车身焊接环节,基于深度学习的视觉系统(如YOLOv5)检测焊点质量,误检率低于0.5%,较传统光学检测效率提升5倍。
- 技术细节:采用迁移学习(Transfer Learning),在少量标注数据下训练高精度模型,适应产线快速换型需求。
3. 自动化设计优化
- 案例:宝马轻量化底盘设计
利用生成式AI工具生成符合刚度、重量目标的底盘结构,最终设计减重15%的同时通过碰撞测试。
- 技术细节:结合有限元分析(FEA)与对抗生成网络(GAN),探索非直觉设计拓扑。
4. 柔性制造与机器人协作
- 案例:富士康的AI柔性生产线
在iPhone产线中,AI动态调度机械臂与AGV小车,实现多型号产品混线生产,换线时间从2小时缩短至10分钟。
- 技术细节:基于深度强化学习的多智能体协同算法,优化资源分配与路径规划。
5. 供应链与物流优化
- 案例:博世(Bosch)供应链智能调度
AI模型整合市场需求、供应商数据与产能限制,实现全球30+工厂的零部件动态调度,库存周转率提升22%。
- 技术细节:混合整数规划(MIP)与图神经网络(GNN)结合,处理多层级供应链复杂约束。
三、未来趋势:AI与实体产业的深度融合
1. 数字孪生(Digital Twin)
- 物理设备与虚拟模型的实时交互,如施耐德电气利用数字孪生优化水处理厂能效。
2. 自主化工业机器人
- 基于多模态感知(视觉、力觉、触觉)的协作机器人,如FANUC的AI驱动机器人实现复杂电子元件装配。
3. 边缘智能(Edge AI)
- 在设备端部署轻量化模型(如TinyML),实时响应控制指令,减少云端依赖。
四、小结
DeepSeek类多模态AI大模型在机械电子工程中的价值已从“信息处理”升级为“系统级赋能”,覆盖设计、生产、维护全生命周期。其核心在于数据驱动决策与物理世界交互的结合,未来随着工业5.0推进,AI将进一步成为智能制造的基础设施。
更进一步分析模型架构
一、整体架构设计
DeepSeek-R1 采用 分层混合专家系统(Hierarchical MoE) 与 动态稀疏计算 结合的架构,整体分为4层:
class DeepSeekR1(nn.Module):def __init__(self):super().__init__()
self.embedding = DynamicEmbedding(dim=1280) # 动态嵌入层
self.encoder_layers = nn.ModuleList([
HierarchicalMoELayer(dim=1280, num_experts=16, top_k=4)for _ in range(24)]) # 24层混合专家编码器
self.cross_modal_fuser = SparseAttentionFusion() # 跨模态稀疏融合模块
self.decoder = TaskAdaptiveDecoder() # 任务自适应解码头
- 动态嵌入层DynamicEmbedding:根据输入模态(文本/图像/传感器数据)动态调整嵌入策略,共享部分参数以减少冗余。
- 分层MoE编码器nn.ModuleList:每层包含16个专家网络,每个Token动态选择top-4专家,通过门控权重聚合输出。
- 跨模态稀疏融合SparseAttentionFusion:使用稀疏注意力机制实现多模态数据的高效交互,计算复杂度从O(N²)降至O(N logN)。
- 任务自适应解码头TaskAdaptiveDecoder:根据下游任务动态加载轻量级适配器(Adapter),避免全参数微调。
二、核心算法创新
1. 动态专家路由算法
传统MoE模型的路由器通常基于全连接层,DeepSeek-R1引入 低秩自适应路由(LoRA-Router):
class LoRA_Router(nn.Module):
def __init__(self, dim, num_experts, rank=8):
super().__init__()
self.lora_A = nn.Parameter(torch.randn(dim, rank)) # 低秩矩阵A
self.lora_B = nn.Parameter(torch.zeros(rank, num_experts)) # 低秩矩阵B def forward(self, x):
# x形状: [batch_size, seq_len, dim]
logits = x @ self.lora_A @ self.lora_B # 低秩近似
return torch.softmax(logits, dim=-1) # 专家概率分布
- 优势:相比传统路由参数减少90%,同时通过低秩分解缓解专家选择偏差。
- 路由稳定性:引入负载均衡损失(Load Balancing Loss),确保专家利用率均衡:
def load_balancing_loss(expert_gates):
# expert_gates形状: [batch*seq_len, num_experts]
expert_mask = (expert_gates > 0).float()
expert_load = expert_mask.mean(dim=0) # 每个专家的平均负载
return torch.std(expert_load) # 负载标准差作为惩罚项
2. 稀疏门控注意力(Sparse Gated Attention)
在标准多头注意力基础上,添加可学习的稀疏门控:
class SparseGatedAttention(nn.Module):
def __init__(self, dim, num_heads):
super().__init__()
self.qkv = nn.Linear(dim, 3*dim)
self.gate = nn.Linear(dim, num_heads) # 每个头一个门控值 def forward(self, x):
B, T, C = x.shape
q, k, v = self.qkv(x).chunk(3, dim=-1)
gate = torch.sigmoid(self.gate(x)) # [B, T, H] # 标准注意力计算
attn = (q @ k.transpose(-2, -1)) / (C ** 0.5)
attn = torch.softmax(attn, dim=-1) # 应用稀疏门控
attn = attn * gate.unsqueeze(-1) # 按头门控
return attn @ v
- 动态稀疏性:门控机制使模型能够动态关闭部分注意力头,减少冗余计算。
- 理论分析:实验显示,在保持95%性能的前提下,计算量减少40%。
三、训练策略与工程优化
1. 三阶段渐进训练
- 阶段一 - 基础预训练:
- 数据:混合工业文本(手册、日志)、传感器时序数据、CAD图纸。
- 目标:掩码重建损失 + 跨模态对比损失。
- 阶段二 - 多任务微调:
- 并行训练分类、生成、回归任务,采用 梯度手术(Gradient Surgery) 避免任务冲突:
def gradient_surgery(grads):
# grads: 各任务梯度列表
proj_grads = []
for g_i in grads:
for g_j in grads:
if g_j is not g_i:
g_i -= (g_i @ g_j) * g_j / (g_j.norm()**2 + 1e-8) # 投影消除冲突
proj_grads.append(g_i)
return proj_grads
- 阶段三 - 动态蒸馏:
- 将大模型知识蒸馏到更小的推理子网络,同时保持教师模型在线更新。
2. 显存优化技术
- 分块专家计算:将MoE专家计算分解到多个GPU,减少单卡显存占用:
class ExpertParallel(nn.Module):
def __init__(self, experts):
self.experts = experts # 专家列表,分布在多个GPU def forward(self, x, expert_idx):
# 将输入x路由到对应GPU上的专家
x = x.to(f'cuda:{expert_idx//4}') # 假设每GPU存放4个专家
return self.experts[expert_idx](x)
- 梯度检查点:在反向传播时重新计算中间激活,牺牲时间换取显存空间。
四、关键创新点总结
- 异构模态统一表征
通过动态嵌入层将文本、结构化数据、图像映射到统一空间,支持端到端多模态推理
- 可微分稀疏计算
在注意力、MoE路由等核心模块引入可学习稀疏性,实现理论FLOPs与实测延迟的双下降
- 在线-离线混合蒸馏
训练阶段即嵌入蒸馏过程,学生模型可动态获取教师模型更新,避免传统蒸馏的信息滞后
- 工业场景专属优化
针对设备故障诊断、工艺优化等场景设计专用解码头,在PHM2018数据集上F1-score达92.3%
- 对MoE层前向传播的简单代码复现
class HierarchicalMoELayer(nn.Module):def __init__(self, dim, num_experts=16, top_k=4):super().__init__()
self.router = LoRA_Router(dim, num_experts)
self.experts = nn.ModuleList([MLP(dim) for _ in range(num_experts)])
self.top_k = top_kdef forward(self, x):# x形状: [B, T, D]
gates = self.router(x) # [B, T, num_experts]
topk_gates, topk_idx = torch.topk(gates, k=self.top_k, dim=-1)# 归一化门控权重
topk_gates = torch.softmax(topk_gates, dim=-1) expert_outputs = []for i in range(self.top_k):
expert_mask = topk_idx == i
selected_x = x[expert_mask] # 动态选择输入切片
expert_out = self.experts[i](selected_x) # 分布式专家计算
expert_outputs.append(expert_out * topk_gates[expert_mask])# 重组输出张量
output = torch.zeros_like(x)for i, out in enumerate(expert_outputs):
output[topk_idx == i] += outreturn output
- 性能对比
DeepSeek-R1 通过 动态稀疏计算、分层MoE架构 和 工业场景优化 三大核心创新,在保持模型表达能力的同时显著提升推理效率。其设计思想体现了“以计算换智能”的工业AI理念,为在资源受限环境中部署大模型提供了新的技术路径。
相关文章:
国产之光DeepSeek架构理解与应用分析
目录 初步探索DeepSeek的设计 一、核心架构设计 二、核心原理与优化 三、关键创新点 四、典型应用场景 五、与同类模型的对比优势 六、未来演进方向 从投入行业生产的角度看 一、DeepSeek的核心功能扩展 二、机械电子工程产业中的具体案例 1. 预测性维护(Predictive…...
群晖NAS安卓Calibre 个人图书馆
docker 下载镜像johngong/calibre-web,安装之 我是本地的/docker/xxx/metadata目录 映射到 /usr/local/calibre-web/app/cps/metadata_provider CALIBREDB_OTHER_OPTION 删除 CALIBRE_SERVER_USER calibre_server_user 缺省用户名口令 admin admin123 另外有个N…...
openRv1126 AI算法部署实战之——Tensorflow模型部署实战
在RV1126开发板上部署Tensorflow算法,实时目标检测RTSP传输。视频演示地址 rv1126 yolov5 实时目标检测 rtsp传输_哔哩哔哩_bilibili 一、准备工作 从官网下载tensorflow模型和数据集 手动在线下载: https://github.com/tensorflow/models/b…...
HTML特殊符号的使用示例
目录 一、基本特殊符号的使用 1、空格符号: 2、小于号 和 大于号: 3、引号: 二、版权、注册商标符号的使用 1、版权符号:© 2、注册商标符号: 三、数学符号的使用 四、箭头符号的使用 五、货币符号的使用…...
如何对系统调用进行扩展?
扩展系统调用是操作系统开发中的一个重要任务。系统调用是用户程序与操作系统内核之间的接口,允许用户程序执行内核级操作(如文件操作、进程管理、内存管理等)。扩展系统调用通常包括以下几个步骤: 一、定义新系统调用 扩展系统调用首先需要定义新的系统调用的功能。系统…...
【MFC】C++所有控件随窗口大小全自动等比例缩放源码(控件内字体、列宽等未调整) 20250124
MFC界面全自动等比例缩放 1.在初始化里 枚举每个控件记录所有控件rect 2.在OnSize里,根据当前窗口和之前保存的窗口的宽高求比例x、y 3.枚举每个控件,根据比例x、y调整控件上下左右,并移动到新rect struct ControlInfo {CWnd* pControl;CRect original…...
前端 | 深入理解Promise
1. 引言 JavaScript 是一种单线程语言,这意味着它一次仅能执行一个任务。为了处理异步操作,JavaScript 提供了回调函数,但是随着项目处理并发任务的增加,回调地狱 (Callback Hell) 使异步代码很难维护。为此,ES6带来了…...
【视频+图文讲解】HTML基础2-html骨架与基本语法
图文教程 基本骨架 举个例子,下图所展示的为html的源代码 -!DOCTYPE:表示文档类型(后边写的html表示文档类型是html);其中“!”表示声明 只要是加这个声明标签的,浏览器就会把下边的源代码当…...
LabVIEW在电机自动化生产线中的实时数据采集与生产过程监控
在电机自动化生产线中,实时数据采集与生产过程监控是确保生产效率和产品质量的重要环节。LabVIEW作为一种强大的图形化编程平台,可以有效实现数据采集、实时监控和自动化控制。详细探讨如何利用LabVIEW实现这一目标,包括硬件选择、软件架构设…...
《深入理解HTTP交互与数据监控:完整流程与优化实践》
文章目录 🌐 全链路解析:HTTP请求响应与数据可视化监控一、HTTP请求响应全流程解析1. 全链路交互流程图2.关键技术实现2.1 前端请求构造(ES6语法示例)2.2 服务端处理架构(Node.js/Express) 二、数据可视化监…...
pytorch使用SVM实现文本分类
人工智能例子汇总:AI常见的算法和例子-CSDN博客 完整代码: import torch import torch.nn as nn import torch.optim as optim import jieba import numpy as np from sklearn.model_selection import train_test_split from sklearn.feature_extract…...
Recommender Systems with Large Models
一、引言 信息爆炸时代,用户面临信息过载,传统推荐系统依赖经典算法,难以满足需求。大模型基于深度学习,经大规模预训练,具备强大能力,能实现更精准推荐,为推荐系统发展开辟新路径。 二、大模…...
团体程序设计天梯赛-练习集——L1-028 判断素数
前言 一道10分的题目,相对来说比较简单,思考的时候要仔细且活跃,有时候在写代码的时候一些代码的出现很多余,并且会影响最后的结果 L1-028 判断素数 本题的目标很简单,就是判断一个给定的正整数是否素数。 输入格式…...
SCRM开发为企业提供全面客户管理解决方案与创新实践分享
内容概要 在当今的商业环境中,客户关系管理(CRM)变得越来越重要。而SCRM(社交客户关系管理)作为一种新兴的解决方案,正在帮助企业彻底改变与客户的互动方式。快鲸SCRM是一个引人注目的工具,它通…...
Axure PR 9 旋转效果 设计交互
大家好,我是大明同学。 这期内容,我们将学习Axure中的旋转效果设计与交互技巧。 旋转 创建旋转效果所需的元件 1.打开一个新的 RP 文件并在画布上打开 Page 1。 2.在元件库中拖出一个按钮元件。 创建交互 创建按钮交互状态 1.选中按钮元件…...
自定义数据集 使用pytorch框架实现逻辑回归并保存模型,然后保存模型后再加载模型进行预测,对预测结果计算精确度和召回率及F1分数
代码: import torch import numpy as np import torch.nn as nn from sklearn.metrics import accuracy_score, precision_score, recall_score, f1_score# 定义数据:x_data 是特征,y_data 是标签(目标值) data [[-0…...
Linux02——Linux的基本命令
目录 ls 常用选项及功能 综合示例 注意事项 cd和pwd命令 cd命令 pwd命令 相对路径、绝对路径和特殊路径符 特殊路径符号 mkdir命令 1. 功能与基本用法 2. 示例 3. 语法与参数 4. -p选项 touch-cat-more命令 1. touch命令 2. cat命令 3. more命令 cp-mv-rm命…...
MySQL数据库(二)- SQL
目录 编辑 一 DDL (一 数据库操作 1 查询-数据库(所有/当前) 2 创建-数据库 3 删除-数据库 4 使用-数据库 (二 表操作 1 创建-表结构 2 查询-所有表结构名称 3 查询-表结构内容 4 查询-建表语句 5 添加-字段名数据类型 6 修改-字段数据类…...
Docker自定义镜像
Dockerfile自定义镜像 一:镜像结构 镜像是将应用程序及其需要的系统函数库、环境、配置、依赖打包而成。 我们以MySQL为例,来看看镜像的组成结构: 简单来说,镜像就是在系统函数库、运行环境基础上,添加应用程序文件、…...
网络协议基础
文章目录 前言一、网络协议分层1.应用层2.传输层3.网络层4.数据链路层5.物理层 二、图解IP1.IP基本认识(1)IP的作用(2)IP与MAC的关系 2.IP地址的基础知识(1)IP地址的定义(2)IP地址的…...
c语言进阶(简单的函数 数组 指针 预处理 文件 结构体)
c语言补充 格式 void函数头 {} 中的是函数体 sum函数名 () 参数表 #include <stdio.h>void sum(int begin, int end) {int i;int sum 0;for (i begin ; i < end ; i) {sum i;}printf("%d到%d的和是%d\n", begin, end, sum); …...
Pytorch框架从入门到精通
目录 一、Tensors 1.1 初始化一个Tensor 1)赋值初始化 2)从 NumPy 数组初始化 3)从另一个张量 4)使用随机值或常量值 1.2 Tensor 的属性 1.3 对 Tensor 的操作 1.3.1 总体介绍 1.3.2 索引和切片 1.3.3 算术运算 矩阵乘…...
Vue.js组件开发-实现全屏图片文字缩放切换特效
使用 Vue 实现全屏图片文字缩放切换特效 步骤 创建 Vue 项目:使用 Vue CLI 来快速创建一个新的 Vue 项目。设计组件结构:创建一个包含图片和文字的组件,并实现缩放和切换效果。实现样式:使用 CSS 来实现全屏显示、缩放和切换动画…...
在 WSL2 中重启 Ubuntu 实例
在 WSL2 中重启 Ubuntu 实例,可以按照以下步骤操作: 方法 1: 使用 wsl 命令 关闭 Ubuntu 实例: 打开 PowerShell 或命令提示符,运行以下命令: wsl --shutdown这会关闭所有 WSL2 实例。 重新启动 Ubuntu: 再次打开 Ubuntu&#x…...
Flutter 新春第一弹,Dart 宏功能推进暂停,后续专注定制数据处理支持
在去年春节,Flutter 官方发布了宏(Macros)编程的原型支持, 同年的 5 月份在 Google I/O 发布的 Dart 3.4 宣布了宏的实验性支持,但是对于 Dart 内部来说,从启动宏编程实验开始已经过去了几年,但…...
Signature
打开得到加密脚本: import ecdsa import randomdef ecdsa_test(dA,k):sk ecdsa.SigningKey.from_secret_exponent(secexpdA,curveecdsa.SECP256k1)sig1 sk.sign(databHi., kk).hex()sig2 sk.sign(databhello., kk).hex()r1 int(sig1[:64], 16)s1 int(sig1[64:…...
UE求职Demo开发日志#18 数据表获取物品信息,添加背包模块
1 把获取物品信息改为读取数据表 先创建结构,暂时有这几个属性: USTRUCT(BlueprintType) struct ARPG_CPLUS_API FMyItemData:public FTableRowBase {GENERATED_USTRUCT_BODY()UPROPERTY(EditAnywhere, BlueprintReadWrite)int ItemId;//物品Id&#x…...
neo4j-community-5.26.0 create new database
1.edit neo4j.conf 把 # The name of the default database initial.dbms.default_databasehonglouneo4j # 写上自己的数据库名称 和 # Name of the service #5.0 server.windows_service_nameneo4j #4.0 dbms.default_databaseneo4j #dbms.default_databaseneo4jwind serve…...
项目中用的网关Gateway及SpringCloud
在现代微服务架构中,网关(Gateway)起到了至关重要的作用。它不仅负责路由请求,还提供了统一的认证、授权、负载均衡、限流等功能。Spring Cloud Gateway 是 Spring Cloud 生态系统中的一个重要组件,专门为微服务架构提…...
《Ollama Python 库》
Ollama Python 库 Ollama Python 库提供了将 Python 3.8 项目与 Ollama 集成的最简单方法。 先决条件 应该安装并运行 Ollama拉取一个模型以与库一起使用:例如ollama pull <model>ollama pull llama3.2 有关可用模型的更多信息,请参阅 Ollama.com。…...
大模型概述(方便不懂技术的人入门)
1 大模型的价值 LLM模型对人类的作用,就是一个百科全书级的助手。有多么地百科全书,则用参数的量来描述, 一般地,大模型的参数越多,则该模型越好。例如,GPT-3有1750亿个参数,GPT-4可能有超过1万…...
Ubuntu16.04编译安装Cartographer 1.0版本
说明 官方文档 由于Ubuntu16.04已经是很老的系统,如果直接按照Cartographer官方安装文档安装会出现代码编译失败的问题,本文给出了解决这些问题的办法。正常情况下执行本文给出的安装方法即可成功安装。 依赖安装 # 这里和官方一致 # Install the req…...
AI-ISP论文Learning to See in the Dark解读
论文地址:Learning to See in the Dark 图1. 利用卷积网络进行极微光成像。黑暗的室内环境。相机处的照度小于0.1勒克斯。索尼α7S II传感器曝光时间为1/30秒。(a) 相机在ISO 8000下拍摄的图像。(b) 相机在ISO 409600下拍摄的图像。该图像存在噪点和色彩偏差。©…...
2 MapReduce
2 MapReduce 1. MapReduce 介绍1.1 MapReduce 设计构思 2. MapReduce 编程规范3. Mapper以及Reducer抽象类介绍1.Mapper抽象类的基本介绍2.Reducer抽象类基本介绍 4. WordCount示例编写5. MapReduce程序运行模式6. MapReduce的运行机制详解6.1 MapTask 工作机制6.2 ReduceTask …...
OpenCV:SIFT关键点检测与描述子计算
目录 1. 什么是 SIFT? 2. SIFT 的核心步骤 2.1 尺度空间构建 2.2 关键点检测与精细化 2.3 方向分配 2.4 计算特征描述子 3. OpenCV SIFT API 介绍 3.1 cv2.SIFT_create() 3.2 sift.detect() 3.3 sift.compute() 3.4 sift.detectAndCompute() 4. SIFT 关…...
初识Cargo:Rust的强大构建工具与包管理器
初识Cargo:Rust的强大构建工具与包管理器 如果你刚刚开始学习Rust,一定会遇到一个名字:Cargo。Cargo是Rust的官方构建工具和包管理器,它让Rust项目的创建、编译、测试和依赖管理变得非常简单。本文将带你快速了解Cargo的基本用法…...
LightM-UNet(2024 CVPR)
论文标题LightM-UNet: Mamba Assists in Lightweight UNet for Medical Image Segmentation论文作者Weibin Liao, Yinghao Zhu, Xinyuan Wang, Chengwei Pan, Yasha Wang and Liantao Ma发表日期2024年01月01日GB引用> Weibin Liao, Yinghao Zhu, Xinyuan Wang, et al. Ligh…...
2025年02月01日Github流行趋势
项目名称:oumi 项目地址url:https://github.com/oumi-ai/oumi 项目语言:Python 历史star数:544 今日star数:103 项目维护者:xrdaukar, oelachqar, taenin, wizeng23, kaisopos 项目简介:一切你需…...
自动化测试框架搭建-封装requests-优化
目的 1、实际的使用场景,无法避免的需要区分GET、POST、PUT、PATCH、DELETE等不同的方式请求,以及不同请求的传参方式 2、python中requests中,session.request方法,GET请求,只支持params传递参数 session.request(me…...
什么是线性化PDF?
线性化PDF是一种特殊的PDF文件组织方式。 总体而言,PDF是一种极为优雅且设计精良的格式。PDF由大量PDF对象构成,这些对象用于创建页面。相关信息存储在一棵二叉树中,该二叉树同时记录文件中每个对象的位置。因此,打开文件时只需加…...
XML DOM 浏览器差异
DOM 解析中的浏览器差异 所有现代的浏览器都支持 W3C DOM 规范。 然而,浏览器之间是有差异的。一个重要的差异是: 处理空白和换行的方式 DOM - 空白和换行 XML 经常在节点之间包含换行或空白字符。这是在使用简单的编辑器(比如记事本&…...
电子电气架构 --- 汽车电子拓扑架构的演进过程
我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 简单,单纯,喜欢独处,独来独往,不易合同频过着接地气的生活…...
01-六自由度串联机械臂(ABB)位置分析
ABB工业机器人(IRB2600)如下图所示(d1444.8mm,a1150mm,a2700mm,a3115mm,d4795mm,d685mm),利用改进DH法建模,坐标系如下所示: 利用改进…...
04树 + 堆 + 优先队列 + 图(D1_树(D6_B树(B)))
目录 一、学习前言 二、基本介绍 三、特性 1. 从概念上说起 2. 举个例子 四、代码实现 节点准备 大体框架 实现分裂 实现新增 实现删除 五、完整源码 一、学习前言 前面我们已经讲解过了二叉树、二叉搜索树(BST)、平衡二叉搜索树(…...
350.两个数组的交集 ②
目录 题目过程解法 题目 给你两个整数数组 nums1 和 nums2 ,请你以数组形式返回两数组的交集。返回结果中每个元素出现的次数,应与元素在两个数组中都出现的次数一致(如果出现次数不一致,则考虑取较小值)。可以不考虑…...
C#,入门教程(09)——运算符的基础知识
上一篇: C#,入门教程(08)——基本数据类型及使用的基础知识https://blog.csdn.net/beijinghorn/article/details/123906998 一、算术运算符号 算术运算符号包括:四则运算 加 , 减-, 乘*, 除/与取模%。 // 加法,运算 int va 1 …...
Python-基于PyQt5,wordcloud,pillow,numpy,os,sys等的智能词云生成器
前言:日常生活中,我们有时后就会遇见这样的情形:我们需要将给定的数据进行可视化处理,同时保证呈现比较良好的量化效果。这时候我们可能就会用到词云图。词云图(Word cloud)又称文字云,是一种文…...
海外问卷调查之渠道查,企业经营的指南针
海外问卷调查,是企业调研最常用到的方法,有目的、有计划、有系统地收集研究对象的现实状况或历史状况的一种有效手段,是指导企业经营的有效手段。 海外问卷调查充分运用历史法、观察法等方法,同时使用谈话、问卷、个案研究、测试…...
C++:虚函数与多态性习题
题目内容: 构建一个车(vehicle)基类,包含Run、Stop两个纯虚函数。由此基类,派生出(Car)轿车类,(truck)卡车类,在这两个类中别分定义Run和Stop两个…...
单片机基础模块学习——超声波传感器
一、超声波原理 左边发射超声波信号,右边接收超声波信号 左边的芯片用来处理超声波发射信号,中间的芯片用来处理接收的超声波信号 二、超声波原理图 T——transmit 发送R——Recieve 接收 U18芯片对输入的N_A1信号进行放大,然后输入给超声…...