Windows下解决‘vue-cli-service不是内部或外部命令‘的完整排查指南
1. 报错全貌到底是谁在报错如果你在 Windows 下跑 Vue CLI 工程十有八九会碰到这一句“vue-cli-service 不是内部或外部命令也不是可运行的程序或批处理文件”。第一反应往往是“让我重装一遍”但重装三次还报同样的错那就要静下心来看看它到底卡在哪了。这句话里真正干活的还不是vue-cli-service本身而是 npm 的脚本执行机制。你在package.json的scripts里写serve: vue-cli-service serve然后执行npm run serve时npm 会在一个临时增强过的 PATH 环境下找程序。它会把当前项目下的node_modules/.bin目录临时加进 PATH然后尝试执行vue-cli-service。这个命令其实不是一个传统意义上的可执行程序而是.bin目录里的一个软链脚本Windows 下对应的是vue-cli-service.cmd。如果这个文件不存在、被破坏、或者依赖包没装全就会触发“不是内部或外部命令”。报错信息里后面还跟着一段类似npm install args: D:\nodejs\node.exe C:\Users\user\AppData\Roaming\npm\node_modules\...的文本。这段内容不是报错本身而是 npm 在安装阶段打印的调试参数大意是“我正在用这个 node 可执行文件、这个全局路径来执行安装动作”。很多人一看到D:\nodejs\node.exe就开始怀疑 Node 环境是不是坏了其实大部分情况下 Node 和 npm 都是好的问题出在项目依赖的完整性上。2. 为什么常见方案治不好六大根因分析2.1 依赖根本没装完整最朴素也最高频的原因是node_modules目录不完整。很多人拿到项目后习惯性地复制粘贴npm install命令装到一半看进度条不动了就 CtrlC 中断或者网络波动导致部分包下载失败而 npm 的默认行为有时候并不会严格回滚而是留下一个残缺的node_modules。这种情况下vue-cli-service可能压根没有生成也可能是生成了一个坏的 .cmd 文件运行时报错完全不奇怪。判断方法很简单ls node_modules/.bin/vue-cli-service.cmdWindows 下用dir或者直接在资源管理器里看。如果想在终端里一步到位npm ls vue-cli-service如果能正常列出版本号说明包已经装上了如果输出missing说明这个包根本没装进去。出现 missing 时先把node_modules整个删掉再重新安装不要抱着“缺哪个补哪个”的心态因为 Vue CLI 的依赖关系很复杂单体补包很容易引入版本冲突。2.2 包管理器混用导致的锁文件错乱不少项目是团队协作的有人用 npm有人用 yarn还有人用 pnpm。每次切换包管理器package-lock.json、yarn.lock、pnpm-lock.yaml的解析结果并不一致。比如你先用 npm 生成了package-lock.json再用 yarn 安装yarn 会按照自己的算法重建node_modules部分依赖的实体链接方式会发生改变尤其 pnpm 默认采用符号链接策略它的node_modules结构和 npm 完全不同。这一点的坑在于表面上看npm install没报错但内部目录结构已经被另一种工具改写过。此时用 npm 执行脚本node_modules/.bin里的链接指向可能已经失效。老实说这类问题排查起来最费时间因为日志里没有明确的错误提示只有运行时“命令不存在”。我的建议是团队里统一一种包管理器并且在项目根目录保留对应的 lock 文件其他 lock 文件不要提交进仓库。如果你不确定当前项目历史上用的是哪种工具就干脆三件套都删掉重来rm -rf node_modules package-lock.json yarn.lock pnpm-lock.yaml npm install注意 Windows 的 PowerShell 和 CMD 对rm -rf的支持不同PowerShell 里可以用Remove-Item -Recurse -Force node_modules或者直接rmdir /s /q node_modules。2.3 npm 缓存损坏npm 会把下载过的包缓存在本地加快后续安装速度。这个缓存一旦损坏常见表现就是你反复执行npm install每次都报同样的错误因为 npm 直接从缓存里读取了一个被截断的 tarball校验失败后又重试同一个损坏的缓存条目。命令不存在只是其中一个表现有时候还会伴随 ETIMEDOUT、EINTEGRITY 这类错误。处理方法是先清理缓存再强制重新安装npm cache verify npm cache clean --force npm installverify和clean可以连在一起用但只执行clean的问题在于它会清掉所有缓存下次安装会慢很多。我一般先跑verify看它能不能自动修复不行再clean --force。另外如果你的 npm 版本较老缓存路径还是隐藏目录清理时注意别去手动删文件夹容易把权限搞乱用官方命令就够了。2.4 Node 版本切换导致的二进制兼容问题Windows 上常见的情况是项目 A 用 Node 14项目 B 用 Node 16你装了 nvm-windows 来做版本切换。某一次切换完 Node 版本后回到旧项目直接npm run serve报“vue-cli-service 不是内部或外部命令”。这不一定是依赖缺失而是之前安装的依赖里某些包是基于旧 Node 版本编译的新版 Node 执行时二进制不兼容导致vue-cli-service间接调用失败。Vue CLI 自身依赖了vue/cli-service这个包它里面包含大量编译和 dev server 相关代码。部分依赖树里的包比如node-sass、fibers需要在安装时下载原生二进制如果你的 Node 版本换过了这些二进制可能没法在新版本里正常加载进而导致整个命令链崩溃。遇到这种情况核心思路是“让依赖针对当前 Node 版本重新构建”rm -rf node_modules npm install如果还是不行再检查一下.npmrc里的配置看是否指定了node-sass的镜像源或者编译选项。另一个更稳妥的办法是给项目加上engines字段锁定 Node 版本范围并用.nvmrc文件记录当前项目期望的 Node 主版本团队内统一使用。2.5 安全软件把 .bin 下的脚本隔离了Windows 下还有一个非常隐蔽的原因杀毒软件或系统自带的实时保护会把.cmd文件误判为风险脚本尤其是从 npm 下载下来的vue-cli-service.cmd里面是一段调用 node 的批处理逻辑很容易被安全软件放到隔离区。结果就是你检查node_modules发现文件存在但运行时系统提示“不是内部或外部命令”因为文件已经被拦截或移动了。我遇到过不止一次某老哥的汇报说“代码没动昨天还好好的今天突然跑不起来”最后在安全中心的隔离记录里找到了vue-cli-service.cmd和.ps1文件。这种排查很考验经验因为常规思路里不会有人第一时间去翻安全软件的隔离区。处理方案是到安全软件里恢复文件并把项目目录加入排除列表。如果你用的是 Windows 自带的防护可以在“病毒和威胁防护”里选择“排除项”把工作目录加进去。注意加排除项要精确到项目文件夹不要直接全盘排除没必要也不安全。2.6 当前 Shell 的环境变量或目录不对还有一种场景不是npm run serve报错而是你在终端里直接输入vue-cli-service serve结果报“不是内部或外部命令”。这本质上是 PATH 的问题。node_modules/.bin只有在 npm 执行 script 时才会被临时加入 PATH平时在项目里手动敲这个命令系统根本找不到它。这不是工程配置错了是使用方式错了。正确做法要么用npm run serve要么用npx vue-cli-service serve。npx会临时去node_modules/.bin里找目标命令找到就执行找不到会询问是否安装非常方便。另一个容易混的点是用 IDE 打开项目时集成终端可能没有正确继承全局环境变量或者 IDE 自己内置的 Node 插件使用的是另一个 Node 实例。我在一个模拟项目 X 上遇到过系统终端里node -v能正常输出版本但 IDE 的终端里执行npm -v报错原因是 IDE 的终端配置里指定了一个不存在的 PowerShell 启动参数PATH 没加载完整。这种问题与项目无关但表现却非常像项目依赖坏了。3. 一步步排查像老手一样快速定位3.1 记录现场信息不要急着删任何文件先把现场信息记下来。至少要确认三件事当前 Node 版本、npm 版本、以及报错时执行的完整命令。node -v npm -v npm run serve如果你是用npm run xxx的方式触发的那么把npm run serve的完整终端输出保存到文本文件里或者截图留存。注意看报错之前有没有其他告警信息比如版本冲突、已弃用警告、路径不存在等。很多时候真正的原因不是最后一行而是前面几十行里被你忽略的某个 warning。老手和新手的差别就在这里别只看最后一屏。3.2 确认 vue-cli-service 是否存在用一行命令判断该命令是否真的可用npx vue-cli-service --version如果能输出版本号说明vue-cli-service已经装好只是你之前的调用方式有问题。如果提示让你安装vue/cli-service说明依赖确实缺失。这一步能直接帮你把问题划到“依赖缺失”还是“环境问题”两个大类。再用npm ls vue/cli-service确认包的安装层级npm ls vue/cli-service正常情况下会输出类似my-project0.1.0 └── vue/cli-service5.0.8如果输出里带UNMET DEPENDENCY或missing那基本可以确定问题出在依赖安装环节。3.3 查看 .bin 目录的实际情况Windows 下node_modules/.bin里通常有这三个文件vue-cli-servicevue-cli-service.cmdvue-cli-service.ps1第一个是无扩展名的 shell 脚本第二个是 cmd 入口第三个是 PowerShell 入口。npm 根据你当前用的 shell 选择不同的入口。如果你在 CMD 里运行走的是.cmd在 PowerShell 里运行可能走.ps1或.cmd取决于执行策略。检查这些文件是否存在以及.cmd文件内容是否正常。正常内容大概是这样的ECHO off SETLOCAL CALL :find_dp0 IF EXIST %dp0%\node.exe ( SET _prog%dp0%\node.exe ) ELSE ( SET _prognode SET PATHEXT%PATHEXT:;.JS;;% ) %_prog% %dp0%\..\vue\cli-service\bin\vue-cli-service.js %* ENDLOCAL EXIT /b %errorlevel%如果你打开发现文件内容是 0 字节或者引用了不存在的路径那就别犹豫直接重装依赖。这个文件本身很小正常情况下不应该出现缺失或不完整的情况一旦出现基本可以断定是安装过程被中断或安全软件动了手脚。3.4 检查锁文件和 node_modules 的一致性用npm ci可以直接按 lock 文件的描述完整重建node_modules。注意npm ci和npm install有区别npm ci会先删除node_modules然后严格按照 lock 文件安装要求package.json和 lock 文件必须一致否则直接报错。这个特性在排查时就非常有用它能把“lock 与 package.json 不一致”这个问题直接暴露出来。npm ci如果npm ci能顺利跑完后续大概率就不会再出现命令不存在的问题。如果它报错说 lock 文件版本和package.json有冲突你就需要决定是更新 lock 文件还是修改 package.json。在团队内协作时我更倾向更新 lock 文件并提交这让其他人拉取代码后用的是同一套依赖树。3.5 交叉验证是否是全局环境问题为了排除全局环境干扰可以开一个全新终端窗口临时清空 PATH 的影响直接测试。不过 Windows 里很少有人会真正去改 PATH更简单的方式是用另一个 Node 版本管理工具切一个干净的 Node 环境比如用 nvm-windows 切换到项目要求的版本号然后再重装依赖。这个操作非常值得做一次至少能确认“是不是 Node 版本不匹配”这一大类问题。如果你没有 nvm-windows也可以直接把 Node 的安装目录从 PATH 里查出来用完整路径执行命令验证D:\nodejs\node.exe -v如果这个能正常执行说明 Node 本身没问题。如果连这个都报错说明 Node 安装本身出了问题那就需要重新安装 Node。4. 实战操作完整重装依赖的正确流程4.1 删除旧依赖与锁文件既然已经确定大概率是依赖文件坏了那就别修补了直接重来。Windows 下删除node_modules是个体力活文件多、路径长普通右键删除可能要等很久。推荐用命令行rmdir /s /q node_modules如果node_modules里有文件被占用rmdir可能会提示无法删除。这时先关掉所有 IDE、终端进程尤其是正在运行 dev server 的窗口。还有时某些文件被安全软件锁定Windows 的资源管理器也会在其中“占用”。可以先重启一下文件资源管理器或者注销再登录再执行删除。安装前把锁文件也清理掉del package-lock.json注意如果你的项目是团队共享的删除 lock 文件后新的依赖树可能会和之前的版本产生差异建议先备份一份再删或者至少记录下原 lock 文件里的核心包版本。4.2 重新安装并观察日志执行安装npm install这次安装时不要走开盯着日志的输出。如果看到ETIMEDOUT、ECONNREFUSED之类的网络错误说明是网络环境的问题可能需要切换镜像源。如果是EINTEGRITY或E404说明某个包版本号对不上或者依赖源里没有对应版本应该检查package.json里的版本约束。安装过程如果停在某个包很久不动可以用npm install --verbose打开详细输出看看它卡在哪个请求上。装完后再次检查npx vue-cli-service --version npm run serve如果此时仍然报错我一般会再做一个“时间戳测试”把node_modules/vue/cli-service/package.json的修改时间和node_modules/.bin/vue-cli-service.cmd的修改时间对比一下。正常情况下两者应该在同一批安装操作中生成时间相差很小。如果.bin里的文件明显是旧文件或者时间差异很大就说明有其他工具或者手动操作覆盖了node_modules需要从源头控制。4.3 用 npm ci 取代 npm install 的场景如果项目已经处于稳定期我更建议日常安装依赖时用npm ci而不是npm install。npm ci的优点前面说过是先删后装锁定版本不会因为 npm 的自动解析产生额外变化。缺点是安装时间比npm install长一些因为每次都全量重建。但对 CI 场景来说这是最稳妥的做法能避免“本地能跑线上跑不了”这类的经典问题。如果你的构建平台或者部署系统上用的是npm install强烈建议改成npm ci并在构建日志里开启npm ci --dry-run之类的预检方式来确认依赖树可解析。很多团队的线上故障都出在依赖树不一致遇到一次就长记性了。4.4 安装后立即生成 .bin 的机制再补一点原理层面的解释。npm install在下载完包体之后会根据node_modules里各个包的package.json中bin字段声明在.bin目录里生成对应命令的软链文件。如果你使用 pnpm它会用符号链接指向.pnpm目录内部的文件如果你使用 yarn则可能生成软链或硬链接。这也是为什么混用包管理器后.bin会失效的核心原因。理解这一点后你会发现只要node_modules本身的结构没有按要求生成.bin条目不管你怎么改 PATH、怎么重启命令都不可能调起来。所以重装依赖这个操作才会如此重要。它不是“玄学重装”而是重新执行一次“生成 .bin 软链”的完整流程。5. 高频场景速查表与避坑记录5.1 常见问题速查表现象可能原因处理办法所有 npm run 脚本都报“不是内部或外部命令”node_modules 不完整或 .bin 目录损坏删除 node_modules 后重装首选 npm ci只有 vue-cli-service 报错其他命令正常vue/cli-service 某次安装中断卸载该包并重装或整体重装IDE 终端报错系统终端却正常IDE 终端未加载某些环境变量重启 IDE检查终端默认 shellnpm install 时报网络类错误镜像源不可达或缓存损坏切换镜像源npm cache clean --force切换 Node 版本后报错原生二进制与当前 Node 不兼容删除 node_modules 后重新安装安全软件隔离了 .cmd 文件误报恢复文件并添加目录排除项项目在非系统盘运行正常换到 C 盘报错目录权限问题以管理员身份运行终端或修改目录权限pnpm 装过之后改用 npm依赖链接结构不兼容删除所有 lock 文件重新安装5.2 我踩过的三个隐蔽坑第一个坑是在某跨平台前端系统上路径里带了中文当时看起来所有依赖都装好了vue-cli-service.cmd也存在于node_modules/.bin里但一执行就在批处理脚本解析路径时出错。因为.cmd脚本里引用了当前目录的完整路径如果工程路径里有中文或某些特殊符号CMD 的编码处理可能会异常。这种问题不太好复现但遇到的时候真的很头疼。最直接的解法是把项目迁移到纯英文目录下面跑通之后再考虑是否要保留中文目录。第二个坑是某次给旧项目升级依赖时package.json里同时存在vue/cli-service和vue-cli-service两个包你看名字可能有印象前者是官方包后者很多年前有人用过别名。这两个没有本质冲突但如果锁文件混乱安装出来的vue-cli-service命令会指向一个不存在的vue-cli.js报错内容一模一样。遇到这种情况先检查npm ls vue-cli-service到底列的是哪个包再决定去留。第三个坑是权限。有些公司的开发目录挂载在网络共享盘或者受管控的远程目录上node_modules里的文件在安装时生成了针对某个用户的安全标识换一个人登录同一台机器后.cmd文件可能没有读取权限执行时直接报“不是内部或外部命令”。这个排查要靠右键查看文件属性里的安全页签如果是权限问题加上当前用户的读取执行权限就好。说实话这个场景不常见但我遇到过两次次次都要排查很久。5.3 什么情况下应该怀疑 Vue CLI 版本本身如果你确认依赖没问题、重装过好几次、安全软件也排除了仍然报错那就要怀疑是不是 Vue CLI 版本与当前项目 Node 版本不兼容。Vue CLI 5 的官方支持里明确写了推荐 Node 12 以上、14 以上更好。如果你用的 Node 太新或者太旧可能出现各种难以解释的错误。这时候最简单的验证方法是直接降级或升级vue/cli-service的版本不需要动项目代码npm install vue/cli-service4 -D注意这会改掉package.json里的版本约束而且 Vue CLI 4 和 5 的兼容性差距不小除非你是在排查环境问题否则我不建议直接在真实项目里用这个办法做验证。更合适的做法是另起一个临时目录用同样的 Vue CLI 版本创建一个最小测试项目专门验证环境兼容性确认后再回到真实项目操作。6. 写在最后一点个人经验总结我在多个项目里处理过这类报错说句实在话八成以上的情况都出在依赖没装对而不是环境坏了。我自己处理这个问题的顺序永远是先检查package.json里的 scripts 和vue/cli-service是否声明了再执行npx vue-cli-service --version确认网络和镜像是否稳定最后才是考虑 Node 版本和安全软件。关于 npm 日志里那段install args: D:\nodejs\node.exe ...我再强调一次它只是告诉你 npm 当前使用的 node 路径不是报错原因。你把这段日志当成查找线索可以但别一看到 node 路径就去重装 Node那样浪费的时间太多了。还有一个小技巧是如果你现在没有太多时间排查最简单的救急办法是临时用npx vue-cli-service serve把开发服务跑起来因为npx自带查找.bin的能力可以先绕过“命令不存在”的报错。不过这只能作为临时手段根治还是要回到依赖重装和统一包管理器这条路上来。最后再顺手分享一个让生活更美好的明细尽量在项目里固定一份.nvmrc文件并在部署流程里强制使用npm ci安装依赖。这一套组合拳打下来能帮你避开一大批莫名其妙的“环境差异问题”不只是这个 Vue CLI 的报错很多前端工程的疑难杂症都会被挡在第一道防线之外。

