news 2026/9/18 3:40:56

oh-my-hermes实战:AI智能体部署与DeepSeek接入全指南

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
oh-my-hermes实战:AI智能体部署与DeepSeek接入全指南

搞AI智能体一年多,我越来越发现一件事:真正难的从来不是模型本身,而是怎么把一个模型变成能稳定干活的东西。最近社区里冒出一个叫oh-my-hermes的项目,风格致敬了那个让无数人入坑的 oh-my-zsh,但它管的不是终端配置,而是 hermes 智能体的整套落地流程。这名字一出来我就知道,背后一定有人把部署 hermes agent、对接 DeepSeek、配 API Key、接扩展工具这些破事全踩了一遍,然后打包成了方案。今天这篇就把我折腾这套东西的全部过程、踩过的坑、以及最终跑通的配置原原本本写出来,给正在研究 hermes 怎么装、怎么用、怎么接 DeepSeek 的朋友一条能直接照抄的路。

hermes 这个智能体框架,本质上是把大模型从“聊天窗口”里捞出来,变成能自主拆解任务、调用工具、执行流程的自动化引擎。它和单纯接一个 DeepSeek API 聊天完全不同——后者只会“说”,前者会“做”。oh-my-hermes 这个项目做的,就是把你从零开始装环境、写配置、调参数、试错排错这一整套流程全部接管,让一个没有接触过 hermes 的新手,也能在十几分钟内跑起来一个能用的智能体。

作为已经在这条路上摸爬滚打很久的人,我得说,这类项目的价值不在于代码量有多高深,而在于它帮你把“未知的未知”变成“已知的已知”。接下来我会从整体设计思路、环境准备、Docker 部署、手动安装、API Key 配置、核心玩法、扩展集成、问题排查这几个维度彻底拆开讲,全程都是可复现的实操记录。

1. 项目核心认知:oh-my-hermes 到底在帮你解决什么问题

1.1 hermes 智能体的角色定位

先纠正一个常见的误解:hermes 不是一个普通的聊天机器人前端,而是一个 Agent 运行时框架。你可以把它理解成一位“数字员工管培生”——它有一个聪明的脑子(通过 API 接入 DeepSeek 这类大模型),有一双手(通过工具调用接口操作文件、执行命令、访问网络),还有一套工作流程(把大任务拆解成小步骤逐一完成)。

我之前用过不少智能体框架,大部分的问题是“上手门槛全在工程化上”。你要自己搞定环境变量、选中模型、写 tool calling 的 schema、处理上下文窗口……很多时候还没跑到真正让 AI 干活的那一步,人已经被配置折磨跑了。hermes 的出现,相当于把这些底层逻辑都封装好了,你只需要关注“让 AI 做什么”,而不是“怎么让 AI 跑起来”。

而 oh-my-hermes 在此基础上又做了一层封装,把 hermes 本身安装部署中最容易出错的部分(版本兼容、Docker 参数、API 接入格式、扩展工具链)整理成了套餐式的方案。这种思路和 oh-my-zsh 完全一致:软件本身是好的,但默认配置对新手不友好,于是社区出了一个“开箱即用”的配置集。

1.2 为什么选择 DeepSeek 作为底座模型

从热词趋势看,DeepSeek hermes 的组合是目前社区里讨论度最高的搭配,这背后有实实在在的理由。首先是兼容性:hermes 的模型接入层做了标准化,而 DeepSeek 的 API 接口格式对开发者极其友好,配置起来几乎无痛。其次是性价比:DeepSeek 的调用成本相比国外同类模型有明显优势,尤其是深度推理模型在处理复杂任务时,Token 消耗量很大,成本优势会被进一步放大。

第三点是国内访问的稳定性。智能体不同于普通聊天,它要做多轮工具调用,每次调用都是一次完整的 API 请求,这就对连接的稳定性提出了很高要求。DeepSeek 在国内的访问延迟和稳定性表现都相当不错,这对于需要长时间运行自动化任务的场景非常关键。

1.3 这个项目适合谁

