无GPU也能跑大模型:银河麒麟V10离线部署DeepSeek-R1全流程

简介:面向银河麒麟V10操作系统技术人员的一份DeepSeek离线部署操作指南,重点解决在内网或无互联网环境下安装ollama大语言模型服务及chatbox客户端的问题。资源为单个docx文档,约2.69MB,内容涵盖系统环境与硬件检查、ollama解压安装与systemd服务配置、环境变量文件设置、DeepSeek-R1模型离线拉取及导入等完整流程。文档在chatbox部分还说明了安装方法、桌面快捷方式创建和接口配置方式,并附带远程访问DeepSeek的建议,适合需要在国产化系统上部署AI服务的运维人员参考。全文以实际命令和路径示例贯穿,便于读者按步骤在同等环境中复现,目前已有5532人学习。

1. 银河麒麟V10上离线部署deepseek-r1:不联网也不装显卡,14B模型照样跑起来

手里有一台银河麒麟V10 SP1的arm64机器,CPU是飞腾FT-2000,没有GPU,还断着外网。想在上面跑一个本地大模型,给内部做代码辅助或知识库问答,这听起来有点折腾,但其实一条完整的离线链路是能走通的:ollama做模型服务、deepseek-r1:14b做蒸馏模型、chatbox做图形客户端。这份部署资料把整个过程拆成了可照抄的步骤,从解压ollama压缩包到配置systemd服务,从离线导入模型到做桌面快捷方式都有,还附了远程访问方案。适合两类人:一类是麒麟、统信这类国产化环境里的运维,另一类是想在无GPU的arm64机器上把大模型服务跑起来的技术人员。下面按我实际拆解的顺序,从安装到避坑一步步说。

2. 装ollama 0.5.7:解压、专用系统用户、systemd服务一次配完

2.1 为什么在这台机器上优先选ollama,而不是vLLM或推理框架全家桶

飞腾FT-2000是arm64架构、纯CPU环境,装大模型推理服务首先得考虑「能不能编译过、运行时占多少内存」。vLLM确实支持CPU推理,但在arm64的国产系统上要自己编一堆依赖,Python环境、编译工具链、算子库,哪个版本对不上都够折腾一天。ollama的优势在于官方直接提供linux-arm64的tgz压缩包,解压即用,它对ARMv8指令集和GGUF量化模型的支持做得比较成熟,而且模型管理、服务启动都封装在一条命令里,适合离线环境。

还有一层原因:ollama把模型统一放在OLLAMA_MODELS目录下,用manifest加blob的方式管理,这给离线导入提供了很大方便。后面要导入的deepseek-r1:14b在ollama仓库里就是GGUF格式的量化模型,14B在CPU上跑,Q4量化文件大约9GB,内存加载十几GB,这也在大多数服务器的承受范围内。如果换成FP16原版权重,光加载就要翻倍的内存,纯CPU推理基本跑不动。

2.2 目录规划和解压:tar的-C参数别写错

先确定安装根目录,资料里用的是 /opt/deepseek/ollama,我建议照抄这个路径,原因有两个:一是/opt下面不受系统升级影响,二是后面所有配置、环境变量、模型路径都围绕这个根目录展开,统一好记。解压前先确认tgz包已经传到这台机器上,然后一次性完成建目录和解压:

cd /opt/deepseek ls -l ollama-linux-arm64.tgz mkdir -p /opt/deepseek/ollama tar -C /opt/deepseek/ollama -xzf ollama-linux-arm64.tgz

注意tar的-C参数指定了解压目标目录,-xzf里的z是解gzip压缩,f指定文件。如果解压后ls /opt/deepseek/ollama/bin里能看到ollama可执行文件,说明包没问题。这里有个容易踩的地方:有些tgz包解压出来是带顶层目录的,不加-C直接解压会把文件散到当前目录,后面systemd里ExecStart路径就得跟着改,不如一开始就固定好。

2.3 建专用系统用户:最小权限跑服务,别用root

服务初始化阶段第一件事是创建ollama专用用户,资料里的命令是:

sudo useradd -r -s /bin/false -U -m -d /usr/share/ollama ollama sudo usermod -a -G ollama $(whoami)

-r表示创建系统账户,-s /bin/false禁止这个用户登录Shell,-U同时创建同名用户组,-d指定家目录。这样设计的目的是让ollama服务以非特权身份运行,即使模型解析层有漏洞,也不会直接拿到root权限。第二条命令把当前用户加进ollama组,是为了临时调试时能读取模型目录文件。随后把环境变量文件写到安装目录里:

