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

Large Model-learning(4)

Day 4-小土堆2.0日只要在进步就是好样的1. 科研进展忙了一下比赛的事情论文还剩下两个实验没做了。2. 小土堆 6/10h2.1 torchvision.datasets的使用本节致力于学习将 transform 和数据集结合在一起新建文件 P11_dataset_transform.py 用于学习import torchvision from torch.utils.tensorboard import SummaryWriter dataset_transform torchvision.transforms.Compose([ torchvision.transforms.ToTensor(), ]) train_set torchvision.datasets.CIFAR10(root./dataset,trainTrue,transformdataset_transform,downloadTrue) test_set torchvision.datasets.CIFAR10(root./dataset, trainFalse,transformdataset_transform,downloadTrue) # print(test_set[0]) # print(test_set.classes) # # img, target test_set[0] # print(img) # print(target) # print(test_set.classes[target]) # img.show() # print(train_set[0]) writer SummaryWriter(P11) for i in range(10): img,target train_set[i] writer.add_image(test_set,img,i) writer.close()2.2 DataLoader的使用新建文件 P11_dataloader.py主要是学习如何加载数据集学习DataLoader里面的一些参数。在遍历 DataLoader 时使用 writer.add_image() 会报错原因在于数据维度的不匹配。import torchvision.datasets from torch.utils.data import DataLoader from torch.utils.tensorboard import SummaryWriter # 准备的测试数据集 test_data torchvision.datasets.CIFAR10(root./dataset,trainFalse,transformtorchvision.transforms.ToTensor()) test_loader DataLoader(datasettest_data,batch_size64,shuffleTrue,num_workers0,drop_lastFalse) # 测试集中第一张图片及target img,target test_data[0] print(img.shape) print(target) writer SummaryWriter(DataLoader) step 0 for data in test_loader: imgs,targets data # print(imgs.shape) # print(targets) writer.add_images(test_data,imgs,step) step 1 writer.close()DataLoader 里面的 shuffle 参数决定每个 epoch 运行的时候是否要打乱。import torchvision.datasets from torch.utils.data import DataLoader from torch.utils.tensorboard import SummaryWriter # 准备的测试数据集 test_data torchvision.datasets.CIFAR10(root./dataset,trainFalse,transformtorchvision.transforms.ToTensor()) test_loader DataLoader(datasettest_data,batch_size64,shuffleFalse,num_workers0,drop_lastFalse) # 测试集中第一张图片及target img,target test_data[0] print(img.shape) print(target) writer SummaryWriter(DataLoader) for epoch in range(2): step 0 for data in test_loader: imgs,targets data # print(imgs.shape) # print(targets) writer.add_images(Epoch:{}.format(epoch),imgs,step) step 1 writer.close()此时再打开刷新 TensorBoard 会发现两轮运行结果是一样的。如果将 shuffle 改为 True 的话就会发现结果被打乱不一致了2.3 神经网络的基本骨架nn.Module的使用常用的的包torch.nn官方介绍torch.nn — PyTorch 2.11 documentationnn 是Neural Network 的缩写。神经网络的基类Module定义的模型都需要集成该类nn.Module。自己定义的模型需要实现__init__和forward函数新建文件 nn_moudle.py用于本小节的学习。import torch from torch import nn class Reina(nn.Module): def __init__(self): super(Reina,self).__init__() def forward(self,input): output input 1 return output reina Reina() x torch.tensor(1.0) output reina(x) print(output)reina(x)这种写法实际上是调用了reina.__call__(x)。nn.Module的__call__方法内部会执行一些前置和后置操作例如注册 hook、处理梯度等并最终调用用户定义的forward方法。因此执行reina(x)等效于执行reina.forward(x)但不推荐直接调用forward因为会绕过__call__提供的额外机制。代码的执行流程可通过Pycharm进行debug 使用Step into My Code进行查看。2.4 卷积操作补充一下基础还是很有必要的。。。以上是torch.nn.functional.conv2d的参数要求新建文件 nn_conv.py按照这个表格写卷积代码。import torch import torch.nn.functional as F input torch.tensor([[1,2,0,3,1], [0,1,2,3,1], [1,2,1,0,0], [5,2,3,1,1], [2,1,0,1,1]]) kernel torch.tensor([[1,2,1], [0,1,0], [2,1,0]]) input torch.reshape(input,(1,1,5,5)) # 变换input维度使其满足torch.nn.functional.conv2d的参数要求 kernel torch.reshape(kernel,(1,1,3,3)) print(input.shape) print(kernel.shape) output F.conv2d(input,kernel,stride1) print(output) output2 F.conv2d(input,kernel,stride2) print(output2) output3 F.conv2d(input,kernel,stride1,padding1) print(output3)padding 1 意味着四个边边都向外扩充一行/列默认填充数值为0所以最终计算得到的维度也变大了。2.5 神经网络-卷积层官网链接torch.nn — PyTorch 2.11 documentation比较常用的其实只有 nn.Conv2d 所以本节重点讲解它的使用。进一步促进理解建议直接去链接里面看动图卷积操作可视化链接dilation是空洞卷积默认值是1接下来尝试理解 in_channels 和 out_channels out_channels是指经过卷积核之后输出的特征图的通道数输入特征图的通道数 卷积核的通道数输出特征图的通道数 卷积核的个数解释卷积核的通道数一定和输入的通道数相等输入对应的每个通道与卷积核对应的每个通道进行计算再求和得到 一个通道的卷积输出而输出特征图的通道数与卷积核的个数相关有多少个卷积核最终就有多少个输出通道接下来开始练习代码创建文件 nn_conv2d.py。输入通道in_channels3CIFAR-10 中的图片是RGB 三通道彩色图像因此卷积层的输入必须匹配图像的通道数即3。输出通道out_channels6表示使用6 个不同的卷积核滤波器每个卷积核会对输入的三通道进行卷积并求和最终输出6 张特征图。卷积核尺寸kernel_size33×3 卷积核是卷积神经网络中最常用的尺寸之一现代深度学习框架对 3×3 卷积有专门优化。import torch import torchvision from torch import nn from torch.utils.tensorboard import SummaryWriter dataset torchvision.datasets.CIFAR10(root./dataset, trainFalse, downloadTrue, transformtorchvision.transforms.ToTensor()) dataloader torch.utils.data.DataLoader(dataset, batch_size64) class Reina(nn.Module): def __init__(self): super(Reina, self).__init__() self.conv1 nn.Conv2d(in_channels3, out_channels6, kernel_size3, stride1, padding0) def forward(self, x): x self.conv1(x) return x reina Reina() # print(reina) writer SummaryWriter(./conve2d) step 0 for data in dataloader: imgs,targets data output reina(imgs) print(imgs.shape) print(output.shape) writer.add_images(input,imgs,step) writer.add_images(output,output,step) step 1 writer.close()报错原因TensorBoard 的 add_images 要求输入图像的通道数必须是 1灰度、3RGB或 4RGBA而卷积输出张量形状为 [64, 6, 30, 30]即 6 通道的特征图不符合图像显示的常规格式因此触发了 AssertionError。解决方案将形状为 [64, 6, 30, 30] 的张量强制变形为 [-1, 3, 30, 30]。原始形状output.shape [64, 6, 30, 30]-1 的含义让 PyTorch 自动计算该维度的大小使得总元素数保持不变。变形后形状[128, 3, 30, 30]新张量被解释为 128 张三通道的 30×30 图像。import torch import torchvision from torch import nn from torch.utils.tensorboard import SummaryWriter dataset torchvision.datasets.CIFAR10(root./dataset, trainFalse, downloadTrue, transformtorchvision.transforms.ToTensor()) dataloader torch.utils.data.DataLoader(dataset, batch_size64) class Reina(nn.Module): def __init__(self): super(Reina, self).__init__() self.conv1 nn.Conv2d(in_channels3, out_channels6, kernel_size3, stride1, padding0) def forward(self, x): x self.conv1(x) return x reina Reina() # print(reina) writer SummaryWriter(./conve2d) step 0 for data in dataloader: imgs,targets data output reina(imgs) print(imgs.shape) print(output.shape) writer.add_images(input,imgs,step) output torch.reshape(output,(-1,3,30,30)) # #不严谨操作 ---对output进行reshape 增大batchsize的数量 减少通道数 writer.add_images(output,output,step) step 1 writer.close()注意 reshape 技巧仅是为了让程序不报错而进行的欺骗性操作它会让 TensorBoard 上显示的“output”图像变成一堆无意义的乱码。2.6 神经网络-最大池化层官方文档torch.nn — PyTorch 2.11 documentation说来惭愧我的文档中还用到了部分卷积和池化的知识可是我都没怎么认真理解底层原理。。。最大池化层 保留输入的特征同时减少数据量 加快训练速度最常用的MaxPool2d最大池化层的步长默认大小为kernel_sizeceil_mode ceil向上取整floor向下取整ceil 允许有出界部分floor 不允许ceil_mode True时 为ceil池化层有三个特点1.没有需要学习的参数2.通道数保持不变3.对微小位置的变化具有鲁棒性理论学完开始练习代码新建文件 nn_maxpool.py。2.6.1 ceil_modeTrue 的运行结果import torch from torch import nn from torch.nn import MaxPool2d input torch.tensor([[1, 2, 0, 3, 1], [0, 1, 2, 3, 1], [1, 2, 1, 0, 0], [5, 2, 3, 1, 1], [2, 1, 0, 1, 1]]) input torch.reshape(input, (-1, 1, 5, 5)) # nn.Conv2d 和 nn.MaxPool2d 等二维操作层的输入要求必须是 4 维张量 print(input.shape) class Reina(nn.Module): def __init__(self): super(Reina, self).__init__() self.maxpool1 MaxPool2d(kernel_size3, ceil_modeTrue) def forward(self, input): output self.maxpool1(input) return output reina Reina() output reina(input) print(output)2.6.2 ceil_modeFalse 的运行结果import torch from torch import nn from torch.nn import MaxPool2d input torch.tensor([[1, 2, 0, 3, 1], [0, 1, 2, 3, 1], [1, 2, 1, 0, 0], [5, 2, 3, 1, 1], [2, 1, 0, 1, 1]]) input torch.reshape(input, (-1, 1, 5, 5)) # nn.Conv2d 和 nn.MaxPool2d 等二维操作层的输入要求必须是 4 维张量 print(input.shape) class Reina(nn.Module): def __init__(self): super(Reina, self).__init__() self.maxpool1 MaxPool2d(kernel_size3, ceil_modeFalse) def forward(self, input): output self.maxpool1(input) return output reina Reina() output reina(input) print(output)两种结果和之前手动计算的结果都对上了最大池化参数部分学习完毕。最大池化的目的保留输入数据主要特征的同时减少参数和计算量增强模型鲁棒性防止过拟合2.6.3 结合图片处理的展示效果池化是纯空间维度的降采样操作设计目标就是压缩特征图的分辨率减少计算量、增大感受野而不改变特征的种类通道数。如果需要改变通道数必须使用卷积层1×1 卷积或全连接层。卷积像一台调色板把 RGB 三通道的像素按不同权重混合成多个新颜色通道例如 6 个。池化像一台缩小复印机把每张单色图纸每个通道单独缩小颜色数量不变。import torch import torchvision from torch import nn from torch.nn import MaxPool2d from torch.utils.data import DataLoader from torch.utils.tensorboard import SummaryWriter dataset torchvision.datasets.CIFAR10(root./dataset,trainFalse,transformtorchvision.transforms.ToTensor(),downloadTrue) dataloader DataLoader(dataset,batch_size64) # input torch.tensor([[1, 2, 0, 3, 1], # [0, 1, 2, 3, 1], # [1, 2, 1, 0, 0], # [5, 2, 3, 1, 1], # [2, 1, 0, 1, 1]]) # input torch.reshape(input, (-1, 1, 5, 5)) # nn.Conv2d 和 nn.MaxPool2d 等二维操作层的输入要求必须是 4 维张量 # print(input.shape) class Reina(nn.Module): def __init__(self): super(Reina, self).__init__() self.maxpool1 MaxPool2d(kernel_size3, ceil_modeFalse) def forward(self, input): output self.maxpool1(input) return output reina Reina() # output reina(input) # print(output) writer SummaryWriter(maxpool) step 0 for data in dataloader: imgs,targets data writer.add_images(input,imgs,step) output reina(imgs) writer.add_images(output,output,step) # 池化不改变channel数 step 1 writer.close()2.7 神经网络-非线性激活非线性激活层引入非线性的特性使得神经网络具有更强的表达能力和适应能力padding层的使用概率是比较低的主要是用于填充数据的所以跳过这里直接开始学习非线性激活层torch.nn — PyTorch 2.11 documentation比较常用的就是ReLUSigmod确实这两个我的论文里面也都有涉及。。。2.7.1 ReLU 的使用inplace参数的含义为True时对原输入进行激活函数的计算计算结果赋给原输入为False时返回对原输入进行激活函数的计算的结果原输入不发生改变保留原始数据默认为Falseimport torch from torch import nn from torch.nn import ReLU input torch.tensor([[1, -0.5], [-1, 3]]) input torch.reshape(input, (-1, 1, 2, 2)) # 增加一个batchsize维 print(input.shape) class Reina(nn.Module): def __init__(self): super(Reina, self).__init__() self.relu1 ReLU() def forward(self, input): output self.relu1(input) return output reina Reina() output reina(input) print(output)2.7.2Sigmoid的使用import torch import torchvision from torch import nn from torch.nn import ReLU from torch.utils.data import DataLoader from torch.utils.tensorboard import SummaryWriter from P8_Tensorboard import writer input torch.tensor([[1, -0.5], [-1, 3]]) input torch.reshape(input, (-1, 1, 2, 2)) # 增加一个batchsize维 print(input.shape) dataset torchvision.datasets.CIFAR10(./dataset, trainFalse, transformtorchvision.transforms.ToTensor(),downloadTrue) dataloader DataLoader(dataset, batch_size64) class Reina(nn.Module): def __init__(self): super(Reina, self).__init__() self.relu1 ReLU() self.sigmoid nn.Sigmoid() def forward(self, input): output self.sigmoid(input) return output reina Reina() # output reina(input) # print(output) writer SummaryWriter(./logs_ReLU) step 0 for data in dataloader: imgs,targets data writer.add_images(input,imgs,step) output reina(imgs) writer.add_images(output,output,step) step 1 writer.close()好啦今天小土堆就学到这里感觉很多原理的知识还是要去看一下吴恩达老师的视频后面有时间再补充吧。3. 灵神算法刷几节灵神的课醒醒脑就睡觉啦~撒花

