全局配置

general 块控制 FastSim 的两项全局行为:项目扫描(用于自动注册用户定义的 stereotype)和资产根路径映射(用于解析配置文件中所有 root_key:// 形式的路径)。

源码:fastsim/configs/general_cfg.pyGeneralConfig

字段说明

字段类型说明
scan_projectbool启动时是否扫描用户项目,自动收集并注册自定义 stereotype(通过 ProjectLoader.scan_project
root_pathsdict[str, str]资产根路径映射表,键名即 root_key:// 协议中的协议头,值为本地绝对路径

校验规则root_paths 中每个路径值必须是已存在的本地目录,否则 GeneralConfig.validate_root_paths() 将在启动时抛出校验错误。

资产路径解析

配置文件中的 asset_pathhdf5_pathbackend_root_path 等路径字段均通过 Asset.resolve_url_path() 统一解析(源码:fastsim/utils/asset.py)。支持四种格式:

格式示例说明
绝对路径/data/robots/ur5.usd直接使用,不做任何转换
相对路径./assets/cube.usd相对于当前工作目录展开
root_key:// 协议assets://robots/ur5.usdassets 映射到 root_paths["assets"],拼接后得到完整路径
远端 URLhttps://example.com/ur5.usd自动下载并缓存到本地后使用

root_key:// 是最推荐的用法——它将具体机器路径集中在 general.root_paths 中管理,其余配置文件只使用逻辑路径,便于在不同机器和用户间共享配置。

配置示例

yaml
general:
  scan_project: true
  root_paths:
    assets: /home/user/robot_assets
    datasets: /home/user/datasets

使用效果:

yaml
# assets://robots/ur5.usd → /home/user/robot_assets/robots/ur5.usd
# datasets://runs/run001  → /home/user/datasets/runs/run001
robot_cfg_dict:
  arm:
    asset_path: assets://robots/ur5.usd

extension:
  extension_cfg_dict:
    record:
      backend_root_path: datasets://runs/run001