纯C++ LLM推理库llama.cpp:x86架构优化与Qwen模型部署实战
1. 项目概述为什么我们需要一个纯粹的C LLM推理库在AI模型部署的世界里我们常常被各种复杂的依赖和庞大的框架所困扰。想象一下你拿到一个很棒的模型比如Qwen想在自己的电脑上快速跑起来试试效果结果第一步就卡在了安装Python环境、PyTorch、CUDA驱动还有一堆版本冲突的库上。这种体验对于开发者尤其是那些专注于嵌入式、边缘计算或者对部署环境有严格控制的场景来说简直是噩梦。这就是llama.cpp出现的背景。它的核心目标极其明确用最纯粹、最直接的方式让大型语言模型LLM的推理过程摆脱对重型框架和复杂运行时环境的依赖。它不是一个全功能的AI框架不负责训练也不提供花哨的Web界面。它就是一个专精于“推理”这个单一任务的C/C库。当你看到项目标题里强调的“纯C/C实现”、“不依赖任何外部库”时就应该明白它追求的是极致的简洁、可移植性和运行时效率。对于Qwen这样的模型而言llama.cpp的意义在于“民主化”本地运行。你不再需要一块昂贵的NVIDIA GPU甚至不需要安装CUDA。通过它提供的量化工具你可以将一个动辄数十GB的原始模型压缩到几个GB甚至更小然后在你的笔记本电脑、迷你主机甚至树莓派上流畅地运行起来。这为模型调试、隐私敏感应用、离线环境部署以及成本敏感的原型开发打开了新的大门。2. 核心架构与设计哲学拆解2.1 为何选择纯C/C在Python统治AI研究的今天llama.cpp反其道而行之选择了C/C作为实现语言这背后有深刻的工程考量。性能与控制力C/C是系统级语言能够进行精细的内存管理和CPU指令级优化。LLM推理的核心是大量的矩阵乘法MatMul和注意力机制计算这些操作在C/C中可以通过手动内存对齐、循环展开、使用SIMD指令集等方式达到接近硬件极限的性能。Python虽然易用但其解释器开销和全局锁GIL在密集型计算中是显著的性能瓶颈。零依赖与可移植性“不依赖任何外部库”意味着编译后的可执行文件或静态库是真正独立的。你可以把它轻松地交叉编译到ARM、RISC-V等其他架构或者嵌入到任何C/C项目中而不用担心动态链接库的版本地狱。这对于嵌入式系统和要求确定性部署的工业场景至关重要。简化部署流程最终用户只需要下载一个单独的可执行文件例如main或qwen就能直接加载模型文件并开始推理。这比要求用户配置一整套Python环境、安装特定版本的PyTorch要友好得多。2.2 针对x86架构的深度优化AVX/AVX2/AVX-512标题中特别提到了“针对x86架构提供了AVX”这其实是llama.cpp性能秘诀的关键之一。现代CPU除了基础指令集还提供了称为SIMD单指令多数据流的扩展指令集如SSE、AVX。它们允许一条指令同时处理多个数据例如一次对8个单精度浮点数做加法非常适合LLM中的向量和矩阵运算。llama.cpp在代码中为不同的指令集级别编写了多个计算内核Kernel。它会根据你编译时的标志或运行时的CPU检测自动选择最优的内核通用版本最基础的实现兼容所有x86 CPU。AVX/AVX2版本利用256位宽的向量寄存器性能有显著提升。目前主流的Intel酷睿和AMD锐龙处理器都支持AVX2。AVX-512版本利用512位宽的向量寄存器理论吞吐量再翻倍。主要见于服务器级CPU和一些高端桌面CPU。在编译时你可以通过-DLLAMA_AVXON,-DLLAMA_AVX2ON,-DLLAMA_AVX512ON等CMake选项来启用特定优化。对于绝大多数用户启用AVX2就能获得非常好的加速比。注意如果你的CPU不支持AVX但编译时启用了生成的可执行文件将无法运行会提示“非法指令”。因此如果是要分发二进制文件通常需要编译一个兼容性最强的“通用”版本或者提供多个版本供用户选择。2.3 核心工作流程llama.cpp的工作流程可以概括为以下几个步骤理解这个流程对后续使用和问题排查很有帮助模型转换与量化这是前置步骤。原始模型如PyTorch的.pth或 Hugging Face格式的.bin需要被转换成llama.cpp自定义的gguf格式。同时在这个转换过程中最重要的操作是“量化”——将模型权重从高精度如FP16转换为低精度如INT4, INT8。这能大幅减少模型体积和内存占用是能在消费级硬件上运行大模型的关键。模型加载llama.cpp读取.gguf文件将模型权重和结构信息加载到内存中。它自己实现了一套简单的张量Tensor存储和加载逻辑。前向推理根据输入的文本Token序列运行模型的计算图。这个过程主要包括Token化将输入文本转换为模型能理解的Token ID序列。嵌入层查找将Token ID转换为向量。多层Transformer块计算核心部分包括自注意力层和前馈神经网络层。语言模型头将最后的隐藏状态转换为整个词表上的概率分布。采样根据概率分布选择下一个Token如使用Top-p温度采样等。文本生成将新生成的Token ID追加到输入序列重复步骤3以自回归的方式生成后续文本直到达到停止条件。3. 从零开始编译、部署与运行Qwen3.1 环境准备与编译假设你在一台Ubuntu 22.04的x86机器上操作以下是详细的步骤。第一步获取源代码git clone https://github.com/ggerganov/llama.cpp cd llama.cppllama.cpp的代码结构非常清晰核心逻辑在llama.cpp和llama.h中示例和工具在根目录下。第二步安装编译依赖基本上只需要一个现代的C编译器如g 10 或 clang和CMake。sudo apt update sudo apt install build-essential cmake如果你想启用GPU加速通过CUDA或Metal则需要安装对应的驱动和工具包但本文聚焦于纯CPU的x86部署。第三步编译推荐使用CMake进行构建它更灵活便于管理不同的编译选项。mkdir build cd build # 基本编译命令启用AVX2优化适用于大多数现代CPU cmake .. -DLLAMA_AVX2ON # 如果你确定你的CPU支持AVX-512可以加上 # cmake .. -DLLAMA_AVX2ON -DLLAMA_AVX512ON # 如果你需要编译一个兼容性最强的版本性能会下降可以禁用AVX # cmake .. -DLLAMA_AVXOFF -DLLAMA_AVX2OFF -DLLAMA_AVX512OFF # 开始编译使用所有CPU核心以加快速度 cmake --build . --config Release -j $(nproc)编译完成后在build/bin/目录下你会找到几个关键的可执行文件main: 最常用的交互式聊天/推理客户端。quantize: 用于量化模型的工具。server: 提供一个HTTP API服务器方便其他程序调用。3.2 获取并转换Qwen模型llama.cpp不能直接使用Hugging Face格式的模型必须将其转换为.gguf格式。第一步安装Python转换脚本依赖虽然核心库是C但转换脚本是用Python写的。建议在虚拟环境中操作。# 创建并激活虚拟环境 python3 -m venv venv source venv/bin/activate # 安装必要的包 pip install torch numpy sentencepiece transformers accelerate第二步下载原始Qwen模型从Hugging Face Model Hub下载你想要的Qwen模型例如Qwen/Qwen2.5-7B-Instruct。# 使用git-lfs克隆大文件 git lfs install git clone https://huggingface.co/Qwen/Qwen2.5-7B-Instruct如果网络不畅也可以使用huggingface-cli工具或从其他镜像站下载。第三步执行模型转换llama.cpp仓库的convert.py脚本支持多种模型格式。对于Qwen2.5命令如下# 回到llama.cpp根目录 cd /path/to/llama.cpp # 执行转换指定输出类型为 f16 (半精度浮点数) python convert.py --outtype f16 \ /path/to/Qwen2.5-7B-Instruct \ --outfile qwen2.5-7b-instruct.f16.gguf这个过程会将PyTorch的权重转换为gguf格式的FP16版本。此时生成的.gguf文件大小和原始模型差不多约14GB for 7B还不能用于低内存设备。3.3 模型量化在性能与精度间取得平衡量化是llama.cpp的灵魂。它通过降低权重的数值精度来换取更小的模型尺寸和更快的计算速度。常用的量化方法有q4_0,q4_1,q5_0,q5_1,q8_0等。数字代表比特数如q4是4比特后缀_0和_1代表不同的量化算法通常_1精度稍高速度稍慢。对于7B参数模型FP16: ~14 GBQ8_0: ~7 GB精度损失极小推荐如果内存足够。Q4_K_M: ~4 GB在Q4量化中精度和速度平衡较好最常用。Q4_0: ~3.5 GB速度最快但精度损失相对明显。使用编译好的quantize工具进行量化./build/bin/quantize ./qwen2.5-7b-instruct.f16.gguf \ ./qwen2.5-7b-instruct.q4_k_m.gguf q4_k_m这条命令将FP16的GGUF文件量化为q4_k_m格式。现在你得到了一个只有约4GB的模型文件可以在16GB内存的电脑上轻松运行。3.4 运行你的第一个本地Qwen对话使用main可执行文件进行交互式对话./build/bin/main -m ./qwen2.5-7b-instruct.q4_k_m.gguf \ -p 请用中文介绍一下你自己。 \ -n 256 # 生成256个token参数解释-m: 指定模型文件路径。-p: 系统提示词或初始对话。-n: 控制生成的最大token数量。-t: 指定使用的线程数通常设置为物理核心数。-c: 上下文长度对于长文本对话需要设置Qwen2.5-7B通常支持32768。你将会看到模型开始生成文本第一次运行会稍慢因为需要将模型权重加载到内存中。更交互式的方式使用-i参数进入交互模式。./build/bin/main -m ./qwen2.5-7b-instruct.q4_k_m.gguf -i -t 8进入后你可以直接输入问题模型会逐一回答。输入/bye退出。4. 高级配置与性能调优实战4.1 关键运行参数详解要让llama.cpp跑得又快又好必须理解几个核心参数线程数 (-t)这是最重要的性能参数。设置为你的物理核心数nproc命令查看。对于计算密集型任务超线程逻辑核心带来的收益有限甚至可能因为缓存争用而变慢。建议从物理核心数开始尝试。例如8核CPU就设-t 8。批处理大小 (-b,--batch-size)在处理提示Prompt时一次处理的Token数量。增大此值可以更有效地利用CPU的SIMD指令提高提示处理速度但会增加内存开销。对于交互式对话默认值512通常足够。如果你需要处理很长的文档可以适当增加如2048。上下文长度 (-c,--ctx-size)必须设置为小于等于模型训练时的最大上下文长度。Qwen2.5-7B支持32K。注意增加上下文长度会平方级地增加注意力层的内存和计算开销。除非必要不要设置为最大值。反向提示词 (-rp,--reverse-prompt)一个非常实用的功能。当生成内容包含特定字符串时停止生成。例如你在模拟一个多轮对话的AI助手可以设置-rp “用户”这样当模型生成到“用户”时就会停止等待你的下一次输入非常适合构建简单的对话循环脚本。一个优化后的运行示例./build/bin/main -m ./qwen2.5-7b-instruct.q4_k_m.gguf \ -t 8 \ # 使用8线程 -c 4096 \ # 设置4K上下文 -b 1024 \ # 批处理大小1024 -ngl 0 \ # 0表示纯CPU运行。如果有GPU且编译了CUDA支持可以设置层数到GPU --color \ # 彩色输出 -i # 交互模式4.2 使用server构建API服务llama.cpp自带的server工具可以启动一个HTTP服务提供OpenAI兼容的API接口这极大地方便了集成。启动服务器./build/bin/server -m ./qwen2.5-7b-instruct.q4_k_m.gguf -c 4096 -t 8 --host 0.0.0.0 --port 8080默认API地址是http://localhost:8080。它支持/v1/completions和/v1/chat/completions等端点。你可以使用curl进行测试curl http://localhost:8080/v1/chat/completions \ -H Content-Type: application/json \ -d { model: qwen2.5, messages: [{role: user, content: 你好请写一首关于春天的诗。}], max_tokens: 200, temperature: 0.7 }这样任何能调用HTTP API的编程语言Python, JavaScript, Go等都可以轻松集成你的本地Qwen模型了。4.3 内存与性能监控在运行模型时使用系统工具监控资源使用情况至关重要。内存使用htop或free -h命令。运行一个7B的Q4模型大概需要4-5GB的模型权重内存加上上下文缓存总内存占用可能在6-8GB左右。如果开启更大的上下文占用会更多。CPU利用率使用htop观察。在生成Token时所有指定的线程-t应该接近100%利用率。如果利用率很低可能是I/O等待如从慢速硬盘加载模型或参数设置不当。Token生成速度llama.cpp在运行时会输出eval time和tokens per second。这是最直观的性能指标。Q4量化的7B模型在主流CPU上每秒生成10-30个Token是比较常见的范围。5. 常见问题、排查技巧与进阶指南5.1 编译与运行中的典型问题问题1编译时出错提示找不到atomic库。原因与解决这通常发生在一些较老的系统或特定环境下。编译器需要链接libatomic库来处理原子操作。在CMake命令中显式链接即可。cmake .. -DLLAMA_AVX2ON -DCMAKE_EXE_LINKER_FLAGS-latomic问题2运行main或server时提示 “非法指令 (Illegal instruction)”。原因这几乎可以确定是因为你的编译环境或下载的预编译二进制使用了比你当前CPU更高级的指令集如AVX-512而你的CPU不支持。解决自行编译在CMake配置时只启用你的CPU支持的指令集。最保险的是全部禁用cmake .. -DLLAMA_AVXOFF -DLLAMA_AVX2OFF -DLLAMA_AVX512OFF。这会编译一个通用版本兼容所有x86_64 CPU但性能最差。下载正确版本如果使用预编译包请确认下载的是通用版本或与你自己CPU架构匹配的版本。问题3加载模型时崩溃报错 “failed to alloc xxx MB”。原因系统内存RAM或交换空间Swap不足。解决检查模型大小和可用内存。量化模型如Q4能极大缓解此问题。增加系统的交换文件大小。减少运行参数如上下文大小 (-c)。如果有多用户确保没有其他进程占用大量内存。问题4Token生成速度极慢如 1 token/s。排查步骤检查线程数确认-t参数是否设置正确是否接近你的物理核心数。使用htop查看CPU利用率。检查量化等级使用q4_0或q4_k_m会比q8_0和f16快很多。检查电源模式在笔记本电脑上确保电源模式设置为“高性能”否则CPU可能会降频运行。检查内存带宽如果是多通道内存确保插槽正确。llama.cpp的性能严重依赖内存带宽。5.2 模型转换与量化的陷阱问题转换后的模型输出乱码或逻辑错误。原因这通常是因为转换脚本与模型架构不匹配或者原始模型下载不完整/有损坏。解决确保使用最新的llama.cpp代码和转换脚本。对Qwen2.5的支持是逐步完善的。确认下载的原始模型文件完整。可以尝试重新下载或使用huggingface-cli的--resume-download选项。查看llama.cpp项目的GitHub Issue搜索你的模型名称看是否有已知问题或特定的转换参数。关于量化策略的选择心得 经过大量实测对于7B-13B参数范围的模型q4_k_m通常是精度和速度的最佳平衡点几乎感知不到与更高精度版本的输出质量差异。对于更小的模型如3B以下q8_0甚至f16可能更合适因为本身体积小对精度保留要求高。对于70B等超大模型为了能跑起来可能不得不选择q4_0或q3_k_m等更低精度的量化。一个黄金法则是在你能接受的内存占用范围内选择数值更大的量化类型如q8 q5 q4。5.3 集成与生产化考量当你需要将llama.cpp集成到自己的C项目中时最佳实践是将其作为静态库链接。编译为静态库cd build cmake .. -DLLAMA_AVX2ON -DBUILD_SHARED_LIBSOFF cmake --build . --config Release -j $(nproc)编译后在build目录下会生成libllama.a静态库和必要的头文件主要是llama.h。在你的项目中集成将llama.h头文件和libllama.a库文件拷贝到你的项目。在编译时链接该库和必要的数学库-lm和线程库-lpthread。你需要参考main.cpp或examples目录下的代码来学习如何调用llama的API主要包括初始化后端、加载模型、创建上下文、进行Token化和推理采样。多线程安全llama.cpp的上下文 (llama_context) 不是线程安全的。如果需要在多线程环境中服务多个请求常见的模式是每个线程持有自己独立的上下文或者使用一个请求队列加工作线程池的模式避免并发访问同一个上下文。最后一点个人体会llama.cpp的魅力在于它的“简单粗暴有效”。它把LLM推理从云端的黑盒变成了一个可以在你指尖编译、剖析和优化的透明过程。调试模型响应慢你可以直接perf分析热点函数。觉得内存占用高你可以调整量化比特数。这种极致的可控性是其他大型框架难以提供的。当然这也意味着你需要承担更多系统层面的责任比如内存管理、线程调度。但对于追求性能、可控性和部署简洁性的场景来说这些付出是完全值得的。从第一次成功在本地跑通Qwen对话时的那种“一切尽在掌握”的感觉是使用云API永远无法替代的。

