RK3588 这颗片子从 2022 年火到现在做边缘计算和嵌入式 AI 的圈子基本绕不开它。8 核 CPU、6 TOPS 的 NPU、支持 8K 编解码价格又比同级别的工业级方案友好太多所以拿它跑视觉推理、做视频分析网关的团队一抓一大把。但最近半年问得最多的问题变了——不再是RK3588 怎么部署 YOLOv8而是能不能在 RK3588 上把 DeepSeek-R1 跑起来。这个需求很实在很多场景的数据根本不能出本地比如工厂质检、医疗影像、政务文档处理你不可能把原始数据传到云端大模型去推理。而 DeepSeek-R1 作为推理能力突出的开源模型如果能塞进 RK3588 这种功耗十几瓦的板子里那边缘侧的智能水平直接上一个台阶。我前后在 RK3588 上折腾 DeepSeek-R1 的部署差不多两个月从最初的模型根本加载不进去到后来能稳定跑 1.5B 量化版做流式输出中间踩的坑足够写一篇长文。这篇就把整个链路拆开讲清楚RK3588 的 NPU 到底能吃什么、DeepSeek-R1 的哪个版本适合塞进来、RKNN 工具链怎么把模型转过去、内存和散热怎么处理、以及实测下来哪些参数是必须调的。不管你是刚拿到板子的新手还是已经在跑其他模型的开发者这篇应该都能帮你少走几天弯路。1. 先搞清楚 RK3588 的 NPU 到底能扛什么1.1 6 TOPS 这个数字背后的真实含义RK3588 的 NPU 标称 6 TOPS但这个数字是 INT8 精度下的理论峰值而且有个关键前提——它是三核架构3 个 NPU core每个 core 2 TOPS。这意味着你的模型如果能被均匀切分到三个核上并行跑才能接近这个峰值如果模型结构导致只能单核跑那实际算力就是 2 TOPS。这一点在部署大语言模型时特别重要因为 Transformer 类的模型在算子层面不一定能被工具链自动切分得很均匀。更关键的是精度支持。RK3588 的 NPU 原生支持 INT8 和 INT16对 FP16 的支持是有限的FP32 基本别想。而 DeepSeek-R1 原始权重是 FP8/BF16 混合的你不可能直接把原始模型丢进去。所以整个部署的核心工作其实是把模型量化到 NPU 能吃的精度同时尽量不掉推理质量。这个矛盾贯穿始终后面每个环节的选择都围绕它展开。1.2 为什么大语言模型在 NPU 上和 CNN 完全不是一回事如果你之前部署过 YOLOv8 或者 ResNet 这类 CNN会发现流程很顺ONNX 导出、RKNN 转换、量化校准、跑起来。但 LLM 完全是另一个物种。原因有三个第一LLM 是自回归的每生成一个 token 都要把整个模型的权重过一遍。这意味着内存带宽而不是算力才是真正的瓶颈。RK3588 的 LPDDR4x/LPDDR5 带宽在 32-64 GB/s 量级而一个 1.5B 的 INT8 模型权重大约 1.5GB每生成一个 token 就要把这 1.5GB 读一遍。理论上限就是几十 token/s实际还要打折。第二LLM 里有大量非标准算子比如 RoPE 旋转位置编码、KV Cache 的动态管理、各种归一化层。RKNN 工具链对 CNN 算子支持很好但对这些 LLM 特有算子的支持是逐步补齐的版本差异很大。第三KV Cache 是动态增长的而 NPU 通常要求静态的输入 shape。这个矛盾需要用固定最大长度的方式绕过去代价是内存占用固定。理解了这三点你就明白为什么RK3588 跑 DeepSeek不是简单转个模型就完事而是一整套工程取舍。1.3 实测能跑起来的模型规模边界我在 16GB 内存的 RK3588 板子上实测了几种配置结论如下表模型版本量化精度权重占用实测生成速度是否可用DeepSeek-R1-Distill-Qwen-1.5BINT8~1.6GB8-12 token/s可用日常问答够DeepSeek-R1-Distill-Qwen-1.5BINT4~0.9GB15-20 token/s可用质量略降DeepSeek-R1-Distill-Qwen-7BINT4~4GB2-4 token/s勉强体验差DeepSeek-R1-Distill-Llama-8BINT4~4.5GB1-3 token/s不推荐结论很明确1.5B 是 RK3588 的甜点区7B 以上虽然能塞进去但生成速度慢到没法交互。这里说的1.5B指的是 DeepSeek-R1 的蒸馏版本也就是 R1-Distill-Qwen-1.5B它保留了 R1 的推理链能力但底座是 Qwen2.5-1.5B规模适合边缘设备。提示不要被DeepSeek-R1 671B这种参数吓到那个是满血版需要多卡服务器。边缘部署认准 Distill 蒸馏系列1.5B 和 7B 是两个常见档位。2. 模型转换从 HuggingFace 权重到 RKNN 格式2.1 转换链路为什么不能一步到位很多人第一反应是有没有现成工具把 HuggingFace 模型直接转 RKNN。答案是没有一键工具必须走中间格式。标准链路是这样的HuggingFace 权重 → ONNX → RKNN为什么必须经过 ONNX因为 RKNN 工具链的输入是 ONNX 或者 TensorFlow 的 pb 格式它不认识 PyTorch 的 state_dict。而 ONNX 作为中间层能把 PyTorch 的计算图固化下来同时提供一个相对标准的算子集给 RKNN 去映射。但这里有个大坑LLM 导出 ONNX 时动态 shape 和 KV Cache 的处理非常麻烦。早期大家用torch.onnx.export直接导结果发现 KV Cache 的 past_key_values 输入输出对不上或者 RoPE 的位置编码在导出后数值不对。后来社区逐渐形成了用optimum或者专门的导出脚本的方案把 KV Cache 显式建模成固定 shape 的输入输出。2.2 导出 ONNX 时的关键参数我用的导出脚本核心逻辑是这样的基于 transformers 的 ONNX 导出from transformers import AutoModelForCausalLM, AutoTokenizer import torch model_id deepseek-ai/DeepSeek-R1-Distill-Qwen-1.5B model AutoModelForCausalLM.from_pretrained(model_id, torch_dtypetorch.float16) tokenizer AutoTokenizer.from_pretrained(model_id) # 关键固定最大序列长度避免动态 shape max_seq_len 1024 dummy_input tokenizer(测试输入, return_tensorspt) torch.onnx.export( model, (dummy_input[input_ids],), deepseek_r1_1.5b.onnx, input_names[input_ids], output_names[logits], dynamic_axes{ input_ids: {0: batch, 1: sequence}, logits: {0: batch, 1: sequence} }, opset_version14, do_constant_foldingTrue )几个参数必须注意opset_version 选 14 或更高。低于 13 的话一些 attention 相关的算子会 fallback 到不支持的实现RKNN 转换时直接报错。do_constant_foldingTrue。这会把一些可以预先计算的常量折叠掉减小模型体积也减少 NPU 运行时的计算量。dynamic_axes 只保留 batch 和 sequence 维度。KV Cache 相关的维度如果也设成动态RKNN 会处理不了。导出完成后用onnxsim做一次简化把冗余的算子合并掉pip install onnxsim onnxsim deepseek_r1_1.5b.onnx deepseek_r1_1.5b_sim.onnx这一步能砍掉 10%-20% 的算子数量对后续转换成功率和运行速度都有帮助。2.3 RKNN 转换时的量化校准怎么做这是整个流程里最需要经验的一步。RKNN 转换的核心命令是rknn.build()但量化校准数据集的质量直接决定模型精度掉多少。from rknn.api import RKNN rknn RKNN(verboseTrue) # 配置目标平台 rk3588开启量化 rknn.config( mean_values[[0, 0, 0]], std_values[[1, 1, 1]], target_platformrk3588, quantized_dtypeasymmetric_quantized-8, # INT8 非对称量化 quantized_algorithmnormal, optimization_level3 ) # 加载 ONNX ret rknn.load_onnx(modeldeepseek_r1_1.5b_sim.onnx) if ret ! 0: print(Load ONNX failed) exit(ret) # 量化校准dataset.txt 里放校准样本 ret rknn.build(do_quantizationTrue, dataset./calib_dataset.txt) if ret ! 0: print(Build failed) exit(ret) rknn.export_rknn(deepseek_r1_1.5b.rknn)校准数据集是重点。不要随便拿几句话去校准LLM 的激活值分布和普通 CNN 差别很大。我的做法是从训练语料或者实际业务语料里抽 100-200 条长度在 128-512 token 的文本覆盖不同主题问答、叙述、代码、数字这样量化时的激活值范围才准。校准样本太少或者太单一会导致某些层的量化 scale 偏得离谱推理时输出乱码。注意quantized_algorithm有normal、mmse、kl_divergence几个选项。实测 LLM 场景下normal反而比kl_divergence稳因为 KL 散度对长尾分布敏感LLM 的激活值长尾很重容易把 scale 拉偏。2.4 转换失败的常见报错与对策转换过程中最常遇到的几个报错我整理成表报错信息根因对策Unsupported op: RotaryEmbeddingRoPE 算子不被支持升级 RKNN Toolkit2 到 2.0或用等价算子替换Shape not match at layer xx动态 shape 未固定检查 ONNX 导出时的 dynamic_axesQuantize calibration failed校准数据格式不对确认 dataset.txt 路径和每行样本格式Memory overflow during build模型太大转换时内存爆增加 swap或分块转换其中 RoPE 的问题最典型。早期 RKNN Toolkit2 1.5 版本对 RoPE 支持不好需要手动把旋转位置编码拆成 sin/cos 查表加乘法的形式。2.0 之后原生支持了所以第一件事是把工具链升到最新版能省掉大量手工改图的工作。3. 板端部署从 rknn 文件到能对话的服务3.1 板子上的运行环境准备RK3588 板子通常跑的是 Ubuntu 20.04 或者 Debian内核版本 5.10 居多。部署前需要确认几件事NPU 驱动版本cat /sys/kernel/debug/rknpu/version需要和 RKNN Runtime 版本匹配。驱动太老会导致加载模型直接失败。librknnrt.so这是运行时库必须和转换时用的 Toolkit 版本对应。我遇到过用 2.0 转换、板子上是 1.6 的 runtime结果加载报 version mismatch。内存1.5B INT8 模型加载后加上 KV Cache 和运行时开销峰值内存大概 3-4GB。如果板子是 8GB 版本要留够余量16GB 版本比较从容。安装 runtime 的步骤# 拷贝 librknnrt.so 到系统库路径 sudo cp librknnrt.so /usr/lib/ sudo ldconfig # 验证 python3 -c from rknnlite.api import RKNNLite; print(ok)这里推荐用rknnlite而不是完整的rknn因为板端只需要推理不需要转换功能lite 版本依赖更少、启动更快。3.2 推理代码的核心结构板端推理的骨架大致是这样from rknnlite.api import RKNNLite import numpy as np rknn_lite RKNNLite() ret rknn_lite.load_rknn(deepseek_r1_1.5b.rknn) ret rknn_lite.init_runtime(core_maskRKNNLite.NPU_CORE_0_1_2) # 初始化 KV Cache固定最大长度 max_len 1024 kv_cache np.zeros((1, max_len, ...), dtypenp.float16) def generate(input_ids, max_new_tokens128): for _ in range(max_new_tokens): outputs rknn_lite.inference(inputs[input_ids, kv_cache]) logits outputs[0] next_token np.argmax(logits[:, -1, :]) # 更新 KV Cache拼接 next_token ... return generated_ids几个关键点core_mask 设置。NPU_CORE_0_1_2表示三个核都用但前提是模型能被切分。实测 1.5B 模型用三核比单核快大约 1.8 倍没有到理论 3 倍因为核间同步有开销。KV Cache 的管理。这是 LLM 推理的核心。每生成一个 token要把当前 token 的 key/value 追加到 cache 里下次推理时带上。RKNN 的输入是静态 shape所以 cache 要预分配成最大长度用有效长度指针来标记实际用了多少。这个逻辑必须自己写工具链不管。采样策略。argmax是贪心解码输出确定但容易重复。实际用的时候建议加 temperature 和 top-p 采样代码里用 numpy 实现就行不占 NPU。3.3 分词和反分词在板端怎么处理DeepSeek-R1-Distill-Qwen-1.5B 用的是 Qwen 的 tokenizer词表大概 15 万。板端跑 tokenizer 有两个选择一是直接用transformers的 tokenizer简单但依赖重启动慢内存占用大。二是把 tokenizer 导出成更轻量的格式比如用tokenizers库的 Rust 实现或者干脆把词表转成二进制查表。我实测下来用tokenizers库加载导出的tokenizer.json启动时间从 3 秒降到 0.5 秒内存省了 200MB 左右。对于边缘设备这个优化值得做。from tokenizers import Tokenizer tokenizer Tokenizer.from_file(tokenizer.json) encoded tokenizer.encode(你好介绍一下你自己) input_ids np.array([encoded.ids], dtypenp.int64)反分词同理用tokenizer.decode(ids)即可。注意 Qwen 的 tokenizer 对中文的处理是按字节 BPE所以中文一个字符可能对应多个 token这是正常的。3.4 流式输出的实现细节对话体验好不好流式输出占一半。用户不希望等 10 秒才看到一整段回复而是希望字一个个蹦出来。实现上就是在 generate 循环里每生成一个 token 就 decode 一次并打印而不是等全部生成完。但这里有个性能陷阱每步都调用 decode 会拖慢整体速度。我的做法是攒够 2-4 个 token 再 decode 一次既保证视觉上的流式感又不至于让 decode 成为瓶颈。实测这样能把端到端延迟降低 15% 左右。4. 性能调优让 1.5B 模型跑得更顺4.1 内存带宽才是真正的天花板前面提过LLM 推理在 NPU 上是内存带宽受限。RK3588 的内存控制器支持 LPDDR4x-4266 或 LPDDR5-4800理论带宽分别是 34 GB/s 和 38 GB/s 左右。但实际可用带宽要打七折因为 CPU、GPU、VPU 都在抢。优化方向就两个减少每 token 要读的数据量或者提高数据复用率。减少数据量最直接的办法是量化到 INT4。INT4 相比 INT8权重体积减半理论上速度翻倍。但 RK3588 的 NPU 对 INT4 的支持是混合精度模式不是所有层都能用 INT4部分层还是要回退到 INT8。实测 1.5B INT4 比 INT8 快大约 60%没有到 2 倍就是这个原因。提高复用率则要靠 KV Cache 的优化。标准 KV Cache 每步都要把整个 cache 读一遍但如果用 PagedAttention 的思路把 cache 分页管理只读有效的部分能省不少带宽。不过 RK3588 上实现 PagedAttention 比较麻烦工具链不直接支持需要自己改推理逻辑。我试过简化版的分页收益大概 10%-15%投入产出比一般看你的场景要不要抠这点性能。4.2 散热和降频被忽视的稳定性杀手RK3588 满载跑 NPU 的时候功耗能到 8-10W如果散热没做好芯片温度很快冲到 85 度以上然后触发降频。降频后 NPU 频率从 1GHz 掉到 600MHz生成速度直接腰斩。我一开始用被动散热片跑 5 分钟就开始降频。后来换了个小风扇温度稳定在 65 度左右速度就稳了。如果你做的是产品散热设计必须按持续满载来算不能按峰值。监控温度的命令# 查看 NPU 和 CPU 温度 cat /sys/class/thermal/thermal_zone*/temp # 查看 NPU 频率 cat /sys/class/devfreq/fdab0000.npu/cur_freq如果发现温度经常上 80 度要么加散热要么在软件里限制并发请求数别让 NPU 一直满载。4.3 批处理和并发边缘场景要不要做云端推理喜欢做 batch一次处理多个请求提高吞吐。但边缘场景通常并发很低做 batch 反而增加延迟。我的建议是如果只是单用户交互batch1 就行别折腾。如果是网关类应用多个请求排队可以考虑把短请求合并成 batch但要注意 KV Cache 的内存会随 batch 线性增长16GB 内存的板子 batch 开到 4 就差不多了。并发方面RK3588 的三个 NPU 核可以跑不同的模型实例但同一个模型的多实例会争抢内存带宽收益有限。实测跑两个 1.5B 实例总吞吐只比单实例高 30%但内存占用翻倍。除非你有明确的吞吐需求否则单实例足够。4.4 用 Prometheus Grafana 监控 NPU 资源做产品的话监控是必须的。RK3588 的 NPU 使用率、频率、温度都可以通过 sysfs 读出来用 node_exporter 的自定义 collector 或者写个简单的 Python 脚本暴露成 Prometheus 格式就行。关键指标rknpu_utilizationNPU 利用率反映负载rknpu_freq当前频率判断是否降频rknpu_temp温度inference_latency_ms单次推理延迟tokens_per_second生成速度这几个指标配上 Grafana 面板能一眼看出系统是否健康。我遇到过推理速度突然变慢的情况一看面板发现是温度上去了降频加个风扇就解决了。没有监控的话这种问题很难定位。5. 实测踩过的坑和对应的解法5.1 模型加载成功但输出全是乱码这是最让人抓狂的问题。模型加载没报错推理也跑完了但输出的 token 全是无意义的符号。原因通常有三个量化校准数据太差。如果校准集只有几十条短文本某些层的激活值范围估计不准量化后数值溢出。解法是扩充校准集到 200 条以上覆盖多种文本类型。tokenizer 和模型不匹配。DeepSeek-R1-Distill-Qwen-1.5B 必须用 Qwen 的 tokenizer如果你误用了 Llama 的 tokenizertoken id 对不上输出自然乱。确认方法是对比tokenizer.vocab_size和模型 config 里的vocab_size。KV Cache 初始化不对。如果 cache 没有正确清零或者有效长度指针没更新模型会读到脏数据。检查 cache 的初始化和更新逻辑。5.2 生成到一半突然卡死跑了几十个 token 之后突然不动了这种情况多半是 KV Cache 越界。因为 cache 预分配了固定长度如果生成超过这个长度还没停就会写到非法内存。解法是在 generate 循环里加长度检查到了 max_len 就强制停止或者用滑动窗口把最老的 token 挤出去。另一个可能是内存碎片。长时间运行后Python 的内存分配器可能产生碎片导致大块内存分配失败。解法是定期重启推理进程或者用malloc_trim主动释放。5.3 首次推理特别慢之后就快了这是正常现象。首次推理时NPU 驱动要加载模型、分配内存、编译算子这些一次性开销大概 2-5 秒。之后每次推理就是纯计算了。如果你的应用对首字延迟敏感可以在服务启动时先跑一次空推理做预热。# 预热 dummy_ids np.array([[1, 2, 3]], dtypenp.int64) rknn_lite.inference(inputs[dummy_ids, kv_cache])预热之后用户的第一句话就能快速响应。5.4 不同批次板子的性能差异这个坑比较隐蔽。RK3588 有多个版本早期批次和后期批次的 NPU 频率、内存颗粒可能不同。我手上有两块板子同样的模型同样的代码一块跑 12 token/s另一块只有 9 token/s。查下来是内存颗粒不同一块是 LPDDR4x一块是 LPDDR5带宽差异导致的。所以做产品选型时一定要确认板子的内存规格并且批量采购时尽量同一批次。如果性能要求严格建议在软件里做动态适配根据实测速度调整并发策略。6. 这套方案适合什么场景不适合什么6.1 适合的场景本地知识库问答。把企业文档向量化后用 RK3588 跑 DeepSeek-R1 做生成数据全程不出本地。1.5B 模型虽然不如云端大模型但配合 RAG 检索增强回答质量能满足大部分内部问答需求。工业设备语音交互。工厂环境网络不稳定云端方案不可靠。RK3588 本地跑模型语音识别加对话生成全在板子上完成响应快且不依赖网络。边缘文档处理。比如合同审核、票据识别后的信息提取用本地模型做初步处理敏感数据不外传。6.2 不适合的场景高并发服务。RK3588 单实例吞吐有限如果同时有几十个用户请求排队会很长。这种场景还是得上服务器。需要强推理能力的任务。1.5B 模型做简单问答可以但复杂的逻辑推理、长链条数学题质量明显不如 7B 以上模型。如果你的场景对推理深度要求高RK3588 不是合适的选择。超长上下文。受限于内存KV Cache 最大长度通常设 1024-2048。如果你需要处理上万 token 的长文档要么分段处理要么换方案。6.3 和同类方案的对比有人会问为什么不直接用 N150 或者树莓派加 NPU 加速棒。我的看法是方案优势劣势RK3588 内置 NPU集成度高功耗低成本可控工具链成熟度一般LLM 支持在完善中x86 独立 NPU 卡生态好工具多功耗高成本高体积大树莓派 加速棒上手简单带宽瓶颈明显LLM 速度慢RK3588 的核心优势是集成度和功耗。一颗芯片搞定 CPU、GPU、NPU、VPU整板功耗十几瓦适合嵌入到设备里。如果你的产品形态是盒子或者网关RK3588 是很合适的选择。7. 一些实操层面的经验补充7.1 模型文件的分发和更新产品部署后模型更新是个实际问题。RKNN 文件通常几百 MB 到 1GB 多通过 OTA 分发要考虑带宽和存储。我的做法是模型文件单独分区更新时先下载到临时分区校验 MD5 后再切换避免更新失败导致设备变砖。同时保留上一个版本出问题能回滚。7.2 电源设计不能省RK3588 满载时电流能到 2-3A如果电源设计余量不够会出现电压跌落导致 NPU 报错或者系统重启。我遇到过用劣质电源适配器一跑推理就重启的情况。建议电源至少留 30% 余量并且加足够的滤波电容。7.3 固件和驱动的版本管理RK3588 的 SDK 更新比较频繁NPU 驱动、runtime、工具链三者版本必须匹配。我建议在项目里锁定一套验证过的版本组合不要轻易升级。升级前一定要在测试板上完整验证包括模型加载、推理正确性、长时间稳定性。7.4 关于 INT4 量化的取舍INT4 能带来明显的速度提升但质量下降也是实实在在的。我的经验是问答类任务 INT4 可以接受代码生成和数学推理建议用 INT8。因为这两类任务对数值精度敏感INT4 量化后容易出现逻辑错误。如果你的场景混合了多种任务可以准备两个模型文件根据任务类型动态切换代价是内存占用翻倍。7.5 长时间运行的稳定性验证边缘设备通常要求 7x24 运行所以稳定性测试不能省。我的测试方法是连续跑 72 小时每 10 秒发一个请求记录成功率、延迟、温度、内存占用。重点看内存有没有缓慢增长泄漏温度有没有累积升高延迟有没有逐渐变大。这三个指标稳定基本就能放心部署了。我在实际项目里跑下来RK3588 部署 DeepSeek-R1-1.5B 这套方案在散热到位、电源充足的前提下连续运行一周没有出现崩溃或明显降速。生成速度稳定在 10 token/s 左右对于本地问答场景完全够用。如果你也在做类似的事情建议先从 1.5B INT8 跑通全链路再根据实际需求决定要不要上 INT4 或者换更大模型。工具链版本一定要用最新的能省掉很多手工改图的麻烦。
企业数字化 ERP 产品动态
相关推荐
AI冲击下,为何Android系统开发成了硬骨头? /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 1:08:44
小智AI开源方案:ESP32-S3端侧语音交互从固件到服务端全解析 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 1:07:44
PyPortal卫星飞越查看器:桌面实时显示卫星轨迹 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 1:07:44
对应点齐了,相机位姿还是不对?用 Kornia 把 PnP 算对的最小路径 对应点齐了,相机位姿还是不对?用 Kornia 把 PnP 算对的最小路径 【免费下载链接】kornia 🐍 空间人工智能的几何计算机视觉库 项目地址: https://gitcode.com/kornia/kornia
3D 重建对不上、相机放偏了——你有 2D-3D 对应,… · 2026/11/4 1:48:00
Wan2.2-TI2V-5B 本地部署指南:单张 4090,9 分钟出 5 秒 720P 视频 Wan2.2-TI2V-5B 本地部署指南:单张 4090,9 分钟出 5 秒 720P 视频 【免费下载链接】Wan2.2-TI2V-5B Wan2.2-TI2V-5B是一款开源的先进视频生成模型,基于创新的混合专家架构(MoE)设计,显著提升了视频生成的质… · 2026/11/4 1:48:00
没 iPhone 也能玩:DiPlay 热点模式白嫖 CarPlay 没 iPhone 也能玩:DiPlay 热点模式白嫖 CarPlay 【免费下载链接】DiPlay Independent CarPlay receiver for compatible Android head units. Wired and wireless public preview. 项目地址: https://gitcode.com/gh_mirrors/di/DiPlay
先说个扎心的帖子
车… · 2026/11/4 1:47:00
如何用Hermes Agent打造你的智能投资助手:从零到专业分析的完整指南 如何用Hermes Agent打造你的智能投资助手:从零到专业分析的完整指南
在AI技术快速发展的今天,拥有一个能理解市场动态、提供专业投资建议的智能助手已经成为现实。Hermes Agent作为一款自学习AI代理框架,为你提供了构建个性化金融分析系统的… · 2026/11/4 1:47:00
沁恒 RISC-V 蓝牙应用中常用蓝牙参数的设定和修改 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 1:47:00
KoboldCpp v1.98 使用指南:一个文件跑起本地 AI 模型,5 分钟见到第一条回复 KoboldCpp v1.98 使用指南:一个文件跑起本地 AI 模型,5 分钟见到第一条回复 【免费下载链接】koboldcpp KoboldCpp - Run GGUF AI models locally with a KoboldAI UI. One File. Zero Install. 项目地址: https://gitcode.com/gh_mirrors/ko/koboldcp… · 2026/11/4 1:47:00
双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/2 13:10:28
STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/3 6:04:24
DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/3 5:52:46
AI辅助技术栈评估:提升研发决策效率60% 1. 项目背景与核心价值技术决策一直是研发团队面临的重大挑战。随着技术生态的快速演进,技术栈的选择、维护和迭代变得愈发复杂。我们团队在过去两年里,先后经历了三次重大技术栈迁移,每次都需要投入大量人力进行技术评估和风险分析。直到去年… · 2026/11/4 0:00:17
从生成Token到直接决策:Jev如何重塑AI Agent工程实践 1. 从"生成文字"到"拍板决策":Jev 到底在解决什么问题大多数人第一次接触大模型,脑子里建立的模型是"输入问题、输出文字"。你问它今天天气怎么样,它给你一段描述;你让它写个周报,它给你… · 2026/11/4 0:00:17
32G统一内存跑大模型:内存账、TPS实测与端云分流 想在一台 32G 统一内存的小主机上把大模型跑成"日常可用",这件事我前后折腾了小半年。标题里说的这台 Mac mini M6,是我们这次讨论的目标平台,具体到手规格以实物为准;但下面这套推算方法和实测思路,对任何统… · 2026/11/4 0:00:17
双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/2 13:10:28
STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/3 6:04:24
DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/3 5:52:46