sudo vim /opt/deepseek/ollama/ollama.conf

2.4 写systemd服务文件和环境变量:OLLAMA_MODELS和OLLAMA_HOST两个决定成败

环境变量内容如下,我建议一行一行核对:

OLLAMA_HOME=/opt/deepseek/ollama OLLAMA_MODELS="/opt/deepseek/ollama/models" OLLAMA_HOST="0.0.0.0" OLLAMA_ORIGINS="*" PATH=$OLLAMA_HOME/bin:$PATH

OLLAMA_MODELS决定模型文件存放位置,离线导入的模型会写到这里;OLLAMA_HOST设为0.0.0.0是让服务监听所有网卡,远程机器才能访问;OLLAMA_ORIGINS设为*表示放行跨域请求,不然chatbox用浏览器内核访问时会因为同源策略被拦,这个参数经常被忽略,是个经典的玄学位置。

systemd服务文件单独建:

[Unit] Description=Ollama Service After=network-online.target [Service] ExecStart=/opt/deepseek/ollama/bin/ollama serve User=ollama Group=ollama Restart=always RestartSec=3 EnvironmentFile=/opt/deepseek/ollama/ollama.conf [Install] WantedBy=default.target

然后把归属权限改成ollama,再重载并启动服务:

sudo chown -R ollama:ollama /opt/deepseek/ollama sudo systemctl daemon-reload sudo systemctl enable ollama sudo systemctl start ollama

这里注意EnvironmentFile的坑:systemd读取这个文件时不会像shell那样完整解析,变量值里的双引号会被当作值的一部分带进去,好在OLLAMA_MODELS这里带引号也不影响ollama读取。另外PATH变量在EnvironmentFile里覆盖了系统PATH,所以后面登录shell时仍需要单独往/etc/profile里加export PATH=/opt/deepseek/ollama/bin:$PATH,否则手动敲ollama命令会提示command not found。

2.5 状态怎么验才不算白配

启动后用systemctl status看运行状态,更关键的是看服务日志里有没有出现[GIN-debug]开头的API路由输出,这代表HTTP服务真正起来了:

sudo systemctl status ollama journalctl -u ollama -f curl http://127.0.0.1:11434/api/tags

/api/tags返回{}也正常,表示服务在监听但还没有模型。注意日志里Memory只有十几MB很正常,因为模型还没加载进来,真正占内存的是推理阶段,不要被这个数值误导以为服务没起来。

3. 离线导入deepseek-r1:14b:先pull再show,从modelfile里挖出真正的GGUF文件

3.1 离线导入的思路:为什么不能直接在目标机上pull

目标机器没有外网,ollama pull deepseek-r1:14b这条命令在断网环境下会一直卡在连接超时。离线导入的常规思路是在一台有外网、同架构的机器上先把模型拉下来,再把模型文件带进内网,最后用ollama create导入。这里有个前提:两台机器的架构要一致,即使都是arm64,也要确认是arm64而不是armhf,否则GGUF文件虽然能拷过去,ollama解析时可能直接报illegal instruction。

ollama的模型文件实际存储在OLLAMA_MODELS目录下,manifest文件记录模型组成方式,真正的模型权重则是blobs目录下以sha256哈希命名的文件。直接整目录拷贝理论上可行,但文件多、哈希对不齐、容易漏,不如用modelfile方式干净。

3.2 有网机器上:先装同版本ollama,再pull再show

在联网机器上安装同版本ollama arm64版,然后执行拉取:

ollama pull deepseek-r1:14b ollama show --modelfile deepseek-r1:14b

拉取过程中能看到一堆百分比进度,如果网络不好,多试几次,它支持断点续传。show --modelfile的作用是把模型包的构建配方打印出来,这是离线导入的关键一步,因为单独把blobs目录里那个大文件拷走还不够,ollama create需要知道模型的结构,而modelfile就是描述这个结构的文件。

3.3 手工导出GGUF:modelfile第5行FROM才是模型本体

把ollama show --modelfile打印的内容完整保存成modelfile.txt,重点看里面这样一段:

FROM /root/.ollama/models/blobs/sha256-6e9f90f02bb3b39b59e81916e8cfce9deb45aeaeb9a54a5be4414486b907dc1e