相关新闻

PHP学习全指南【小白入,超详细】

PHP学习全指南【小白入,超详细】

2.3php学习 https://www.runoob.com/php/php-variables.html 2.3.1. php语法 2.3.1.1. 基础语法 PHP 脚本以 <?php 开始&#xff0c;以 ?> 结束 <?php?> PHP 文件的默认文件扩展名是 .phpPHP 文件通常包含 HTML 标签和一些 PHP 脚本代码每条语句末尾要加…

2026/10/18 12:21:33 阅读更多 →
Dify实战指南:从零构建企业级AI应用与工作流设计

Dify实战指南:从零构建企业级AI应用与工作流设计

1. 先搞清楚 Dify 到底能帮你做什么&#xff0c;以及它和传统开发的区别 如果你正在找一种能快速把 AI 大模型&#xff08;比如 GPT、Claude、文心一言、通义千问&#xff09;变成实际应用的方法&#xff0c;Dify 是目前最值得投入时间学习的平台之一。它不是一个简单的 API 调…

2026/10/19 9:39:18 阅读更多 →
嵌入式调试核心技术:从符号表、扩展寻址到软件断点实战解析

嵌入式调试核心技术:从符号表、扩展寻址到软件断点实战解析

1. 项目概述&#xff1a;嵌入式调试的“手术刀”与“导航仪”在嵌入式开发的战场上&#xff0c;调试器就是我们的“手术刀”和“导航仪”。它不像桌面开发那样有直观的图形界面和丰富的日志输出&#xff0c;很多时候&#xff0c;我们面对的是一个“黑盒”系统&#xff1a;代码在…