相关新闻

新一代Node中间层开发模式:从BFF到轻量级应用运行时

新一代Node中间层开发模式:从BFF到轻量级应用运行时

/* 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 2:45:01 阅读更多 →
8086汇编寄存器内存访问:寻址方式与段超越前缀详解

8086汇编寄存器内存访问:寻址方式与段超越前缀详解

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

2026/10/19 1:34:42 阅读更多 →
C++与OpenCV实战:用导向滤波精炼图像融合权重图

C++与OpenCV实战:用导向滤波精炼图像融合权重图

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

2026/10/19 9:46:30 阅读更多 →

最新新闻

DLL文件丢失别去“免费下载”了,用系统自带修复工具更安全

DLL文件丢失别去“免费下载”了,用系统自带修复工具更安全

一看到“系统丢失MSJT4JLT.DLL文件”的提示,很多人第一反应就是去搜“免费下载”。这个思路我可以直接告诉你:方向错了。我见过太多人因为急着补DLL文件,结果电脑越修越乱,甚至直接成了全家桶病毒窝。这篇文章不教你怎么去下载站碰…

2026/10/20 2:44:42 阅读更多 →
STM32控制28BYJ-48步进电机:八拍驱动、定时器换相与避坑指南

STM32控制28BYJ-48步进电机:八拍驱动、定时器换相与避坑指南

简介:STM32控制28BYJ-48步进电机的代码包,共120个文件、大小2.39MB,面向需要快速实现步进电机角度与正反转控制的开发者。文件构成以31个c源文件与32个h头文件为主,覆盖stm32f10x_tim、stm32f10x_flash、stm32f10x_rcc等常用标准外…

2026/10/20 2:44:42 阅读更多 →
DCU软件虚拟化从入门到落地:HAMi架构原理与K8s实践指南

DCU软件虚拟化从入门到落地:HAMi架构原理与K8s实践指南

上个月我跑去参加了一场关于AI基础设施的线下Meetup,分享嘉宾是海光信息的工程师,主题是“DCU软件虚拟化从基础到实践”。说实话,这两年GPU虚拟化的分享我听了不少,但真正把国产DCU的虚拟化讲清楚、还带着现场demo跑通的&#xff…

2026/10/20 2:44:42 阅读更多 →
职业心理测评系统源码拆解:架构、表结构与部署避坑指南

职业心理测评系统源码拆解:架构、表结构与部署避坑指南

简介:一份完整的职业心理测评系统源码包,面向需要构建或优化心理测评平台的开发者、企业人事部门及教育机构。系统涵盖职业倾向、性格特征、工作适应能力等标准化量表,支持浏览器与移动应用多端访问,并集成用户管理、测评结果统计…

2026/10/20 2:44:41 阅读更多 →
AI辅助毕业论文全流程指南:从选题到降重格式的智能工具解析

AI辅助毕业论文全流程指南:从选题到降重格式的智能工具解析

每到毕业季,我的微信就会变成24小时论文急诊室。有人凌晨两三点发来一屏截图,问参考文献格式到底对不对;有人对着空白文档坐了一下午,憋不出开篇三百字;还有人把论文改了八遍,查重率还在红线边缘。这些问题…

2026/10/20 2:44:41 阅读更多 →
网络差错控制深度解析:检错编码、纠错编码与重传机制

网络差错控制深度解析:检错编码、纠错编码与重传机制

1. 差错控制到底在解决什么问题先聊点直观的。做网络开发这些年,我发现很多人一看到“差错控制”这三个字,第一反应就是“不就是CRC吗,算多项式那个”。实际上,差错控制是贯穿整个网络体系的一整套组合拳,从数据链路层…

2026/10/20 2:43:41 阅读更多 →

日新闻

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/19 10:02:04 阅读更多 →
数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

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

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

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

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

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

2026/10/19 1:30:52 阅读更多 →

月新闻

我发现了一个新思路:用 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/19 2:54:50 阅读更多 →
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/19 9:10:22 阅读更多 →
黑夜航拍船只数据集训练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/18 12:16:16 阅读更多 →