FROM后面指向的才是真正的GGUF权重文件。把这个文件单独复制出来,重命名成deepseek-r1-14b.gguf,和modelfile.txt一起放U盘。这段有个血泪经验:modelfile里可能不止一个FROM行,描述Prompt模板的地方也可能出现FROM字样,一定只看第一处FROM即模型权重行,或者看行数定位,通常是前几行。我当时第一次导出时把模板文件当权重拷了,导入时ollama报no such file,排查半天才发现拷错文件。

3.4 在目标机器上用ollama create导入并验证

把U盘里的modelfile.txt和gguf文件放到 /opt/deepseek 下,注意modelfile.txt里的FROM路径如果还是原机的绝对路径,导入必然失败,要改成实际文件路径。然后执行:

cd /opt/deepseek ollama create deepseek-r1:14b -f modelfile.txt

正常执行时日志会依次出现gathering model components、copying file sha256...、parsing GGUF using existing layer sha256...、creating new layer sha256...、writing manifest success。看到success就说明导入成功。随后验证:

ollama list ollama run deepseek-r1:14b

ollama list能看到NAME为deepseek-r1:14b、SIZE约9.0GB的条目。ollama run进入对话交互模式,输入你好能正常回复就说明模型可用。这个过程中我建议顺手验证一下ollama show --modelfile deepseek-r1:14b,确认导入后的FROM路径已经被改写为本地路径,方便后面排查问题。

3.5 无显卡CPU推理:内存和并行度怎么调

飞腾FT-2000这种纯CPU环境跑14B模型,首先要清楚性能边界。Q4量化后的14B模型,权重文件约9GB,推理时模型整体加载进内存,加上上下文KV缓存,建议机器内存不低于16GB,32GB以上更从容。ollama在CPU上默认使用所有可用核心,但FT-2000的核心数有限,实际生成速度大概是每秒几个token到十几个token之间,这受限于内存带宽,CPU频率不是主要瓶颈。

如果同时有多个人访问,可以设置环境变量OLLAMA_NUM_PARALLEL控制并行请求数。CPU环境下这个值建议设成1,因为模型只有一个副本,并行度设高会导致多个请求抢内存带宽,反而互相拖慢速度。OLLAMA_KEEP_ALIVE则控制模型在内存中的驻留时间,默认5分钟,频繁访问可以改长,比如OLLAMA_KEEP_ALIVE=30m,省去反复加载模型的时间。

4. chatbox客户端安装与桌面图标:AppImage依赖、.desktop权限和第一次对话配置

4.1 为什么客户端选chatbox,AppImage格式有什么讲究

模型服务起来了,还需要一个交互界面。用命令行ollama run能对话但不直观,chatbox这种图形客户端可以保存多轮对话、管理历史记录、切换模型,体验好得多。它的Linux版是AppImage格式,一个文件即整个应用,不需要安装,给执行权限后直接运行。这个格式有个隐含要求:系统要有FUSE支持,麒麟V10默认是有的,但如果双击没反应,优先检查libz这个动态库。

chatbox的arm64版本AppImage放到 /opt/deepseek 目录,然后手动执行一次确认它能跑:

chmod +x /opt/deepseek/Chatbox-1.9.8-arm64.AppImage /opt/deepseek/Chatbox-1.9.8-arm64.AppImage

如果终端报错error while loading shared libraries: libz.so.1,说明系统缺zlib1g-dev包。这时候需要找到对应架构的deb包,本地安装:sudo dpkg -i zlib1g-dev_1%3a1.2.11.dfsg-2kylin1.5k0.2_arm64.deb。注意必须是arm64版本,装成amd64的会直接报错格式错误。

4.2 桌面图标不是随便建个文件就行:Exec、Icon和chmod缺一不可

每次从终端启动AppImage不现实,桌面快捷方式是必须的。在桌面创建Chatbox.desktop:

[Desktop Entry] Version=1.0 Name=Chatbox Comment=AI Chat Client Exec=/opt/deepseek/Chatbox-1.9.8-arm64.AppImage Icon=/opt/deepseek/Chatbox.png Terminal=false Type=Application Categories=Utility;Application;

然后执行chmod +x Chatbox.desktop。文件管理器让桌面图标可执行,才能真正响应双击。Icon那一项我建议用绝对路径,如果聊天客户端没带png图标,可以自己截一个放过去,否则图标会显示成空白,虽然不影响功能但很影响观感。这个操作在麒麟上有个小细节:有些版本的文件管理器第一次识别.desktop文件会弹「不受信任的启动器」提示,右键属性里勾选允许执行,或重新chmod一次即可。整个.desktop方案的坑在于Exec路径必须和AppImage实际位置一致,如果之后移动了AppImage,图标就会失效。

