具身智能人工智能AI Agent机器人计算机视觉Agent 编排【免费下载链接】jiuwensymbiosisJiuwen Symbiosis就是一个能懂人话、看得见物理世界、长了四肢的智能助手。用户不需要示教不需要教它怎么抓东西怎么走路就像指挥一个经验丰富的工人一样用自然语言下任务它就能自己完成感知、理解、规划、执行。项目地址https://gitcode.com/openJiuwen/jiuwensymbiosis点击查看免费下载本文是 jiuwensymbiosis 示例工程examples/的实战指南。它围绕仓库自带的「通用任务运行器」展开同一个入口examples/run_task.py安装后为jiuwensymbiosis-run如何通过--config选定机器人、用--query下达自然语言任务并在fastagent一次编译、逐步骤不调 LLM与stepagent逐步 LLM 调试两种执行模式之间切换。读完本文你将掌握 SO-101 与 Cruzr 两套真机示例的配置要点、safety_validated安全门禁的正确使用方式以及如何用jiuwensymbiosis-replay回放样例执行轨迹trace产物。文中所有结论均可回到对应配置、源码与测试中验证。一、示例工程的结构与使用前提examples/目录从仓库根目录即可直接运行其内容分为两大部分通用任务运行器examples/run_task.py是所有机器人和任务的统一入口样例执行轨迹examples/sample_trace/保存一份脱敏的轨迹 JSON、HTML 回放和逐步图像用于了解 trace 产物。运行前需先按中文 README 安装依赖。pyproject.toml中声明了与真机相关的可选依赖组SO-101 需要so101组lerobot[feetech,kinematics]0.6.0,0.7且仅支持 Python3.12Cruzr 需要cruzr组pin4.1提供臂 IK 与自碰撞检测rclpy由 ROS 2 工作区提供不属于 pip 依赖。二、通用任务运行器一个入口任意机器人与任务1. 设计思想任务不在配置里examples/run_task.py的核心设计可以用一句话概括任务不在 config 里。机器人和环境参数写进 YAML 配置任务则在运行时由--query给出因此新增一个任务只需换一条--query接入新机器人只需换一份--config——不需要新增任何 Python 文件。源码开头即点明这一点Pick the robot with--config(the YAMLsadapter:field selects the adapter from the registry;--robotoverrides). Give the task at run time with--query ...or--voice— thetask is not in the config.这也解释了为何configs/下的三份机器人配置so101.yaml、cruzr.yaml、piper.yaml都不包含任务字段——它们只描述「这台机器人是谁、有哪些安全边界、用什么模型编排」任务永远来自运行时。2. 机器人如何被选中adapter 注册表运行器通过配置顶层adapter:字段从适配器注册表选中机器人。_robot_session_builders()维护了一张注册表run_task.pyfrom jiuwensymbiosis.adapters.cruzr import build_cruzr_session from jiuwensymbiosis.adapters.piper import build_piper_session from jiuwensymbiosis.adapters.so101 import build_so101_session return {piper: build_piper_session, cruzr: build_cruzr_session, so101: build_so101_session}机器人身份解析的优先级是--robot命令行参数 config 顶层adapter:piper向后兼容见_resolve_robot。例如 so101.yaml 第 3 行adapter: so101、cruzr.yaml 第 9 行adapter: cruzr各自选中对应适配器。真正的会话构建是build.from_yaml(args.config)——每个适配器都暴露.from_yaml(path)把 YAML 一键变成可用的RobotSession。3. 执行模式fastagent 与 stepagent执行模式取自 YAML 的agent.execution.mode默认fastagent。两种模式的区别run.pyfastagent任务运行默认一次 LLM 推理读取候选技能的 SKILL.md并在同一次调用中输出扁平的动作序列技能选择 工作流转录一体完成随后通用执行器run_sequence按序执行——没有逐步 LLM检测结果在步骤间传递track_detect步骤接入实时跟踪目标。每次技能的选择依据是其 SKILL.md 单一事实源不存在逐个技能的 Python 执行器因此 fast 与逐步 agent 不会漂移新技能就是一份新的 SKILL.md。stepagent单步调试构建DeepAgent并invoke每步都由 LLM 编排多次往返适合单步调试与验证。--stepagent可强制切换。run_task.py的--mock仅 piper 可用会自动隐含--stepagent用MockArmEnv 离线模型做无硬件干跑。需要留意逐步视觉反馈visual_feedback与失败诊断diagnosis目前只支持 stepagent不能在 fastagent 中显式启用详见 agent-config.md。4. CLI 参数速查表main()中的argparse定义了完整参数run_task.py参数作用--config必填机器人配置 YAML 路径其adapter:字段决定选哪款机器人--query用户任务如--query 把香蕉放到盘子里任务不在 config 中--server-url/--model覆盖 YAML 中的 LLM 端点 base URL 与模型名--api-key覆盖 LLM API Key优先级CLI $OPENJIUWEN_API_KEY YAMLmodel.api_key--robot覆盖 config 的adapter:字段注册表键piper / so101 / cruzr--stepagent强制execution.modestepagent逐步 LLM 调试--mock仅 piperMockArmEnv 离线模型干跑隐含 stepagent--no-skill禁用技能知识fastagent 直接组合动作--modeAgent 模式tool / code / hybrid--no-visual-feedback覆盖配置禁用 VisualFeedbackRail--control-hz/--servo-step-mmfastagent 实时伺服跟踪调参控制频率与每 tick 线位移上限--max-iter/--workspace/--debug最大迭代轮数、Agent 工作目录、DEBUG 日志--voice系列语音模式前端--voice持续监听、--voice-text注入转写文本、--voice-audio-file对 WAV 跑一次、--voice-once、--no-wake、--tts、--asr-device运行器还会做「无任务」保护非语音模式下必须给出非空--query否则返回退出码 2 并提示「config 不内置任务」。这从机制上杜绝了「默默跑一个默认任务」的隐患。5. 模型规格的构建优先级_build_model_spec展示了 CLI 与 YAML 的合并规则--server-url会去掉尾部/chat/completions后写入api_baseAPI Key 的优先级是--api-key$OPENJIUWEN_API_KEY YAMLmodel.api_key。这与 so101.yaml 中api_key: # 用 --api-key 覆盖的注释完全对应——密钥不应写入配置文件。三、SO-101 真机示例从安全门禁到部署字段1. 前置条件SO-1015-DoF 平行夹爪基于 LeRobot 0.6.x SOFollower需要Python 3.12pyproject.toml中so101依赖组明确仅支持 Python3.12LeRobot 0.6.xlerobot[feetech,kinematics]0.6.0,0.7电机标定首次部署须先运行lerobot-calibrate --robot.idso101生成标定文件否则驱动connect()会在标定预检阶段直接报错有效的眼在手外eye-to-hand标定。2.safety_validated安全门禁configs/so101/so101.yaml包含已验收设备的示例值。动手前必须先把safety_validated改为false再填写串口、相机序列号、标定路径和本机安全边界只有完成限位、工作空间和急停验收后才能重新改为true。从 config_template.yaml 可以看到这一门禁的底层行为false时 Driver.connect() 会在打开串口前拒绝连接。home_use_init_pose: true可豁免此门禁须先上电才能读当前关节角。模板还给出了真机风险提示关节软限位以真机和官方资料为准上表数值仅为占位务必实测收紧z_min_safe/workspace_bounds是 TCP 边界不等于整臂碰撞检测真机验收必须覆盖连杆碰桌、底座、自碰风险。未完成真机验收前保持safety_validatedfalse不要仅为绕过门禁而改成 true。3. 运行命令完成配置与验收后运行python examples/run_task.py \ --config configs/so101/so101.yaml \ --query 把香蕉放到盘子里 \ --api-key $OPENJIUWEN_API_KEY4. 部署字段与默认值configs/so101/so101.yaml中env.cfg.low_level段集中了本机参数其中几类值得重点说明连接与运动学robot_id: so101_left必须与lerobot-calibrate --robot.id一致ik_target_frame: gripper_frame_link是 IK 控制帧ik_orientation_weight: 0.01表示姿态权重小、更偏向位置求解cartesian_orientation_policy: preserve让 5-DoF 普通移动保持实时姿态避免被无条件切到rx180/ry0grasp_orientation: null表示真机示教前不启用 grasp 姿态策略显式使用会安全拒绝。到位判定move_timeout_s: 10.0是最终点完全不收敛时的最长等待settle_z_only_lift_enabled: true表示持物上移时若关节已稳定但 Z 仍偏低只优化 Z、允许 XY 小幅漂移受软限位与最大关节偏置保护。安全边界z_min_safe_mm: -10.0是 gripper_frame_link 控制帧下限不是桌面或指尖高度z_max_safe_mm: 400.0拦截高处近奇异姿态table_z_mm: null时实体最低点模型保持禁用。夹爪接触判定gripper_contact_min_travel: 5.0配合 stall 容差与采样数用于「关闭时明显运动且连续稳定在非全闭位置」→ 判定为接触香蕉而非超时。视觉桌面固定 eye-to-hand RealSense D405camera_mount: eye_to_handSO-101 相机桌面固定只接受该值。完整的部署字段与默认值清单见 SO-101 配置模板模板按[必填] / [选填] / [真机风险]标注并统一单位约定关节度、夹爪0..100 百分比、位移mm、姿态intrinsic XYZ Euler 度。5. 检测服务与模型配置so101.yaml 的detector块采用mode: local由框架启动/关闭本地 GPU 模型GroundingDINO SAM2切换remote时只需替换为endpoint.url如http://127.0.0.1:8114Agent 主机无需安装模型权重。model块是非视觉编排模型——视觉由检测工具完成因此运行时配合--no-visual-feedback避免向非 VLM 模型发送图像。检测服务的完整部署说明见服务部署 README。四、Cruzr 真机示例ROS 2 双臂与能力门控1. 前置条件Cruzr 需要 ROS 2Jazzy工作区、腰部/头部相机、标定和检测服务。运行前需sourceROS Cruzr 工作区配置中ros_workspace: ~/Robot/Cruzr_ws、ros_backend: auto并启动检测服务。2. 配置要点在 cruzr.yaml 中保持adapter: cruzr然后填写ROS 工作区路径、相机话题腰部 RGBD 三话题color / depth / camera_info头部点云/sensor/camera/stereo/pointcloud/jazzy、标定文件camera_calib_path: cruzr_camera_calib.json相对本 YAML 所在目录、URDF 路径与urdf_package_dir自碰撞检查依赖它不配会静默失效、检测服务地址与编排 LLM 端点并验收安全边界。这份配置还沉淀了大量真机调优参数例如头部搜索head_search_yaw_positions_rad: [0.6, -0.6]2-look、驱近头部偏航跟踪增益head_yaw_track_gain: 0.9、底盘「搜索快 接近准」两组分离的轮速旋钮、以及夹取/放置各阶段独立的 ramp 时长。3. 运行命令python examples/run_task.py \ --config configs/cruzr/cruzr.yaml \ --query 把棕色箱子上的白色箱子搬到有香蕉的白桌子上 \ --api-key $OPENJIUWEN_API_KEY4. 能力门控为什么 Cruzr 能「搬」而固定臂不能原文档特别指出Cruzr 声明了motion.basetransport技能因此通过能力门。这在源码层面有两处印证cruzr/env.py 的capabilities集合包含motion.base、motion.base_servo、motion.dual_arm、grasp.paddle等transport/SKILL.md 明确要求机器人api.capabilities含motion.base或motion.waist至少一种才启用本技能且只在移动动作的候选表rotate_base/navigate_relative/turn_waist中调用能力内的动作。因此同一句「把 X 搬到 Y」的任务在固定臂机型无motion.base/motion.waist上编排出的序列与 Cruzr 并不相同——固定臂不具备移动能力transport技能直接不适用。5. 敏感信息管理*.local.yaml不想让串口、序列号和密钥出现在git status里可以复制成configs/机器人/机器人.local.yaml再改——.gitignore里的*.local.yaml会忽略它--config指向该副本即可。仓库.gitignore第 7 行确认为*.local.yaml。这一约定同样适用于 so101 与 piper 的真机参数SO-101 配置模板的视觉段也提示「真机参数放在不提交的本地调试 YAML 中」。它是保护硬件身份信息与密钥的第一道防线。五、样例执行轨迹JSON、HTML 与逐步图像sample_trace/保存一份 Piper 演示的脱敏执行轨迹包含三部分产物*.json结构化ExecutionTrace含 conversation_id、robot_name、query、每个步骤的工具名/参数/耗时/观察快照/rail 事件*.html可直接在浏览器打开的自包含回放每步图像以 base64 内联图像与参数/错误/rail 事件在同一卡片中frames/轨迹步骤引用的图像帧。安装本项目后从仓库根目录进行文本回放jiuwensymbiosis-replay \ examples/sample_trace/piper-demo-77816242_20260626_113438_033124_1743847.json \ --text去掉--text会生成自包含 HTML 回放。预期结果终端显示步骤时间线或生成并打印 HTML 回放路径。轨迹回放 CLI 对应 cli.py 的replay()按步骤打印[step] ✅/❌ tool_name(params)与耗时trace_log保留完整日志。其底层产物由 trace.py 的TraceRail在modules.tracing.enabled时写入工作区traces/目录——sample_trace就是这类产物的脱敏样本。重要提醒样例轨迹仅用于了解 trace 产物形态不应作为机器人正确性基准。从示例轨迹 JSON 可以看到一次典型执行的开端step 1 list_skill列出候选技能 visual_pick / visual_place 等、step 2 skill_tool……每步都记录了observation位姿、关节角、z_min_safe与frame_path这正是回放页面的数据来源。六、安全须知原文档的告诫值得全文引用运行前必须完成硬件、标定、检测服务和安全边界验收不要在未验证的工作空间无人值守运行。两份示例都经过真机验证但验证结果依赖你本机的设备状态——串口、相机序列号、标定文件、软限位与安全边界必须按真机逐项确认safety_validated从false回到true只应在完成限位、工作空间与急停验收之后。七、小结examples/是 jiuwensymbiosis「一条命令跑真机任务」的最短路径jiuwensymbiosis-run --config 机器人.yaml --query 任务。其背后的机制是 adapter 注册表选机器人、SKILL.md 单一事实源编译动作序列、能力门控决定技能可用性、trace 产物记录每一步执行证据。从「通用任务运行器」到「SO-101 / Cruzr 真机示例」再到「样例轨迹回放」整个示例工程的脉络清晰可循相关源码与配置路径均已在上文逐一给出可直接回到仓库验证。赞分享具身智能人工智能AI Agent机器人计算机视觉Agent 编排【免费下载链接】jiuwensymbiosisJiuwen Symbiosis就是一个能懂人话、看得见物理世界、长了四肢的智能助手。用户不需要示教不需要教它怎么抓东西怎么走路就像指挥一个经验丰富的工人一样用自然语言下任务它就能自己完成感知、理解、规划、执行。项目地址https://gitcode.com/openJiuwen/jiuwensymbiosis点击查看免费下载相关推荐jiuwensymbiosis 示例工程实战指南用统一任务运行器在 SO-101 与 Cruzr 真机上跑自然语言任务jiuwensymbiosis 示例工程实战指南用统一任务运行器在 SO 101 与 Cruzr 真机上跑自然语言任务 本文以 examples/README具身智能人工智能AI Agent机器人计算机视觉Agent 编排JiuwenSymbiosis 命令行完全指南jiuwensymbiosis-run、回放、GUI 启动、手眼标定与内省工具的实战用法JiuwenSymbiosis 命令行完全指南jiuwensymbiosis run、回放、GUI 启动、手眼标定与内省工具的实战用法 本篇文章是 Jiuwe具身智能人工智能AI Agent机器人计算机视觉Agent 编排jiuwensymbiosis 执行轨迹样例详解sample_trace 目录与 jiuwensymbiosis-replay 回放实战jiuwensymbiosis 执行轨迹样例详解sample_trace 目录与 jiuwensymbiosis replay 回放实战 Jiuwen Sym具身智能人工智能AI Agent机器人计算机视觉Agent 编排上一篇如何高效使用百度网盘秒传工具网页版转存生成转换完全指南下一篇FreeRTOS CBMC 内存安全证明QueueGenericSendFromISR 验证 Harness 详解创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考