[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-google--vizier":3,"tool-google--vizier":61},[4,18,26,36,44,52],{"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 真正成长为懂上",141543,2,"2026-04-06T11:32:54",[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 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能，使其成为当前最灵活、生态最丰富的开源扩散模型工具之一，帮助用户将创意高效转化为现实。",107888,"2026-04-06T11:32:50",[14,15,13],{"id":45,"name":46,"github_repo":47,"description_zh":48,"stars":49,"difficulty_score":10,"last_commit_at":50,"category_tags":51,"status":17},4487,"LLMs-from-scratch","rasbt\u002FLLMs-from-scratch","LLMs-from-scratch 是一个基于 PyTorch 的开源教育项目，旨在引导用户从零开始一步步构建一个类似 ChatGPT 的大型语言模型（LLM）。它不仅是同名技术著作的官方代码库，更提供了一套完整的实践方案，涵盖模型开发、预训练及微调的全过程。\n\n该项目主要解决了大模型领域“黑盒化”的学习痛点。许多开发者虽能调用现成模型，却难以深入理解其内部架构与训练机制。通过亲手编写每一行核心代码，用户能够透彻掌握 Transformer 架构、注意力机制等关键原理，从而真正理解大模型是如何“思考”的。此外，项目还包含了加载大型预训练权重进行微调的代码，帮助用户将理论知识延伸至实际应用。\n\nLLMs-from-scratch 特别适合希望深入底层原理的 AI 开发者、研究人员以及计算机专业的学生。对于不满足于仅使用 API，而是渴望探究模型构建细节的技术人员而言，这是极佳的学习资源。其独特的技术亮点在于“循序渐进”的教学设计：将复杂的系统工程拆解为清晰的步骤，配合详细的图表与示例，让构建一个虽小但功能完备的大模型变得触手可及。无论你是想夯实理论基础，还是为未来研发更大规模的模型做准备",90106,"2026-04-06T11:19:32",[35,15,13,14],{"id":53,"name":54,"github_repo":55,"description_zh":56,"stars":57,"difficulty_score":10,"last_commit_at":58,"category_tags":59,"status":17},4292,"Deep-Live-Cam","hacksider\u002FDeep-Live-Cam","Deep-Live-Cam 是一款专注于实时换脸与视频生成的开源工具，用户仅需一张静态照片，即可通过“一键操作”实现摄像头画面的即时变脸或制作深度伪造视频。它有效解决了传统换脸技术流程繁琐、对硬件配置要求极高以及难以实时预览的痛点，让高质量的数字内容创作变得触手可及。\n\n这款工具不仅适合开发者和技术研究人员探索算法边界，更因其极简的操作逻辑（仅需三步：选脸、选摄像头、启动），广泛适用于普通用户、内容创作者、设计师及直播主播。无论是为了动画角色定制、服装展示模特替换，还是制作趣味短视频和直播互动，Deep-Live-Cam 都能提供流畅的支持。\n\n其核心技术亮点在于强大的实时处理能力，支持口型遮罩（Mouth Mask）以保留使用者原始的嘴部动作，确保表情自然精准；同时具备“人脸映射”功能，可同时对画面中的多个主体应用不同面孔。此外，项目内置了严格的内容安全过滤机制，自动拦截涉及裸露、暴力等不当素材，并倡导用户在获得授权及明确标注的前提下合规使用，体现了技术发展与伦理责任的平衡。",88924,"2026-04-06T03:28:53",[14,15,13,60],"视频",{"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":77,"owner_twitter":78,"owner_website":79,"owner_url":80,"languages":81,"stars":90,"forks":91,"last_commit_at":92,"license":93,"difficulty_score":32,"env_os":94,"env_gpu":95,"env_ram":96,"env_deps":97,"category_tags":108,"github_topics":109,"view_count":32,"oss_zip_url":76,"oss_zip_packed_at":76,"status":17,"created_at":125,"updated_at":126,"faqs":127,"releases":160},4365,"google\u002Fvizier","vizier","Python-based research interface for blackbox and hyperparameter optimization, based on the internal Google Vizier Service.","Vizier 是一款基于 Python 的开源黑盒优化与研究平台，源自 Google 内部广泛使用的超参数调优服务。它主要解决在无法获取梯度信息或目标函数计算成本高昂的场景下，如何高效寻找最优解的难题，特别适用于复杂的超参数调整任务。\n\n这款工具非常适合机器学习研究人员、算法工程师以及需要处理大规模分布式优化问题的开发者使用。通过简洁的代码接口，用户可以轻松定义包含浮点数、整数、离散值及分类变量在内的混合搜索空间，并快速启动优化流程。\n\nVizier 的核心亮点在于其灵活的“客户端 - 服务器”分布式架构，支持多客户端协同工作，能够从容应对大规模实验需求。除了提供开箱即用的默认优化算法外，它还专为科研创新设计了开发者接口，允许用户基于 TensorFlow Probability 或 Flax 自定义贝叶斯优化算法。此外，Vizier 集成了丰富的基准测试套件，并能与 PyGlove 结合进行大规模进化实验，是探索前沿优化策略的理想选择。","\u003Cfigure>\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fgoogle_vizier_readme_54371e74c2cb.png\" width=20% align=\"right\"\u002F>\n\u003C\u002Ffigure>\n\n# Open Source Vizier: Reliable and Flexible Black-Box Optimization.\n[![PyPI version](https:\u002F\u002Fbadge.fury.io\u002Fpy\u002Fgoogle-vizier.svg)](https:\u002F\u002Fbadge.fury.io\u002Fpy\u002Fgoogle-vizier)\n[![Continuous Integration](https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Factions\u002Fworkflows\u002Fci.yml\u002Fbadge.svg)](https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Factions\u002Fworkflows\u002Fci.yml?query=branch%3Amain)\n![Docs](https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fworkflows\u002Fdocs_test\u002Fbadge.svg)\n\n  [**Google AI Blog**](https:\u002F\u002Fai.googleblog.com\u002F2023\u002F02\u002Fopen-source-vizier-towards-reliable-and.html)\n| [**Getting Started**](#getting_started)\n| [**Documentation**](#documentation)\n| [**Installation**](#installation)\n| [**Citing and Highlights**](#citing_vizier)\n\n## What is Open Source (OSS) Vizier?\n[OSS Vizier](https:\u002F\u002Farxiv.org\u002Fabs\u002F2207.13676) is a Python-based service for black-box optimization and research, based on [Google Vizier](https:\u002F\u002Fdl.acm.org\u002Fdoi\u002F10.1145\u002F3097983.3098043), one of the first hyperparameter tuning services designed to work at scale.\n\n\u003Cfigure>\n\u003Cp align=\"center\" width=65%>\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fgoogle_vizier_readme_82d8cc82ce45.gif\"\u002F>\n  \u003Cbr>\n  \u003Cem>\u003Cb>OSS Vizier's distributed client-server system. Animation by Tom Small.\u003C\u002Fb>\u003C\u002Fem>\n\u003C\u002Fp>\n\u003C\u002Ffigure>\n\n## Getting Started \u003Ca name=\"getting_started\">\u003C\u002Fa>\nAs a basic example for users, below shows how to tune a simple objective using all flat search space types:\n\n```python\nfrom vizier.service import clients\nfrom vizier.service import pyvizier as vz\n\n# Objective function to maximize.\ndef evaluate(w: float, x: int, y: float, z: str) -> float:\n  return w**2 - y**2 + x * ord(z)\n\n# Algorithm, search space, and metrics.\nstudy_config = vz.StudyConfig(algorithm='DEFAULT')\nstudy_config.search_space.root.add_float_param('w', 0.0, 5.0)\nstudy_config.search_space.root.add_int_param('x', -2, 2)\nstudy_config.search_space.root.add_discrete_param('y', [0.3, 7.2])\nstudy_config.search_space.root.add_categorical_param('z', ['a', 'g', 'k'])\nstudy_config.metric_information.append(vz.MetricInformation('metric_name', goal=vz.ObjectiveMetricGoal.MAXIMIZE))\n\n# Setup client and begin optimization. Vizier Service will be implicitly created.\nstudy = clients.Study.from_study_config(study_config, owner='my_name', study_id='example')\nfor i in range(10):\n  suggestions = study.suggest(count=2)\n  for suggestion in suggestions:\n    params = suggestion.parameters\n    objective = evaluate(params['w'], params['x'], params['y'], params['z'])\n    suggestion.complete(vz.Measurement({'metric_name': objective}))\n```\n\n## Documentation \u003Ca name=\"documentation\">\u003C\u002Fa>\nOSS Vizier's interface consists of [three main APIs](https:\u002F\u002Foss-vizier.readthedocs.io\u002Fen\u002Flatest\u002Fguides\u002Findex.html):\n\n* [**User API:**](https:\u002F\u002Foss-vizier.readthedocs.io\u002Fen\u002Flatest\u002Fguides\u002Findex.html#for-users) Allows a user to optimize their blackbox objective and optionally setup a server for distributed multi-client settings.\n* [**Developer API:**](https:\u002F\u002Foss-vizier.readthedocs.io\u002Fen\u002Flatest\u002Fguides\u002Findex.html#for-developers) Defines abstractions and utilities for implementing new optimization algorithms for research and to be hosted in the service.\n* [**Benchmarking API:**](https:\u002F\u002Foss-vizier.readthedocs.io\u002Fen\u002Flatest\u002Fguides\u002Findex.html#for-benchmarking) A wide collection of objective functions and methods to benchmark and compare algorithms.\n\nAdditionally, it contains [advanced API](https:\u002F\u002Foss-vizier.readthedocs.io\u002Fen\u002Flatest\u002Fadvanced_topics\u002Findex.html) for:\n\n* [**Tensorflow Probability:**](https:\u002F\u002Foss-vizier.readthedocs.io\u002Fen\u002Flatest\u002Fadvanced_topics\u002Findex.html#tensorflow-probability) For writing Bayesian Optimization algorithms using Tensorflow Probability and Flax.\n* [**PyGlove:**](https:\u002F\u002Foss-vizier.readthedocs.io\u002Fen\u002Flatest\u002Fadvanced_topics\u002Findex.html#pyglove) For large-scale evolutionary experimentation and program search using OSS Vizier as a distributed backend.\n\nPlease see OSS Vizier's [ReadTheDocs documentation](https:\u002F\u002Foss-vizier.readthedocs.io\u002F) for detailed information.\n\n## Installation \u003Ca name=\"installation\">\u003C\u002Fa>\n**Quick start:** For tuning objectives using our state-of-the-art JAX-based Bayesian Optimizer, run:\n\n```bash\npip install google-vizier[jax]\n```\n\n### Advanced Installation\n**Minimal installation:** To install only the core service and client APIs from `requirements.txt`, run:\n\n```bash\npip install google-vizier\n```\n\n**Full installation:** To support all algorithms and benchmarks, run:\n\n```bash\npip install google-vizier[all]\n```\n\n**Specific installation:** If you only need a specific part \"X\" of OSS Vizier, run:\n\n```bash\npip install google-vizier[X]\n```\n\nwhich installs add-ons from `requirements-X.txt`. Possible options:\n\n* `requirements-jax.txt`: Jax libraries shared by both algorithms and benchmarks.\n* `requirements-tf.txt`: Tensorflow libraries used by benchmarks.\n* `requirements-algorithms.txt`: Additional repositories (e.g. EvoJAX) for algorithms.\n* `requirements-benchmarks.txt`: Additional repositories (e.g. NASBENCH-201) for benchmarks.\n* `requirements-test.txt`: Libraries needed for testing code.\n\n**Developer installation:** To install up to the latest commit, run:\n\n```bash\npip install google-vizier-dev[X]\n```\n\nCheck if all unit tests work by running `run_tests.sh` after a full installation. OSS Vizier requires Python 3.10+, while client-only packages require Python 3.8+.\n\n## Citing and Highlights \u003Ca name=\"citing_vizier\">\u003C\u002Fa>\n\u003Cins>**Citing Vizier:**\u003C\u002Fins> Please consider citing the appropriate paper(s): [Algorithm](https:\u002F\u002Farxiv.org\u002Fabs\u002F2408.11527), [OSS Package](https:\u002F\u002Farxiv.org\u002Fabs\u002F2207.13676), and [Google System](https:\u002F\u002Fdl.acm.org\u002Fdoi\u002F10.1145\u002F3097983.3098043) if you found any of them useful.\n\n\u003Cins>**Highlights:**\u003C\u002Fins> We track [notable users](https:\u002F\u002Foss-vizier.readthedocs.io\u002Fen\u002Flatest\u002Fhighlights\u002Fapplications.html) and [media attention](https:\u002F\u002Foss-vizier.readthedocs.io\u002Fen\u002Flatest\u002Fhighlights\u002Fmedia.html) - let us know if OSS Vizier was helpful for your work.\n\nThanks!\n\n```bibtex\n@article{gaussian_process_bandit,\n  author       = {Xingyou Song and\n                  Qiuyi Zhang and\n                  Chansoo Lee and\n                  Emily Fertig and\n                  Tzu-Kuo Huang and\n                  Lior Belenki and\n                  Greg Kochanski and\n                  Setareh Ariafar and\n                  Srinivas Vasudevan and\n                  Sagi Perel and\n                  Daniel Golovin},\n  title        = {The Vizier Gaussian Process Bandit Algorithm},\n  journal      = {Google DeepMind Technical Report},\n  year         = {2024},\n  eprinttype    = {arXiv},\n  eprint       = {2408.11527},\n}\n\n@inproceedings{oss_vizier,\n  author    = {Xingyou Song and\n               Sagi Perel and\n               Chansoo Lee and\n               Greg Kochanski and\n               Daniel Golovin},\n  title     = {Open Source Vizier: Distributed Infrastructure and API for Reliable and Flexible Black-box Optimization},\n  booktitle = {Automated Machine Learning Conference, Systems Track (AutoML-Conf Systems)},\n  year      = {2022},\n}\n\n@inproceedings{google_vizier,\n  author    = {Daniel Golovin and\n               Benjamin Solnik and\n               Subhodeep Moitra and\n               Greg Kochanski and\n               John Karro and\n               D. Sculley},\n  title     = {Google Vizier: {A} Service for Black-Box Optimization},\n  booktitle = {Proceedings of the 23rd {ACM} {SIGKDD} International Conference on\n               Knowledge Discovery and Data Mining, Halifax, NS, Canada, August 13\n               - 17, 2017},\n  pages     = {1487--1495},\n  publisher = {{ACM}},\n  year      = {2017},\n  url       = {https:\u002F\u002Fdoi.org\u002F10.1145\u002F3097983.3098043},\n  doi       = {10.1145\u002F3097983.3098043},\n}\n```\n","\u003Cfigure>\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fgoogle_vizier_readme_54371e74c2cb.png\" width=20% align=\"right\"\u002F>\n\u003C\u002Ffigure>\n\n# 开源 Vizier：可靠且灵活的黑盒优化工具。\n[![PyPI version](https:\u002F\u002Fbadge.fury.io\u002Fpy\u002Fgoogle-vizier.svg)](https:\u002F\u002Fbadge.fury.io\u002Fpy\u002Fgoogle-vizier)\n[![持续集成](https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Factions\u002Fworkflows\u002Fci.yml\u002Fbadge.svg)](https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Factions\u002Fworkflows\u002Fci.yml?query=branch%3Amain)\n![文档](https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fworkflows\u002Fdocs_test\u002Fbadge.svg)\n\n  [**Google AI 博客**](https:\u002F\u002Fai.googleblog.com\u002F2023\u002F02\u002Fopen-source-vizier-towards-reliable-and.html)\n| [**快速入门**](#getting_started)\n| [**文档**](#documentation)\n| [**安装**](#installation)\n| [**引用与亮点**](#citing_vizier)\n\n## 什么是开源 (OSS) Vizier？\n[OSS Vizier](https:\u002F\u002Farxiv.org\u002Fabs\u002F2207.13676) 是一个基于 Python 的黑盒优化与研究服务，其原型为 [Google Vizier](https:\u002F\u002Fdl.acm.org\u002Fdoi\u002F10.1145\u002F3097983.3098043)，这是最早设计用于大规模运行的超参数调优服务之一。\n\n\u003Cfigure>\n\u003Cp align=\"center\" width=65%>\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fgoogle_vizier_readme_82d8cc82ce45.gif\"\u002F>\n  \u003Cbr>\n  \u003Cem>\u003Cb>OSS Vizier 的分布式客户端-服务器系统。动画由 Tom Small 制作。\u003C\u002Fb>\u003C\u002Fem>\n\u003C\u002Fp>\n\u003C\u002Ffigure>\n\n## 快速入门 \u003Ca name=\"getting_started\">\u003C\u002Fa>\n作为用户的简单示例，下面展示了如何使用所有平坦搜索空间类型来优化一个简单的目标函数：\n\n```python\nfrom vizier.service import clients\nfrom vizier.service import pyvizier as vz\n\n# 需要最大化的目标函数。\ndef evaluate(w: float, x: int, y: float, z: str) -> float:\n  return w**2 - y**2 + x * ord(z)\n\n# 算法、搜索空间和指标。\nstudy_config = vz.StudyConfig(algorithm='DEFAULT')\nstudy_config.search_space.root.add_float_param('w', 0.0, 5.0)\nstudy_config.search_space.root.add_int_param('x', -2, 2)\nstudy_config.search_space.root.add_discrete_param('y', [0.3, 7.2])\nstudy_config.search_space.root.add_categorical_param('z', ['a', 'g', 'k'])\nstudy_config.metric_information.append(vz.MetricInformation('metric_name', goal=vz.ObjectiveMetricGoal.MAXIMIZE))\n\n# 设置客户端并开始优化。Vizier 服务将被隐式创建。\nstudy = clients.Study.from_study_config(study_config, owner='my_name', study_id='example')\nfor i in range(10):\n  suggestions = study.suggest(count=2)\n  for suggestion in suggestions:\n    params = suggestion.parameters\n    objective = evaluate(params['w'], params['x'], params['y'], params['z'])\n    suggestion.complete(vz.Measurement({'metric_name': objective}))\n```\n\n## 文档 \u003Ca name=\"documentation\">\u003C\u002Fa>\nOSS Vizier 的接口由 [三个主要 API](https:\u002F\u002Foss-vizier.readthedocs.io\u002Fen\u002Flatest\u002Fguides\u002Findex.html) 组成：\n\n* [**用户 API：**](https:\u002F\u002Foss-vizier.readthedocs.io\u002Fen\u002Flatest\u002Fguides\u002Findex.html#for-users) 允许用户优化其黑盒目标函数，并可选择设置服务器以支持分布式多客户端环境。\n* [**开发者 API：**](https:\u002F\u002Foss-vizier.readthedocs.io\u002Fen\u002Flatest\u002Fguides\u002Findex.html#for-developers) 定义用于实现新优化算法的抽象和工具，以便在服务中托管这些算法进行研究。\n* [**基准测试 API：**](https:\u002F\u002Foss-vizier.readthedocs.io\u002Fen\u002Flatest\u002Fguides\u002Findex.html#for-benchmarking) 包含大量目标函数和方法，用于对算法进行基准测试和比较。\n\n此外，它还包含 [高级 API](https:\u002F\u002Foss-vizier.readthedocs.io\u002Fen\u002Flatest\u002Fadvanced_topics\u002Findex.html) 用于：\n\n* [**TensorFlow Probability：**](https:\u002F\u002Foss-vizier.readthedocs.io\u002Fen\u002Flatest\u002Fadvanced_topics\u002Findex.html#tensorflow-probability) 使用 TensorFlow Probability 和 Flax 编写贝叶斯优化算法。\n* [**PyGlove：**](https:\u002F\u002Foss-vizier.readthedocs.io\u002Fen\u002Flatest\u002Fadvanced_topics\u002Findex.html#pyglove) 利用 OSS Vizier 作为分布式后端，进行大规模进化实验和程序搜索。\n\n有关详细信息，请参阅 OSS Vizier 的 [ReadTheDocs 文档](https:\u002F\u002Foss-vizier.readthedocs.io\u002F)。\n\n## 安装 \u003Ca name=\"installation\">\u003C\u002Fa>\n**快速入门：** 若要使用我们最先进的基于 JAX 的贝叶斯优化器来优化目标函数，请运行：\n\n```bash\npip install google-vizier[jax]\n```\n\n### 高级安装\n**最小安装：** 若要仅从 `requirements.txt` 中安装核心服务和客户端 API，请运行：\n\n```bash\npip install google-vizier\n```\n\n**完整安装：** 若要支持所有算法和基准测试，请运行：\n\n```bash\npip install google-vizier[all]\n```\n\n**特定安装：** 如果您只需要 OSS Vizier 的某个特定部分“X”，请运行：\n\n```bash\npip install google-vizier[X]\n```\n\n这将安装来自 `requirements-X.txt` 的附加组件。可能的选项包括：\n\n* `requirements-jax.txt`：算法和基准测试共用的 JAX 库。\n* `requirements-tf.txt`：基准测试使用的 TensorFlow 库。\n* `requirements-algorithms.txt`：用于算法的额外仓库（例如 EvoJAX）。\n* `requirements-benchmarks.txt`：用于基准测试的额外仓库（例如 NASBENCH-201）。\n* `requirements-test.txt`：测试代码所需的库。\n\n**开发者安装：** 若要安装到最新提交版本，请运行：\n\n```bash\npip install google-vizier-dev[X]\n```\n\n完整安装后，请通过运行 `run_tests.sh` 来检查所有单元测试是否正常工作。OSS Vizier 需要 Python 3.10 或更高版本，而仅包含客户端的软件包则需要 Python 3.8 或更高版本。\n\n## 引用与亮点 \u003Ca name=\"citing_vizier\">\u003C\u002Fa>\n\u003Cins>**引用 Vizier：**\u003C\u002Fins> 如果您觉得其中任何一篇论文对您的工作有所帮助，请考虑引用相应的文献：[算法论文](https:\u002F\u002Farxiv.org\u002Fabs\u002F2408.11527)、[开源软件包论文](https:\u002F\u002Farxiv.org\u002Fabs\u002F2207.13676)以及[Google 系统论文](https:\u002F\u002Fdl.acm.org\u002Fdoi\u002F10.1145\u002F3097983.3098043)。\n\n\u003Cins>**亮点：**\u003C\u002Fins> 我们会记录 [知名用户](https:\u002F\u002Foss-vizier.readthedocs.io\u002Fen\u002Flatest\u002Fhighlights\u002Fapplications.html) 和 [媒体关注](https:\u002F\u002Foss-vizier.readthedocs.io\u002Fen\u002Flatest\u002Fhighlights\u002Fmedia.html)，如果您在工作中使用了 OSS Vizier 并从中受益，请告知我们。\n\n谢谢！\n\n```bibtex\n@article{gaussian_process_bandit,\n  author       = {Xingyou Song and\n                  Qiuyi Zhang and\n                  Chansoo Lee and\n                  Emily Fertig and\n                  Tzu-Kuo Huang and\n                  Lior Belenki and\n                  Greg Kochanski and\n                  Setareh Ariafar and\n                  Srinivas Vasudevan and\n                  Sagi Perel and\n                  Daniel Golovin},\n  title        = {The Vizier Gaussian Process Bandit Algorithm},\n  journal      = {Google DeepMind Technical Report},\n  year         = {2024},\n  eprinttype    = {arXiv},\n  eprint       = {2408.11527},\n}\n\n@inproceedings{oss_vizier,\n  author    = {Xingyou Song and\n               Sagi Perel and\n               Chansoo Lee and\n               Greg Kochanski and\n               Daniel Golovin},\n  title     = {Open Source Vizier: Distributed Infrastructure and API for Reliable and Flexible Black-box Optimization},\n  booktitle = {Automated Machine Learning Conference, Systems Track (AutoML-Conf Systems)},\n  year      = {2022},\n}\n\n@inproceedings{google_vizier,\n  author    = {Daniel Golovin and\n               Benjamin Solnik and\n               Subhodeep Moitra and\n               Greg Kochanski and\n               John Karro and\n               D. Sculley},\n  title     = {Google Vizier: {A} Service for Black-Box Optimization},\n  booktitle = {Proceedings of the 23rd {ACM} {SIGKDD} International Conference on\n               Knowledge Discovery and Data Mining, Halifax, NS, Canada, August 13\n               - 17, 2017},\n  pages     = {1487--1495},\n  publisher = {{ACM}},\n  year      = {2017},\n  url       = {https:\u002F\u002Fdoi.org\u002F10.1145\u002F3097983.3098043},\n  doi       = {10.1145\u002F3097983.3098043},\n}\n```","# Open Source Vizier 快速上手指南\n\nOpen Source Vizier (OSS Vizier) 是一个基于 Python 的黑盒优化服务，源自 Google 内部大规模使用的超参数调优系统。它支持分布式客户端 - 服务器架构，适用于科研探索和生产环境中的自动化机器学习任务。\n\n## 环境准备\n\n在开始之前，请确保您的开发环境满足以下要求：\n\n*   **操作系统**：Linux, macOS 或 Windows\n*   **Python 版本**：\n    *   完整服务（含服务端）：需 **Python 3.10+**\n    *   仅客户端使用：需 **Python 3.8+**\n*   **包管理工具**：推荐使用 `pip`\n\n## 安装步骤\n\n根据您的具体需求，选择以下一种安装方式。国内用户若遇到下载缓慢问题，可添加 `-i https:\u002F\u002Fpypi.tuna.tsinghua.edu.cn\u002Fsimple` 参数使用清华镜像源。\n\n### 1. 快速开始（推荐）\n如果您希望使用基于 JAX 的最先进贝叶斯优化算法进行目标调优：\n\n```bash\npip install google-vizier[jax]\n```\n\n### 2. 最小化安装\n如果您只需要核心服务和客户端 API：\n\n```bash\npip install google-vizier\n```\n\n### 3. 完整安装\n如果您需要支持所有算法、基准测试及相关依赖（如 TensorFlow, EvoJAX 等）：\n\n```bash\npip install google-vizier[all]\n```\n\n### 4. 开发者安装\n如果您需要安装最新提交版本的代码：\n\n```bash\npip install google-vizier-dev[X]\n```\n*(注：将 `[X]` 替换为您需要的特定组件，如 `[jax]` 或 `[all]`)*\n\n## 基本使用\n\n以下示例展示了如何定义一个简单的优化目标，配置搜索空间（包含浮点、整数、离散和分类参数），并启动优化循环。\n\n```python\nfrom vizier.service import clients\nfrom vizier.service import pyvizier as vz\n\n# 定义需要最大化的目标函数\ndef evaluate(w: float, x: int, y: float, z: str) -> float:\n  return w**2 - y**2 + x * ord(z)\n\n# 配置算法、搜索空间和评估指标\nstudy_config = vz.StudyConfig(algorithm='DEFAULT')\nstudy_config.search_space.root.add_float_param('w', 0.0, 5.0)\nstudy_config.search_space.root.add_int_param('x', -2, 2)\nstudy_config.search_space.root.add_discrete_param('y', [0.3, 7.2])\nstudy_config.search_space.root.add_categorical_param('z', ['a', 'g', 'k'])\nstudy_config.metric_information.append(vz.MetricInformation('metric_name', goal=vz.ObjectiveMetricGoal.MAXIMIZE))\n\n# 创建客户端并开始优化 (Vizier 服务将隐式创建)\nstudy = clients.Study.from_study_config(study_config, owner='my_name', study_id='example')\n\n# 执行优化循环\nfor i in range(10):\n  # 获取建议的参数组合\n  suggestions = study.suggest(count=2)\n  for suggestion in suggestions:\n    params = suggestion.parameters\n    # 计算目标值\n    objective = evaluate(params['w'], params['x'], params['y'], params['z'])\n    # 反馈结果\n    suggestion.complete(vz.Measurement({'metric_name': objective}))\n```","某自动驾驶团队正在训练感知模型，急需在有限的算力预算内找到最优的超参数组合以提升识别准确率。\n\n### 没有 vizier 时\n- 工程师只能依靠“网格搜索”或随机猜测来调整学习率、批大小等参数，大量计算资源浪费在无效的组合上。\n- 面对浮点型、整型和类别型混合的复杂参数空间，手动编写调度脚本极易出错且难以维护。\n- 缺乏统一的实验记录机制，团队成员无法实时共享中间结果，导致多人重复尝试相同的失败配置。\n- 优化过程呈串行状态，无法利用集群优势进行分布式并行探索，模型迭代周期被大幅拉长。\n\n### 使用 vizier 后\n- 借助内置的黑盒优化算法，vizier 能智能预测高潜力参数组合，用更少的试验次数快速收敛至全局最优解。\n- 通过简洁的 Python API 即可定义包含连续、离散及分类变量的混合搜索空间，无需关心底层调度逻辑。\n- 基于客户端 - 服务器架构，多名研究员可同时提交评估任务，系统自动去重并实时同步最佳实验数据。\n- 原生支持分布式执行，轻松调动多台机器并行运行建议配置，将原本数天的调参时间压缩至数小时。\n\nvizier 将繁琐盲目的超参数试错转化为高效智能的自动化决策流程，显著提升了研发效率与模型性能上限。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fgoogle_vizier_a915b897.png","google","Google","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002Fgoogle_c4bedcda.png","Google ❤️ Open Source",null,"opensource@google.com","GoogleOSS","https:\u002F\u002Fopensource.google\u002F","https:\u002F\u002Fgithub.com\u002Fgoogle",[82,86],{"name":83,"color":84,"percentage":85},"Python","#3572A5",99.8,{"name":87,"color":88,"percentage":89},"Shell","#89e051",0.2,1635,111,"2026-04-02T08:15:57","Apache-2.0","","未说明 (若使用 JAX 或 TensorFlow 相关算法\u002F基准测试，通常建议配备支持 CUDA 的 NVIDIA GPU，但 README 未明确具体型号或显存要求)","未说明",{"notes":98,"python":99,"dependencies":100},"该工具提供多种安装模式：最小化安装仅需核心服务；若需使用基于 JAX 的最先进贝叶斯优化器，需安装 'google-vizier[jax]'；若需支持所有算法和基准测试，需安装 'google-vizier[all]'。开发者可使用 'google-vizier-dev' 安装最新提交版本。","3.10+ (完整服务); 3.8+ (仅客户端包)",[101,102,103,104,105,106,107],"google-vizier","jax (可选，用于贝叶斯优化)","tensorflow (可选，用于基准测试)","flax (可选，配合 JAX)","tensorflow-probability (可选，用于贝叶斯优化)","pyglove (可选，用于大规模进化实验)","evojax (可选，额外算法库)",[14],[64,110,111,112,113,114,115,116,117,118,119,120,72,121,122,123,124],"hyperparameter-optimization","tuning","tuning-parameters","blackbox-optimization","hyperparameter-tuning","bayesian-optimization","evolutionary-algorithms","distributed-systems","distributed-computing","grpc","open-source","algorithm","deep-learning","machine-learning","optimization","2026-03-27T02:49:30.150509","2026-04-06T19:57:04.794626",[128,133,138,142,147,152,156],{"id":129,"question_zh":130,"answer_zh":131,"source_url":132},19845,"运行 Notebook 时遇到 'ImportError: cannot import name key_value_pb2' 错误怎么办？","这通常是因为安装的 `google-vizier` 包版本与源码不匹配，或者缺少编译后的 proto 文件。解决方法：\n1. 确保从仓库拉取最新代码后，运行脚本重新编译 proto 文件。\n2. 如果是通过 pip 安装，请尝试升级到最新版本（如 v0.1.2 或更高），旧版本可能存在导入路径问题。\n3. 确认本地环境与安装包版本一致，避免混合使用源码和 pip 包导致的路径冲突。","https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fissues\u002F162",{"id":134,"question_zh":135,"answer_zh":136,"source_url":137},19846,"如何在分布式或多进程环境下并行评估试验（Trials）并避免建议重复？","在并行评估场景中，必须为每个工作进程（worker）设置唯一的 `client_id`。\n- 如果是单进程运行，不需要传递 `client_id`。\n- 如果是多进程\u002F分布式运行，每个进程应使用不同的 `client_id`（例如对应 worker_id）调用 `suggest(count=1, client_id=...)`。\n- 切勿在代码中简单地递增 `client_id`，而应固定每个进程的 ID。\n这样可以确保算法感知到所有正在进行的试验，避免生成重复的建议参数。参考官方分布式指南：https:\u002F\u002Foss-vizier.readthedocs.io\u002Fen\u002Flatest\u002Fguides\u002Fuser\u002Fdistributed.html","https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fissues\u002F1204",{"id":139,"question_zh":140,"answer_zh":141,"source_url":132},19847,"如何正确完成一个试验（Trial）并将结果反馈给服务器？","`study_client.suggest()` 返回的对象实际上是 `TrialClient` 实例，它内部已包含与服务器的连接。因此，只需调用 `suggestion.complete(final_measurement)` 即可自动将评估结果发送回服务器，无需额外手动提交反馈。示例代码：\n```python\nsuggestions = study_client.suggest(count=5)\nfor suggestion in suggestions:\n    x = suggestion.parameters['x']\n    y = suggestion.parameters['y']\n    final_measurement = vz.Measurement({'maximize_metric': evaluate(x, y)})\n    suggestion.complete(final_measurement)  # 自动发送反馈\n```",{"id":143,"question_zh":144,"answer_zh":145,"source_url":146},19848,"使用 `pip install google-vizier[jax]` 安装失败或遇到依赖冲突怎么办？","该问题在早期版本（如 0.1.1 及以下）中较为常见，通常是由于依赖项版本不兼容或打包缺失导致。解决方案：\n1. 升级 `google-vizier` 到 0.1.2 或更高版本：`pip install --upgrade google-vizier[jax]`。\n2. 如果仍然失败，尝试先单独安装核心依赖（如 `grpcio`, `protobuf`, `jax`），再安装 vizier。\n3. 确保 Python 版本在支持范围内（推荐 3.8-3.10），某些版本在 Windows 上可能需要预编译的二进制包。","https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fissues\u002F519",{"id":148,"question_zh":149,"answer_zh":150,"source_url":151},19849,"PyGlove 接口报错 'metadata_to_user' 导入失败或 backend.py 有语法错误？","这是 `google-vizier` 特定版本（如 0.1.13）中的已知问题，部分文件包含多余文本或错误的导入语句，且未及时同步到 PyPI。\n解决方法：\n1. 不要直接使用 pip 安装的版本，改为从 GitHub 源码安装：\n   ```bash\n   git clone https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier.git\n   cd vizier\n   pip install -e .\n   ```\n2. 如果是 proto 相关问题，需在源码目录运行 proto 编译脚本。\n3. 等待维护者发布修复后的新版本到 PyPI。","https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fissues\u002F1044",{"id":153,"question_zh":154,"answer_zh":155,"source_url":137},19850,"在分类（categorical）搜索空间中出现重复的建议参数怎么办？","即使搜索空间很大，离散参数仍可能因算法机制产生少量重复建议。缓解方法：\n1. 尽量将离散整数参数定义为 `CATEGORICAL` 类型而非 `DISCRETE`，可减少舍入导致的重复。\n2. 在分布式场景中务必使用唯一的 `client_id`，否则不同 worker 可能请求到相同建议。\n3. 应用层去重：在获取建议后自行检查并跳过已评估过的配置。\n注意：完全消除重复较难，但通过上述方法可显著降低概率。",{"id":157,"question_zh":158,"answer_zh":159,"source_url":132},19851,"如何批量获取建议并高效并行评估？","如果单次评估非常快，可以一次性请求多个建议（如 `count=10`）然后顺序评估；但如果评估耗时较长且需并行处理，推荐做法是：\n- 启动多个进程\u002F线程，每个进程调用 `suggest(count=1, client_id=unique_id)` 获取单个建议。\n- 各自独立评估后立即调用 `complete()` 反馈。\n这样既能充分利用并行资源，又能让算法实时感知已完成试验，从而生成更优的后续建议。避免在主进程中循环请求单个 trial 造成串行瓶颈。",[161,166,171,176,181,186,191,196,201,206,211,216,221,226,231,236,241,246,251,256],{"id":162,"version":163,"summary_zh":164,"released_at":165},117893,"v0.1.24","## 变更内容\n* 1. 由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1235 中修复了 SQL 数据存储的提交逻辑\n\n\n**完整变更日志**: https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fcompare\u002Fv0.1.23...v0.1.24","2025-02-01T16:38:21",{"id":167,"version":168,"summary_zh":169,"released_at":170},117894,"v0.1.23","## 变更内容\n* 将 CI 更新至 Python 3.12，以面向未来。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1231 中完成。\n* 恢复为使用 3.11 —— 似乎 3.12 在 `performance_test.py` 中存在一些测试失败。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1232 中完成。\n* 将 gRPC 版本放宽至 1.66.2。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1233 中完成。\n* 从 `requirements.txt` 中移除 `grpcio-tools`，因为实际上并不需要它——它仅在构建和运行 `setup.py` 时才相关！同时将 `grpcio` 降级至支持 Py3.11 的最低版本。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1234 中完成。\n\n\n**完整变更日志**：https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fcompare\u002Fv0.1.22...v0.1.23","2025-01-31T22:20:42",{"id":172,"version":173,"summary_zh":174,"released_at":175},117895,"v0.1.22","## 变更内容\n* 在 `VizierGaussianProcess` 中支持可分离核，用于多指标问题。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1223 中实现。\n* 基于高斯过程的优化器支持更多多任务类型。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1224 中实现。\n* 目前 GP-UCB-PE 尚不支持多指标问题中的试验和指标填充。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1225 中提出。\n* 根据 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fissues\u002F1222#issuecomment-2592148647 的建议，放宽了基准测试的要求版本。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1226 中实施。\n* 更新 grpcio 和 grpcio-tools。旧版本会导致 Python 3.11 出现问题。详情请参阅此讨论帖：https:\u002F\u002Fgithub.com\u002Fgrpc\u002Fgrpc\u002Fissues\u002F31934。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1229 中完成。\n\n\n**完整变更日志**: https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fcompare\u002Fv0.1.21...v0.1.22","2025-01-31T01:21:39",{"id":177,"version":178,"summary_zh":179,"released_at":180},117896,"v0.1.21","## 变更内容\n* 允许将臂命名为字母顺序的名称。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1190 中提出。\n* 在 README 中添加开发版本信息，并略微改进了对支持算法的描述。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1194 中提出。\n* 对 raytune 转换进行小修复：实际上，Integer.high 是不包含在内的；参见 https:\u002F\u002Fdocs.ray.io\u002Fen\u002Flatest\u002F_modules\u002Fray\u002Ftune\u002Fsearch\u002Fsample.html#randint，而我们目前是包含在内的。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1195 中提出。\n* 支持在收敛曲线比较器中使用 `xs_cutoff` 参数。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1192 中提出。\n* 更新 Eagle 超参数的描述。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1196 中提出。\n* 按照 https:\u002F\u002Fgithub.com\u002Fray-project\u002Fray\u002Fpull\u002F48684\u002Ffiles#r1854943374 的建议整理 `clients.py` 文件，并在找不到研究时使用 `ResourceNotFoundError` 异常。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1200 中提出。\n* 允许使用 numpy 2.0。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1202 中提出。\n* 进行了一些文档外观上的小修复。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1203 中提出。\n* 解决了 pytype --strict-none-binding 检测到的类型不安全问题。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1209 中提出。\n* 允许将 GP 模型作为依赖项注入到 `GP_UCB_PE` 设计器中。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1208 中提出。\n* 允许将随机采样和投影函数作为依赖项注入到 VectorizedEagle 中。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1210 中提出。\n* 对 `GP_UCB_PE` 进行小幅重构。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1211 中提出。\n* 为 `GP_UCB_PE` 添加多指标支持。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1217 中提出。\n* 更新 eagle_strategy.py 的 Pytype 空值检查。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1197 中提出。\n* 对于标量化 GP_BANDIT，is_parallel 应设置为 False，因为它不支持多指标批量操作。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1221 中提出。\n* 由于 GP-UCB-PE 支持多目标优化，更新文档和版本号。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1220 中提出。\n\n\n**完整变更日志**: https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fcompare\u002Fv0.1.20...v0.1.21","2025-01-07T21:01:34",{"id":182,"version":183,"summary_zh":184,"released_at":185},117897,"v0.1.20","## 变更内容\n* @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1186 中添加了对 Pythia 单例参数的处理支持。\n* 为编辑硬盘上数据库的命令添加了 SQLA 提交\u002F回滚功能。详情请参阅 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fissues\u002F1187。此前，执行仅在内存中进行，但不会保存到硬盘。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1188 中实现。\n\n\n**完整变更日志**: https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fcompare\u002Fv0.1.19...v0.1.20","2024-10-29T17:51:02",{"id":187,"version":188,"summary_zh":189,"released_at":190},117898,"v0.1.19","## 变更内容\n* 在 Eagle 优化器的实现中，为部分区域添加或编辑了说明。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1155 中完成。\n* 添加了一个 TODO 项。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1159 中完成。\n* 1. 使用转换器代替原有方式，完成对所有扁平搜索空间的 NormalizingExperimenter 正则化处理。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1161 中完成。\n* 处理所有标签均为 NaN 的边界情况。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1162 中完成。\n* 从开源项目列表中移除 emukit。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1164 中完成。\n* 将 NormalizingExperimenter 改为使用 (y - 均值)\u002F标准差的计算方式。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1165 中完成。\n* 杂项：移除 emukit。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1163 中完成。\n* 为 GP-UCB-PE 设计器添加 `sample` 和 `predict` 方法。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1167 中完成。\n* 修复由 numpy 2.0.1 引入的 ParameterValueConverter 中的一个 bug（参见 cl\u002F677725110）。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1170 中完成。\n* 允许用户在确实需要时定义端口。https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fissues\u002F1098。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1171 中完成。\n* 修复 RTD 相关问题。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1173 中完成。\n* 添加多臂实验者。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1172 中完成。\n* 提高 `gp_ucb_pe.VizierGPUCBPEBandit` 的默认信噪比阈值。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1177 中完成。\n* 再次提高 `gp_ucb_pe.VizierGPUCBPEBandit` 的默认信噪比阈值。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1178 中完成。\n* 在 scheduled_designer_test 中启用 `float64` 数据类型。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1179 中完成。\n* 进一步提高 `gp_ucb_pe.VizierGPUCBPEBandit` 的默认信噪比阈值。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1180 中完成。\n* 更新 Jax 版本以修复 CI 错误。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1182 中完成。\n* 修补 Eagle 设计器，使其能够处理单例参数。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1181 中完成。\n\n\n**完整变更日志**: https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fcompare\u002Fv0.1.18...v0.1.19","2024-10-24T16:58:37",{"id":192,"version":193,"summary_zh":194,"released_at":195},117899,"v0.1.18","## 变更内容\n* 修复 gp_bandit.py 中 predict 方法的 bug（无法传递随机数生成器），由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1146 中完成。\n* 修复 x 轴标签及调试状态分析器直方图的绘制问题，由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1147 中完成。\n* 将客户端测试 fixture 类通用化，以便子类可以编写平台特定的测试，由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1148 中完成。\n* 为绘图函数添加返回值类型 fig，由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1149 中完成。\n* 在 Halton 拟随机采样器中，我们原本请求 D 个样本，但实际上只需要…，由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1151 中完成。\n* 为准备 xla:cpu 更新而放宽数值容忍度，由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1152 中完成。\n* 1. 添加 AcquisitionOverScalarized（先对分布进行标量化以得到标量值，再计算 UCB），由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1153 中完成。\n* 1. 添加 AcquisitionOverScalarized（先对分布进行标量化以得到标量值，再计算 UCB），由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1154 中完成。\n\n\n**完整变更日志**: https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fcompare\u002Fv0.1.17...v0.1.18","2024-08-06T15:52:44",{"id":197,"version":198,"summary_zh":199,"released_at":200},117900,"v0.1.17","## 变更内容\n* @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1086 中添加了装饰器 `@seed_with_default`\n* @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1092 中修复了允许的版本名称相关 bug\n* @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1093 中改用 TEST_PYPI 凭据\n* @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1094 中升级了 jax 版本，以避免 `DeviceArray` 导入问题\n* @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1090 中为 `ensemble_designer` 添加了对不可行试验的支持\n* @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1096 中添加了验证代码，以满足 PyType 检查要求\n* @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1091 中向 `UCBPEConfig` 添加了 `pe_overwrite_probability` 参数\n* @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1101 中更新了 `pe_overwrite_probability` 的默认值\n* @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1104 中添加了 `HashingInfeasibleExperimenter` 和 `ParameterRegionInfeasibleExperimenter` 以模拟不可行行为\n* @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1105 中将不可行实验者添加到公共导入中\n* @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1103 中参数化了惩罚因子并重命名\n* 默认试验种子初始化，不使用缩放器。@copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1088 中进行了此项更改\n* @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1110 中实现了一种通过集合优化进行探索的 `GP_UCB_PE` 变体\n* @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1114 中支持信任区域采集函数中的多批次维度\n* @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1116 中在生成批次中的其余建议之前，先将第一个建议附加到活跃试验中\n* @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1117 中将先验特征传递给集合采集优化\n* @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1118 中添加了一个包装器，以使 Vizier 与其他 raytune 算法之间的比较更加公平\n* @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1106 中进行了小幅更新\n* @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F958 中添加了用于 GP 拍卖机的 simple4d 收敛性测试\n* @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1120 中添加了 BenchmarkRecord 总结工具\n* @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1121 中重构了实验者工厂\n* @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1123 中向 PlotElement 添加了 x 轴标签\n* @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1126 中弃用了 Vizier JAX 中的 predictive_fns.py\n* @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1129 中修复了 MultiObjectiveNumpyExperimenter 中的意外 bug\n* Aesth","2024-07-11T18:23:06",{"id":202,"version":203,"summary_zh":204,"released_at":205},117901,"v0.1.16","## 变更内容\n* 通过 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1046 中减少重复代码\n* 修复 pyglove Colab 中的端点问题。应解决 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fissues\u002F1044，由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1047 中完成\n* 由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1050 中修复链接\n* 由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1051 中更新 `GP_UCB_PE` 的采集优化器参数\n* 根据是否存在实验者键来更改子图标题。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1052 中完成\n* 由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1061 中添加一个开源的 GP_UCB_PE 测试\n* 将不可行试验纳入 Eagle 设计器中。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1057 中完成\n* 增加自适应集成的更多细节。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1066 中完成\n* 内部清理。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1064 中完成\n* 向 `InfeasibleWarperComponent` 添加偏移，并将其启用到默认的输出变换管道中。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1067 中完成\n* 将 Branin 和 Hartmann 添加到公共导入中。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1068 中完成\n* 更新线性输出变换器，使其与 jit 缓存良好兼容。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1070 中完成\n* 将集成设计器元数据失败的逻辑更新为日志警告（在大多数情况下）。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1072 中完成\n* 更新计划参数 API。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1073 中完成\n* 将每次建议的延迟存储在 GP_UCB_PE 建议时序元数据中。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1075 中完成\n* 加快 Pareto 排序计算速度。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1078 中完成\n* 清晰化并整合收敛曲线得分。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1076 中完成\n* 序列化计划设计器。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1074 中完成\n* 更新基准测试 Colab，并减少不必要的导入。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1081 中完成\n* 简化 Ray 基准测试的 RTD。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1082 中完成\n* 更新至 0.1.16 版本。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1084 中完成\n\n\n**完整变更日志**: https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fcompare\u002Fv0.1.15...v0.1.16","2024-04-08T21:38:33",{"id":207,"version":208,"summary_zh":209,"released_at":210},117902,"v0.1.15","## 变更内容\n* 添加 GP_UCB_PE，并将其设为新的默认选项。由 @copybara-service 在 https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1042 中完成。\n\n\n**完整变更日志**: https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fcompare\u002Fv0.1.14...v0.1.15","2024-01-24T21:26:43",{"id":212,"version":213,"summary_zh":214,"released_at":215},117903,"v0.1.14","## What's Changed\r\n* Add a json encoder for metadata by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1009\r\n* Add failing designer for testing. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1010\r\n* Allow for linear kernel for ARD in Python GP. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1012\r\n* Fix early stopping colab by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1014\r\n* Modernize `@jaxtyped` code by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1015\r\n* Support reverse log in keras embedder and small edge case fix in core converter. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1017\r\n* Support `SimpleKd` experimenter returning relative objective value. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1011\r\n* Propagate selected keys from global namespace to metadata namespace. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1023\r\n* Simplify some SQL datastore code by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1022\r\n* `gp_bandit` designer rejects empty search spaces. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1024\r\n* No need for union since `vz.Trial` is already a subclass by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1025\r\n* Debug shifting experimenter due to OOB values (and revert to previous code). by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1019\r\n* Apply suggestion from ConnorBaker in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1029 by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1033\r\n* Remove Python 3.7 support and fix ugly formatting in pyglove core by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1035\r\n* Allow for mutation rate schedules for NSGA by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1034\r\n* Update benchmark result structure to incorporate spec gen name. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1020\r\n* Adds a new error type (not yet fully supported) that allows Pythia algorithms by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1038\r\n* Some support for PythiaFallbackError. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1039\r\n* Adds benchmarks testing. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1040\r\n* Add NormalizedSimpleRegert and WinRateSimpleRegret convergence curve comparators. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1041\r\n* Creating scheduled GP-Bandit designer. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1043\r\n\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fcompare\u002Fv0.1.13...v0.1.14","2024-01-23T19:12:44",{"id":217,"version":218,"summary_zh":219,"released_at":220},117904,"v0.1.13","## What's Changed\r\n* Remove logging errors when the convertor rounds up values, which is not an uncommon occurrence (e.g. RandomDesigner, EagleStrategyDesigner). by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F950\r\n* Input validation for add_categorical_param. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F952\r\n* Fix the type error. `nn.module.get_variable` returns a regular dict now. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F957\r\n* Fixes Eagle optimizer trials padding by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F960\r\n* ParameterEntropyHparamScorerFactory for scoring exploration behavior by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F970\r\n* Add prior study setters into benchmark runners. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F984\r\n* Update documentation: Users are now allowed to write to namespaces other than by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F988\r\n* Introduce stateful curve converters. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F987\r\n* Add support for conditionals in `TrialToArrayConverter`. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1001\r\n* Minor edits by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F1000\r\n\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fcompare\u002Fv0.1.12...v0.1.13","2023-11-30T01:04:32",{"id":222,"version":223,"summary_zh":224,"released_at":225},117905,"v0.1.12","## What's Changed\r\n* Small aesthetic update to Ray benchmark RTD by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F914\r\n* Add a lot of tracing trackers. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F913\r\n* Fix broken `pytest_ray` installation by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F918\r\n* Add multi-objective acquisitions and integrate them into GPBandit. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F909\r\n* Add profiling around seed trial generation to help debug slow runs. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F925\r\n* Meta learning designer: 1) multi-metric trial support, 2) updated default schedules, 3) additional testing and documentation. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F933\r\n* Add counter metrics with metadata. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F931\r\n* Use QuasiRandomDesigner in EagleStrategy. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F943\r\n* Clean up & bugfix for random rotation matrix generation. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F941\r\n* Remove redundant logging from Eagle designer for expediting benchmarking jobs \u002F convergence tests. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F946\r\n\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fcompare\u002Fv0.1.11...v0.1.12","2023-10-16T21:04:56",{"id":227,"version":228,"summary_zh":229,"released_at":230},117906,"v0.1.11","## What's Changed\r\n* Expose PolicyFactory into Pythia import. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F905\r\n* General Meta-Learning Framework by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F877\r\n* Debug ensemble_designer to handle with Active Trials. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F910\r\n\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fcompare\u002Fv0.1.10...v0.1.11","2023-09-11T20:32:19",{"id":232,"version":233,"summary_zh":234,"released_at":235},117907,"v0.1.10","## What's Changed\r\n* Clarify that in multi-worker situations, workers are expected to provide `client_id` in the `suggest()` call, and not during client construction. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F875\r\n* Expose `DesignerPolicy` in `algorithms` init file by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F894\r\n* Update Vizier version to 0.1.10 by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F896\r\n\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fcompare\u002Fv0.1.9...v0.1.10","2023-09-08T09:24:35",{"id":237,"version":238,"summary_zh":239,"released_at":240},117908,"v0.1.9","## What's Changed\r\n* Add PlotElements and BenchmarkRecord for easy plotting. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F878\r\n\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fcompare\u002Fv0.1.8...v0.1.9","2023-09-01T01:04:12",{"id":242,"version":243,"summary_zh":244,"released_at":245},117909,"v0.1.8","## What's Changed\r\n* 'all' pip README update by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F851\r\n\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fcompare\u002Fv0.1.7...v0.1.8","2023-08-17T21:38:15",{"id":247,"version":248,"summary_zh":249,"released_at":250},117910,"v0.1.7","## What's Changed\r\n* Predict Kumamon individual metrics. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F739\r\n* Add GP Bandit tests for VizierSearcher by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F750\r\n* Make the number of unpadded features a dynamic arg for acquisition function optimization so that padding\u002Fmasking the feature dimension avoids retracing. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F757\r\n* Add a Converter from trials to ContinuousAndCategoricalArray. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F754\r\n* Minor cleanups by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F788\r\n* Use Categorical kernel in GP bandit. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F784\r\n* Convert vectorized optimizers to operate on continuous and categorical data. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F793\r\n* Follow up to the VectorizedBase refactor with a couple fixes: by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F797\r\n* Add arch gym to highlights by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F804\r\n* Add the wide LCB and delayed trust region application options to the acquisition-based trust region. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F805\r\n* Silence some pytype errors. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F820\r\n* Minor updates to pythia docs, string reps, and TODOs by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F821\r\n* Internal change. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F829\r\n* Advance `attrs` version to `23.1.0` by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F830\r\n* Add batching\u002Fensembling support for mean_fn. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F834\r\n\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fcompare\u002Fv0.1.6...v0.1.7","2023-08-10T21:15:16",{"id":252,"version":253,"summary_zh":254,"released_at":255},117911,"v0.1.6","## What's Changed\r\n* Fix qUCB test following a change to TFP. Rename qUCB parameter \"coefficient\" for consistency with UCB. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F691\r\n* Bug fix\u002Fadd missing test cases for Optax ARD optimizer. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F692\r\n* Add option to pad number of observations and dimensions of inputs. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F627\r\n* Pyvizier needs to include one more definition. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F693\r\n* Update Adaptive Ensembling to use observation probs. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F695\r\n* Clarify jit_loop arg in vectorized_base.py by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F705\r\n* Fix the flag error in runtime context. https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fissues\u002F698 by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F700\r\n* Update Basic Vizier documentation by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F716\r\n* Update all Jax requirements to avoid breaking Github workflows by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F722\r\n* Disable benchmark tests for now due to Dopamine failures. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F730\r\n* Remove 3.x from github workflow by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F731\r\n\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fcompare\u002Fv0.1.5...v0.1.6","2023-06-07T15:38:57",{"id":257,"version":258,"summary_zh":259,"released_at":260},117912,"v0.1.5","## What's Changed\r\n* Create input warping based on Kumaraswamy CDF. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F562\r\n* Fix Numpy dtype error in acquisitions_test. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F605\r\n* Add a test to the RandomDesigner to confirm that it respects LOG scaling. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F596\r\n* Fix Eagle slowness for large studies by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F609\r\n* Add typing to output warping by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F613\r\n* Use time as seed by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F614\r\n* Fix pytype failures related to teaching pytype about NumPy scalar types. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F604\r\n* Add RayTune SearchSpace and Experimenter Converters and test on mock study. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F615\r\n* Update GoogleDesignerFactory to use a designer factory. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F611\r\n* Remove GP hparam ensemble since ensemble members are usually the same with the LBFGSB optimizer, and to reduce latency associated with `jax.vmap` with the forthcoming JAX Eagle optimizer. Change `best_n=1` behavior to squeeze out the singleton dimension of the GP hparams and not use vmap, since unnecessary vmap is a speed footgun. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F618\r\n* Normalize loss value by the number of observations only when using SGD-based GP hparam optimizers (so a consistent learning rate can be used regardless of the number of observations). Previously, this was baked into the loss function definition; now that we're using L-BFGS-B by default, this is unnecessary and possibly confusing. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F602\r\n* Update Pytypes after recent changes to typing in JAX\u002FNumpy, and following our decision to use more specific types (instead of chex.Array) where possible. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F624\r\n* Fix a bug where Constraint objects returned by `get_constraints` did not account for `mean_fn` parameters. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F633\r\n* Added `utils\u002Fperformance_utils.py` with a decorator that tracks function runtime duration. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F638\r\n* Make 'num_metric' the last dimension in LinearOutputWarper by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F648\r\n* Kumamon: apply linear output warping and compute acquisition for separable kernel using sampling. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F649\r\n* Add more logs to `DesignerPolicy` to better track performance. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F653\r\n* Update mapping logic for Raytune. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F657\r\n* Add L-BFGS-B Acquisition function optimizer. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F658\r\n* Move NestedDictRAMDatastore to a new file and move metadata operations into `metadata_util.py`. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F673\r\n* Update `Predictor` pydoc. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F676\r\n* Update predict RTD colab. by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F681\r\n* Fixes Trial default creation_time by @copybara-service in https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fpull\u002F684\r\n\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fvizier\u002Fcompare\u002Fv0.1.4...v0.1.5","2023-05-02T21:56:27"]