相关文章:

Large Model-learning(4)

Day 4-小土堆2.0日 只要在进步,就是好样的! 1. 科研进展 忙了一下比赛的事情,论文还剩下两个实验没做了。 2. 小土堆 6/10h 2.1 torchvision.datasets的使用 本节致力于学习将 transform 和数据集结合在一起,新建文件 P11_d…...

Qwen3.5-35B-A3B-AWQ-4bit部署避坑指南:OOM排查、日志定位、端口检查全流程

Qwen3.5-35B-A3B-AWQ-4bit部署避坑指南:OOM排查、日志定位、端口检查全流程 1. 模型概述与部署挑战 Qwen3.5-35B-A3B-AWQ-4bit是一个面向视觉多模态理解的量化模型,支持图片理解、图文问答、视觉描述等能力。该模型特别适合图片分析、图中内容理解和图…...

三月七小助手:5分钟搞定星穹铁道日常任务,终极自动化工具完全指南

三月七小助手:5分钟搞定星穹铁道日常任务,终极自动化工具完全指南 【免费下载链接】March7thAssistant 崩坏:星穹铁道全自动 三月七小助手 项目地址: https://gitcode.com/gh_mirrors/ma/March7thAssistant 你是否还在为《崩坏&#x…...

AzurLaneAutoScript:基于计算机视觉的碧蓝航线全栈自动化解决方案