4.3 配置chatbox连上ollama:模型名和API域名别填错

打开chatbox,设置里选择Ollama API类型,API域名填http://127.0.0.1:11434。如果这台机器要被远程访问,则填服务器实际IP,比如http://192.168.1.100:11434。模型配置里填的模型名必须和ollama list输出的NAME完全一致,大小写、冒号都不能错,填deepseek-r1:14b,少写:14b会报模型不存在。

配置完成后点新对话,发一句话测试。如果报连接失败,先在本机用curl http://127.0.0.1:11434/api/tags验证服务是否活着,排除网络问题。如果回复一直在转圈,看ollama服务日志,journalctl -u ollama -f会显示请求头和推理过程。

5. 避坑与排查:离线部署ollama和deepseek的五个典型问题

5.1 现象:systemd服务显示active,但curl和chatbox都连不上

服务状态明明active,访问11434端口却连接被拒。原因通常是ollama进程的监听地址出了问题,或者OLLAMA_HOST环境变量没有真正传给服务进程。检查方式:systemctl show ollama -p Environment看环境变量是否加载,再用ss -tlnp | grep 11434看监听地址,如果显示127.0.0.1说明OLLAMA_HOST没生效。解决:确认ollama.conf里OLLAMA_HOST=0.0.0.0,然后sudo systemctl daemon-reload && sudo systemctl restart ollama,再查监听地址变成*:11434才算对。

5.2 现象:ollama create时报文件找不到,但文件明明在同目录

modelfile.txt里FROM路径还是联网机器上的绝对路径。这是最常见的翻车点,我自己也掉过一次。解决:查看modelfile.txt内容,把FROM这行改成目标机器上的实际路径,比如FROM /opt/deepseek/deepseek-r1-14b.gguf。改完再执行create。另外注意ollama create必须在能读到该相对路径的工作目录下执行,或者干脆全部都写绝对路径,一劳永逸。

5.3 现象:ip_forward和防火墙规则导致局域网死活不通

目标机器上本机访问一切正常,但其他电脑访问11434超时。这多半是防火墙拦了端口。麒麟默认有ufw或firewalld,先看防火墙状态再放行端口:

sudo ufw status sudo ufw allow 11434/tcp

如果是firewalld:sudo firewall-cmd --permanent --add-port=11434/tcp && sudo firewall-cmd --reload。检查确认端口放行后,用局域网另一台机器telnet一下telnet 目标IP 11434,能通就继续配chatbox。

5.4 现象:AppImage双击没反应,终端里执行才看到动态库错误

chatbox AppImage需要libz.so.1,系统里缺这个32/64位库时文件管理器双击会静默失败,不弹任何窗口。解决:安装对应架构的zlib1g-dev包,装的时候注意包名里的arm64要和系统一致,不能装错架构。装完再执行AppImage验证一次,能启动再回去做桌面图标。

5.5 现象:模型能对话,但重启机器后服务没起来,需要手动start

systemd服务enable了但还是没自启,原因是deepseek.service依赖了ollama.service,如果ollama服务因为环境变量路径问题启动失败,依赖它的服务也不会跟着起。解决:先单独查systemctl status ollama,确保它是running,再看deepseek.service的状态。另外有些资料喜欢把模型进程也做成systemd服务的开机自启项,这个做法要按需要取舍,ollama run本身是交互式进程,做成ExecStart=/opt/deepseek/ollama/bin/ollama run deepseek-r1:14b时,服务启动后会挂着交互会话,日志会刷屏,对排查干扰很大。我一般只让ollama serve开机自启,模型靠OLLAMA_KEEP_ALIVE保持常驻,反而省心。

6. 远程连接deepseek与最终验证:从conf到curl的一次完整体检

6.1 OLLAMA_HOST=0.0.0.0的真实含义:监听全部网卡但不等于穿透防火墙

OLLAMA_HOST设成0.0.0.0只是让ollama进程不再局限于回环地址,它主动监听所有网卡接口。这里最容易误解的是「设置了就能远程访问」,实际上防火墙仍然在起作用,数据包要先穿过防火墙才能到达11434端口。所以远程访问有两条确认路径:第一条看监听地址,ss -tlnp | grep 11434出现*:11434或0.0.0.0:11434;第二条看防火墙规则。两者都通过了,远程主机再用telnet或nc测一下TCP端口通不通。

