[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-Farama-Foundation--Minari":3,"tool-Farama-Foundation--Minari":65},[4,18,32,41,49,57],{"id":5,"name":6,"github_repo":7,"description_zh":8,"stars":9,"difficulty_score":10,"last_commit_at":11,"category_tags":12,"status":17},4358,"openclaw","openclaw\u002Fopenclaw","OpenClaw 是一款专为个人打造的本地化 AI 助手，旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚，能够直接接入你日常使用的各类通讯渠道，包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息，OpenClaw 都能即时响应，甚至支持在 macOS、iOS 和 Android 设备上进行语音交互，并提供实时的画布渲染功能供你操控。\n\n这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地，用户无需依赖云端服务即可享受快速、私密的智能辅助，真正实现了“你的数据，你做主”。其独特的技术亮点在于强大的网关架构，将控制平面与核心助手分离，确保跨平台通信的流畅性与扩展性。\n\nOpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者，以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力（支持 macOS、Linux 及 Windows WSL2），即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你",349277,3,"2026-04-06T06:32:30",[13,14,15,16],"Agent","开发框架","图像","数据工具","ready",{"id":19,"name":20,"github_repo":21,"description_zh":22,"stars":23,"difficulty_score":24,"last_commit_at":25,"category_tags":26,"status":17},2268,"ML-For-Beginners","microsoft\u002FML-For-Beginners","ML-For-Beginners 是由微软推出的一套系统化机器学习入门课程，旨在帮助零基础用户轻松掌握经典机器学习知识。这套课程将学习路径规划为 12 周，包含 26 节精炼课程和 52 道配套测验，内容涵盖从基础概念到实际应用的完整流程，有效解决了初学者面对庞大知识体系时无从下手、缺乏结构化指导的痛点。\n\n无论是希望转型的开发者、需要补充算法背景的研究人员，还是对人工智能充满好奇的普通爱好者，都能从中受益。课程不仅提供了清晰的理论讲解，还强调动手实践，让用户在循序渐进中建立扎实的技能基础。其独特的亮点在于强大的多语言支持，通过自动化机制提供了包括简体中文在内的 50 多种语言版本，极大地降低了全球不同背景用户的学习门槛。此外，项目采用开源协作模式，社区活跃且内容持续更新，确保学习者能获取前沿且准确的技术资讯。如果你正寻找一条清晰、友好且专业的机器学习入门之路，ML-For-Beginners 将是理想的起点。",85092,2,"2026-04-10T11:13:16",[15,16,27,28,13,29,30,14,31],"视频","插件","其他","语言模型","音频",{"id":33,"name":34,"github_repo":35,"description_zh":36,"stars":37,"difficulty_score":38,"last_commit_at":39,"category_tags":40,"status":17},5784,"funNLP","fighting41love\u002FfunNLP","funNLP 是一个专为中文自然语言处理（NLP）打造的超级资源库，被誉为\"NLP 民工的乐园”。它并非单一的软件工具，而是一个汇集了海量开源项目、数据集、预训练模型和实用代码的综合性平台。\n\n面对中文 NLP 领域资源分散、入门门槛高以及特定场景数据匮乏的痛点，funNLP 提供了“一站式”解决方案。这里不仅涵盖了分词、命名实体识别、情感分析、文本摘要等基础任务的标准工具，还独特地收录了丰富的垂直领域资源，如法律、医疗、金融行业的专用词库与数据集，甚至包含古诗词生成、歌词创作等趣味应用。其核心亮点在于极高的全面性与实用性，从基础的字典词典到前沿的 BERT、GPT-2 模型代码，再到高质量的标注数据和竞赛方案，应有尽有。\n\n无论是刚刚踏入 NLP 领域的学生、需要快速验证想法的算法工程师，还是从事人工智能研究的学者，都能在这里找到急需的“武器弹药”。对于开发者而言，它能大幅减少寻找数据和复现模型的时间；对于研究者，它提供了丰富的基准测试资源和前沿技术参考。funNLP 以开放共享的精神，极大地降低了中文自然语言处理的开发与研究成本，是中文 AI 社区不可或缺的宝藏仓库。",79857,1,"2026-04-08T20:11:31",[30,16,29],{"id":42,"name":43,"github_repo":44,"description_zh":45,"stars":46,"difficulty_score":38,"last_commit_at":47,"category_tags":48,"status":17},5773,"cs-video-courses","Developer-Y\u002Fcs-video-courses","cs-video-courses 是一个精心整理的计算机科学视频课程清单，旨在为自学者提供系统化的学习路径。它汇集了全球知名高校（如加州大学伯克利分校、新南威尔士大学等）的完整课程录像，涵盖从编程基础、数据结构与算法，到操作系统、分布式系统、数据库等核心领域，并深入延伸至人工智能、机器学习、量子计算及区块链等前沿方向。\n\n面对网络上零散且质量参差不齐的教学资源，cs-video-courses 解决了学习者难以找到成体系、高难度大学级别课程的痛点。该项目严格筛选内容，仅收录真正的大学层级课程，排除了碎片化的简短教程或商业广告，确保用户能接触到严谨的学术内容。\n\n这份清单特别适合希望夯实计算机基础的开发者、需要补充特定领域知识的研究人员，以及渴望像在校生一样系统学习计算机科学的自学者。其独特的技术亮点在于分类极其详尽，不仅包含传统的软件工程与网络安全，还细分了生成式 AI、大语言模型、计算生物学等新兴学科，并直接链接至官方视频播放列表，让用户能一站式获取高质量的教育资源，免费享受世界顶尖大学的课堂体验。",79792,"2026-04-08T22:03:59",[29,15,16,14],{"id":50,"name":51,"github_repo":52,"description_zh":53,"stars":54,"difficulty_score":38,"last_commit_at":55,"category_tags":56,"status":17},2234,"scikit-learn","scikit-learn\u002Fscikit-learn","scikit-learn 是一个基于 Python 构建的开源机器学习库，依托于 SciPy、NumPy 等科学计算生态，旨在让机器学习变得简单高效。它提供了一套统一且简洁的接口，涵盖了从数据预处理、特征工程到模型训练、评估及选择的全流程工具，内置了包括线性回归、支持向量机、随机森林、聚类等在内的丰富经典算法。\n\n对于希望快速验证想法或构建原型的数据科学家、研究人员以及 Python 开发者而言，scikit-learn 是不可或缺的基础设施。它有效解决了机器学习入门门槛高、算法实现复杂以及不同模型间调用方式不统一的痛点，让用户无需重复造轮子，只需几行代码即可调用成熟的算法解决分类、回归、聚类等实际问题。\n\n其核心技术亮点在于高度一致的 API 设计风格，所有估算器（Estimator）均遵循相同的调用逻辑，极大地降低了学习成本并提升了代码的可读性与可维护性。此外，它还提供了强大的模型选择与评估工具，如交叉验证和网格搜索，帮助用户系统地优化模型性能。作为一个由全球志愿者共同维护的成熟项目，scikit-learn 以其稳定性、详尽的文档和活跃的社区支持，成为连接理论学习与工业级应用的最",65751,"2026-04-10T08:35:09",[14,29,16],{"id":58,"name":59,"github_repo":60,"description_zh":61,"stars":62,"difficulty_score":24,"last_commit_at":63,"category_tags":64,"status":17},3364,"keras","keras-team\u002Fkeras","Keras 是一个专为人类设计的深度学习框架，旨在让构建和训练神经网络变得简单直观。它解决了开发者在不同深度学习后端之间切换困难、模型开发效率低以及难以兼顾调试便捷性与运行性能的痛点。\n\n无论是刚入门的学生、专注算法的研究人员，还是需要快速落地产品的工程师，都能通过 Keras 轻松上手。它支持计算机视觉、自然语言处理、音频分析及时间序列预测等多种任务。\n\nKeras 3 的核心亮点在于其独特的“多后端”架构。用户只需编写一套代码，即可灵活选择 TensorFlow、JAX、PyTorch 或 OpenVINO 作为底层运行引擎。这一特性不仅保留了 Keras 一贯的高层易用性，还允许开发者根据需求自由选择：利用 JAX 或 PyTorch 的即时执行模式进行高效调试，或切换至速度最快的后端以获得最高 350% 的性能提升。此外，Keras 具备强大的扩展能力，能无缝从本地笔记本电脑扩展至大规模 GPU 或 TPU 集群，是连接原型开发与生产部署的理想桥梁。",63927,"2026-04-04T15:24:37",[14,16,29],{"id":66,"github_repo":67,"name":68,"description_en":69,"description_zh":70,"ai_summary_zh":70,"readme_en":71,"readme_zh":72,"quickstart_zh":73,"use_case_zh":74,"hero_image_url":75,"owner_login":76,"owner_name":77,"owner_avatar_url":78,"owner_bio":79,"owner_company":80,"owner_location":80,"owner_email":81,"owner_twitter":82,"owner_website":83,"owner_url":84,"languages":85,"stars":98,"forks":99,"last_commit_at":100,"license":101,"difficulty_score":38,"env_os":102,"env_gpu":102,"env_ram":102,"env_deps":103,"category_tags":107,"github_topics":108,"view_count":24,"oss_zip_url":80,"oss_zip_packed_at":80,"status":17,"created_at":112,"updated_at":113,"faqs":114,"releases":145},6393,"Farama-Foundation\u002FMinari","Minari","A standard format for offline reinforcement learning datasets, with popular reference datasets and related utilities","Minari 是一个专为离线强化学习（Offline RL）研究的 Python 库，旨在提供统一的数据集标准格式及相关实用工具。你可以将它理解为“离线版的 Gymnasium\"，或者是强化学习领域的\"HuggingFace Datasets\"。\n\n在 Minari 出现之前，研究人员常受困于不同来源的离线数据格式混乱、难以复用和对比的问题。Minari 通过定义标准化的数据集接口，彻底解决了这一痛点，让加载、分享和复现经典基准数据集（如 D4RL）变得像调用本地文件一样简单。它不仅支持通过命令行轻松下载和管理远程数据集，还提供了直观的 API，让用户能便捷地读取轨迹数据或利用现有环境快速创建并保存新的自定义数据集。\n\n这款工具非常适合从事强化学习算法研究的科研人员、需要验证模型效果的开发者，以及希望构建高质量离线数据的教育工作者。其独特的技术亮点在于与主流训练库（如 TorchRL、d3rlpy）的深度集成，以及“观察即学习”（源自日语 Minarai）的设计理念，极大地降低了离线强化学习的入门门槛和工程成本，让研究者能将更多精力集中在算法创新而非数据预处理上。","[![build](https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Factions\u002Fworkflows\u002Fbuild.yml\u002Fbadge.svg)](https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Factions)\n[![pre-commit](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fpre--commit-enabled-brightgreen?logo=pre-commit&logoColor=white)](https:\u002F\u002Fpre-commit.com\u002F)\n[![Code style: black](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fcode%20style-black-000000.svg)](https:\u002F\u002Fgithub.com\u002Fpsf\u002Fblack)\n[![release](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fv\u002Frelease\u002FFarama-Foundation\u002FMinari)](https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Freleases)\n\n\n\u003Cp align=\"center\">\n    \u003Ca href = \"https:\u002F\u002Fminari.farama.org\u002F\" target= \"_blank\" > \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FFarama-Foundation_Minari_readme_08167418cac9.png\" width=\"500px\"\u002F> \u003C\u002Fa>\n\u003C\u002Fp>\n\nMinari is a Python library for conducting research in offline reinforcement learning, akin to an offline version of Gymnasium or an offline RL version of HuggingFace's datasets library.\n\nThe documentation website is at [minari.farama.org](https:\u002F\u002Fminari.farama.org\u002Fmain\u002F). We also have a public discord server (which we use for Q&A and to coordinate development work) that you can join here: https:\u002F\u002Fdiscord.gg\u002FbnJ6kubTg6.\n\n\n## Installation\nTo install Minari from [PyPI](https:\u002F\u002Fpypi.org\u002Fproject\u002Fminari\u002F):\n```bash\npip install minari\n```\n\nThis will install the minimum required dependencies. Additional dependencies will be prompted for installation based on your use case. To install all dependencies at once, use:\n```bash\npip install \"minari[all]\"\n```\n\nIf you'd like to start testing or contribute to Minari please install this project from source with:\n\n```\ngit clone https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari.git --single-branch\ncd Minari\npip install -e \".[all]\"\n```\n\n## Command Line API\n\nTo check available remote datasets:\n\n```bash\nminari list remote\n```\n\nTo download a dataset:\n\n```bash\nminari download D4RL\u002Fdoor\u002Fhuman-v2\n```\n\nTo check available local datasets:\n\n```bash\nminari list local\n```\nTo show the details of a dataset:\n\n```bash\nminari show D4RL\u002Fdoor\u002Fhuman-v2\n```\n\nFor the list of commands:\n```bash\nminari --help\n```\n\n## Basic Usage\n\n### Reading a Dataset\n\n```python\nimport minari\n\ndataset = minari.load_dataset(\"D4RL\u002Fdoor\u002Fhuman-v2\")\n\nfor episode_data in dataset.iterate_episodes():\n    observations = episode_data.observations\n    actions = episode_data.actions\n    rewards = episode_data.rewards\n    terminations = episode_data.terminations\n    truncations = episode_data.truncations\n    infos = episode_data.infos\n    ...\n```\n\n### Writing a Dataset\n\n```python\nimport minari\nimport gymnasium as gym\nfrom minari import DataCollector\n\n\nenv = gym.make('FrozenLake-v1')\nenv = DataCollector(env)\n\nfor _ in range(100):\n    env.reset()\n    done = False\n    while not done:\n        action = env.action_space.sample()  # \u003C- use your policy here\n        obs, rew, terminated, truncated, info = env.step(action)\n        done = terminated or truncated\n\ndataset = env.create_dataset(\"frozenlake\u002Ftest-v0\")\n```\n\nFor other examples, see [Basic Usage](https:\u002F\u002Fminari.farama.org\u002Fmain\u002Fcontent\u002Fbasic_usage\u002F). For a complete tutorial on how to create new datasets using Minari, see our [Pointmaze D4RL Dataset](https:\u002F\u002Fminari.farama.org\u002Fmain\u002Ftutorials\u002Fdataset_creation\u002Fpoint_maze_dataset\u002F) tutorial, which re-creates the Maze2D datasets from [D4RL](https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FD4RL).\n\n## Training Libraries Integrating Minari\n\n - [TorchRL](https:\u002F\u002Fgithub.com\u002Fpytorch\u002Frl)\n - [d3rlpy](https:\u002F\u002Fgithub.com\u002Ftakuseno\u002Fd3rlpy)\n - [AgileRL](https:\u002F\u002Fgithub.com\u002FAgileRL\u002FAgileRL)\n\n\n## Citation\nIf you use Minari, please consider citing it:\n\n```\n@software{minari,\n\tauthor = {Younis, Omar G. and Perez-Vicente, Rodrigo and Balis, John U. and Dudley, Will and Davey, Alex and Terry, Jordan K},\n\tdoi = {10.5281\u002Fzenodo.13767625},\n\tmonth = sep,\n\tpublisher = {Zenodo},\n\ttitle = {Minari},\n\turl = {https:\u002F\u002Fdoi.org\u002F10.5281\u002Fzenodo.13767625},\n\tversion = {0.5.0},\n\tyear = 2024,\n\tbdsk-url-1 = {https:\u002F\u002Fdoi.org\u002F10.5281\u002Fzenodo.13767625}\n}\n```\n\n\n\n___\n\n_Minari is a shortening of Minarai, the Japanese word for \"learning by observation\"._\n","[![build](https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Factions\u002Fworkflows\u002Fbuild.yml\u002Fbadge.svg)](https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Factions)\n[![pre-commit](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fpre--commit-enabled-brightgreen?logo=pre-commit&logoColor=white)](https:\u002F\u002Fpre-commit.com\u002F)\n[![代码风格: black](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fcode%20style-black-000000.svg)](https:\u002F\u002Fgithub.com\u002Fpsf\u002Fblack)\n[![release](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fv\u002Frelease\u002FFarama-Foundation\u002FMinari)](https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Freleases)\n\n\n\u003Cp align=\"center\">\n    \u003Ca href = \"https:\u002F\u002Fminari.farama.org\u002F\" target= \"_blank\" > \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FFarama-Foundation_Minari_readme_08167418cac9.png\" width=\"500px\"\u002F> \u003C\u002Fa>\n\u003C\u002Fp>\n\nMinari 是一个用于离线强化学习研究的 Python 库，类似于 Gymnasium 的离线版本，或是 HuggingFace 数据集库的离线 RL 版本。\n\n文档网站位于 [minari.farama.org](https:\u002F\u002Fminari.farama.org\u002Fmain\u002F)。我们还有一个公开的 Discord 服务器（用于问答和协调开发工作），你可以通过此链接加入：https:\u002F\u002Fdiscord.gg\u002FbnJ6kubTg6。\n\n\n## 安装\n从 [PyPI](https:\u002F\u002Fpypi.org\u002Fproject\u002Fminari\u002F) 安装 Minari：\n```bash\npip install minari\n```\n\n这将安装最低所需的依赖项。根据你的使用场景，系统会提示你安装其他依赖项。若要一次性安装所有依赖项，可使用：\n```bash\npip install \"minari[all]\"\n```\n\n如果你想开始测试或为 Minari 做贡献，请从源代码安装该项目：\n\n```\ngit clone https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari.git --single-branch\ncd Minari\npip install -e \".[all]\"\n```\n\n## 命令行 API\n\n查看可用的远程数据集：\n\n```bash\nminari list remote\n```\n\n下载一个数据集：\n\n```bash\nminari download D4RL\u002Fdoor\u002Fhuman-v2\n```\n\n查看可用的本地数据集：\n\n```bash\nminari list local\n```\n显示某个数据集的详细信息：\n\n```bash\nminari show D4RL\u002Fdoor\u002Fhuman-v2\n```\n\n获取命令列表：\n\n```bash\nminari --help\n```\n\n## 基本用法\n\n### 读取数据集\n\n```python\nimport minari\n\ndataset = minari.load_dataset(\"D4RL\u002Fdoor\u002Fhuman-v2\")\n\nfor episode_data in dataset.iterate_episodes():\n    observations = episode_data.observations\n    actions = episode_data.actions\n    rewards = episode_data.rewards\n    terminations = episode_data.terminations\n    truncations = episode_data.truncations\n    infos = episode_data.infos\n    ...\n```\n\n### 写入数据集\n\n```python\nimport minari\nimport gymnasium as gym\nfrom minari import DataCollector\n\n\nenv = gym.make('FrozenLake-v1')\nenv = DataCollector(env)\n\nfor _ in range(100):\n    env.reset()\n    done = False\n    while not done:\n        action = env.action_space.sample()  # \u003C- 在这里使用你的策略\n        obs, rew, terminated, truncated, info = env.step(action)\n        done = terminated or truncated\n\ndataset = env.create_dataset(\"frozenlake\u002Ftest-v0\")\n```\n\n更多示例请参阅 [基本用法](https:\u002F\u002Fminari.farama.org\u002Fmain\u002Fcontent\u002Fbasic_usage\u002F)。有关如何使用 Minari 创建新数据集的完整教程，请参阅我们的 [Pointmaze D4RL 数据集](https:\u002F\u002Fminari.farama.org\u002Fmain\u002Ftutorials\u002Fdataset_creation\u002Fpoint_maze_dataset\u002F) 教程，该教程重新创建了来自 [D4RL](https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FD4RL) 的 Maze2D 数据集。\n\n## 集成 Minari 的训练库\n\n - [TorchRL](https:\u002F\u002Fgithub.com\u002Fpytorch\u002Frl)\n - [d3rlpy](https:\u002F\u002Fgithub.com\u002Ftakuseno\u002Fd3rlpy)\n - [AgileRL](https:\u002F\u002Fgithub.com\u002FAgileRL\u002FAgileRL)\n\n\n## 引用\n如果你使用了 Minari，请考虑引用它：\n\n```\n@software{minari,\n\tauthor = {Younis, Omar G. and Perez-Vicente, Rodrigo and Balis, John U. and Dudley, Will and Davey, Alex and Terry, Jordan K},\n\tdoi = {10.5281\u002Fzenodo.13767625},\n\tmonth = sep,\n\tpublisher = {Zenodo},\n\ttitle = {Minari},\n\turl = {https:\u002F\u002Fdoi.org\u002F10.5281\u002Fzenodo.13767625},\n\tversion = {0.5.0},\n\tyear = 2024,\n\tbdsk-url-1 = {https:\u002F\u002Fdoi.org\u002F10.5281\u002Fzenodo.13767625}\n}\n```\n\n\n\n___\n\n_Minari 是“Minarai”的缩写，日语中意为“通过观察学习”。_","# Minari 快速上手指南\n\nMinari 是一个用于离线强化学习（Offline RL）研究的 Python 库。它类似于 Gymnasium 的离线版本，或 HuggingFace Datasets 的离线 RL 版本，旨在简化数据集的加载、管理和创建流程。\n\n## 环境准备\n\n*   **操作系统**：支持 Linux、macOS 和 Windows。\n*   **Python 版本**：建议安装 Python 3.8 或更高版本。\n*   **前置依赖**：确保已安装 `pip` 包管理工具。\n*   **网络提示**：由于默认源位于海外，国内用户建议在安装时指定国内镜像源（如清华源）以加速下载。\n\n## 安装步骤\n\n### 1. 基础安装\n通过 PyPI 安装最小依赖版本：\n```bash\npip install minari -i https:\u002F\u002Fpypi.tuna.tsinghua.edu.cn\u002Fsimple\n```\n\n### 2. 完整安装\n若需使用所有功能（包括额外依赖），推荐安装完整版：\n```bash\npip install \"minari[all]\" -i https:\u002F\u002Fpypi.tuna.tsinghua.edu.cn\u002Fsimple\n```\n\n### 3. 源码安装（可选）\n如果您计划贡献代码或测试最新开发版：\n```bash\ngit clone https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari.git --single-branch\ncd Minari\npip install -e \".[all]\" -i https:\u002F\u002Fpypi.tuna.tsinghua.edu.cn\u002Fsimple\n```\n\n## 基本使用\n\n### 1. 命令行操作 (CLI)\n\nMinari 提供了便捷的命令行工具来管理远程和本地数据集。\n\n**查看可用的远程数据集：**\n```bash\nminari list remote\n```\n\n**下载指定数据集：**\n```bash\nminari download D4RL\u002Fdoor\u002Fhuman-v2\n```\n\n**查看本地已下载的数据集：**\n```bash\nminari list local\n```\n\n**查看数据集详细信息：**\n```bash\nminari show D4RL\u002Fdoor\u002Fhuman-v2\n```\n\n### 2. Python 代码示例\n\n#### 读取数据集\n加载数据集并遍历其中的每一轮（episode）数据：\n\n```python\nimport minari\n\ndataset = minari.load_dataset(\"D4RL\u002Fdoor\u002Fhuman-v2\")\n\nfor episode_data in dataset.iterate_episodes():\n    observations = episode_data.observations\n    actions = episode_data.actions\n    rewards = episode_data.rewards\n    terminations = episode_data.terminations\n    truncations = episode_data.truncations\n    infos = episode_data.infos\n    # 在此处进行数据处理或模型训练\n```\n\n#### 创建数据集\n使用 `DataCollector` 包装 Gymnasium 环境，自动收集交互数据并保存为 Minari 数据集：\n\n```python\nimport minari\nimport gymnasium as gym\nfrom minari import DataCollector\n\n\nenv = gym.make('FrozenLake-v1')\nenv = DataCollector(env)\n\nfor _ in range(100):\n    env.reset()\n    done = False\n    while not done:\n        action = env.action_space.sample()  # \u003C- 在此处替换为您的策略\n        obs, rew, terminated, truncated, info = env.step(action)\n        done = terminated or truncated\n\ndataset = env.create_dataset(\"frozenlake\u002Ftest-v0\")\n```","某机器人研发团队正试图利用历史采集的机械臂开门数据，训练一个无需与环境实时交互的离线强化学习策略。\n\n### 没有 Minari 时\n- **数据格式混乱**：不同成员采集的数据存储结构各异（有的用 JSON，有的用自定义二进制），每次训练前需编写大量脚本进行清洗和对齐。\n- **复现极其困难**：缺乏统一的标准数据集索引，团队成员难以快速下载并验证论文中提到的基准数据（如 D4RL），导致实验结果无法横向对比。\n- **开发流程割裂**：从数据收集到模型训练之间缺少标准化接口，将原始轨迹转换为训练所需的张量格式容易出错且耗时。\n- **元数据缺失**：数据集缺乏标准化的描述信息（如环境版本、采集策略类型），导致在混合多源数据训练时经常因环境不匹配而报错。\n\n### 使用 Minari 后\n- **统一数据标准**：Minari 提供了类似 Gymnasium 的离线数据标准格式，团队可直接加载各类异构数据，无需再编写繁琐的解析代码。\n- **一键获取基准**：通过 `minari download` 命令即可瞬间获取官方维护的高质量参考数据集，立即复现前沿算法效果，大幅缩短调研周期。\n- **无缝集成训练**：利用 `iterate_episodes()` 接口，数据能直接以标准化的观测、动作和奖励形式流入 TorchRL 或 d3rlpy 等训练库，实现“加载即训练”。\n- **规范数据生产**：借助 `DataCollector` 包装器，团队在采集新数据时自动生成了包含完整元数据的标准数据集，确保了后续实验的可追溯性和兼容性。\n\nMinari 通过建立离线强化学习数据的“通用语言”，彻底消除了数据预处理瓶颈，让研究者能专注于算法创新而非格式转换。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FFarama-Foundation_Minari_38d8a543.png","Farama-Foundation","Farama Foundation","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002FFarama-Foundation_61834603.png","The Farama foundation is a nonprofit organization working to develop and maintain open source reinforcement learning tools.",null,"contact@farama.org","FaramaFound","farama.org","https:\u002F\u002Fgithub.com\u002FFarama-Foundation",[86,90,94],{"name":87,"color":88,"percentage":89},"Python","#3572A5",99.5,{"name":91,"color":92,"percentage":93},"Dockerfile","#384d54",0.3,{"name":95,"color":96,"percentage":97},"Shell","#89e051",0.2,507,63,"2026-04-10T13:15:15","NOASSERTION","未说明",{"notes":104,"python":102,"dependencies":105},"该工具是一个用于离线强化学习研究的 Python 库。安装时默认仅包含最小依赖，可根据需求使用 'pip install \"minari[all]\"' 安装所有额外依赖。支持通过命令行下载和管理远程数据集（如 D4RL）。与 TorchRL、d3rlpy 和 AgileRL 等训练库集成。具体系统资源需求取决于所加载的数据集大小及后续使用的强化学习算法。",[106],"gymnasium",[16],[109,106,110,111],"datasets","offline-rl","reinforcement-learning","2026-03-27T02:49:30.150509","2026-04-11T04:56:26.000768",[115,120,125,130,135,140],{"id":116,"question_zh":117,"answer_zh":118,"source_url":119},28955,"如何在保存 Minari 数据集时只保留观测空间（observation space）的子集，以避免数据集过大？","可以通过自定义 `StepDataCallback` 来实现。在回调函数中过滤不需要的键，然后调用父类方法。虽然直接过滤可能会因缺少原始观测空间的某些键而报错，但最新的 Minari 版本和文档标准已支持此功能。请参考最新文档：https:\u002F\u002Fminari.farama.org\u002Fmain\u002Fcontent\u002Fdataset_standards\u002F。示例代码如下：\n```python\nclass TTYStepDataCallback(minari.StepDataCallback):\n    def __call__(self, env, obs, info, action=None, rew=None, terminated=None, truncated=None):\n        tty_filter_keys = [\"tty_chars\", \"tty_colors\", \"tty_cursor\"]\n        obs = {k: v for k, v in obs.items() if k in tty_filter_keys}\n        step_data = super().__call__(env, obs, info, action, rew, terminated, truncated)\n        return step_data\n```","https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fissues\u002F57",{"id":121,"question_zh":122,"answer_zh":123,"source_url":124},28956,"在使用 Minari 的 Antmaze 数据集进行离线强化学习时，为什么算法表现不如 D4RL 数据集？","这通常是由于 MuJoCo 版本不一致导致的复现问题。建议严格使用数据集元数据中指定的 MuJoCo 版本范围。对于 Antmaze 数据集，请安装以下版本的依赖：\n`gymnasium-robotics>=1.2.3`\n`mujoco>=3.1.1,\u003C=3.1.6`\n您可以尝试降级 MuJoCo 到 v3.1.6 并配合 gymnasium_robotics v1.3.1 进行测试。如果问题仍然存在，可能是因为数据集中包含大量静止积累的奖励转换，但这主要是版本兼容性问题。","https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fissues\u002F152",{"id":126,"question_zh":127,"answer_zh":128,"source_url":129},28957,"Minari 是否支持离散动作空间（discrete-action）的环境数据集？有哪些可用？","是的，Minari 支持离散动作空间的数据集。除了早期的 MiniGrid (Fourrooms) 数据集外，现在已添加了 Atari 数据集和 BabyAI 数据集。您可以从 Minari remote 获取这些数据集。此外，可以利用 CleanRL HF hub 上的预训练模型收集 Atari 数据，或使用 SB3 Zoo 中的模型收集 MiniGrid 数据。","https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fissues\u002F258",{"id":131,"question_zh":132,"answer_zh":133,"source_url":134},28958,"如何参与 Minari 项目的开源贡献，特别是添加测试或新任务？","欢迎加入 Farama Discord 社区（https:\u002F\u002Fdiscord.gg\u002FbnJ6kubTg6）并在 minari 频道提问以获取指导。维护者会分配具体的任务（如添加 `MinariDataset` 的测试）。如果是新手，可以先阅读官方文档（https:\u002F\u002Fminari.farama.org\u002Fmain\u002F）了解代码库结构。如果有任务依赖关系导致原任务被重新分配，维护者会创建新问题并指派给您。","https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fissues\u002F89",{"id":136,"question_zh":137,"answer_zh":138,"source_url":139},28959,"Minari 文档中某些表格（如 Atari 数据集页面）显示不完整或格式错误怎么办？","这通常是因为本地未下载数据集导致的渲染问题，或者是文档构建时的临时故障。如果您在 Codespace 或本地遇到表格行显示不全的问题，请确保已下载相关数据集。该问题已通过 PR #317 修复，请刷新文档页面或查看最新构建的文档：https:\u002F\u002Fminari.farama.org\u002Fmain\u002Fdatasets\u002Fatari\u002F。","https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fissues\u002F315",{"id":141,"question_zh":142,"answer_zh":143,"source_url":144},28960,"是否应该将 `ref_min_score` 和 `ref_max_score` 作为环境的属性而不是数据集的属性？","这是一个关于标准化指标的提议。目前 Minari 将这些分数作为数据集属性，以便不同数据集可以有独立的归一化基准。虽然 D4RL 将其作为环境属性（宏定义），但 Minari 的设计允许更灵活的处理。如果您需要统一的归一化指标，可以在代码中手动提取特定环境对应的参考分数，或者关注未来版本是否会将此逻辑移至环境包或 Minari 包的全局字典中。","https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fissues\u002F141",[146,151,156,161,166,171,176,181,186,191,196,201],{"id":147,"version":148,"summary_zh":149,"released_at":150},197786,"v0.5.3","## 变更摘要\n\n* 现在支持数据集的 **JPEG 编码**。\n* 我们的远程存储中新增了 57 个 **Atari 数据集**，这些数据集是使用 CleanRL 的专家策略收集的。\n* 现在除了 Arrow 外，还支持 **Parquet 存储**。\n\n## 具体变更\n* @younik 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F269 中统一了 terminated\u002Ftruncated 的命名规范。\n* @Tanmay692004 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F270 中更新了 README.md 文件。\n* 修复：（在数据集创建教程中）注册 PointMaze_Medium-v3 并修正 env.maze 的访问权限，由 @mengyuest 完成，见 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F272。\n* 修复 Windows 系统下的路径名称错误，由 @FlutteryEmbers 完成，见 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F278。\n* 如果观测值是图像，则进行 JPEG 编码和解码，由 @gabrielemaraglino 完成，见 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F275。\n* @younik 更新了 docs-test.yml 文件，见 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F280。\n* 修复 Minigrid 观测值的解码问题，由 @younik 完成，见 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F281。\n* 添加 Atari 相关文档，并优化 git clone 命令的速度，由 @younik 完成，见 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F283。\n* 修复 Hugging Face 远程存储的使用问题，由 @younik 完成，见 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F284。\n* 增加对 Parquet 存储的支持，由 @rob-pitkin 完成，见 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F285。\n* 文档（README）：添加了工作流链接，由 @wakened2024 完成，见 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F287。\n\n## 新贡献者\n* @Tanmay692004 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F270 中完成了首次贡献。\n* @mengyuest 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F272 中完成了首次贡献。\n* @FlutteryEmbers 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F278 中完成了首次贡献。\n* @gabrielemaraglino 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F275 中完成了首次贡献。\n* @rob-pitkin 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F285 中完成了首次贡献。\n* @wakened2024 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F287 中完成了首次贡献。\n\n**完整变更日志**：https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fcompare\u002Fv0.5.2...v0.5.3","2025-04-17T09:08:25",{"id":152,"version":153,"summary_zh":154,"released_at":155},197787,"v0.5.2","## 变更摘要\n\n- 新增远程数据集（BabyAI 和 MuJoCo）。\n- 支持 HuggingFace 作为远程存储（并将默认的 Farama 远程存储从 GCP 切换到 HuggingFace）。\n- 支持在 `list`、`download` 和 `show` 命令中使用完整路径，例如 `minari list hf:\u002F\u002Ffarama-minari\u002Fminigrid`。\n- 改进列出数据集时显示的信息。\n\n## 具体变更\n* 修复了大信息量下的 pyarrow 问题，并移除了 Gymnasium 日志记录器，由 @younik 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F248 中完成。\n* 提升了远程数据集列表的性能，由 @younik 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F249 中完成。\n* 自动更新数据集大小，由 @younik 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F251 中完成。\n* 测试 d3rlpy，由 @younik 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F252 中完成。\n* 功能增强：支持 MultiDiscrete 和 MultiBinary 空间，由 @younik 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F253 中完成。\n* 尝试在数据集文档生成中使用多进程，由 @younik 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F254 中完成。\n* 改进文档生成，由 @younik 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F255 中完成。\n* 修复自动生成的问题，由 @younik 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F256 中完成。\n* 添加 MuJoCo 数据集，由 @younik 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F257 中完成。\n* 功能增强：添加对 HuggingFace 的支持，由 @younik 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F259 中完成。\n* 将 `key_path` 重命名为 `token`，由 @younik 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F261 中完成。\n* 修复教程依赖项，由 @younik 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F262 中完成。\n* 功能增强：添加前缀支持，由 @younik 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F264 中完成。\n* 功能增强：在 CLI 列表中支持不断增长的数据集，由 @younik 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F266 中完成。\n* 功能增强：允许在 `list`、`download` 和 `show` 命令中使用完整的远程路径，由 @younik 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F267 中完成。\n* 添加带前缀的 CLI 列表功能，由 @younik 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F268 中完成。\n\n\n**完整变更日志**：https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fcompare\u002Fv0.5.1...v0.5.2","2024-12-09T15:42:04",{"id":157,"version":158,"summary_zh":159,"released_at":160},197788,"v0.5.1","小幅错误修复及 Python 3.12 支持。\n\n## 变更内容\n* 由 @kaixin96 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F239 中修复 Windows 系统下的 dataset_id 错误\n* 由 @younik 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F240 中修复未知作者显示的问题\n* 修复：避免因缺少数据集依赖而引发的错误，由 @younik 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F241 中完成\n* 更新 pre-commit 配置，由 @younik 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F244 中完成\n* 单步环境功能，由 @alexdavey 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F245 中实现\n* 增加对 Python 3.12 的支持，由 @younik 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F224 中完成\n\n## 新贡献者\n* @kaixin96 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F239 中完成了首次贡献\n\n**完整变更日志**：https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fcompare\u002Fv0.5.0...v0.5.1","2024-10-09T10:33:41",{"id":162,"version":163,"summary_zh":164,"released_at":165},197789,"v0.5.0","## 主要变更\n\n### PyArrow 支持\nMinari 现在支持 PyArrow 数据集。要使用 PyArrow 创建新数据集，请在创建 `DataCollector` 或使用缓冲区创建数据集时，将 `data_format` 标志设置为 `arrow`。例如：\n```python\nenv = DataCollector(env, data_format=\"arrow\")\n```\n加载数据集无需任何更改，Minari 会自动检测数据格式。\n\n### 命名空间\n现在可以将数据集分组，以创建更加有序的数据集中心。例如，当前的远程数据集是 `D4RL` 数据集的复现版本，它们被归入名为 `D4RL` 的命名空间下。我们鼓励根据生成数据集所使用的环境对数据集进行分组（如果适用）。例如，之前名为 `door-human-v2` 的数据集现在称为 `D4RL\u002Fdoor\u002Fhuman-v2`。`D4RL` 组以及其子组 `D4RL\u002Fdoor` 中都提供了多个数据集，如 `D4RL\u002Fdoor\u002Fcloned-v2`。这些分组后的数据集可以共享元数据，从而提升其组织性和可访问性。\n\n有关创建和管理命名空间的更多信息，请参阅[文档页面](https:\u002F\u002Fminari.farama.org\u002Fapi\u002Fnamespace\u002Fnamespace\u002F)。\n\n### 其他远程存储支持\n现在可以在 Minari 中设置自定义的远程存储。目前仅支持 Google Cloud 存储桶，但我们计划在未来增加对其他云服务的支持。要配置远程存储，请设置 `MINARI_REMOTE` 环境变量，例如：\n```bash\nexport MINARI_REMOTE=gcp:\u002F\u002Fbucket-name\n```\n\n## 破坏性变更\n本版本引入了几项破坏性变更：\n* 已弃用的 `DataCollector` 版本控制功能已被移除。现在只能导入 `DataCollector`，而不能以 `DataCollectorV0` 的形式导入。\n* `DataCollector` 不再支持 `max_episode_step` 参数。\n* 我们移除了已弃用的方法 `minari.create_dataset_from_collector_env`；请改用 `DataCollector.create_dataset`。\n* 如上文所述，命名规范已更改。在使用 Minari 0.5.0 时，远程数据集名称已更新为符合新规范。\n* 我们将 `total_timesteps` 重命名为 `total_steps`，以统一整个库中的命名。\n\n## 贡献者\n### 新贡献者\n* @tomekster 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F183 中做出了首次贡献。\n* @cmmcirvin 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F196 中做出了首次贡献。\n* @pseudo-rnd-thoughts 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F211 中做出了首次贡献。\n* @JosephCarrino 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F218 中做出了首次贡献。\n* @jamartinh 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F177 中做出了首次贡献。\n\n### 其他贡献者\n@younik @alexdavey @enerrio \n\n**完整变更日志**：https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fcompare\u002Fv0.4.3...v0.5.0","2024-08-29T11:51:03",{"id":167,"version":168,"summary_zh":169,"released_at":170},197790,"v0.4.3","## Minari 0.4.3 发行说明\n* 小小的简单修复：由 @im-Kitsch 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F144 中更新了 create_dataset 函数中丢失的信息。\n* 重构 DataCollectorV0 并隔离 HDF5 依赖，由 @younik 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F133 中完成。\n* 添加自定义空间序列化教程，由 @enerrio 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F151 中完成。\n* 添加基础 CI 以测试文档（使用 pytest-markdown-docs），由 @elliottower 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F153 中完成。\n* 将评估环境规范添加到数据集元数据中，由 @rodrigodelazcano 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F155 中完成。\n* 向 recover_env 添加关键字参数，由 @younik 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F161 中完成。\n* 修复合并数据集属性的问题，由 @younik 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F162 中完成。\n* 在合并数据集时添加观测和动作空间，由 @rodrigodelazcano 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F163 中完成。\n* 在临时的 Minari 数据集目录中运行测试，由 @alexdavey 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F160 中完成。\n* 强制要求空间，由 @rodrigodelazcano 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F164 中完成。\n* 添加 minigrid 文档，由 @younik 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F165 中完成。\n* 更新 pre-commit 以检查 gymnasium\u002Fpettingzoo 所做的所有内容，由 @elliottower 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F157 中完成。\n* 在从缓冲区创建环境时，使环境成为可选参数，由 @avjmachine 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F137 中完成。\n* 为 Minari 数据集添加 dataset_size 属性，由 @shreyansjainn 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F158 中完成。\n* 改进 README，由 @younik 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F167 中完成。\n* 弃用 create_dataset_from_collector_env，由 @avjmachine 完成，见 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F169。\n* 添加 minari show 功能，由 @alexdavey 完成，见 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F170。\n* 将 DataCollectorV0 重命名为 DataCollector，并添加弃用警告，由 @younik 完成，见 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F171。\n* 为 Datacollector 的重置添加自动种子设置，由 @alexdavey 完成，见 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F172。\n* 为 EpisodeData 添加 infos 字段，由 @balisujohn、@rodrigodelazcano 和 @younik 共同完成，见 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F132。\n\n## 新贡献者\n* @avjmachine 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F137 中完成了他们的首次贡献。\n\n**完整变更日志**：https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fcompare\u002Fv0.4.2...v0.4.3","2024-01-27T14:46:53",{"id":172,"version":173,"summary_zh":174,"released_at":175},197791,"v0.4.2","## Minari 0.4.2 发行说明\n* 使 list_local_datasets 更加健壮，并由 @grahamannett 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F126 中为 CLI 添加了基本测试\n* 修复动作噪声类型和取值需位于 (low, high) 范围内的问题，由 @grahamannett 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F128 中完成\n* 增加下载选项以加载数据集，由 @grahamannett 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F130 中实现\n* 提升 list_remote_datasets 的速度，由 @balisujohn 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F124 中完成\n* 改善 MinariDataset 的采样速度，修复 total_steps 错误并增加测试覆盖率，由 @balisujohn 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F129 中完成\n* 更新议题模板，由 @younik 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F139 中完成\n* 松弛 typing_extensions 依赖，由 @im-Kitsch 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F148 中完成\n\n## 新贡献者\n* @grahamannett 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F126 中完成了首次贡献\n* @im-Kitsch 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F148 中完成了首次贡献\n\n**完整变更日志**: https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fcompare\u002Fv0.4.1...v0.4.2","2023-10-09T05:46:12",{"id":177,"version":178,"summary_zh":179,"released_at":180},197792,"v0.4.1","# v0.4.1 版本更新日志\n\n错误修复：在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F121 中，将 `packaging` 添加为 Minari 的依赖项。","2023-07-19T14:25:14",{"id":182,"version":183,"summary_zh":184,"released_at":185},197793,"v0.4.0","# v0.4.0 发行说明\n\n本次 PR 中的重要变更包括：摒弃观测和动作的展平处理，转而明确且全面地支持 `Dict`、`Tuple`、`Box`、`Discrete` 和 `Text` 空间，并引入显式的数据集版本控制。此外，我们在创建数据集时新增了对环境动作\u002F观测空间子集的支持。\n\n最后，我们发布了各数据集的新版本，以使其符合我们的新数据集格式。这其中包括发行说明中“数据集更新”部分列出的所有更改。\n\n我们还新增了两篇教程：\n* [使用环境观测空间的子集创建数据集](https:\u002F\u002Fminari.farama.org\u002Ftutorials\u002Fdataset_creation\u002Fobservation_space_subseting\u002F)\n* [结合 rl_zoo3 和 PyTorch `DataLoader` 进行行为克隆](https:\u002F\u002Fminari.farama.org\u002Ftutorials\u002Fusing_datasets\u002Fbehavioral_cloning\u002F)\n\n\n### 非展平的 `Dict` 和 `Tuple` 空间支持\n以下摘自我们的文档，展示了现在如何支持非展平的 `gymnasium.spaces.Dict` 和 `gymnasium.spaces.Tuple`。\n\n假设观测空间是一个相对复杂的 `Dict` 空间，其定义如下：\n\n```python\nspaces.Dict(\n    {\n        \"component_1\": spaces.Box(low=-1, high=1, dtype=np.float32),\n        \"component_2\": spaces.Dict(\n            {\n                \"subcomponent_1\": spaces.Box(low=2, high=3, dtype=np.float32),\n                \"subcomponent_2\": spaces.Box(low=4, high=5, dtype=np.float32),\n            }\n        ),\n    }\n)\n```\n\n而动作空间为 `Box` 空间时，最终生成的 `HDF5` 文件将呈现如下结构：\n\n:page_facing_up: main_data.hdf5  \n├ :file_folder: episode_0  \n│  &nbsp;├ :file_folder: observations  \n│  &nbsp;│  &nbsp;├ :floppy_disk: component_1  \n│  &nbsp;│  &nbsp;└ :file_folder: component_2  \n│  &nbsp;│  &ensp; &emsp; ├ :floppy_disk: subcomponent_1  \n│  &nbsp;│  &ensp; &emsp; └ :floppy_disk: subcomponent_2  \n│  &nbsp;├ :floppy_disk: actions  \n│  &nbsp;├ :floppy_disk: terminations  \n│  &nbsp;├ :floppy_disk: truncations  \n│  &nbsp;├ :floppy_disk: rewards  \n│  &nbsp;├ :file_folder: infos  \n│  &nbsp;│  &nbsp;├ :floppy_disk: infos_datasets  \n│  &nbsp;│  &nbsp;└ :file_folder: infos_subgroup  \n│  &nbsp;│  &ensp; &emsp; └ :floppy_disk: more_datasets  \n│  &nbsp;└ :file_folder: additional_groups  \n│   &ensp; &emsp; └ :floppy_disk: additional_datasets  \n├ :file_folder: episode_1  \n├ :file_folder: episode_2  \n│  \n└ :file_folder: last_episode_id  \n\n同样地，再考虑一种情况：观测空间为 `Box` 空间，而动作空间则是一个相对复杂的 `Tuple` 空间，其定义如下：\n\n```python\nspaces.Tuple(\n    (\n        spaces.Box(low=2, high=3, dtype=np.float32),\n        spaces.Tuple(\n            (\n                spaces.Box(low=2, high=3, dtype=np.float32),\n                spaces.Box(low=4, high=5, dtype=np.float32),\n            )\n        ),\n    )\n)\n```\n\n在这种情况下，最终生成的 Min","2023-07-19T13:33:52",{"id":187,"version":188,"summary_zh":189,"released_at":190},197794,"v0.3.1","# v0.3.1 发行说明\n次要版本，用于修复以下 bug：\n* 修复合并多个数据集的问题。使用 `h5py` 的 `dataset.attrs.modify()` 方法更新 `\"author\"` 和 `\"author_email\"` 元数据属性。同时添加了 CI 测试。@Howuhh 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F60 中完成。\n* 修复 `.github\u002Fworkflows\u002Fbuild-docs-version.yml`。该工作流缺少运行数据集文档生成脚本 `python docs\u002F_scripts\u002Fgen_dataset_md.py` 以及 `SPHINX_GITHUB_CHANGELOG_TOKEN` 环境变量的步骤。@rodrigodelazcano 在 https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F71 中完成。\n\n\n**完整变更日志**：https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fcompare\u002Fv0.3.0...v0.3.1","2023-05-19T03:57:05",{"id":192,"version":193,"summary_zh":194,"released_at":195},197795,"v0.3.0","# v0.3.0：Minari 已准备好进行测试\n\n## **Minari 0.3.0 发行说明：**\n\n对于此次 Beta 版本，Minari 相较于之前的 `v0.2.2` 版本发生了重大变化。作为一次大规模重构，我们移除了 C 源代码和 Cython 依赖，转而采用纯 Python API，以降低代码复杂度。如果未来需要更高效的 API，我们将考虑引入 C 语言。\n\n除了 API 的变更和新增功能外，我们还很高兴地推出了首批官方 Minari 数据集，这些数据集均基于 D4RL 项目重新构建。\n\n文档页面 https:\u002F\u002Fminari.farama.org\u002F 也已更新，反映了最新的改动。\n\n我们仍在持续开发这个库。如果您有任何想法或遇到任何问题，请随时在 GitHub 上提交 Issue，或直接与我们联系。您的建议和贡献对我们非常重要，将有助于塑造这个库的未来。感谢您使用我们的库！\n\n## 新特性与改进\n\n### 数据集文件格式\n\n我们继续使用 [HDF5](https:\u002F\u002Fwww.hdfgroup.org\u002Fsolutions\u002Fhdf5\u002F) 文件格式来存储 Minari 数据集。不过，数据集的内部结构已经进行了调整。现在，数据是以每个 episode 为单位进行存储的。每个 Minari 数据集至少包含一个 HDF5 文件（:page_facing_up:，`main_data.hdf5`）。在该数据集文件中，收集到的 transition 按照 episode 分组 (:file_folder:) 存储，每个 episode 包含 5 个必选的数据集 (:floppy_disk:)：`observations`、`actions`、`terminations`、`truncations` 和 `rewards`。此外，每个 episode 还可以包含其他可选的组和数据集，例如每一步的 `infos` 返回值。这种结构使我们能够为每个 episode 存储 [元数据](https:\u002F\u002Fminari.farama.org\u002Fmain\u002Fcontent\u002Fdataset_standards\u002F#default-dataset-metadata)。\n\n:page_facing_up: main_data.hdf5  \n├ :file_folder: episode_id  \n│  &nbsp;├ :floppy_disk: observations  \n│  &nbsp;├ :floppy_disk: actions  \n│  &nbsp;├ :floppy_disk: terminations  \n│  &nbsp;├ :floppy_disk: truncations  \n│  &nbsp;├ :floppy_disk: rewards  \n│  &nbsp;├ :file_folder: infos  \n│  &nbsp;│  &nbsp;├ :floppy_disk: info 数据集  \n│  &nbsp;│  &nbsp;└ :file_folder: info 子组  \n│  &nbsp;│  &ensp; &emsp; └ :floppy_disk: info 子组数据集  \n│  &nbsp;└ :file_folder: 额外数据集组  \n│   &ensp; &emsp; └ :floppy_disk: 额外数据集  \n└ :file_folder: next_episode_id  \n\n### MinariDataset\n\n在 [加载](https:\u002F\u002Fminari.farama.org\u002Fmain\u002Fcontent\u002Fbasic_usage\u002F#using-minari-datasets) 数据集时，[MinariDataset](https:\u002F\u002Fminari.farama.org\u002Fmain\u002Fapi\u002Fminari_dataset\u002Fminari_dataset\u002F) 对象现在会将 HDF5 文件的访问权限委托给一个 [MinariStorage](https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fblob\u002F901235974ca69b175ddb7de4faff40dba4b13ede\u002Fminari\u002Fdataset\u002Fminari_storage.py#L12) 对象。[MinariDataset](https:\u002F\u002Fminari.farama.org\u002Fmain\u002Fapi\u002Fminari_dataset\u002Fminari_dataset\u002F) 提供了新的方法（[`MinariDataset.sample_episodes()`](https:\u002F\u002Fminari.farama.org\u002Fmain\u002Fapi\u002Fminari_dataset\u002Fminari_dataset\u002F#minari.MinariDataset.s","2023-05-17T14:59:33",{"id":197,"version":198,"summary_zh":199,"released_at":200},197796,"0.2.2","## What's Changed\r\n* Minari rename by @WillDudley in https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F8\r\n* Environment name by @WillDudley in https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F11\r\n* update naming conventions by @WillDudley in https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F13\r\n* allow nonetypes of codelink, author and email by @WillDudley in https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F12\r\n* Environment stack by @WillDudley in https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F14\r\n* PR tests by @WillDudley in https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F22\r\n* import_bugfix by @WillDudley in https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F26\r\n* Add docs versioning by @mgoulao in https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F28\r\n\r\n## New Contributors\r\n* @mgoulao made their first contribution in https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fpull\u002F28\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FMinari\u002Fcompare\u002F0.1.0...0.2.2","2023-01-04T11:56:26",{"id":202,"version":203,"summary_zh":204,"released_at":205},197797,"0.1.0","## What's Changed\r\n* init structure by @WillDudley in https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FKabuki\u002Fpull\u002F3\r\n* remove residual PZ files by @WillDudley in https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FKabuki\u002Fpull\u002F4\r\n* precommit by @WillDudley in https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FKabuki\u002Fpull\u002F5\r\n* Wd\u002Fmdp dataset by @WillDudley in https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FKabuki\u002Fpull\u002F6\r\n\r\n## New Contributors\r\n* @WillDudley made their first contribution in https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FKabuki\u002Fpull\u002F3\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002FFarama-Foundation\u002FKabuki\u002Fcommits\u002F0.1.0","2022-11-04T20:22:09"]