如果你是下面这几类人,oh-my-hermes 这套方案会很值得研究:

  • 自动化爱好者:希望用 AI 智能体替代重复性工作,但不熟悉工程化部署
  • 开发者:想快速在自己的项目中集成 Agent 能力,不想从轮子造起
  • 内容创作者:需要批量处理信息、做资料整理、自动生成文案等工作
  • 技术团队负责人:正在做技术选型,想低成本验证智能体在实际业务场景的效果

2. 部署前必须搞明白的设计思路

2.1 为什么项目要采用“配置即代码”的思路

oh-my-hermes 的核心设计理念是:所有部署和配置过程都应该被脚本化、模板化,而不是靠人肉记忆。我见过太多人部署 AI 项目失败,原因几乎都是“少了一句 export”“漏了一个参数”“写错了配置文件里的冒号”。这种低级错误本不该浪费任何人的时间。

项目采用模板化的方式把所有配置项统一管理,包括模型接入参数、服务端口、数据持久化路径、扩展工具开关等。这样做的好处是显而易见的:一方面你可以通过 diff 来追踪配置的变更历史;另一方面,当需要在新机器上重新部署时,只需要复制配置文件再改几个关键参数即可,不需要重新摸索。

2.2 两种部署路径的取舍

oh-my-hermes 同时支持 Docker 容器部署和手动源码部署,两条路径有着完全不同的适用场景:

Docker 部署是推荐给绝大多数用户的方式。它最大的优势在于环境隔离。hermes 依赖的 Python 库版本、系统库、运行时环境已经被镜像制作方全部处理妥当,你不需要担心本机的 Python 版本冲突、缺了某个系统依赖这类问题。用 Docker 跑 hermes,就像用手机装 App 一样简单。

手动源码部署更适合开发者。如果你有二次开发的需求,比如修改 hermes 源码、调试工具调用逻辑、给项目贡献代码,那必须使用源码方式。手动部署能让你看到每一个文件、每一行配置,理解和掌控度完全不同。

从我个人的实践来看,最好的策略是:先用 Docker 把整套流程跑通,验证 hermes 的确能满足你的需求;然后再决定要不要深入到源码层面去做定制化。

3. 环境准备与资源规划

3.1 硬件与环境要求清单

在正式动手之前,先看看你的机器是否符合要求。虽然 hermes 本身是很轻量的应用,但因为它承载的是智能体任务,对 CPU、内存和网络都有一定要求。我把基本需求和推荐配置整理成了表格:

项目最低要求推荐配置
操作系统Linux 内核 3.10+ / macOS 12+ / Windows 10+ (WSL2)Ubuntu 22.04 LTS
Docker20.10+24.0+
CPU1 核2 核及以上
内存2 GB4 GB 及以上
磁盘空间10 GB 可用20 GB SSD
Python(源码部署)3.9+3.11+
网络可正常访问 API 服务低延迟、稳定连接

需要特别提醒的是内存。如果本机资源紧张(比如只有 2GB 内存),建议优先用 Docker 方式部署,因为镜像内部已经做了一定程度的资源优化。同时,如果你打算让 hermes 处理长文本、大文档,内存需求还会进一步上升。

3.2 准备 DeepSeek API Key

这是整个部署过程中唯一需要你“花钱”的环节,但也花不了多少。去 DeepSeek 开放平台注册账号,完成实名认证,然后创建一个 API Key。

创建 API Key 时有几个实操要点:

  • API Key 创建后只会完整显示一次,务必立刻复制保存到安全的地方
  • 建议把 Key 的作用域和权限控制在最小范围,避免泄露后造成大额损失
  • 新账号通常会赠送一定额度的免费体验金,足够你把整套流程跑通

API Key 本质上是你调用模型的凭证,hermes 所有与模型相关的操作都会用到它。所以在后续所有配置文件里,它都是最核心的字段。

3.3 配置网络与安全注意事项

这一块容易被忽视,但直接影响使用体验。首先要确保你的服务器能稳定访问 DeepSeek 的 API 域名,如果有防火墙,需提前放行相关的出方向端口(一般是 443)。其次,API Key 相当于你的资金凭证,不要把 Key 硬编码在 Docker 命令行的明文参数里(至少在共享环境下不要这么干),更不要把配置 Key 的文件提交到公开的 Git 仓库。