AzurLaneAutoScript:基于计算机视觉的碧蓝航线全栈自动化解决方案 【免费下载链接】AzurLaneAutoScript Azur Lane bot (CN/EN/JP/TW) 碧蓝航线脚本 | 无缝委托科研,全自动大世界 项目地址: https://gitcode.com/gh_mirrors/az/AzurLaneAutoScript …...

SpringBoot + 小程序实战:如何设计一个高可用的流浪动物救助系统后台?

SpringBoot与小程序融合实战:构建高可用流浪动物救助系统的架构设计 流浪动物救助一直是社会关注的热点问题,但传统救助模式面临着信息不对称、资源分配不均、流程效率低下等痛点。作为一名长期参与技术公益项目的开发者,我曾亲眼目睹救助站工…...

卡证检测矫正模型开箱即用体验:十分钟快速验证效果

卡证检测矫正模型开箱即用体验:十分钟快速验证效果 最近在做一个需要批量处理身份证、银行卡图片的项目,最头疼的就是用户上传的图片五花八门——有的歪了,有的反光,还有的带着手指头。手动一张张裁剪矫正,效率低不说…...

【黑马点评日记02】:Session+ThreadLocal实现短信登录

🔥个人主页:北极的代码(欢迎来访) 🎬作者简介:java后端学习者 ❄️个人专栏:苍穹外卖日记,SSM框架深入,JavaWeb ✨命运的结局尽可永在,不屈的挑战却不可须臾或…...