2026/10/18 12:22:04 阅读更多 →

最新新闻

两参数威布尔分布风速建模:MATLAB参数估计与拟合优度检验实战

两参数威布尔分布风速建模:MATLAB参数估计与拟合优度检验实战

简介&#xff1a;这份MATLAB小程序面向风能行业工程师、风电项目研究者及学习风速统计建模的学生&#xff0c;用于对风电场实测风速数据进行两参数威布尔分布拟合与参数估计。压缩包内共1个文件&#xff0c;为weibull1.m脚本&#xff0c;体积约436B&#xff0c;属于轻量级可直接…

2026/10/19 13:14:38 阅读更多 →
遥感影像与矢量点配准后像素坐标提取:从GeoTransform到GDAL实战

遥感影像与矢量点配准后像素坐标提取:从GeoTransform到GDAL实战

做遥感的人应该都遇到过这种事&#xff1a;手里有一幅影像&#xff0c;上面还有一批矢量点&#xff0c;可能是外业踏勘的采样点、精度验证用的检查点、或者深度学习样本里要用的目标中心点。现在要把这些点对应的像素行列号提出来&#xff0c;也就是“像素坐标”。很多人第一反…

2026/10/19 13:14:38 阅读更多 →
open-code-review:可审计、可编程的LLM代码审查CLI工具