在实际项目里,我通常会用环境变量文件(.env)来统一管理敏感信息,并设置 .gitignore 把 .env 文件排除在版本控制之外,这是长期维护的安全底线。

4. Docker 一键部署:五分钟让 hermes 跑起来

4.1 镜像拉取与容器启动命令详解

Docker 部署是整个 oh-my-hermes 方案中最有吸引力的部分。镜像构建好之后,你只需要一条 docker run 命令就能启动完整的 hermes 服务。下面是我实际使用的启动命令:

docker run -d --name hermes \ -p 8080:8080 \ -e DEEPSEEK_API_KEY=sk-xxxxxxxxxxxxxx \ -e MODEL_NAME=deepseek-chat \ -v hermes_data:/app/data \ --restart unless-stopped \ ohmyhermes/hermes-agent:latest

逐条解释一下每个参数的作用,让你清楚知道自己到底在做什么:

  • -d:后台运行容器,终端不会被日志刷屏
  • --name hermes:给容器起个固定名字,后面管理容器时不用记 ID
  • -p 8080:8080:把容器内的 8080 端口映射到宿主机 8080 端口,这是 hermes 默认的服务端口
  • -e DEEPSEEK_API_KEY=...:直接通过环境变量传入 API Key,容器启动时自动读取
  • -e MODEL_NAME=deepseek-chat:指定使用的模型,deepseek-chat 是通用对话模型,如果想要更强的推理能力可以换成 deepseek-reasoner
  • -v hermes_data:/app/data:数据卷挂载,把容器内的数据目录映射到宿主机,保证容器删除后数据不丢失
  • --restart unless-stopped:容器意外退出时自动重启,保证服务稳定性

注意:如果你不习惯把 API Key 直接写进命令行,也可以用 Docker 的--env-file参数从文件读取。这样既安全又整洁。

4.2 启动后的第一次体检

容器启动之后,不要急着开用,先做两个快速验证。

第一,确认容器状态:

docker ps | grep hermes

如果状态显示Up,说明容器已经正常启动。如果显示RestartingExited,大概率是环境变量或 API 配置出了问题,后面章节我会专门讲排查方法。

第二,检查服务接口是否响应:

curl http://localhost:8080/health

正常情况下会返回一个 JSON 格式的状态信息,其中status字段通常是ok。这一步能确认服务进程真的在正常工作,而不仅仅是容器活着。

4.3 Docker Compose 管理方式进阶

如果你打算把 hermes 作为长期服务来跑,我推荐改用 Docker Compose。写一个 docker-compose.yml 文件来管理,比一长串docker run参数清晰得多,也方便多人协作维护。

version: '3.8' services: hermes: image: ohmyhermes/hermes-agent:latest container_name: hermes ports: - "8080:8080" environment: - DEEPSEEK_API_KEY=${DEEPSEEK_API_KEY} - MODEL_NAME=${MODEL_NAME:-deepseek-chat} - TEMPERATURE=0.7 - MAX_TOKENS=4096 volumes: - hermes_data:/app/data restart: unless-stopped volumes: hermes_data:

然后准备一个.env文件与 docker-compose.yml 同目录存放:

DEEPSEEK_API_KEY=sk-xxxxxxxxxxxxxx MODEL_NAME=deepseek-chat

最终只需要一条docker-compose up -d就能完成启动。这种方式在维护和配置变更时优势非常明显,改完参数只需要 restart 一次即可。

5. Linux 手动部署:把每一行配置都握在自己手里

5.1 准备工作与依赖安装

如果你需要改源码、调试内部逻辑或追求最佳性能,手动部署是你的选择。我在 Ubuntu 22.04 环境下完整跑通过一次,过程如下。

首先更新系统包并安装基础依赖:

apt update && apt upgrade -y apt install -y git python3 python3-venv python3-pip

然后克隆项目仓库并进入目录:

git clone https://github.com/ohmyhermes/hermes-agent.git cd hermes-agent

5.2 Python 虚拟环境与依赖安装

这里我强烈建议使用 Python 虚拟环境。hermes 依赖的包版本和系统其它 Python 项目可能冲突,直接全局安装很容易引发“装一个坏一个”的问题。

python3 -m venv venv source venv/bin/activate pip install --upgrade pip pip install -r requirements.txt