如果不想把服务暴露在局域网所有机器上,可以把OLLAMA_HOST改成具体网卡IP,这样只有能路由到该IP的机器能访问,安全性好一些。

6.2 用curl模拟chatbox的请求:从API探测到真实推理

服务是否正常,最快的验证方式是直接用curl打ollama的API,这比打开chatbox点对话快得多。先探活,再发一次真实推理请求:

curl http://127.0.0.1:11434/api/tags curl http://127.0.0.1:11434/api/generate -d '{ "model": "deepseek-r1:14b", "prompt": "用一句话介绍你自己", "stream": false }'

第一条返回的JSON数组里应该有deepseek-r1:14b的条目,如果这里看不到模型,后面对话肯定失败。第二条/api/generate是ollama的生成接口,model字段对应ollama list输出的模型名,prompt是输入内容,stream设为false表示一次性返回完整响应而不走流式输出,这样curl输出容易读。返回里会有一个response字段,能看到模型生成的文本,还有total_duration等性能指标。如果返回400,检查模型名;如果返回500,看服务日志定位是OOM还是模型文件损坏。

6.3 远程主机上配置chatbox并验证:端口测试比打开软件更靠前

在局域网另一台机器上装好chatbox,设置里API域名填服务器的IP,格式http://192.168.x.x:11434。模型名依旧是deepseek-r1:14b。配完先别急着发消息,用nc或telnet验证端口:

nc -vz 192.168.x.x 11434

端口通再打开chatbox对话。端口不通的情况,回到第5.3条查防火墙。如果端口通但chatbox报错,再用curl从远程机器请求/api/tags,能返回模型列表就说明服务链路完好,问题出在chatbox配置上,重点检查协议头http有没有漏写。

这套部署流程完整走完,会在麒麟V10上得到一个常驻的本地大模型服务,deepseek-r1:14b离线可用,chatbox负责交互,局域网其他电脑也能接入共用。从那以后,我每次在国产化环境里装这类服务,都会强制自己走一遍「先curl探活、再远程端口测试、最后才打开客户端」的验证顺序,这套顺序帮我拦下了不少配置层面的低级错误。希望这套部署思路也能帮到你,少走一段弯路。

本文还有配套的精品资源,点击获取

相关新闻

KSyntaxHighlighting编译指南:解决KF6依赖与CMake构建链问题

KSyntaxHighlighting编译指南:解决KF6依赖与CMake构建链问题

1. 项目概述:为什么一个语法高亮库的编译会卡住你一整天?“编译 KSyntaxHighlighting 的过程中遇到的一些问题”——这个标题看起来平平无奇,甚至有点枯燥,但它背后藏着的是无数 C 跨平台开发者的共同记忆:一个看似轻量…

2026/10/20 12:05:01 阅读更多 →
置信规则库BRB MATLAB实现:证据推理与可解释故障诊断

置信规则库BRB MATLAB实现:证据推理与可解释故障诊断

简介:压缩包内是杨剑波教授设计的置信规则库(BRB)MATLAB实现代码,共9个文件、以8个m脚本和1个asv自动保存副本组成,整体仅11KB。这些代码覆盖数据预处理、规则库构建、参数优化、模型验证等完整环节,核心脚…

2026/10/20 12:05:01 阅读更多 →
联通网络实测:BT Tracker响应速度排名与优化方案

联通网络实测:BT Tracker响应速度排名与优化方案

上周我折腾了一件事:趁着2026年3月1日这波全国网络测速的热度,我把手上能用的BT Tracker服务器全部拉出来,专门在联通网络环境下跑了一遍延迟和响应测试。不是为了炫技,而是因为最近在帮几个做开源镜像站的朋友调BT分发方案&#…

2026/10/20 12:05:01 阅读更多 →

最新新闻

提示词模板化:从基础到高级的Prompt Engineering实战指南

提示词模板化:从基础到高级的Prompt Engineering实战指南

1. 为什么要把提示词做成模板:从重复劳动到可复用资产先讲一个我自己的经历。早期用对话式AI干活的时候,每次都是临时想提示词,想到哪写到哪:“帮我总结一下这段文字”“写一个产品介绍,要专业一点”。这种随手写的做法…

2026/10/20 12:46:33 阅读更多 →
Kafka入门进阶:分区、副本、acks与消费者组核心机制详解

