[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-facebookresearch--hydra":3,"tool-facebookresearch--hydra":61},[4,18,26,36,44,53],{"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":10,"last_commit_at":24,"category_tags":25,"status":17},3808,"stable-diffusion-webui","AUTOMATIC1111\u002Fstable-diffusion-webui","stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面，旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点，将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。\n\n无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师，还是想要深入探索模型潜力的开发者与研究人员，都能从中获益。其核心亮点在于极高的功能丰富度：不仅支持文生图、图生图、局部重绘（Inpainting）和外绘（Outpainting）等基础模式，还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外，它内置了 GFPGAN 和 CodeFormer 等人脸修复工具，支持多种神经网络放大算法，并允许用户通过插件系统无限扩展能力。即使是显存有限的设备，stable-diffusion-webui 也提供了相应的优化选项，让高质量的 AI 艺术创作变得触手可及。",162132,"2026-04-05T11:01:52",[14,15,13],{"id":27,"name":28,"github_repo":29,"description_zh":30,"stars":31,"difficulty_score":32,"last_commit_at":33,"category_tags":34,"status":17},1381,"everything-claude-code","affaan-m\u002Feverything-claude-code","everything-claude-code 是一套专为 AI 编程助手（如 Claude Code、Codex、Cursor 等）打造的高性能优化系统。它不仅仅是一组配置文件，而是一个经过长期实战打磨的完整框架，旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。\n\n通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能，everything-claude-code 能显著提升 AI 在复杂任务中的表现，帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略，使得模型响应更快、成本更低，同时有效防御潜在的攻击向量。\n\n这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库，还是需要 AI 协助进行安全审计与自动化测试，everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目，它融合了多语言支持与丰富的实战钩子（hooks），让 AI 真正成长为懂上",157379,2,"2026-04-15T23:32:42",[14,13,35],"语言模型",{"id":37,"name":38,"github_repo":39,"description_zh":40,"stars":41,"difficulty_score":32,"last_commit_at":42,"category_tags":43,"status":17},2271,"ComfyUI","Comfy-Org\u002FComfyUI","ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎，专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式，采用直观的节点式流程图界面，让用户通过连接不同的功能模块即可构建个性化的生成管线。\n\n这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景，也能自由组合模型、调整参数并实时预览效果，轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性，不仅支持 Windows、macOS 和 Linux 全平台，还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构，并率先支持 SDXL、Flux、SD3 等前沿模型。\n\n无论是希望深入探索算法潜力的研究人员和开发者，还是追求极致创作自由度的设计师与资深 AI 绘画爱好者，ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能，使其成为当前最灵活、生态最丰富的开源扩散模型工具之一，帮助用户将创意高效转化为现实。",108322,"2026-04-10T11:39:34",[14,15,13],{"id":45,"name":46,"github_repo":47,"description_zh":48,"stars":49,"difficulty_score":32,"last_commit_at":50,"category_tags":51,"status":17},6121,"gemini-cli","google-gemini\u002Fgemini-cli","gemini-cli 是一款由谷歌推出的开源 AI 命令行工具，它将强大的 Gemini 大模型能力直接集成到用户的终端环境中。对于习惯在命令行工作的开发者而言，它提供了一条从输入提示词到获取模型响应的最短路径，无需切换窗口即可享受智能辅助。\n\n这款工具主要解决了开发过程中频繁上下文切换的痛点，让用户能在熟悉的终端界面内直接完成代码理解、生成、调试以及自动化运维任务。无论是查询大型代码库、根据草图生成应用，还是执行复杂的 Git 操作，gemini-cli 都能通过自然语言指令高效处理。\n\n它特别适合广大软件工程师、DevOps 人员及技术研究人员使用。其核心亮点包括支持高达 100 万 token 的超长上下文窗口，具备出色的逻辑推理能力；内置 Google 搜索、文件操作及 Shell 命令执行等实用工具；更独特的是，它支持 MCP（模型上下文协议），允许用户灵活扩展自定义集成，连接如图像生成等外部能力。此外，个人谷歌账号即可享受免费的额度支持，且项目基于 Apache 2.0 协议完全开源，是提升终端工作效率的理想助手。",100752,"2026-04-10T01:20:03",[52,13,15,14],"插件",{"id":54,"name":55,"github_repo":56,"description_zh":57,"stars":58,"difficulty_score":32,"last_commit_at":59,"category_tags":60,"status":17},4721,"markitdown","microsoft\u002Fmarkitdown","MarkItDown 是一款由微软 AutoGen 团队打造的轻量级 Python 工具，专为将各类文件高效转换为 Markdown 格式而设计。它支持 PDF、Word、Excel、PPT、图片（含 OCR）、音频（含语音转录）、HTML 乃至 YouTube 链接等多种格式的解析，能够精准提取文档中的标题、列表、表格和链接等关键结构信息。\n\n在人工智能应用日益普及的今天，大语言模型（LLM）虽擅长处理文本，却难以直接读取复杂的二进制办公文档。MarkItDown 恰好解决了这一痛点，它将非结构化或半结构化的文件转化为模型“原生理解”且 Token 效率极高的 Markdown 格式，成为连接本地文件与 AI 分析 pipeline 的理想桥梁。此外，它还提供了 MCP（模型上下文协议）服务器，可无缝集成到 Claude Desktop 等 LLM 应用中。\n\n这款工具特别适合开发者、数据科学家及 AI 研究人员使用，尤其是那些需要构建文档检索增强生成（RAG）系统、进行批量文本分析或希望让 AI 助手直接“阅读”本地文件的用户。虽然生成的内容也具备一定可读性，但其核心优势在于为机器",93400,"2026-04-06T19:52:38",[52,14],{"id":62,"github_repo":63,"name":64,"description_en":65,"description_zh":66,"ai_summary_zh":66,"readme_en":67,"readme_zh":68,"quickstart_zh":69,"use_case_zh":70,"hero_image_url":71,"owner_login":72,"owner_name":73,"owner_avatar_url":74,"owner_bio":75,"owner_company":76,"owner_location":76,"owner_email":76,"owner_twitter":76,"owner_website":77,"owner_url":78,"languages":79,"stars":115,"forks":116,"last_commit_at":117,"license":118,"difficulty_score":119,"env_os":75,"env_gpu":120,"env_ram":120,"env_deps":121,"category_tags":124,"github_topics":76,"view_count":32,"oss_zip_url":76,"oss_zip_packed_at":76,"status":17,"created_at":125,"updated_at":126,"faqs":127,"releases":148},8085,"facebookresearch\u002Fhydra","hydra","Hydra is a framework for elegantly configuring complex applications","Hydra 是一个专为优雅配置复杂应用程序而设计的开源框架，由 Meta AI 研发并维护。在机器学习实验或大型软件开发中，研究人员和开发者常常面临参数繁多、组合复杂且难以复现的痛点。Hydra 通过引入分层配置系统，让用户能够灵活地组合配置文件、动态覆盖参数，并从命令行轻松管理实验设置，从而有效解决了配置混乱和环境不一致的难题。\n\n这款工具特别适合需要频繁调整超参数的 AI 研究员、数据科学家以及构建模块化系统的软件工程师。其核心技术亮点在于强大的配置组合能力与插件化架构，支持运行时动态修改配置而无需更改代码，并能无缝集成 PyTorch Lightning 等主流深度学习库。此外，丰富的生态系统提供了如 hydra-zen 等扩展库，进一步增强了类型安全和动态生成配置的能力。无论是进行单次模型训练还是大规模分布式实验，Hydra 都能帮助团队以更清晰、高效的方式管理工作流，让复杂的配置变得井井有条。","\u003Cp align=\"center\">\u003Cimg src=\"https:\u002F\u002Fraw.githubusercontent.com\u002Ffacebookresearch\u002Fhydra\u002Fmain\u002Fwebsite\u002Fstatic\u002Fimg\u002FHydra-Readme-logo2.svg\" alt=\"logo\" width=\"70%\" \u002F>\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n  \u003Ca href=\"https:\u002F\u002Fpypi.org\u002Fproject\u002Fhydra-core\u002F\">\n    \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fpypi\u002Fv\u002Fhydra-core\" alt=\"PyPI\" \u002F>\n  \u003C\u002Fa>\n  \u003Ca href=\"https:\u002F\u002Fcircleci.com\u002Fgh\u002Ffacebookresearch\u002Fhydra\">\n    \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fcircleci\u002Fbuild\u002Fgithub\u002Ffacebookresearch\u002Fhydra?token=af199cd2deca9e70e53776f9ded96284b10687e9\" alt=\"CircleCI\" \u002F>\n  \u003C\u002Fa>\n  \u003Ca href=\"#\">\n    \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fpypi\u002Fl\u002Fhydra-core\" alt=\"PyPI - License\" \u002F>\n  \u003C\u002Fa>\n  \u003Ca href=\"#\">\n    \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fpypi\u002Fpyversions\u002Fhydra-core\" alt=\"PyPI - Python Version\" \u002F>\n  \u003C\u002Fa>\n  \u003Ca href=\"https:\u002F\u002Fwww.pepy.tech\u002Fprojects\u002Fhydra-core?versions=0.11.*&versions=1.0.*&versions=1.1.*&versions=1.2.*&versions=1.3.*&versions=1.4.*\">\n    \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Ffacebookresearch_hydra_readme_0257bf360340.png\" alt=\"Downloads\" \u002F>\n  \u003C\u002Fa>\n  \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fpsf\u002Fblack\">\n    \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fcode%20style-black-000000.svg\" alt=\"Code style: black\" \u002F>\n  \u003C\u002Fa>\n  \u003Cp align=\"center\">\n    \u003Ci>A framework for elegantly configuring complex applications.\u003C\u002Fi>\n  \u003C\u002Fp>\n  \u003Cp align=\"center\">\n    \u003Ci>Check the \u003Ca href=\"https:\u002F\u002Fhydra.cc\u002F\">website\u003C\u002Fa> for more information,\u003Cbr>\n    or click the thumbnail below for a one-minute video introduction to Hydra.\u003C\u002Fi>\n  \u003C\u002Fp>\n  \u003Cp align=\"center\">\n   \u003Ca href=\"http:\u002F\u002Fwww.youtube.com\u002Fwatch?feature=player_embedded&v=Slc3gRQpnBI\" target=\"_blank\">\n     \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Ffacebookresearch_hydra_readme_1d00daf1cd0f.jpg\" alt=\"1 minute overview\" width=\"240\" height=\"180\" border=\"10\" \u002F>\n   \u003C\u002Fa>\n  \u003C\u002Fp>\n\u003C\u002Fp>\n\n----------------------\n\n\n### Releases\n\n#### Stable\n\n**Hydra 1.3** is the stable version of Hydra.\n- [Documentation](https:\u002F\u002Fhydra.cc\u002Fdocs\u002F1.3\u002Fintro\u002F)\n- Installation : `pip install hydra-core --upgrade`\n\nSee the [NEWS.md](NEWS.md) file for a summary of recent changes to Hydra.\n\n### License\nHydra is licensed under [MIT License](LICENSE).\n\n## Hydra Ecosystem\n\n#### Check out these third-party libraries that build on Hydra's functionality:\n* [hydra-zen](https:\u002F\u002Fgithub.com\u002Fmit-ll-responsible-ai\u002Fhydra-zen): Pythonic utilities for working with Hydra. Dynamic config generation capabilities, enhanced config store features, a Python API for launching Hydra jobs, and more.\n* [lightning-hydra-template](https:\u002F\u002Fgithub.com\u002Fashleve\u002Flightning-hydra-template): user-friendly template combining Hydra with [Pytorch-Lightning](https:\u002F\u002Fgithub.com\u002FLightning-AI\u002Flightning) for ML experimentation.\n* [hydra-torch](https:\u002F\u002Fgithub.com\u002Fpytorch\u002Fhydra-torch): [configen](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Ftree\u002Fmain\u002Ftools\u002Fconfigen)-generated configuration classes enabling type-safe PyTorch configuration for Hydra apps.\n* NVIDIA's DeepLearningExamples repository contains a Hydra Launcher plugin, the [distributed_launcher](https:\u002F\u002Fgithub.com\u002FNVIDIA\u002FDeepLearningExamples\u002Ftree\u002F9c34e35c218514b8607d7cf381d8a982a01175e9\u002FTools\u002FPyTorch\u002FTimeSeriesPredictionPlatform\u002Fdistributed_launcher), which makes use of the pytorch [distributed.launch](https:\u002F\u002Fpytorch.org\u002Fdocs\u002Fstable\u002Fdistributed.html#launch-utility) API.\n\n#### Ask questions in Github Discussions or StackOverflow (Use the tag #fb-hydra or #omegaconf):\n* [Github Discussions](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fdiscussions)\n* [StackOverflow](https:\u002F\u002Fstackexchange.com\u002Ffilters\u002F391828\u002Fhydra-questions)\n* [Twitter](https:\u002F\u002Ftwitter.com\u002FHydra_Framework)\n\nCheck out the Meta AI [blog post](https:\u002F\u002Fai.facebook.com\u002Fblog\u002Freengineering-facebook-ais-deep-learning-platforms-for-interoperability\u002F) to learn about how Hydra fits into Meta's efforts to reengineer deep learning platforms for interoperability.\n\n### Citing Hydra\nIf you use Hydra in your research please use the following BibTeX entry:\n```BibTeX\n@Misc{Yadan2019Hydra,\n  author =       {Omry Yadan},\n  title =        {Hydra - A framework for elegantly configuring complex applications},\n  howpublished = {Github},\n  year =         {2019},\n  url =          {https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra}\n}\n```\n\n","\u003Cp align=\"center\">\u003Cimg src=\"https:\u002F\u002Fraw.githubusercontent.com\u002Ffacebookresearch\u002Fhydra\u002Fmain\u002Fwebsite\u002Fstatic\u002Fimg\u002FHydra-Readme-logo2.svg\" alt=\"logo\" width=\"70%\" \u002F>\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n  \u003Ca href=\"https:\u002F\u002Fpypi.org\u002Fproject\u002Fhydra-core\u002F\">\n    \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fpypi\u002Fv\u002Fhydra-core\" alt=\"PyPI\" \u002F>\n  \u003C\u002Fa>\n  \u003Ca href=\"https:\u002F\u002Fcircleci.com\u002Fgh\u002Ffacebookresearch\u002Fhydra\">\n    \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fcircleci\u002Fbuild\u002Fgithub\u002Ffacebookresearch\u002Fhydra?token=af199cd2deca9e70e53776f9ded96284b10687e9\" alt=\"CircleCI\" \u002F>\n  \u003C\u002Fa>\n  \u003Ca href=\"#\">\n    \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fpypi\u002Fl\u002Fhydra-core\" alt=\"PyPI - License\" \u002F>\n  \u003C\u002Fa>\n  \u003Ca href=\"#\">\n    \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fpypi\u002Fpyversions\u002Fhydra-core\" alt=\"PyPI - Python Version\" \u002F>\n  \u003C\u002Fa>\n  \u003Ca href=\"https:\u002F\u002Fwww.pepy.tech\u002Fprojects\u002Fhydra-core?versions=0.11.*&versions=1.0.*&versions=1.1.*&versions=1.2.*&versions=1.3.*&versions=1.4.*\">\n    \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Ffacebookresearch_hydra_readme_0257bf360340.png\" alt=\"Downloads\" \u002F>\n  \u003C\u002Fa>\n  \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fpsf\u002Fblack\">\n    \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fcode%20style-black-000000.svg\" alt=\"代码风格：black\" \u002F>\n  \u003C\u002Fa>\n  \u003Cp align=\"center\">\n    \u003Ci>一个用于优雅配置复杂应用的框架。\u003C\u002Fi>\n  \u003C\u002Fp>\n  \u003Cp align=\"center\">\n    \u003Ci>访问\u003Ca href=\"https:\u002F\u002Fhydra.cc\u002F\">官网\u003C\u002Fa>获取更多信息，\u003Cbr>或点击下方缩略图观看关于Hydra的一分钟介绍视频。\u003C\u002Fi>\n  \u003C\u002Fp>\n  \u003Cp align=\"center\">\n   \u003Ca href=\"http:\u002F\u002Fwww.youtube.com\u002Fwatch?feature=player_embedded&v=Slc3gRQpnBI\" target=\"_blank\">\n     \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Ffacebookresearch_hydra_readme_1d00daf1cd0f.jpg\" alt=\"1分钟概览\" width=\"240\" height=\"180\" border=\"10\" \u002F>\n   \u003C\u002Fa>\n  \u003C\u002Fp>\n\u003C\u002Fp>\n\n----------------------\n\n\n### 发布版本\n\n#### 稳定版\n\n**Hydra 1.3** 是 Hydra 的稳定版本。\n- [文档](https:\u002F\u002Fhydra.cc\u002Fdocs\u002F1.3\u002Fintro\u002F)\n- 安装命令：`pip install hydra-core --upgrade`\n\n有关 Hydra 最近变更的摘要，请参阅 [NEWS.md](NEWS.md) 文件。\n\n### 许可证\nHydra 采用 [MIT 许可证](LICENSE) 许可。\n\n## Hydra 生态系统\n\n#### 以下是一些基于 Hydra 功能构建的第三方库：\n* [hydra-zen](https:\u002F\u002Fgithub.com\u002Fmit-ll-responsible-ai\u002Fhydra-zen)：用于与 Hydra 配合使用的 Python 式工具。提供动态配置生成能力、增强的配置存储功能、用于启动 Hydra 作业的 Python API 等。\n* [lightning-hydra-template](https:\u002F\u002Fgithub.com\u002Fashleve\u002Flightning-hydra-template)：一款用户友好的模板，将 Hydra 与 [Pytorch-Lightning](https:\u002F\u002Fgithub.com\u002FLightning-AI\u002Flightning) 结合，适用于机器学习实验。\n* [hydra-torch](https:\u002F\u002Fgithub.com\u002Fpytorch\u002Fhydra-torch)：由 [configen](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Ftree\u002Fmain\u002Ftools\u002Fconfigen) 生成的配置类，为 Hydra 应用程序提供类型安全的 PyTorch 配置。\n* NVIDIA 的 DeepLearningExamples 仓库包含一个 Hydra 启动器插件，即 [distributed_launcher](https:\u002F\u002Fgithub.com\u002FNVIDIA\u002FDeepLearningExamples\u002Ftree\u002F9c34e35c218514b8607d7cf381d8a982a01175e9\u002FTools\u002FPyTorch\u002FTimeSeriesPredictionPlatform\u002Fdistributed_launcher)，它利用了 PyTorch 的 [distributed.launch](https:\u002F\u002Fpytorch.org\u002Fdocs\u002Fstable\u002Fdistributed.html#launch-utility) API。\n\n#### 如有任何问题，欢迎在 Github 讨论区或 StackOverflow 上提问（使用标签 #fb-hydra 或 #omegaconf）：\n* [Github 讨论区](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fdiscussions)\n* [StackOverflow](https:\u002F\u002Fstackexchange.com\u002Ffilters\u002F391828\u002Fhydra-questions)\n* [Twitter](https:\u002F\u002Ftwitter.com\u002FHydra_Framework)\n\n请查看 Meta AI 的[博客文章](https:\u002F\u002Fai.facebook.com\u002Fblog\u002Freengineering-facebook-ais-deep-learning-platforms-for-interoperability\u002F)，了解 Hydra 如何融入 Meta 为实现深度学习平台互操作性而进行的重构工作中。\n\n### 引用 Hydra\n如果您在研究中使用 Hydra，请使用以下 BibTeX 条目：\n```BibTeX\n@Misc{Yadan2019Hydra,\n  author =       {Omry Yadan},\n  title =        {Hydra - 一个用于优雅配置复杂应用的框架},\n  howpublished = {Github},\n  year =         {2019},\n  url =          {https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra}\n}\n```","# Hydra 快速上手指南\n\nHydra 是一个用于优雅地配置复杂应用程序的框架，特别适合机器学习和深度学习实验。它基于 OmegaConf，支持层级配置、动态组合和命令行覆盖。\n\n## 环境准备\n\n- **操作系统**：Linux, macOS, Windows\n- **Python 版本**：3.8 - 3.12\n- **前置依赖**：无特殊系统级依赖，需确保已安装 `pip` 和 `python`\n\n## 安装步骤\n\n推荐使用国内镜像源加速安装（如清华大学开源软件镜像站）：\n\n```bash\npip install hydra-core --upgrade -i https:\u002F\u002Fpypi.tuna.tsinghua.edu.cn\u002Fsimple\n```\n\n若需使用最新开发版（不推荐生产环境）：\n\n```bash\npip install --pre hydra-core -i https:\u002F\u002Fpypi.tuna.tsinghua.edu.cn\u002Fsimple\n```\n\n验证安装：\n\n```bash\npython -c \"import hydra; print(hydra.__version__)\"\n```\n\n## 基本使用\n\n### 1. 创建配置文件\n\n在项目根目录创建 `config.yaml`：\n\n```yaml\ndb:\n  driver: mysql\n  user: omry\n  pass: secret\n```\n\n### 2. 编写 Python 应用\n\n创建 `my_app.py`：\n\n```python\nimport hydra\nfrom omegaconf import DictConfig\n\n@hydra.main(version_base=None, config_path=\".\", config_name=\"config\")\ndef my_app(cfg: DictConfig) -> None:\n    print(f\"Database driver: {cfg.db.driver}\")\n    print(f\"User: {cfg.db.user}\")\n\nif __name__ == \"__main__\":\n    my_app()\n```\n\n### 3. 运行应用\n\n默认运行：\n\n```bash\npython my_app.py\n```\n\n通过命令行覆盖配置：\n\n```bash\npython my_app.py db.driver=postgresql db.user=admin\n```\n\n查看生成的配置日志目录（Hydra 自动创建）：\n\n```bash\nls outputs\u002F\n```\n\n---\n\n现在你已成功使用 Hydra 管理应用配置。更多高级功能（如多配置组合、插件系统）请参考官方文档：https:\u002F\u002Fhydra.cc","某机器学习团队正在开发一个需要频繁调整超参数（如学习率、模型层数、数据集路径）的深度学习训练系统。\n\n### 没有 hydra 时\n- **配置硬编码严重**：所有参数直接写死在 Python 代码中，每次修改实验设置都必须编辑源码并重新提交代码，极易引入人为错误。\n- **组合爆炸难管理**：面对多组超参数组合实验，开发者不得不编写大量重复的 shell 脚本或手动复制多个配置文件，维护成本极高。\n- **缺乏层级结构**：扁平的配置字典无法清晰表达模型、数据、训练器等模块的从属关系，导致大型项目配置混乱且难以阅读。\n- **复现困难**：由于缺乏统一的配置版本管理和自动记录机制，事后很难精确回溯某次特定实验究竟使用了哪些具体参数。\n\n### 使用 hydra 后\n- **配置与代码解耦**：通过 YAML 文件集中管理所有参数，开发者只需运行命令并传入覆盖参数（如 `lr=0.01`），无需触碰任何业务代码即可启动新实验。\n- **强大的组合能力**：利用 Hydra 的配置组（Config Groups）功能，可像搭积木一样灵活切换不同模型架构或数据集，一行命令即可自动遍历多种参数组合。\n- **优雅的层级配置**：支持嵌套式配置结构，自然映射代码中的对象层次，使复杂应用的配置逻辑清晰直观，大幅降低理解门槛。\n- **自动记录与复现**：Hydra 自动将每次运行的完整配置快照保存到输出目录，确保任何实验结果都能被精确复现和追溯。\n\nHydra 通过将繁琐的配置管理转化为声明式的优雅操作，让研发团队能从“改代码调参”的低效循环中解放出来，专注于核心算法创新。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Ffacebookresearch_hydra_fc02d9f4.png","facebookresearch","Meta Research","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002Ffacebookresearch_449342bd.png","",null,"https:\u002F\u002Fopensource.fb.com","https:\u002F\u002Fgithub.com\u002Ffacebookresearch",[80,84,88,92,96,100,104,108,112],{"name":81,"color":82,"percentage":83},"Python","#3572A5",96.8,{"name":85,"color":86,"percentage":87},"JavaScript","#f1e05a",1.7,{"name":89,"color":90,"percentage":91},"ANTLR","#9DC3FF",0.5,{"name":93,"color":94,"percentage":95},"Jupyter Notebook","#DA5B0B",0.4,{"name":97,"color":98,"percentage":99},"CSS","#663399",0.3,{"name":101,"color":102,"percentage":103},"HTML","#e34c26",0.2,{"name":105,"color":106,"percentage":107},"Shell","#89e051",0.1,{"name":109,"color":110,"percentage":111},"Gherkin","#5B2063",0,{"name":113,"color":114,"percentage":111},"Jinja","#a52a22",10321,827,"2026-04-15T16:53:31","MIT",1,"未说明",{"notes":122,"python":120,"dependencies":123},"Hydra 是一个用于优雅配置复杂应用程序的框架，本身不强制依赖特定的 GPU、内存或操作系统。安装命令为 `pip install hydra-core --upgrade`。文中提到的 PyTorch、NVIDIA 分布式启动器等均为第三方生态插件或示例应用的需求，非 Hydra 核心框架的直接运行需求。具体版本兼容性请参考 PyPI 徽章或官方文档。",[],[14],"2026-03-27T02:49:30.150509","2026-04-16T15:59:55.447166",[128,133,138,143],{"id":129,"question_zh":130,"answer_zh":131,"source_url":132},36188,"在使用 Submitit Launcher 时，为什么无法设置 mem_per_gpu 或 cpus_per_gpu 等特定标志？","这是由于 Slurm 后端参数冲突导致的。如果同时设置 mem 和 mem_per_gpu，或者 cpus_per_task 和 cpus_per_gpu，Slurm 可能会崩溃。作为变通方案，建议跳过 mem_per_gpu 标志，仅指定 mem_per_cpu 标志，并确保选择的 GPU 具有足够的内存。配置示例如下：\nlauncher:\n    _target_: hydra_plugins.hydra_submitit_launcher.submitit_launcher.SlurmLauncher\n    additional_parameters:\n      mem_per_cpu: 32GB\n      cpus_per_gpu: 1\n      gpus_per_task: 3g.39gb:1\n      time: 1-23:00:00\n如果生成的 sbatch 脚本看起来正确但仍报错，请联系 Slurm 管理员检查后端是否设置了默认的 mem 字段。","https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1366",{"id":134,"question_zh":135,"answer_zh":136,"source_url":137},36189,"使用 PyTorch DDP (Distributed Data Parallel) 时为什么看不到任何日志输出？","这通常是因为缺乏最小可复现示例（minimal repro）导致难以定位具体原因，且该问题可能与已知问题 #1005 重复。解决步骤建议：\n1. 创建一个最小的复现代码（仅包含一两个文件），专门展示在 Hydra 中使用 DDP 时的日志丢失问题。\n2. 确认使用的 Hydra 版本（注意某些未发布版本可能版本号显示滞后）。\n3. 如果确认是普遍问题，请基于最小复现示例提交新的 Issue，以便维护者排查是配置问题还是框架 Bug。","https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1126",{"id":139,"question_zh":140,"answer_zh":141,"source_url":142},36190,"是否可以通过配置文件中的插值（如 ${arch}）来动态配置 hydra.searchpath？","不可以。hydra.searchpath 仅在主要配置（primary config）中使用，并在非常早期的阶段初始化。它不能依赖命令行参数解析后的结果进行插值。例如，你不能在 searchpath 中使用命令行传入的 arch=foo 来动态加载 \u002Fconfigs\u002F${arch}。如果有此类需求或疑问，应视为对架构理解的偏差，建议查阅官方文档关于配置搜索路径初始化的说明，或在社区提出新的具体用例讨论，但目前的机制不支持此行为。","https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F274",{"id":144,"question_zh":145,"answer_zh":146,"source_url":147},36191,"如何在 Hydra 应用中添加自定义的命令行参数（user-defined arguments）？","Hydra 内部管理 argparse，不直接支持在 @hydra.main 中传递自定义 parser。推荐的变通方案是在调用 hydra.main 之前手动解析已知参数，并将剩余参数传递给 Hydra。代码示例如下：\nimport argparse\nimport sys\nimport hydra\n\ndef main(cfg):\n    # 业务逻辑\n    pass\n\ndef _main():\n    parser = argparse.ArgumentParser()\n    parser.add_argument(\"--custom_option\", type=int)\n    args, unknown = parser.parse_known_args()\n    # 在这里处理 custom_option\n    \n    # 重置 sys.argv，只保留未知参数供 Hydra 解析\n    sys.argv = [sys.argv[0]] + unknown\n    \n    # 延迟调用 hydra.main\n    hydra.main(version_base=None, config_path=\".\", config_name=\"config\")(main)()\n\nif __name__ == \"__main__\":\n    _main()","https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F215",[149,154,159,164,169,174,179,184,189,194,199,204,209,214,219,224,229,234,239,244],{"id":150,"version":151,"summary_zh":152,"released_at":153},288972,"v1.3.2","1.3.2（2023-02-22）\n==================\n\n### 功能\n\n- 添加 `hydra.utils.get_object` 函数，使用户能够访问 Hydra 的点路径查找机制。（[#2139](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F2139)）\n- 允许 `config_path` 指定非相对的模块路径，只需以 `pkg:\u002F\u002F` 开头。（[#2564](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F2564)）\n\n### 维护性改进\n\n- 放弃对 Python 3.6 的支持。（[#2304](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F2304)）\n\n### 链接：\n\n- [Hydra 在 PyPI 上的页面](https:\u002F\u002Fpypi.org\u002Fproject\u002Fhydra-core\u002F)\n- [Hydra 1.3 文档](https:\u002F\u002Fhydra.cc\u002Fdocs\u002F1.3\u002Fintro\u002F)","2023-02-23T18:30:37",{"id":155,"version":156,"summary_zh":157,"released_at":158},288973,"v1.3.1","1.3.1 (2022-12-20)\n==================\n\n此错误修复版本更新了 OmegaConf 库的版本约束，允许 Hydra 与最新版本的 OmegaConf 一同安装。\n\n### 错误修复\n\n- 放宽 OmegaConf 的版本约束，允许安装 OmegaConf 2.3 ([#2510](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F2510))\n\n### 链接：\n\n- [Hydra 在 PyPI 上](https:\u002F\u002Fpypi.org\u002Fproject\u002Fhydra-core\u002F)\n- [Hydra 1.3 文档](https:\u002F\u002Fhydra.cc\u002Fdocs\u002F1.3\u002Fintro\u002F)","2022-12-21T05:21:55",{"id":160,"version":161,"summary_zh":162,"released_at":163},288974,"v1.3.0","1.3.0（2022-12-08）\n==================\n\n### 功能特性：\n\n- 为 `instantiate` 实现 `_convert_=\"object\"` 选项，允许将非 `_target_` 结构化配置转换为底层数据类或 attrs 类的实例。（[#1719](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1719)）\n- 允许在使用 `functools.wraps` 生成的其他装饰器之上叠加 `@hydra.main` 装饰器。（[#2303](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F2303)）\n- 允许覆盖键中出现非首位的短横线。（[#2363](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F2363)）\n- 支持通过 `--config-path` 指定绝对路径。（[#2368](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F2368)）\n- 支持 Python 3.11。（[#2443](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F2443)）\n\n### 错误修复：\n\n- 修复了 Hydra 的异常处理逻辑可能引发 `AssertionError` 的问题。（[#2342](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F2342)）\n\n### 链接：\n\n- [Hydra 在 PyPI 上的页面](https:\u002F\u002Fpypi.org\u002Fproject\u002Fhydra-core\u002F)\n- [Hydra 1.3 文档](https:\u002F\u002Fhydra.cc\u002Fdocs\u002F1.3\u002Fintro\u002F)","2022-12-08T21:12:12",{"id":165,"version":166,"summary_zh":167,"released_at":168},288975,"v1.2.0","1.2.0 (2022-05-17)\n==================\n\n### 错误修复\n\n- `hydra.runtime.choices` 现在在多运行过程中能够正确更新（[#1882](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1882)）\n- `hydra.verbose=True` 现在可以与多运行一起使用。（[#1897](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1897)）\n- 修复了当嵌套类作为 `_target_` 关键字参数传递给 `instantiate` 时出现的解析错误（[#1914](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1914)）\n- 现在可以将除函数之外的其他可调用对象传递给 `hydra.main`。（[#2042](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F2042)）\n\n### 新特性\n\n- 为 Hydra 的实例化 API 添加支持，通过 `_partial_` 关键字创建 `functools.partial` 实例。（[#1283](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1283)）\n- 支持在输入配置中定义基本的网格搜索。（[#1376](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1376)）\n- 在配置合并步骤中发生 omegaconf 异常时，改进错误信息并提供更多上下文。（[#1697](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1697)）\n- 添加 `--experimental-rerun` 命令行选项，用于重现已序列化的单次运行（[#1805](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1805)）\n- 添加用于序列化作业信息的实验性回调。（[#2092](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F2092)）\n- 实现了对默认列表追加（+group=option）和删除（~group）操作的 Tab 补全功能。（[#1841](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1841)）\n- 允许在解析命令行覆盖时，在未加引号的字符串中使用管道符号 `|`。（[#1850](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1850)）\n- 支持 Python 3.10（[#1856](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1856)）\n- 当 `hydra.utils.instantiate` 遇到无法定位的 `_target_` 时，提高错误信息的清晰度（[#1863](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1863)）\n- `instantiate` API 现在可以接受 `ListConfig`\u002F`list` 类型的配置作为顶层输入。（[#1950](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1950)）\n- 改进实例化失败时抛出的错误信息。（[#2099](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F2099)）\n- 添加用于记录 JobReturn 的回调。（[#2100](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F2100)）\n- 支持在运行时禁用工作目录的更改。（[#910](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F910)）\n- 支持通过配置设置 hydra.mode。（[#394](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F394)）\n\n### 行为变更\n\n- antlr 版本要求从 4.8 更新至 4.9，以更好地与当前的 antlr 版本保持一致\n- 如果用户代码在被 `instantiate` 调用时抛出异常，则会抛出 `InstantiateError` 异常，而不是用户代码本身抛出的同一异常类的实例。（[#1911](https:\u002F\u002Fgithub.com\u002Ffaceb","2022-05-17T22:23:44",{"id":170,"version":171,"summary_zh":172,"released_at":173},288976,"v1.1.2","# 1.1.2 (2022-04-12)\n\n### 功能特性\n\n- 为 Hydra 的实例化 API 添加支持，通过 `_partial_` 关键字创建 `functools.partial` 实例。([#1283](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1283))\n- `instantiate` API 现在可以接受 `ListConfig`\u002F`list` 类型的配置作为顶层输入。([#1950](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1950))\n- 改进实例化失败时抛出的错误信息。([#2099](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F2099))\n- 添加用于记录 JobReturn 的回调函数。([#2100](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F2100))\n\n### API 变更（重命名、弃用与移除）\n\n- 修复内部键冲突问题，以防止在默认列表中同时使用 `- group@_global_: choice` 和 `- group: choice` 时引发异常。([#1784](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1784))\n\n### Bug 修复\n\n- 改进在命令行上必须指定缺失默认值时的错误信息。([#1742](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1742))\n- 修复一个边缘情况：当默认列表定义在缺失的数据类节点中时，会导致 `ConfigCompositionException` 异常。([#1765](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1765))\n\n","2022-04-12T20:50:08",{"id":175,"version":176,"summary_zh":177,"released_at":178},288977,"v1.1.1","1.1.1（2021-08-19）\n==================\n\n### 功能特性\n\n- 允许在覆盖语法中，`range()` 只有一个参数（即停止值），例如 `range(3)` ([#1664](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1664))\n- 添加对 `HYDRA_DEPRECATION_WARNINGS_AS_ERRORS` 环境变量的支持。当该变量被设置时，使用已弃用的功能将抛出异常，而不是发出警告。([#1689](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1689))\n- 为了使从 Hydra 1.0 迁移到 1.1 更加容易，如果主配置文件定义了配置值和默认列表，而默认列表中未指定 `_self_`，Hydra 现在会发出警告。([#1755](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1755))\n\n### API 变更（重命名、弃用与移除）\n\n- 在 Compose API 中重新引入了一个已弃用的 `strict` 标志。([#1694](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1694))\n- 放宽对默认列表中旧版 Hydra 覆盖的处理，以简化从 Hydra 1.0 到 1.1 的迁移过程。([#1748](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1748))\n\n### 错误修复\n\n- 允许在嵌套配置中使用默认列表的插值，并文档说明插值键必须是绝对路径。([#1668](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1668))\n- `instantiate` API 现在支持将 `target` 作为参数名。([#1669](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1669))\n- 修复了 `--cfg=job --resolve` 和 `--help --resolve` 命令，使得 `${hydra:...}` 解析器现在能够正确打印输出。([#1681](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1681))\n- 修复了在某些情况下追加实验（+experiment=test）时，默认列表发生意外变化的问题。([#1706](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1706))\n- 修复了从配置组组成的顶级配置为列表时的组合问题。([#1724](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1724))\n- 修复了在不使用覆盖关键字的情况下多次覆盖 Hydra 配置组时，原本应触发弃用警告却出现错误的问题。([#1730](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1730))\n- 修复了在清理由作业异常引发的堆栈跟踪时可能出现的失败问题。([#1739](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1739))\n\n","2021-08-19T20:51:08",{"id":180,"version":181,"summary_zh":182,"released_at":183},288978,"v1.0.7","1.0.7（2021-07-14）\n==================\n此版本包含若干小幅改动，旨在使 Hydra 1.0 与 OmegaConf 2.1 和 Hydra 1.1 更加兼容，从而简化迁移过程。\n如果您当前使用的是 1.0.6，则无需担心使用本版本，因为它仅会在某些场景下使迁移更加顺畅：\n1. 如果您在将 Hydra 升级到 1.1 之前先升级 OmegaConf 到 2.1。\n2. 在极少数情况下，它可以使部分配置同时兼容这两个版本，这与 Hydra 1.1 中默认组合顺序的变更有关。\n\n### 维护性改进\n\n- 使 Hydra 1.0 能够与 OmegaConf 2.1 配合使用（需手动安装 OmegaConf 2.1）（[#1634](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1634)）\n- Hydra 1.0 会忽略 Defaults List 中的 `_self_`，以部分实现与 Hydra 1.1 的未来兼容性（[#1712](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1712)）","2021-07-15T17:21:18",{"id":185,"version":186,"summary_zh":187,"released_at":188},288979,"v1.1.0","1.1.0 (2021-06-09)\n==================\n这是迄今为止 Hydra 最大的一次发布。\n#### 亮点\n- OmegaConf 2.1 支持相对插值、嵌套插值、更强大的解析器，并且与原生 Python 字典和列表的兼容性更好。\n- 递归默认列表：现在每个配置都可以拥有一个默认列表。\n- 递归实例化：使用 `instantiate` API 实例化对象时，会自动实例化其中定义的嵌套对象。\n\n此外，还修复了许多 bug 并提升了性能，同时也引入了一些破坏性变更——这些变更既存在于 Hydra 中，也存在于 OmegaConf 中。\n请仔细阅读本发行说明以及 OmegaConf 的发行说明中的 API 变更和弃用部分。\n\n### 功能特性\n#### 通用增强\n- 升级到 OmegaConf 2.1。请参阅其 [发行说明](https:\u002F\u002Fgithub.com\u002Fomry\u002Fomegaconf\u002Freleases\u002Ftag\u002Fv2.1.0.rc1)（[#1426](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1426)）。\n- 支持 Python 3.9。（[#1062](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1062)）\n- 在基准测试中将配置组合的性能提升了 64%。（[#1328](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1328)）\n- 允许在未加引号的覆盖值中使用 `@`、`$` 和 `?` 符号。（[#1074](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1074)、[#1437](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1437)、[#1597](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1597)）\n- 添加了 `--resolve` 标志，可与 `--cfg` 和 `--help` 标志一起使用，在打印配置之前先解析插值。（[#1585](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1585)、[#1482](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1482)）\n- 现在可以禁用 Hydra 的日志配置。（[#1130](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1130)）\n- 支持 Zsh 的 Tab 补全功能。（[#347](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F347)）\n- 支持通过 `++key=value` 强制添加配置值（如果该值已存在则覆盖，否则直接添加）。（[#1049](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1049)）\n- 新增实验性回调 API。（[#1402](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1402)）\n\n#### 配置组合增强\n- 支持在任何配置中使用默认列表（递归相对默认值）。（[#1170](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1170)）\n- 可以使用 `_self_` 关键字指定带有默认列表的配置的组合顺序。（[#326](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F326)）\n- 支持从主配置中配置搜索路径。（[#274](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F274)）\n- 增加了从同一配置组中选择多个配置的功能。（[#499](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F499)）\n- 默认列表的最终选择会被保留在 `hydra.runtime.choices` 字典中。（[#956](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F956)）\n\n#### 对象实例化","2021-06-10T17:24:40",{"id":190,"version":191,"summary_zh":192,"released_at":193},288980,"v1.1.0.rc1","1.1.0.rc1（2021-05-13）\n======================\n这是迄今为止 Hydra 最大的一次发布。\n#### 亮点\n- OmegaConf 2.1 支持相对插值、嵌套插值、更强大的解析器，以及与原生 Python 字典和列表更好的兼容性。\n- 递归默认列表：现在每个配置都可以拥有一个默认列表。\n- 递归实例化：使用 `instantiate` API 实例化对象时，会自动实例化其中定义的嵌套对象。\n\n此外，还修复了许多 bug 并提升了性能，同时也引入了一些破坏性变更——这些变更既存在于 Hydra 中，也存在于 OmegaConf 中。\n请仔细阅读本发行说明以及 OmegaConf 发行说明中的 API 变更和弃用部分。\n\n### 功能特性\n#### 通用增强\n- 升级至 OmegaConf 2.1。请参阅其 [发行说明](https:\u002F\u002Fgithub.com\u002Fomry\u002Fomegaconf\u002Freleases\u002Ftag\u002Fv2.1.0.rc1)（[#1426](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1426)）。\n- 支持 Python 3.9。（[#1062](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1062)）\n- 在基准测试中将配置组合的性能提升了 64%。（[#1328](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1328)）\n- 允许在未加引号的覆盖值中使用 `@`、`$` 和 `?` 符号。（[#1074](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1074)、[#1437](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1437)、[#1597](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1597)）\n- 添加了 `--resolve` 标志，可与 `--cfg` 标志一起使用，在打印配置之前先解析插值。（[#1585](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1585)）\n- 现在可以禁用 Hydra 的日志配置。（[#1130](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1130)）\n- 支持 Zsh 的 Tab 补全功能。（[#347](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F347)）\n- 支持通过 `++key=value` 强制添加配置值（如果该值已存在则覆盖，否则直接添加）。（[#1049](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1049)）\n\n#### 配置组合增强\n- 支持在任意配置中使用默认列表（递归相对默认值）。（[#1170](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1170)）\n- 可以使用 `_self_` 关键字指定带有默认列表的配置的组合顺序。（[#326](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F326)）\n- 支持从主配置中配置搜索路径。（[#274](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F274)）\n- 增加了从同一配置组中选择多个配置的功能。（[#499](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F499)）\n- 默认列表的最终选择会被保留在 `hydra.runtime.choices` 字典中。（[#956](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F956)）\n\n#### 对象实例化增强\n- 支持使用 `hydra.utils.instantiate()` 进行递归实例化。（[#566](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F566)）\n- 实例化ノー","2021-05-13T20:00:06",{"id":195,"version":196,"summary_zh":197,"released_at":198},288981,"v1.1.0.dev6","以下是截至 1.1.0.dev6 发布时的 Hydra 1.1 非正式发布说明。请注意，OmegaConf 2.1 中有许多未在本发布说明中涵盖的变更。一旦 OmegaConf 2.1 正式发布，将会有其正式的发布说明。\n\n### 功能特性\n\n- 支持在实例化过程中将参数转换为原生容器（[#1015](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1015)）\n- 现在可以使用类型或字符串覆盖实例化的 `_target`（[#1017](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1017)）\n- 支持通过 `++key=value` 强制添加配置值（强制添加会在值已存在时覆盖，否则将其添加）（[#1049](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1049)）\n- 支持 Python 3.9。（[#1062](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1062)）\n- 现在可以禁用 Hydra 的日志配置（[#1130](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1130)）\n- 支持在任何配置中使用默认列表（递归相对默认值）（[#1170](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1170)）\n- 在基准测试中将配置组合性能提升了 64%（[#1328](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1328)）\n- 现在可以从命令行向标注为 `Dict[K,V]` 的字段添加键，而无需使用 `+` 前缀（[#1421](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1421)）\n- 升级到 OmegaConf 2.1（[#1426](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1426)）\n- 实例化现在完全支持位置参数（[#1432](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1432)）\n- 支持从主配置中配置配置搜索路径（[#274](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F274)）\n- 可以使用 `_self` 关键字指定带有默认列表的配置的组合顺序。（[#326](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F326)）\n- 支持 Zsh 的 Tab 补全（[#347](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F347)）\n- 添加了从同一配置组中选择多个配置的支持（[#499](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F499)）\n- 支持使用 `hydra.utils.instantiate()` 进行递归实例化（[#566](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F566)）\n- 默认列表的最终选择会保留在字典 `hydra.runtime.choices` 中（[#956](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F956)）\n\n### API 变更（重命名、弃用与移除）\n\n- 已弃用 `TargetConf`，不应再对其进行扩展或使用其进行注解（[#1010](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1010)）\n- 移除了 `ObjectConf` 以及在 Hydra 1.0 中已弃用的参数支持（[#1010](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1010)）\n- 从 `@hydra.main` 和组合 API 中移除了已弃用的 `strict` 标志（[#1010](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1010)）\n- 现在将配置名称作为 `config_path` 传递给 `@hydra.main` 会导致错误（[#1","2021-04-28T21:23:30",{"id":200,"version":201,"summary_zh":202,"released_at":203},288982,"v1.0.6","1.0.6 (2021-01-29)\r\n==================\r\n\r\n### Bug Fixes\r\n\r\n- Fix interpolation in Hydra config node ([#1335](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1335))\r\n\r\n### Maintenance Changes\r\n\r\n- Remove `Plugins` from `Singleton.get_state()` ([#1330](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1330))","2021-02-01T21:57:49",{"id":205,"version":206,"summary_zh":207,"released_at":208},288983,"v1.0.5","1.0.5 (2021-01-07)\r\n==================\r\n\r\n### Features\r\n\r\n- Support Python 3.9 . ([#1062](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1062))\r\n\r\n### API Change (Renames, deprecations and removals)\r\n\r\n- Deprecate support for renaming packages via the command line. ([#1140](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1140))\r\n\r\n### Bug Fixes\r\n\r\n- Fixed hydra.job.id and hydra.job.num not getting passed to jobs in multirun ([#1270](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1270))\r\n\r\n### Plugins\r\n\r\n- Support `additional_parameters` as an optional param in the Submitit launcher plugin.\r\n- Add [Optuna](https:\u002F\u002Foptuna.org\u002F) Sweeper plugin\r\n\r\n### Maintenance Changes\r\n\r\n- Limit OmegaConf depedency to 2.0 versions ([#1253](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1253))\r\n\r\n","2021-01-07T23:55:33",{"id":210,"version":211,"summary_zh":212,"released_at":213},288984,"v1.0.4","1.0.4 (2020-11-17)\r\n==================\r\n\r\n### Bug Fixes\r\n\r\n- Hydra no longer errorenously changes the USER environment variable in pytest unit tests once installed ([#1059](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1059))\r\n- Allow @ symbol in unquoted values in overrides ([#1074](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1074))\r\n- Fix a bug where Structured Config has a field like 'list : Optional[List[int]] = None` ([#1117](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1117))\r\n### Plugins\r\n- Switch Ax Sweeper plugin to use new Hydra command line syntax\r\n- Switch Nevergrad Sweeper plugin to use new Hydra command line syntax\r\n- Revert the use of \"_\" to separate the path element in keys for the Ax sweeper plugin.","2020-11-18T01:30:20",{"id":215,"version":216,"summary_zh":217,"released_at":218},288985,"v1.0.3","1.0.3 (2020-09-22)\r\n==================\r\n\r\n### Bug Fixes\r\n\r\n- Fixed interaction between interpolation and instantiate ([#1001](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F1001))\r\n- Fix float parsing for values where the exponent starts with 0 (e.g 1e-05) ([#999](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F999))\r\n","2020-09-23T02:35:09",{"id":220,"version":221,"summary_zh":222,"released_at":223},288986,"v1.0.2","1.0.2 (2020-09-20)\r\n==================\r\nThis is a small update improving support for config dataclasses generated by [configen](tools\u002Fconfigen).\r\n\r\n### Features\r\n\r\n- Overridden parameters annotated as Any in the config are not type checked by instantiate() ([#982](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F982))\r\n","2020-09-20T22:12:25",{"id":225,"version":226,"summary_zh":227,"released_at":228},288987,"v1.0.1","1.0.1 (2020-09-15)\r\n==================\r\n\r\n### Features\r\n\r\n- Add ability to escape special characters in unquoted command line values ([#954](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F954))\r\n\r\n### Bug Fixes\r\n\r\n- Add support for merging dicts and lists specified in the commend line ([#939](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F939))\r\n- Fix appending dict values with new fields to config with + ([#946](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F946))\r\n- Fix for Override Grammar integer parsing: Integers are now compatible with Python integers ('+' prefix, correct handling of '_') ([#954](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F954))\r\n\r\n### Maintenance Changes\r\n\r\n- Upgrade to OmegaConf 2.0.2 ([#755](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F755))","2020-09-15T16:58:48",{"id":230,"version":231,"summary_zh":232,"released_at":233},288988,"v1.0.0","1.0.0 (2020-09-03)\r\n==================\r\nHydra 1.0 is out!\r\nSee [blog post](https:\u002F\u002Fhydra.cc\u002Fblog\u002F2020\u002F09\u002F03\u002FHydra_1.0) for high level details.\r\n\r\nMajor new features in Hydra 1.0\r\n* Config type safety via Structured Configs\r\n* More powerful command line\r\n* New plugins enabling remote launching and hyper parameter optimization\r\n* Improved error reporting\r\n* Reduce nesting levels with config packages\r\n\r\nThese release notes are covering the changes since 1.0.0rc4.\r\n\r\nTo see the complete release notes for 1.0 take a look at the release notes of:\r\n- [1.0.0rc1](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Freleases\u002Ftag\u002Fv1.0.0rc1)\r\n- [1.0.0rc2](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Freleases\u002Ftag\u002Fv1.0.0rc2)\r\n- [1.0.0rc3](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Freleases\u002Ftag\u002Fv1.0.0rc3)\r\n- [1.0.0rc4](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Freleases\u002Ftag\u002Fv1.0.0rc4)\r\n- 1.0.0 (just below this line)\r\n\r\n### Features\r\n\r\n- Add support for casting interval to ints and floats ([#915](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F915))\r\n\r\n### Bug Fixes\r\n\r\n- Fix to flush logging instead of shutting it down at job end ([#833](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F833))\r\n- compose() no longer initialized logging subsystem ([#833](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F833))\r\n- Fix overriding of hydra.job.env_set from the command line ([#854](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F854))\r\n- Fix tab completion to not output errors in some cases when using --multirun ([#856](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F856))\r\n- Fix OmegaConf custom resolvers not being propagated to Sweepers properly ([#861](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F861))\r\n- Interpolation accepts any char between ${ and } ([#891](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F891))\r\n- Update the signature of hydra.utils.instantiate() allow input configs of Any type ([#896](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F896))\r\n- Fix instantiate to work correctly when parameters are interpolations into a parent node ([#904](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F904))\r\n- Apps will now raise underlying exception if env HYDRA_FULL_ERROR=1 ([#926](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F926))\r\n\r\n### Plugins\r\n\r\n- Fix integer\u002Ffloat choice from spec in the Nevergrad plugin\r\n\r\n### Improved Documentation\r\n\r\n- New page in Structured Configs tutorial: Static schema with many configs ([#918](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F918))\r\n- New page in Structured Configs tutorial: Dynamic schema with many configs ([#918](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F918))\r\n","2020-09-03T16:05:17",{"id":235,"version":236,"summary_zh":237,"released_at":238},288989,"v1.0.0rc4","1.0.0rc4 (2020-08-18)\r\n=====================\r\n\r\n### Features\r\n\r\n- Upgrade to OmegaConf 2.0.1rc12 ([#889](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F889))\r\n\r\n### Bug Fixes\r\n\r\n- Fix bug with bash autocompletion for the users who has `.` in their PATH environment variable ([#868](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F868))\r\n- Fix instantiate to return None when None config is passed ([#887](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F887))","2020-08-18T16:34:13",{"id":240,"version":241,"summary_zh":242,"released_at":243},288990,"v1.0.0rc3","1.0.0rc3 (2020-08-17)\r\n=====================\r\n\r\nFeatures\r\n--------\r\n\r\n- Extended Override grammar supports range(),glob(),type casts,shuffle, sort and more. ([#752](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F752))\r\n- Add support for specifying an additional config dir in the command line ([#874](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F874))\r\n- Allow overriding of the `defaults` and `hydra` nodes in primary Structured Configs that does not mentioned `defaults` and `hydra`. ([#877](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F877))\r\n\r\nAPI Change (Renames, deprecations and removals)\r\n-----------------------------------------------\r\n\r\n- ObjectConf is deprecated for TargetConf. See [upgrade page](https:\u002F\u002Fhydra.cc\u002Fdocs\u002Fnext\u002Fupgrades\u002F0.11_to_1.0\u002Fobject_instantiation_changes). ([#882](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F882))\r\n- All plugins updated to use TargetConf. Be sure to update all your Hydra plugins ([#882](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F882))\r\n- Instantiated objects no longer have a params node in the conf. keys like hydra.launcher.params.foo are changed to hydra.launcher.foo. Update your configs and overrides if you were overriding such parameters. ([#882](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F882))\r\n\r\nBug Fixes\r\n---------\r\n\r\n- Fixed parsing of two nested lists with whitespace between them: [[a], [b]] ([#836](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F836))\r\n\r\nImproved Documentation\r\n----------------------\r\n\r\n- New Extended command line syntax page ([#752](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F752))","2020-08-17T16:33:09",{"id":245,"version":246,"summary_zh":247,"released_at":248},288991,"v1.0.0rc1","1.0.0-rc1 (2020-05-31)\r\n======================\r\nHydra 1.0 is a major release introducing many new features and breaking some compatibility.\r\n\r\nFeatures\r\n--------\r\n- Upgrade to OmegaConf 2.0 ([Release notes](https:\u002F\u002Fgithub.com\u002Fomry\u002Fomegaconf\u002Freleases\u002Ftag\u002F2.0.0)) (#630)\r\n- Optional config type safety via Structured Configs (#629)\r\n- Improve command line and config composition error reporting (#349)\r\n- Hydra config can now be accessed through interpolation using ${hydra:key}, for example ${hydra:job.name} ([#325](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F325))\r\n- Support for setting environment variable of running job ([#7](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F7))\r\n- Changes command line processing (requiring + and ~ prefixes for appending and removing items) ([#598](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F598))\r\n- Introducing `@package` header for config files ([#586](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F586))\r\n- Add command line override flags for `config_path` and `config_name` (`--config-path` and `--config-name`) ([#386](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F386))\r\n- hydra.main() now take an optional cfg object to passthrough to the function ([#575](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F575))\r\n- Add hydra.experimental.{initialize_with_file, initialize_with_module} ([#574](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F574))\r\n- Support for disabling the creation of the `.hydra` subdirectory by overriding \"hydra.output_subdir\" to \"null\" ([#324](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F324))\r\n- Add `hydra.utils.call()` to call methods and functions as well as instantiate objects.  Search module paths more generically. ([#498](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F498))\r\n- Add support for overriding package from command line and defaults list ([#235](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F235))\r\n- Config source is now abstracted, allowing additional config sources to be used ([#257](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F257))\r\n- New ConfigSource plugin API allowing configs to be provided by external plugins ([#367](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F367))\r\n- Add isort to ensure imports are always sorted ([#340](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F340))\r\n- Codebase is now passing mypy --strict type checking ([#342](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F342))\r\n- Improve performance of plugin discovery and instantiation ([#489](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F489))\r\n- Modules whose name starts with \"_\" are skipped during plugin discovery ([#494](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F494))\r\n\r\nPlugins\r\n-------\r\n- Add [Ax](https:\u002F\u002Fax.dev) Sweeper plugin ([Shagun Sodhani](https:\u002F\u002Fshagunsodhani.com\u002F))\r\n- Add [Nevergrad](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fnevergrad) Sweeper plugin ([Jérémy Rapin](https:\u002F\u002Fgithub.com\u002Fjrapin))\r\n- Add [Joblib](https:\u002F\u002Fjoblib.readthedocs.io\u002Fen\u002Flatest\u002F) Launcher plugin ([Jan-Matthis](https:\u002F\u002Fgithub.com\u002Fjan-matthis))\r\n- Add [Submitit](https:\u002F\u002Fgithub.com\u002Ffacebookincubator\u002Fsubmitit) Launcher plugin to launch jobs to SLURM clusters\r\n- Add [Fish](https:\u002F\u002Ffishshell.com\u002F) shell Tab Completion plugin ([Binsheng Liu](https:\u002F\u002Fbinshengliu.github.io\u002F)) ([#549](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F549))\r\n\r\nAPI Change (Renames, deprecations and removals)\r\n-----------------------------------------------\r\n- Drop support Python 2.7 and 3.5 ([#313](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F313))\r\n- hydra.main() now takes an additional optional config_name and composite-style config_path is deprecated ([#395](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F395))\r\n- Launcher API launch method now takes an additional initial_job_idx indicating the id of the first job in the batch ([#284](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F284))\r\n- Singleton metaclass is now exposed at hydra.core.Singleton ([#371](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F371))\r\n- Moved HydraConfig from hydra.plugins.common.utils to hydra.core ([#371](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F371))\r\n- Move several formerly internal APIs to hydra\u002Fcore to ensure plugins does not need to use internal APIs ([#371](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F371))\r\n- Plugin import now requires explicit name (from hydra.plugins.launcher import Launcher) ([#371](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F371))\r\n- Object Config \"class\" field is deprecated in favor of \"cls\" and will be removed in a future version. ([#389](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F389))\r\n- Experimental compose API config_file changed to config_name ([#395](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F395))\r\n- User plugins should be modified to not import twice during plugin discovery. see issue for details. ([#482](https:\u002F\u002Fgithub.com\u002Ffacebookresearch\u002Fhydra\u002Fissues\u002F482))\r\n- Change hydra.core.plugins.Plugins class to a Singleton. access s","2020-08-18T16:37:21"]