依赖安装过程如果是在国内网络环境下,建议添加国内 PyPI 镜像加速,否则几个大包可能会等得让人崩溃:

pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple

5.3 环境变量配置文件

安装完依赖后,项目目录下应该有一个.env.example文件,这是官方给你的配置模板。把它复制成.env并编辑:

cp .env.example .env vim .env

编辑时重点确认这几个字段:

DEEPSEEK_API_KEY=sk-xxxxxxxxxxxxxx DEEPSEEK_BASE_URL=https://api.deepseek.com/v1 MODEL_NAME=deepseek-chat TEMPERATURE=0.7 MAX_TOKENS=4096

这里解释一下几个关键参数的选取逻辑:

  • DEEPSEEK_BASE_URL是 API 的基础地址,新接入时最容易在结尾斜杠和 /v1 路径上出问题,官方推荐地址是https://api.deepseek.com/v1,加不加最后的斜杠都可能影响请求拼接,这个必须照抄
  • TEMPERATURE控制回答的随机性,值越高回答越发散,自动化任务建议 0.3~0.7,创意写作可以调高到 0.9 以上
  • MAX_TOKENS是单次回答的最大 Token 数,数值越大能处理的内容越多,但也会带来更高的成本和更长的等待时间

改完保存后,启动服务:

python main.py

看到类似Hermes agent started on port 8080的日志输出,就说明服务已经成功跑起来了。

5.4 启动脚本与进程守护

手动部署的服务默认是前台运行的,SSH 断开连接服务就停了。想让它在后台稳定运行,我建议用 systemd 来守护。

/etc/systemd/system/hermes.service创建服务文件:

[Unit] Description=Hermes Agent Service After=network.target [Service] WorkingDirectory=/opt/hermes-agent ExecStart=/opt/hermes-agent/venv/bin/python main.py Restart=always RestartSec=5 EnvironmentFile=/opt/hermes-agent/.env [Install] WantedBy=multi-user.target

然后执行:

systemctl daemon-reload systemctl enable hermes systemctl start hermes

这一步做完,hermes 就成了一个标准的系统服务,开机自启、异常自动重启。

6. API Key 设置与模型接入

6.1 配置前的关键认知

API Key 配置是整个部署过程中最不起眼但最容易出问题的环节。很多人以为“填进去就完事了”,实际上,API Key 与模型的匹配关系、请求地址的拼接方式、多模型之间的切换策略,都会直接影响后续使用体验。

hermes 的设计中,API Key、模型名称、请求地址这三者是一个强关联的三角组合。Key 是从 DeepSeek 开放平台申请来的,模型名称必须是该平台真实存在的模型标识,请求地址必须与 Key 配套。任何一个元素不匹配,都会导致请求失败。

6.2 多模型切换配置实操

oh-my-hermes 的配置模板还支持配置多个模型以应对不同任务类型。对于一个智能体而言,复杂推理任务和日常对话任务在模型选择上应该有区分。

配置方式是在.env或 Docker 环境变量中增加一组备用模型参数,然后在 hermes 的交互中通过指令切换。我自己在用的配置是这样的:

DEEPSEEK_API_KEY=sk-xxxxxxxxxxxxxx MODEL_NAME=deepseek-chat MODEL_REASONER=deepseek-reasoner TEMPERATURE=0.7 REASONER_TEMPERATURE=0.3

这样做的意义在于:日常信息处理、文案生成用 deepseek-chat,成本低、响应快;遇到代码调试、逻辑推理这种复杂任务,就切换到 deepseek-reasoner,用更强的推理能力来突破瓶颈。

6.3 快速验证 API 连通性

配置完成后,别急着进入复杂功能验证。先用一条简单的对话测试 API 连通性。

curl https://api.deepseek.com/v1/chat/completions \ -H "Content-Type: application/json" \ -H "Authorization: Bearer sk-xxxxxxxxxxxxxx" \ -d '{ "model": "deepseek-chat", "messages": [{"role": "user", "content": "你好,请回复OK"}] }'

如果返回的 JSON 中包含choices字段,说明 Key 有效、接口可达。如果返回 401,检查你的 Key 是否复制完整(常见问题是我遇到过复制时漏掉末尾字符导致认证失败);如果返回 404,检查 base_url 是否拼接正确;如果长时间没有响应,检查网络策略。