open-code-review:可审计、可编程的LLM代码审查CLI工具

1. 这不是又一个“AI写代码”工具&#xff1a;open-code-review 的真实定位与设计哲学你搜“open-code-review”&#xff0c;大概率会撞上一堆带“CLI”“LLM”“Git”标签的零散讨论&#xff0c;甚至夹杂着“Codex CLI”“ZCode CLI”“Trae CLI”这类名字相似但目标迥异的项目…

2026/10/19 13:14:38 阅读更多 →
Java加密与SSL/TLS快速参考:核心原理与HTTPS实战指南

Java加密与SSL/TLS快速参考:核心原理与HTTPS实战指南

1. 内容整体设计与思路拆解 1.1 为什么需要一份“快速参考指南” 先聊点实际的。搞Java开发这几年&#xff0c;我见过太多同事在加密和SSL这块踩坑了——不是不会写代码&#xff0c;而是每次都要现查文档、翻博客、试半天才能凑出一段能跑的代码。尤其是碰到对接第三方系统、上…

2026/10/19 13:14:38 阅读更多 →
基于LLM的智能客服系统架构设计与排障实践

基于LLM的智能客服系统架构设计与排障实践

去年我主导了一个智能客服平台从零到一的设计与落地&#xff0c;整套系统基于LLM&#xff08;大语言模型&#xff09;搭建&#xff0c;上线后稳定运行了三个多月&#xff0c;扛住了一年中最大的活动流量&#xff0c;也把各种诡异问题从日志里一个个捞出来解决掉。这篇文章不是泛…