nli-distilroberta-base多场景:学术论文摘要与引言部分逻辑支撑关系分析

nli-distilroberta-base多场景:学术论文摘要与引言部分逻辑支撑关系分析 1. 项目概述 nli-distilroberta-base是一个基于DistilRoBERTa模型的自然语言推理(NLI)Web服务,专门用于分析两个句子之间的逻辑关系。这个轻量级但功能强大的工具可以帮助研究人…...

ClearerVoice-Studio企业级方案:基于SpringBoot的智能客服语音优化系统

ClearerVoice-Studio企业级方案:基于SpringBoot的智能客服语音优化系统 1. 引言 想象一下这样的场景:客服中心每天处理成千上万的客户来电,但通话质量却参差不齐。有的客户在嘈杂的街头打电话,背景是车水马龙的噪音;…...

5分钟掌握百度网盘提取码智能获取:告别繁琐搜索的高效解决方案

5分钟掌握百度网盘提取码智能获取:告别繁琐搜索的高效解决方案 【免费下载链接】baidupankey 项目地址: https://gitcode.com/gh_mirrors/ba/baidupankey 还在为百度网盘资源提取码而烦恼吗?baidupankey作为一款专业的提取码智能获取工具&#x…...

SGLang-v0.5.6环境配置全解析:从Python版本到模型路径设置