这一步测试非常重要,因为它把问题范围缩小到了“API 链路”这一个层面,后续即便 hermes 出问题,也至少能排除 API 本身的因素。

7. 智能体核心玩法与扩展集成

7.1 让 hermes 真正开始“干活”

配置全部就绪后,你已经拥有了一个可以自主执行任务的智能体。但这只是开始,真正有价值的是如何用好它。

hermes 的使用模式和 ChatGPT 这类聊天工具有本质区别。它会主动拆解任务、分步骤执行。比如你给它下达这样一个任务:“帮我整理这份项目周报,提取关键进展和风险点,然后输出为 Markdown 格式。”

hermes 会这样工作:

  1. 读取你指定路径下的源文件
  2. 分析文本内容,识别关键信息
  3. 按照周报结构重组内容
  4. 生成 Markdown 格式的最终文件并保存

这个过程就不只是“聊天”,而是真正在执行一个工作流。我在实际使用中,最常用她来处理资料整理、代码片段生成、批量文本处理这类重复性较高的任务。

7.2 扩展工具接入:agentflow 与 anysearch

hermes 的真正威力在于它的扩展生态。社区里热度很高的 agentflow 和 anysearch 都能与之集成,分别解决流程编排和联网搜索问题。

agentflow 集成能让你把 hermes 接入到更复杂的自动化流程中,比如数据定时采集、内容自动发布、监控告警处理等。通过 agentflow,你可以把“hermes 生成内容”和“自动化发布到目标平台”串成一个完整流水线,一劳永逸。

anysearch 集成则是给 hermes 加上联网搜索能力。大模型的知识是被训练数据“锁死”的,但搜过引擎后,hermes 就能实时获取最新信息,这在处理资讯类、资料类任务时价值巨大。

集成方式都是通过修改配置文件、开启对应插件来实现。具体操作因插件而异,但核心逻辑一致:下载扩展包,在配置文件中声明启用,重启服务。

7.3 桌面版的使用体验

如果你不想折腾命令行,hermes 也有桌面版可用。桌面版把 API Key 设置、模型切换、任务下发这些操作全部图形化,门槛进一步降低。

在桌面版首次启动时,它会引导你完成与命令行部署完全相同的配置流程:输入 API Key、选择模型、测试连接。配置完成后,你会获得一个图形界面的智能体控制台,所有交互都在窗口内完成。

不过从我的实际体验来看,桌面版适合轻量使用和快速体验。一旦你上手了,开始追求更复杂的自动化流程、批量任务处理,命令行方式和 API 方式才是更高效的选择。

8. 常见问题与排查技巧实录

8.1 容器反复重启

这是我被问得最多的问题。症状很明显:docker ps看到容器状态一直是Restarting

首先查看容器日志:

docker logs hermes

最常见的原因是环境变量配置错误。比如DEEPSEEK_API_KEY字段名写错、值为空、或者模型名称不存在。日志里通常会有明确的报错信息,比如Authentication failedModel not found

还有一种情况是端口被占用。如果你本机已经有一个服务占用了 8080 端口,hermes 容器会启动失败。这时要么换宿主机的映射端口,比如-p 8081:8080,要么先把占用端口的服务停掉。

8.2 API 请求超时

请求超时是另一个高频问题。我遇到过三种典型情况:

  • 网络代理冲突:hermes 运行环境中设置了代理,但代理本身不稳定或不通,导致 API 请求全部超时。解决方法是检查环境变量里的HTTP_PROXYHTTPS_PROXY设置
  • 并发请求过多:如果你通过脚本一次给 hermes 下发大量任务,API 可能会有速率限制。解决方法是控制并发数,或者增加请求间隔
  • 模型推理时间过长:使用 deepseek-reasoner 处理特别复杂的问题时,推理时间可能超过客户端的等待阈值。解决方法是调高客户端超时时间配置,从默认的 30 秒提升到 120 秒以上

8.3 回答质量不符合预期