Kafka入门进阶:分区、副本、acks与消费者组核心机制详解

1. 从“能跑起来”到“跑得明白”:Kafka 基础入门的第二道坎很多人第一次接触 Kafka,都是照着官方 Quickstart 敲一遍命令行,看到生产者发消息、消费者收到消息,就觉得“我会了”。但真到了项目里,面对一堆server.prop…

2026/10/20 12:46:33 阅读更多 →
SpringBoot+Vue图书推荐系统源码解析:协同过滤与前后端分离实战

SpringBoot+Vue图书推荐系统源码解析:协同过滤与前后端分离实战

最近我在帮几位同学梳理毕业设计项目,被问得最多的就是“图书推荐系统”。这类题到现在依旧热门,原因也很简单:图书天然适合做推荐,用户行为数据容易理解,和电商推荐、短视频推荐比起来业务逻辑更干净,特别…

2026/10/20 12:46:33 阅读更多 →
技能不是标签而是动作:用刻意练习、反馈与复盘构建底层能力

技能不是标签而是动作:用刻意练习、反馈与复盘构建底层能力

很多人都把“技能”当成一个名词来理解,觉得自己会写代码、会做PPT、会剪辑视频,就算拥有一项技能。但真正带过人、自己从零啃过几门硬技能的人会知道,技能其实是动词——它是你每天都要做的一个动作,而不是简历上既能唬人又能自我…

2026/10/20 12:46:33 阅读更多 →
把涂鸦设备搬回局域网:Tuya-Local 本地控制与 Home Assistant 配置指南

把涂鸦设备搬回局域网:Tuya-Local 本地控制与 Home Assistant 配置指南

把涂鸦设备搬回局域网:Tuya-Local 本地控制与 Home Assistant 配置指南 【免费下载链接】tuya-local Local support for Tuya devices in Home Assistant 项目地址: https://gitcode.com/GitHub_Trending/tu/tuya-local Tuya-Local 是 Home Assistant 的一个…

2026/10/20 12:46:33 阅读更多 →
MCP协议驱动智能体底座架构设计:从插件思维到接口思维

MCP协议驱动智能体底座架构设计:从插件思维到接口思维

1. 从“插件思维”到“接口思维”的认知跃迁大多数人第一次接触MCP(Model Context Protocol,模型上下文协议)时,脑子里蹦出来的第一个词就是“插件系统”。这也不奇怪,毕竟它的外在表现确实像插件:你写一个…

2026/10/20 12:45:32 阅读更多 →

日新闻

CLRC663芯片Pin-to-Pin替代实战:从评估到量产全记录

CLRC663芯片Pin-to-Pin替代实战:从评估到量产全记录

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 1:01:30 阅读更多 →
ESP32舵机控制指南:原理、多路驱动与避坑实战

ESP32舵机控制指南:原理、多路驱动与避坑实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 1:01:30 阅读更多 →
位移法实现一阶低通滤波:单片机ADC采样降噪实战

位移法实现一阶低通滤波:单片机ADC采样降噪实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 1:01:30 阅读更多 →

周新闻

基于GMM的语音识别系统原理与MATLAB实现详解

基于GMM的语音识别系统原理与MATLAB实现详解

说到基于高斯混合模型(GMM)的语音识别系统,很多人第一反应就是一堆数学公式,觉得门槛很高。但如果你真的在MATLAB里把它落地跑通,会发现核心其实就是三件事:把声音变成特征向量,用GMM给每个类别…

2026/10/20 10:02:13 阅读更多 →
数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理这四个字听起来挺唬人,但落到具体操作上,无非就是让计算机按你的想法“摆弄”像素。我在一个模拟项目X里用了一套特别经典的基础处理流程:对图像做反白、改调色板、彩色转灰度,最后把像素数据导出成txt文件。单看每一…

2026/10/19 17:32:41 阅读更多 →
机器人大脑技术盘点:具身智能的感知、决策与数据闭环

机器人大脑技术盘点:具身智能的感知、决策与数据闭环

如果你的信息流最近也天天刷到“机器人大脑”这个词,你会发现一个很有意思的现象:每个人说的“大脑”根本不是同一个东西。有人指的是大语言模型,有人指的是运动控制系统,还有人指的是能理解物理世界的端到端模型。在2026年这个时…

2026/10/20 2:50:50 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 10:02:08 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 9:50:17 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 9:50:45 阅读更多 →