SGLang-v0.5.6环境配置全解析:从Python版本到模型路径设置 1. 环境准备:Python与系统配置 1.1 Python版本要求与验证 SGLang-v0.5.6需要Python 3.10或更高版本才能正常运行。这是因为它使用了Python 3.10引入的新语法特性,如结构化模式匹配等…...

Qwen3.5-35B-A3B-AWQ-4bit镜像免配置教程:内置模型目录+服务自动恢复

Qwen3.5-35B-A3B-AWQ-4bit镜像免配置教程:内置模型目录服务自动恢复 1. 模型介绍 Qwen3.5-35B-A3B-AWQ-4bit是一个专为视觉多模态理解设计的量化模型,特别适合需要图片分析和图文对话的应用场景。这个镜像已经内置了完整的模型目录,部署后即…...

基于Git版本管理的CasRel模型迭代实验记录规范

基于Git版本管理的CasRel模型迭代实验记录规范 做机器学习项目,尤其是像CasRel这样的关系抽取模型,最头疼的往往不是调参本身,而是实验管理。今天调了个学习率,明天改了下网络结构,后天又换了预处理方式。过了一周&am…...

Phi-3-mini-4k-instruct-gguf免配置环境:支持HTTPS反向代理与Basic Auth安全加固

Phi-3-mini-4k-instruct-gguf免配置环境:支持HTTPS反向代理与Basic Auth安全加固 1. 平台介绍 Phi-3-mini-4k-instruct-gguf是微软Phi-3系列中的轻量级文本生成模型GGUF版本,特别适合问答、文本改写、摘要整理和简短创作等场景。这个预配置的镜像已经完…...

终极指南:如何免费使用CefFlashBrowser让经典Flash游戏重获新生

终极指南:如何免费使用CefFlashBrowser让经典Flash游戏重获新生 【免费下载链接】CefFlashBrowser Flash浏览器 / Flash Browser 项目地址: https://gitcode.com/gh_mirrors/ce/CefFlashBrowser 还在为无法重温童年Flash游戏而烦恼吗?当主流浏览器…...

5秒破解百度网盘提取码:智能获取工具的终极指南

5秒破解百度网盘提取码:智能获取工具的终极指南 【免费下载链接】baidupankey 项目地址: https://gitcode.com/gh_mirrors/ba/baidupankey 还在为百度网盘加密资源而烦恼吗?当你在网上找到心仪的学习资料或软件资源,却被"请输入…...

分散加载详解与应用

分散加载(Scatter Loading)是一种由链接器(Linker)提供的、用于精确控制程序各个段(如代码、数据)在目标存储器(如 Flash、RAM)中加载地址和执行地址的机制。其核心在于将单一的、线…...

Flutter 三方库 get\_it + injectable 的鸿蒙化适配指南:实现优雅的依赖注入

Flutter 三方库 get_it injectable 的鸿蒙化适配指南:实现优雅的依赖注入 欢迎加入开源鸿蒙跨平台社区:https://openharmonycrossplatform.csdn.net 大家好呀!🌸 今天要和大家分享一个超级实用的Flutter开发技巧——如何将 get_i…...

亚马逊品牌推广:破局只曝光不转化误区,解锁拿单新思路