如果你发现 hermes 的回答总是不靠谱,先不要怪模型,多半是参数配置出了问题。TEMPERATURE设得太高会导致回答发散,设得太低会导致回答机械;上下文管理不当会让模型“忘了”前面的任务要求;系统提示词写得模糊会让模型不知所措。

经验法则:自动化任务把TEMPERATURE设在 0.3 以下,创意任务可以 0.8 到 1.0 之间;系统提示词要明确角色、任务、输出格式,最好给出一个样例作为格式参考。

8.4 排查思路速查表

症状优先排查项常见根因
容器频繁重启docker logs hermes环境变量错误、端口冲突
HTTP 401API Key 内容Key 复制不完整、已过期
HTTP 404接口地址base_url 路径拼接错误
请求超时网络策略代理异常、API 限流
回答质量差TEMPERATURE、上下文参数不合理、提示词不清晰
工具调用失败扩展插件配置插件未启用、依赖缺失

9. 实际操作中的几点心得体会

这套 oh-my-hermes 方案我前前后后部署过不止五遍,在 Docker 和源码两个路径上都有过完整的实操记录。每次重装都在印证一个观点:这类智能体项目的成败,七成在配置,三成在模型。所谓“智能”,是建立在正确工程化基础之上的——API 链路不通、上下文策略混乱、工具调用失配,再聪明的模型也发挥不出来。

一些具体心得,按价值排序:

第一,永远先把 API 链路单独测通,再接入 hermes。直接用 curl 调一次 DeepSeek 接口,确认 Key 和网络没问题,再去做后面的事。这能省掉至少一半的排障时间。

第二,配置文件务必版本化。把.env模板、docker-compose.yml、systemd 服务文件全部纳入 Git 管理(注意 .env 里真实 Key 别提交),每次变更都留下记录。智能体配置这种东西,改着改着就忘了之前是怎么跑的,有历史记录才能回溯。

第三,从小任务开始验证。刚部署完成时,不要一上来就让 hermes 处理复杂任务,先跑通“总结一段文字”“生成一个列表”这类小需求,确认基础链路没问题,再逐步增加任务复杂度。

第四,善用日志。无论是 Docker 的docker logs hermes,还是源码部署的日志文件,它们都是你了解 hermes 内部发生了什么的最好窗口。看日志时重点看 request 和 response 的摘要,大部分问题都能从这里定位。

部署这样一个智能体,说实话没有太多高深的技术门槛,只要肯花点时间看日志、理解参数含义,就能把整个链路吃透。oh-my-hermes 的价值恰恰在于把那些最容易绊倒人的坑提前标注了出来,让后来者不必重复踩踏。

最后再分享一个小技巧:部署完成后,建议专门建一个“任务测试清单”,把你日常工作里最常做的 5 到 10 类任务写上去,逐一用 hermes 跑一遍,记录每类任务的完成质量和耗时。这不仅是在验证系统,更是在帮你找到智能体在个人工作流中的最佳落点。智能体的潜力非常大,但前提是它得先在你的机器上稳定跑起来——而你现在已经有了让它稳定跑完全程的全部手段。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/18 3:40:21

线程间通信详解:从资源竞争到消息队列的同步原语选型

1. 为什么线程间通信总是容易出问题并发编程有个很反直觉的地方:你明明只是想让几个线程各自干活,可一旦它们需要交换数据、协调节奏,问题就冒出来了。跑得好好的程序偶尔卡死,或者某个变量的值莫名其妙不对,debug 半天…

作者头像 李华
网站建设 2026/9/18 3:39:43

OA系统调研报告:从功能罗列到可执行落地的技术验证指南

简介:本资源是一份面向企业信息化建设人员、IT系统选型负责人及OA项目实施团队的技术调研报告,聚焦协同办公系统(OA)的厂商评估、落地现状与选型决策支持。报告系统梳理了国内三类主流OA厂商:高端综合品牌(…

作者头像 李华
网站建设 2026/9/18 3:39:39

切到 Open Claw 控制 Google Home,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/9/18 3:37:05

人形机器人硬件平台设计与控制系统联调实战解析

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

作者头像 李华
网站建设 2026/9/18 3:35:56

给 Rene 一个 TaoToken Key,让它从 41 份 newsletter 挑 3 篇论文

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

作者头像 李华