When I first started running learned robot policies on real hardware, the scariest part wasn't training. It was the moment I thought, "okay, this model should work now," and then watched the robot start grabbing the wrong thing, bumping into objects, or pushing joints way harder than it should.
當我第一次把學好的機器人策略跑在真實硬體上,最令人害怕的部分不是訓練本身,而是那個當下——我心想「好了,這個模型應該可以了」,然後就看著機器人開始抓錯東西、撞上物件,或是把關節推得比應該的力道猛得多。
Cuando empecé a correr políticas de robots en hardware real, la parte más aterradora no fue el entrenamiento. Fue el momento en que pensé "bien, este modelo ya debería funcionar," y luego vi al robot agarrar lo incorrecto, chocar con objetos, o empujar las articulaciones mucho más fuerte de lo que debería.
Everything looked fine in simulation. But in the real world, the policy has no idea when something is becoming unsafe or just a bad action. It only knows how to output the next move.
模擬裡一切看起來都沒問題。但在真實世界裡,策略根本不知道什麼時候動作變得不安全,或者只是一個糟糕的決策——它只知道要輸出下一個動作。
Todo se veía bien en simulación. Pero en el mundo real, la política no tiene idea de cuándo algo se está volviendo inseguro. Solo sabe cómo generar el siguiente movimiento.
That's why I built DAM — an open-source middleware that sits between ML policies and robot hardware. Over time, I realized the point of DAM isn't really "safety." It's helping us understand the boundaries of a policy before something goes wrong.
這就是我建構 DAM 的原因——一個介於 ML 策略與機器人硬體之間的開源中介軟體。後來我意識到,DAM 的重點其實不是「安全」,而是幫助我們在出問題之前,先理解一個策略的邊界在哪裡。
Por eso construí DAM — un middleware open-source que se ubica entre políticas ML y hardware robótico. Con el tiempo me di cuenta que el punto de DAM no es realmente la "seguridad." Es ayudarnos a entender los límites de una política antes de que algo salga mal.
During data collection, it helps smooth out motions and gives operators a better sense of which actions create bad data. During training, it becomes easier to spot policies getting stuck exploring obviously bad behaviors. During deployment, the most useful thing is often not success — it's finally seeing where the policy starts to break down.
在資料收集階段,它幫助平滑動作,讓操作者更清楚哪些動作會產生壞數據。在訓練階段,更容易發現策略卡在探索明顯錯誤行為的狀況。在部署階段,最有價值的往往不是成功,而是終於能看到策略從哪裡開始崩壞。
Durante la recolección de datos, ayuda a suavizar movimientos y da a los operadores una mejor idea de qué acciones generan malos datos. Durante el entrenamiento, es más fácil detectar políticas atrapadas explorando comportamientos obviamente malos. Durante el despliegue, lo más útil no suele ser el éxito — es finalmente ver dónde la política empieza a fallar.
The goal isn't to hide failures. It's to make them visible and easier to understand. DAM is already integrated with LeRobot workflows, and I'm currently working on ROS integration as well. This is still research software, not a certified safety system — but if we can't clearly see the limits of a policy, it's hard to build robot learning systems we can actually trust.
目標不是隱藏失敗,而是讓失敗變得可見、更容易理解。DAM 已經整合進 LeRobot 工作流程,我目前也在推進 ROS 整合。這仍然是研究軟體,不是認證過的安全系統——但如果我們無法清楚看到一個策略的極限,就很難建立真正值得信賴的機器人學習系統。
El objetivo no es ocultar los fallos. Es hacerlos visibles y más fáciles de entender. DAM ya está integrado con flujos de trabajo LeRobot, y actualmente trabajo en la integración con ROS. Esto sigue siendo software de investigación, no un sistema de seguridad certificado — pero si no podemos ver claramente los límites de una política, es difícil construir sistemas de aprendizaje robótico en los que realmente confiar.