2026/10/19 13:14:38 阅读更多 →
开源SECS/GEM协议栈实战:从HSMS状态机到S6F11事件上报

开源SECS/GEM协议栈实战:从HSMS状态机到S6F11事件上报

简介&#xff1a;SECS&#xff08;半导体设备通信标准&#xff09;开源实现库&#xff0c;面向半导体设备自动化领域的开发者与研究人员&#xff0c;用于简化设备控制器与生产线工具之间的数据交换与通信开发。资源包共11个文件&#xff0c;约39KB&#xff0c;以test测试脚本、…

2026/10/19 13:13:37 阅读更多 →

日新闻

频率跟踪型PWM电源设计:臭氧发生器谐振点漂移与软开关实现

频率跟踪型PWM电源设计:臭氧发生器谐振点漂移与软开关实现

简介&#xff1a;本资源为电源技术方向的学术研究文档&#xff0c;聚焦介质阻挡放电型臭氧发生器电源的频率跟踪型PWM控制策略&#xff0c;面向电力电子、高压电源及臭氧应用领域的科研人员与工程技术人员。针对负载呈容性、等效电容随外加电压升高而增大、谐振频率随之漂移的难…

2026/10/19 0:00:47 阅读更多 →
Vibe Coding 遇上 TaoToken:把开发者思维圣殿的灵感流接入统一 Key 通道

Vibe Coding 遇上 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 0:00:47 阅读更多 →
HundredCV-Chat话题建模实战教程:利用4,871个内置话题标签构建主题分析系统

HundredCV-Chat话题建模实战教程:利用4,871个内置话题标签构建主题分析系统

【免费下载链接】HundredCV-Chat 项目地址&#xff1a; https://ai.gitcode.com/hf_mirrors/Jax-dan/HundredCV-Chat 点击查看 免费下载 HundredCV-Chat 是一个由 100 位青年简历数据开发而来的中文多轮对话数据集&#xff0c;共包含 24,750 组日常闲聊对话和 4,871 个话题标签…

2026/10/19 0:00:47 阅读更多 →

周新闻

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

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

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

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

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

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

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

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

如果你的信息流最近也天天刷到“机器人大脑”这个词&#xff0c;你会发现一个很有意思的现象&#xff1a;每个人说的“大脑”根本不是同一个东西。有人指的是大语言模型&#xff0c;有人指的是运动控制系统&#xff0c;还有人指的是能理解物理世界的端到端模型。在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 阅读更多 →