做过强化学习的人都知道一个痛苦的循环:奖励函数改了三天,loss 曲线看着不错,策略学到的行为却完全不是你想要的。问题往往不在奖励本身合不合理,而在于 RL 会精确优化你写的每一个字——包括你没想清楚的那些。Microduck 的 CLAUDE.md 里记录了十条奖励设计铁律,每一条都对应一次真实的 sim2real 失败。今天逐条拆开看。符号写反,策略就钻空子Microduck 的 mdp.py 里有两种惩罚函……继续阅读 » admin 5小时前 15浏览 0个赞
为什么AI应用需要不一样的监控思路传统Web应用的监控思路是盯着服务器CPU和响应时间。AI应用不一样,一个用户请求背后可能触发embedding查询、LLM调用、rerank排序三步,每一步都有可能出问题。你以为接口返回了200就没事了?LLM返回了一段空内容、向量检索召回了无关文档、rerank把最好的结果排到了第五位。这些问题传统监控根本发现不了。Chrome使用数据显示,用户90%的时间花在页面加载之后……继续阅读 » admin 6小时前 18浏览 0个赞
Mesh LLM 和 iroh 分布式推理火了。我把一台小主机和两台旧笔记本连起来实测,聊聊点对点组网、模型切分和真实延迟,踩坑全记录。……继续阅读 » admin 14小时前 20浏览 0个赞
Microduck 的齿隙仿真:±1° 齿轮间隙怎么建模才能不毁掉 sim2real做过谐波减速器的人都知道,齿轮间隙是零。但 Dynamixel XL330 不是谐波减速器——它是行星齿轮,有背隙。飞特同级别的舵机也一样。齿隙不大,大概 ±1°,也就是 2° 的死区。但如果你在仿真里忽略这 2°,策略学到的动作精度跟真机上的表现就会有系统性偏差。Microduck 的训练仓库里有一整套齿隙建模方案,不是简单加个噪……继续阅读 » admin 20小时前 23浏览 0个赞
Microduck 怎么知道自己在哪:没有 GPS 和激光雷达的小鸭子靠脚底定位做过移动机器人的人都知道,定位是最难的问题之一。室内不能用 GPS,激光雷达又贵又重,视觉 SLAM 对算力要求高。Microduck 是一个 25 厘米、800 克的小型双足机器人,RK3566 主控板上没有跑 SLAM 的余裕。它用的是一种古老但有效的方法:靠脚底接触点和 IMU 估算自己在世界里的位置。这个方案的核心思路其实不复……继续阅读 » admin 1天前 29浏览 0个赞
做过机器人踢球的人都知道,最难的不是踢得准,是踢得到。球在脚前 5 厘米还是 2 厘米,对真机来说差别巨大。但 Microduck 的 BallKick 任务偏偏选了一条反直觉的路:策略完全看不见球。不是忘了加感知,是故意不加。今天拆开看这个设计。球在哪:70 毫米 15 克,脚尖前 9 厘米BallKick 任务的物理设置很简单。一个 70 毫米直径、15 克重的球,放在踢球脚的正前方。以机器人 HOME 姿……继续阅读 » admin 3天前 44浏览 0个赞
函数调用解决了什么问题用LLM做个聊天机器人很简单,但你试试让它查个天气、算个账、查个库存,马上就露馅。模型会一本正经地编数据,或者干脆说”我无法访问外部数据”。Function Calling就是解决这个问题的。原理不复杂。你提前告诉模型有哪些工具可以用,模型收到用户问题后判断要不要调工具,如果要调就返回函数名和参数。你的代码执行这个函数,把结果喂回给模型,模型再组织成自然语言回答。整个……继续阅读 » admin 3天前 44浏览 0个赞
Microduck 仿真环境拆解:四套 MJCF 模型怎么对应四种运动行为做过 sim2real 的人都知道,仿真环境不是”建一个模型跑所有任务”。不同的运动行为对碰撞、接触、自由度的需求完全不一样。Microduck 的训练仓库里有四套 MJCF 模型,每套对应一类任务族。今天拆开看这四套模型的区别,以及为什么不能用一个模型搞定所有训练。四套模型各干什么Microduck 的 MJCF……继续阅读 » admin 4天前 55浏览 0个赞
很多人搭RAG系统,上来就写代码,接个向量数据库,完事。跑起来一看,检索召回率六成不到,用户问的问题答非所问。更扎心的是API账单比预期高了两三倍。问题不在代码写得差,在架构选错了。RAG不是一种架构,是三类架构。选错模式,要么效果差到没法用,要么成本高到扛不住。这篇文章把三种模式的原理、成本和适用场景讲清楚,帮你少踩坑。三种RAG架构,差别在哪Naive RAG:索引-检索-生成最基础的模式。文档切片、做……继续阅读 » admin 4天前 74浏览 0个赞
Microduck 的安全层拆解:一只 800g 鸭子摔倒前的那 10 毫秒做过双足机器人的人都知道,摔倒不是意外,是默认结局。重心偏一点、脚底打滑一下、舵机响应慢几毫秒——任何一个都能让一台机器人从站立变成趴下。Microduck 作为一个 25 厘米、800 克的小型双足机器人,没有传统大型仿人机器人的 ZMP 在线规划或倒立摆模型求解器。它的防摔靠的是一个嵌在 50Hz 控制循环里的安全层,用 Rust 的类……继续阅读 » admin 5天前 65浏览 0个赞
AI开发环境配置太麻烦?一个Docker Compose模板搞定每次开新AI项目,环境配置就要折腾半天。Python版本、Redis、向量数据库、API密钥管理,一个个装过来手都酸了。如果你也在重复做这件事,这个模板能帮你省掉大部分准备工作。本文给出一个可直接用的Docker Compose配置,把AI应用开发常用的几个服务打包好。复制粘贴改改参数就能跑,不用从头研究每个组件怎么配。模板包含什么这套配置包含四……继续阅读 » admin 5天前 60浏览 0个赞
Microduck 的 OTA 更新系统:一只鸭子怎么做到永远刷不砖搞过嵌入式设备的人都知道,OTA 更新是真正的生死线。你可以在实验室里跑通一切,但一旦推到用户手里——网络断断续续、电池随时没电、用户中途拔电源——任何一个环节出错,设备就变砖。Microduck 是一只 shipped 到非开发者手里的机器人鸭子,它的更新系统设计目标很明确:永远不能砖。为什么不用 A/B 分区先回答一个自然的问题:RK356……继续阅读 » admin 6天前 69浏览 0个赞
做AI产品的人最容易卡在哪一步不是技术,不是产品设计,是收钱。很多独立开发者产品做完了,卡在支付接入上拖了一两周。功能都ready了,用户也来了,结果付费流程没跑通,眼看着用户流失。这篇就来解决这件事,从零跑通Stripe订阅支付。为什么选Stripe市面上支付方案不少,Stripe在开发者体验上确实领先。API设计干净,文档清楚,测试环境完善。对于做海外市场的AI产品来说,Stripe几乎成了默认选择。据……继续阅读 » admin 6天前 84浏览 0个赞
Microduck 的 61 维观测契约:为什么换脑不需要重启搞过机器人控制的人都知道,切换行为模式是个麻烦事。传统做法是写一个状态机,walk 状态跑一套控制器,fall 状态跑另一套,切换时还得重新初始化观测缓冲区。Microduck 的做法不太一样:它把行走、起身、坐下、踢球、翻滚这些完全不同的行为,全部训成独立的 ONNX 策略,但共享同一个 61 维观测向量。运行时换策略不需要重启任何东西,新的 ONNX……继续阅读 » admin 1周前 (10-16) 75浏览 0个赞
Microduck 的舵机总线:16个设备一条 UART 怎么跑出 50Hz做过机器人的人都知道,总线是命脉。Microduck 的 RK3566 主控板上,15 个 XL330 舵机和一个 IMU 板共享一条 UART,跑在 1 Mbps 的 Dynamixel 协议 v2 上。50Hz 的控制循环意味着每 20ms 完成一次全量读写。今天拆开看这条总线是怎么做到不卡顿的。物理拓扑:一条线串 16 个设备Mi……继续阅读 » admin 1周前 (10-15) 138浏览 0个赞
AI应用流式响应实现:SSE + LLM打字机效果完整代码用AI API做产品的人迟早会遇到一个问题:模型生成一段长回答要好几秒,用户盯着空白屏幕等,体验很差。ChatGPT那种逐字输出的效果,技术上怎么实现?答案就是Server-Sent Events,简称SSE。这篇文章给出从前端到后端的完整实现代码。不是讲理论,是直接能跑的代码。拿来改改就能用进你的AI产品里。SSE比WebSocket更适合LLM流式输……继续阅读 » admin 1周前 (10-15) 88浏览 0个赞
做过强化学习训练的人大概率遇到过这个场景:训练跑了几千个迭代,loss 曲线看着正常,突然某个 step 之后 wandb 上的所有指标变成 NaN,策略彻底废了。更恶心的是重跑同样的配置不一定复现——因为 NaN 的触发往往是一个概率事件的连锁反应。Microduck 的训练代码里塞了四个猴子补丁(monkey patch),每一个都对应一条具体的 NaN 传播链。今天逐个拆开看。NaN 不是 bug,是 PPO……继续阅读 » admin 1周前 (10-14) 84浏览 0个赞
选数据库这件事,比选框架还纠结做AI应用的开发者大概率遇到过这个问题:数据库放哪。如果你的应用就是个API包装层,用户数据不多,随便选一个都能跑。但当你需要存对话历史、管理用户会话、缓存embedding结果,数据库的选型就开始影响你的成本结构和开发体验了。我花了几天时间对比了4个主流Serverless数据库方案,把官方定价页面翻了个底朝天。不是做评测报告,是帮我自己做决策,顺便分享给你。四个选项,各自定位……继续阅读 » admin 1周前 (10-14) 86浏览 0个赞
做过强化学习的人大概都有过这种经历:奖励函数调了三天,loss 曲线看着还不错,但策略就是学不会。问题往往不在奖励本身,而在引入的时机。Microduck 的训练代码里有一套明确的课程编排规则——不是”什么时候加什么”,而是”什么时候才能加什么”。顺序搞反了,前面所有的功夫都可能白费。课程编排的两条线,分开走microduck_rl 的课程系统把训练进度分成两条独立……继续阅读 » admin 1周前 (10-13) 111浏览 0个赞
Cloudflare Vectorize 从零搭建语义搜索:完整代码教程做AI应用经常遇到语义搜索的需求:用户输入”如何部署模型”,你要返回跟部署相关的文档,哪怕文档标题里没有”部署”两个字。关键词搜索搞不定这个,得靠向量检索。Cloudflare Vectorize是Cloudflare自家托管的向量数据库,跟Workers无缝集成,不用自己管服务器。这篇教程从创建……继续阅读 » admin 1周前 (10-13) 95浏览 0个赞
Microduck 的七守护进程设计:为什么一只 800g 的鸭子需要七个进程才安全你大概会觉得,一只 25 厘米高、800 克重的机器人鸭子,跑个单进程够了。读几个传感器,算个控制律,发个舵机指令,一个 while 循环搞定。Microduck 的工程师不这么想。他们在 RK3566 主控上跑了整整七个守护进程,每个都有明确的职责边界和存活理由。这不是过度工程,而是用进程隔离换来的安全冗余。七个进程,各管一摊……继续阅读 » admin 2周前 (10-12) 105浏览 0个赞