亚马逊品牌推广:破局只曝光不转化误区,解锁拿单新思路 正文: 新品上线 6 个月仅投商品推广,核心词 CPC 一路走高,ACOS居高不下,冷启动慢、迟迟起不了量?不少亚马逊卖家都面临这样的困境&#xf…...

别再让RAG乱给答案了!手把手教你用Cohere Rerank给LangChain检索结果‘排座次’

用Cohere Rerank重构LangChain检索逻辑:从混沌到精准的实战指南 当你发现自己的RAG系统开始像醉酒的水手一样胡言乱语时,是时候给那些混乱的检索结果"排座次"了。作为一名长期与LangChain打交道的开发者,我经历过无数次检索结果相关…...

3分钟掌握电脑性能优化:开源工具UXTU终极指南

3分钟掌握电脑性能优化:开源工具UXTU终极指南 【免费下载链接】Universal-x86-Tuning-Utility Unlock the full potential of your Intel/AMD based device. 项目地址: https://gitcode.com/gh_mirrors/un/Universal-x86-Tuning-Utility 你是否曾经感觉自己的…...

UNIT-00模型在ComfyUI工作流中的插件开发与应用

UNIT-00模型在ComfyUI工作流中的插件开发与应用 1. 引言 如果你用过ComfyUI,肯定会被它那种节点拖拽、自由连接的工作流设计所吸引。它把AI图像生成的每一步都变成了可视化的模块,从加载模型到生成图片,整个过程清晰可控。但不知道你有没有…...

零门槛体验:VoxCPM-1.5-WEBUI三步部署教程,快速上手语音合成

零门槛体验:VoxCPM-1.5-WEBUI三步部署教程,快速上手语音合成 1. 为什么选择VoxCPM-1.5-WEBUI? 在当今内容创作爆炸的时代,语音合成技术正变得越来越重要。无论是制作短视频配音、有声读物,还是开发智能客服系统&…...

Windows安卓子系统(WSA)实用指南:3步快速部署与5大优化技巧

Windows安卓子系统(WSA)实用指南:3步快速部署与5大优化技巧 【免费下载链接】WSA Developer-related issues and feature requests for Windows Subsystem for Android 项目地址: https://gitcode.com/gh_mirrors/ws/WSA 你是否想在Windows 11电脑上无缝运行…...

2026年MySQL安装教程(超详细)

MYSQL下载及配置,一遍成功引言第一部分:下载教程第二部分:安装与配置第三部分:验证引言 大家好,我是菜程序,今天聊聊mysql的下载及配置,后端开发一定离不开数据库的支持,所以我便整…...

Hermes Agent 工具-周红伟

工具是扩展智能体能力的函数。它们被组织成逻辑上的工具集,可以在每个平台上启用或禁用。Hermes Agent 附带了一个广泛的内置工具注册表,涵盖网页搜索、浏览器自动化、终端执行、文件编辑、记忆、委托、RL 训练、消息投递、Home Assistant 等。可用工具工…...

「鸿蒙智能体实战记录 13」智能体上架提交与审核通过实现

📘 鸿蒙智能体实战记录 13 智能体上架提交与审核通过实现一、本篇目标 完成以下内容: 新建隐私协议完成隐私协议服务配置完成内容合规设置补充审核安全提示词进入智能体上架提交页面填写上架说明上传效果截图附件完成最终提交与验证二、新建隐私协议 进入…...

聊聊C语言那些事儿之概览

十分感谢前来阅读的读者和有兴趣学习c语言的朋友们,萌小编会和大家一起学习c语言。我们的口号是:学好,玩好,快乐就好!、 话说当年Dennis Ritchie在贝尔实验室做了一件开天盘古的大事件,发明了c语言,从此c语…...

Qwen3.5-9B快速部署方案:本地IP直连+防火墙端口开放实操

Qwen3.5-9B快速部署方案:本地IP直连防火墙端口开放实操 1. 项目概述 Qwen3.5-9B是一款拥有90亿参数的开源大语言模型,具备强大的逻辑推理、代码生成和多轮对话能力。该模型支持多模态理解(图文输入)和长上下文处理(最…...

FireRed-OCR Studio部署教程:Qwen3-VL工业级文档解析一键启动

FireRed-OCR Studio部署教程:Qwen3-VL工业级文档解析一键启动 1. 工具介绍 FireRed-OCR Studio是一款基于Qwen3-VL模型开发的工业级文档解析工具。它能将纸质文档、PDF截图等图像内容精准转换为结构化Markdown格式,特别擅长处理以下复杂内容&#xff1…...