[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-spotify--voyager":3,"tool-spotify--voyager":64},[4,17,27,35,43,56],{"id":5,"name":6,"github_repo":7,"description_zh":8,"stars":9,"difficulty_score":10,"last_commit_at":11,"category_tags":12,"status":16},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,3,"2026-04-05T11:01:52",[13,14,15],"开发框架","图像","Agent","ready",{"id":18,"name":19,"github_repo":20,"description_zh":21,"stars":22,"difficulty_score":23,"last_commit_at":24,"category_tags":25,"status":16},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 真正成长为懂上",140436,2,"2026-04-05T23:32:43",[13,15,26],"语言模型",{"id":28,"name":29,"github_repo":30,"description_zh":31,"stars":32,"difficulty_score":23,"last_commit_at":33,"category_tags":34,"status":16},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 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能，使其成为当前最灵活、生态最丰富的开源扩散模型工具之一，帮助用户将创意高效转化为现实。",107662,"2026-04-03T11:11:01",[13,14,15],{"id":36,"name":37,"github_repo":38,"description_zh":39,"stars":40,"difficulty_score":23,"last_commit_at":41,"category_tags":42,"status":16},3704,"NextChat","ChatGPTNextWeb\u002FNextChat","NextChat 是一款轻量且极速的 AI 助手，旨在为用户提供流畅、跨平台的大模型交互体验。它完美解决了用户在多设备间切换时难以保持对话连续性，以及面对众多 AI 模型不知如何统一管理的痛点。无论是日常办公、学习辅助还是创意激发，NextChat 都能让用户随时随地通过网页、iOS、Android、Windows、MacOS 或 Linux 端无缝接入智能服务。\n\n这款工具非常适合普通用户、学生、职场人士以及需要私有化部署的企业团队使用。对于开发者而言，它也提供了便捷的自托管方案，支持一键部署到 Vercel 或 Zeabur 等平台。\n\nNextChat 的核心亮点在于其广泛的模型兼容性，原生支持 Claude、DeepSeek、GPT-4 及 Gemini Pro 等主流大模型，让用户在一个界面即可自由切换不同 AI 能力。此外，它还率先支持 MCP（Model Context Protocol）协议，增强了上下文处理能力。针对企业用户，NextChat 提供专业版解决方案，具备品牌定制、细粒度权限控制、内部知识库整合及安全审计等功能，满足公司对数据隐私和个性化管理的高标准要求。",87618,"2026-04-05T07:20:52",[13,26],{"id":44,"name":45,"github_repo":46,"description_zh":47,"stars":48,"difficulty_score":23,"last_commit_at":49,"category_tags":50,"status":16},2268,"ML-For-Beginners","microsoft\u002FML-For-Beginners","ML-For-Beginners 是由微软推出的一套系统化机器学习入门课程，旨在帮助零基础用户轻松掌握经典机器学习知识。这套课程将学习路径规划为 12 周，包含 26 节精炼课程和 52 道配套测验，内容涵盖从基础概念到实际应用的完整流程，有效解决了初学者面对庞大知识体系时无从下手、缺乏结构化指导的痛点。\n\n无论是希望转型的开发者、需要补充算法背景的研究人员，还是对人工智能充满好奇的普通爱好者，都能从中受益。课程不仅提供了清晰的理论讲解，还强调动手实践，让用户在循序渐进中建立扎实的技能基础。其独特的亮点在于强大的多语言支持，通过自动化机制提供了包括简体中文在内的 50 多种语言版本，极大地降低了全球不同背景用户的学习门槛。此外，项目采用开源协作模式，社区活跃且内容持续更新，确保学习者能获取前沿且准确的技术资讯。如果你正寻找一条清晰、友好且专业的机器学习入门之路，ML-For-Beginners 将是理想的起点。",84991,"2026-04-05T10:45:23",[14,51,52,53,15,54,26,13,55],"数据工具","视频","插件","其他","音频",{"id":57,"name":58,"github_repo":59,"description_zh":60,"stars":61,"difficulty_score":10,"last_commit_at":62,"category_tags":63,"status":16},3128,"ragflow","infiniflow\u002Fragflow","RAGFlow 是一款领先的开源检索增强生成（RAG）引擎，旨在为大语言模型构建更精准、可靠的上下文层。它巧妙地将前沿的 RAG 技术与智能体（Agent）能力相结合，不仅支持从各类文档中高效提取知识，还能让模型基于这些知识进行逻辑推理和任务执行。\n\n在大模型应用中，幻觉问题和知识滞后是常见痛点。RAGFlow 通过深度解析复杂文档结构（如表格、图表及混合排版），显著提升了信息检索的准确度，从而有效减少模型“胡编乱造”的现象，确保回答既有据可依又具备时效性。其内置的智能体机制更进一步，使系统不仅能回答问题，还能自主规划步骤解决复杂问题。\n\n这款工具特别适合开发者、企业技术团队以及 AI 研究人员使用。无论是希望快速搭建私有知识库问答系统，还是致力于探索大模型在垂直领域落地的创新者，都能从中受益。RAGFlow 提供了可视化的工作流编排界面和灵活的 API 接口，既降低了非算法背景用户的上手门槛，也满足了专业开发者对系统深度定制的需求。作为基于 Apache 2.0 协议开源的项目，它正成为连接通用大模型与行业专有知识之间的重要桥梁。",77062,"2026-04-04T04:44:48",[15,14,13,26,54],{"id":65,"github_repo":66,"name":67,"description_en":68,"description_zh":69,"ai_summary_zh":70,"readme_en":71,"readme_zh":72,"quickstart_zh":73,"use_case_zh":74,"hero_image_url":75,"owner_login":76,"owner_name":77,"owner_avatar_url":78,"owner_bio":79,"owner_company":80,"owner_location":80,"owner_email":81,"owner_twitter":80,"owner_website":82,"owner_url":83,"languages":84,"stars":109,"forks":110,"last_commit_at":111,"license":112,"difficulty_score":104,"env_os":113,"env_gpu":114,"env_ram":114,"env_deps":115,"category_tags":120,"github_topics":121,"view_count":23,"oss_zip_url":80,"oss_zip_packed_at":80,"status":16,"created_at":128,"updated_at":129,"faqs":130,"releases":161},2964,"spotify\u002Fvoyager","voyager","🛰️ An approximate nearest-neighbor search library for Python and Java with a focus on ease of use, simplicity, and deployability.","Voyager 是一款由 Spotify 开源的高性能向量搜索库，专为 Python 和 Java 开发者设计。它的核心任务是在内存中对海量向量数据进行“近似最近邻搜索”，简单来说，就是能在极短时间内从数百万甚至上亿个数据点中，快速找到与目标最相似的那些内容。\n\n在人工智能应用日益普及的今天，如何高效处理嵌入向量（Embeddings）是许多推荐系统、搜索引擎和语义分析场景面临的难题。Voyager 正是为了解决这一痛点而生，它不仅能轻松应对高并发查询需求（在 Spotify 内部日均查询量高达数亿次），还兼顾了极高的查全率，性能表现优于传统的 Annoy 等工具。\n\nVoyager 特别适合后端工程师、算法研究员以及需要构建实时推荐或检索系统的开发团队使用。其独特的技术亮点在于基于高效的 HNSW 算法进行了深度优化，并实现了 Python 与 Java 双语言的完全功能对等和索引兼容，这意味着你可以用一种语言建立索引，另一种语言直接读取，极大地提升了跨语言开发的灵活性。此外，Voyager 对 macOS、Linux 及 Windows 平台提供了完善支持，甚至原生适配 Apple","Voyager 是一款由 Spotify 开源的高性能向量搜索库，专为 Python 和 Java 开发者设计。它的核心任务是在内存中对海量向量数据进行“近似最近邻搜索”，简单来说，就是能在极短时间内从数百万甚至上亿个数据点中，快速找到与目标最相似的那些内容。\n\n在人工智能应用日益普及的今天，如何高效处理嵌入向量（Embeddings）是许多推荐系统、搜索引擎和语义分析场景面临的难题。Voyager 正是为了解决这一痛点而生，它不仅能轻松应对高并发查询需求（在 Spotify 内部日均查询量高达数亿次），还兼顾了极高的查全率，性能表现优于传统的 Annoy 等工具。\n\nVoyager 特别适合后端工程师、算法研究员以及需要构建实时推荐或检索系统的开发团队使用。其独特的技术亮点在于基于高效的 HNSW 算法进行了深度优化，并实现了 Python 与 Java 双语言的完全功能对等和索引兼容，这意味着你可以用一种语言建立索引，另一种语言直接读取，极大地提升了跨语言开发的灵活性。此外，Voyager 对 macOS、Linux 及 Windows 平台提供了完善支持，甚至原生适配 Apple Silicon 芯片，安装简便，开箱即用，是构建生产级向量检索服务的可靠选择。","![The word Voyager_in blue, with a multicoloured graphic illustrating an orbit to its left.](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fspotify_voyager_readme_c0f4708a8ec2.png)\n\n[![License: Apache 2.0](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FLicense-Apache%202.0-blue.svg)](https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fblob\u002Fmaster\u002FLICENSE)\n[![Documentation](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FDocumentation-on%20github.io-brightgreen)](https:\u002F\u002Fspotify.github.io\u002Fvoyager)\n[![Supported Platforms](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fplatforms-macOS%20%7C%20Windows%20%7C%20Linux-green)](https:\u002F\u002Fpypi.org\u002Fproject\u002Fvoyager)\n[![Apple Silicon support for macOS and Linux (Docker)](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FApple%20Silicon-macOS%20and%20Linux-brightgreen)](https:\u002F\u002Fpypi.org\u002Fproject\u002Fvoyager)\n[![Test Badge](https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Factions\u002Fworkflows\u002Fall.yml\u002Fbadge.svg)](https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Factions\u002Fworkflows\u002Fall.yml)\n\u003C!-- [![PyPI - Python Version](https:\u002F\u002Fimg.shields.io\u002Fpypi\u002Fpyversions\u002Fvoyager)](https:\u002F\u002Fpypi.org\u002Fproject\u002Fvoyager) -->\n\u003C!-- [![PyPI - Wheel](https:\u002F\u002Fimg.shields.io\u002Fpypi\u002Fwheel\u002Fvoyager)](https:\u002F\u002Fpypi.org\u002Fproject\u002Fvoyager) -->\n\u003C!-- [![PyPI - Downloads](https:\u002F\u002Fimg.shields.io\u002Fpypi\u002Fdm\u002Fvoyager)](https:\u002F\u002Fpypistats.org\u002Fpackages\u002Fvoyager) -->\n\u003C!-- [![GitHub Repo stars](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fstars\u002Fspotify\u002Fvoyager?style=social)](https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fstargazers) -->\n\n**_Voyager_** is a library for performing fast approximate nearest-neighbor searches on an in-memory collection of vectors.\n\nVoyager features bindings to both Python and Java, with feature parity and index compatibility between both languages. It uses the HNSW algorithm, based on [the open-source `hnswlib` package](https:\u002F\u002Fgithub.com\u002Fnmslib\u002Fhnswlib), with numerous features added for convenience and speed. Voyager is used extensively in production at Spotify, and is queried hundreds of millions of times per day to power numerous user-facing features.\n\nThink of Voyager like [Sparkey](https:\u002F\u002Fgithub.com\u002Fspotify\u002Fsparkey), but for vector\u002Fembedding data; or like [Annoy](https:\u002F\u002Fgithub.com\u002Fspotify\u002Fannoy), but with [much higher recall](http:\u002F\u002Fann-benchmarks.com\u002F). It got its name because it searches through (embedding) space(s), much like [the Voyager interstellar probes](https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FVoyager_program) launched by NASA in 1977.\n\n[![Python Documentation](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FPython%20Documentation-on%20github.io-brightgreen)](https:\u002F\u002Fspotify.github.io\u002Fvoyager\u002Fpython)\n[![Java Documentation](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FJava%20Documentation-on%20github.io-brightgreen)](https:\u002F\u002Fspotify.github.io\u002Fvoyager\u002Fjava)\n\n### Installation\n\n#### Python\n\n```shell\npip install voyager\n```\n\n#### Java\n\nAdd the following artifact to your `pom.xml`:\n```xml\n\u003Cdependency>\n  \u003CgroupId>com.spotify\u003C\u002FgroupId>\n  \u003CartifactId>voyager\u003C\u002FartifactId>\n  \u003Cversion>2.1.0\u003C\u002Fversion>\n\u003C\u002Fdependency>\n```\nYou can find the latest version on [Voyager's Releases page](https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Freleases).\n\n#### Scala\n\nAdd the following artifact to your `build.sbt`:\n```sbt\n\"com.spotify\" % \"voyager\" % \"2.1.0\"\n```\nYou can find the latest version on [Voyager's Releases page](https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Freleases).\n\n\n### Compatibility\n\n| OS        | Language | Version | x86_64 (Intel) | arm64 (ARM) |\n|-----------|----------|---------|---------| --------|\n| Linux     | Python   | 3.9     | ✅       | ✅       |\n| Linux     | Python   | 3.10    | ✅       | ✅       |\n| Linux     | Python   | 3.11    | ✅       | ✅       |\n| Linux     | Python   | 3.12    | ✅       | ✅       |\n| Linux     | Python   | 3.13    | ✅       | ✅       |\n| Linux     | Java     | 8-16+   | ✅       | ✅      |\n| macOS     | Python   | 3.9     | ✅       | ✅       |\n| macOS     | Python   | 3.10    | ✅       | ✅       |\n| macOS     | Python   | 3.11    | ✅       | ✅       |\n| macOS     | Python   | 3.12    | ✅       | ✅       |\n| macOS     | Python   | 3.13    | ✅       | ✅       |\n| macOS     | Java     | 8-16+   | ✅       | ✅       |\n| Windows   | Python   | 3.9     | ✅       | ❌       |\n| Windows   | Python   | 3.10    | ✅       | ❌       |\n| Windows   | Python   | 3.11    | ✅       | ❌       |\n| Windows   | Python   | 3.12    | ✅       | ❌       |\n| Windows   | Python   | 3.13    | ✅       | ❌       |\n| Windows   | Java     | 8-16+   | ✅       | ❌       |\n\n\n## Contributing\n\nContributions to `voyager` are welcomed!\nSee [CONTRIBUTING.md](https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fblob\u002Fmaster\u002FCONTRIBUTING.md) for details.\n\n\n### License\nVoyager is copyright 2022-2024 Spotify AB.\n\nVoyager is licensed under the [Apache 2 License]([https:\u002F\u002Fwww.gnu.org\u002Flicenses\u002Fgpl-3.0.en.html](https:\u002F\u002Fwww.apache.org\u002Flicenses\u002FLICENSE-2.0)).\n","![蓝色文字“Voyager”，左侧有一个多色图形，展示了一条轨道。](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fspotify_voyager_readme_c0f4708a8ec2.png)\n\n[![许可证：Apache 2.0](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FLicense-Apache%202.0-blue.svg)](https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fblob\u002Fmaster\u002FLICENSE)\n[![文档](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FDocumentation-on%20github.io-brightgreen)](https:\u002F\u002Fspotify.github.io\u002Fvoyager)\n[![支持的平台](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fplatforms-macOS%20%7C%20Windows%20%7C%20Linux-green)](https:\u002F\u002Fpypi.org\u002Fproject\u002Fvoyager)\n[![Apple Silicon 对 macOS 和 Linux（Docker）的支持](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FApple%20Silicon-macOS%20and%20Linux-brightgreen)](https:\u002F\u002Fpypi.org\u002Fproject\u002Fvoyager)\n[![测试徽章](https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Factions\u002Fworkflows\u002Fall.yml\u002Fbadge.svg)](https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Factions\u002Fworkflows\u002Fall.yml)\n\u003C!-- [![PyPI - Python 版本](https:\u002F\u002Fimg.shields.io\u002Fpypi\u002Fpyversions\u002Fvoyager)](https:\u002F\u002Fpypi.org\u002Fproject\u002Fvoyager) -->\n\u003C!-- [![PyPI - Wheel](https:\u002F\u002Fimg.shields.io\u002Fpypi\u002Fwheel\u002Fvoyager)](https:\u002F\u002Fpypi.org\u002Fproject\u002Fvoyager) -->\n\u003C!-- [![PyPI - 下载量](https:\u002F\u002Fimg.shields.io\u002Fpypi\u002Fdm\u002Fvoyager)](https:\u002F\u002Fpypistats.org\u002Fpackages\u002Fvoyager) -->\n\u003C!-- [![GitHub 仓库星标数](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fstars\u002Fspotify\u002Fvoyager?style=social)](https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fstargazers) -->\n\n**_Voyager_** 是一个用于在内存中的向量集合上执行快速近似最近邻搜索的库。\n\nVoyager 同时提供了 Python 和 Java 的绑定，两种语言的功能对等且索引兼容。它基于 [开源 `hnswlib` 包](https:\u002F\u002Fgithub.com\u002Fnmslib\u002Fhnswlib)，使用了 HNSW 算法，并添加了许多便捷性和速度方面的功能。Voyager 在 Spotify 的生产环境中被广泛使用，每天会被查询数亿次，以支持众多面向用户的功能。\n\n可以将 Voyager 看作是针对向量\u002F嵌入数据的 [Sparkey](https:\u002F\u002Fgithub.com\u002Fspotify\u002Fsparkey)，或者说是 [Annoy](https:\u002F\u002Fgithub.com\u002Fspotify\u002Fannoy) 的升级版，但具有 [更高的召回率](http:\u002F\u002Fann-benchmarks.com\u002F)。它的名字来源于其在（嵌入）空间中进行搜索的方式，类似于 NASA 于 1977 年发射的 [旅行者号星际探测器](https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FVoyager_program)。\n\n[![Python 文档](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FPython%20Documentation-on%20github.io-brightgreen)](https:\u002F\u002Fspotify.github.io\u002Fvoyager\u002Fpython)\n[![Java 文档](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FJava%20Documentation-on%20github.io-brightgreen)](https:\u002F\u002Fspotify.github.io\u002Fvoyager\u002Fjava)\n\n### 安装\n\n#### Python\n\n```shell\npip install voyager\n```\n\n#### Java\n\n将以下依赖项添加到你的 `pom.xml` 文件中：\n```xml\n\u003Cdependency>\n  \u003CgroupId>com.spotify\u003C\u002FgroupId>\n  \u003CartifactId>voyager\u003C\u002FartifactId>\n  \u003Cversion>2.1.0\u003C\u002Fversion>\n\u003C\u002Fdependency>\n```\n你可以在 [Voyager 的发布页面](https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Freleases) 上找到最新版本。\n\n#### Scala\n\n将以下依赖项添加到你的 `build.sbt` 文件中：\n```sbt\n\"com.spotify\" % \"voyager\" % \"2.1.0\"\n```\n你同样可以在 [Voyager 的发布页面](https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Freleases) 上找到最新版本。\n\n\n### 兼容性\n\n| 操作系统        | 语言   | 版本    | x86_64 (Intel) | arm64 (ARM) |\n|-----------|----------|---------|---------| --------|\n| Linux     | Python   | 3.9     | ✅       | ✅       |\n| Linux     | Python   | 3.10    | ✅       | ✅       |\n| Linux     | Python   | 3.11    | ✅       | ✅       |\n| Linux     | Python   | 3.12    | ✅       | ✅       |\n| Linux     | Python   | 3.13    | ✅       | ✅       |\n| Linux     | Java     | 8-16+   | ✅       | ✅      |\n| macOS     | Python   | 3.9     | ✅       | ✅       |\n| macOS     | Python   | 3.10    | ✅       | ✅       |\n| macOS     | Python   | 3.11    | ✅       | ✅       |\n| macOS     | Python   | 3.12    | ✅       | ✅       |\n| macOS     | Python   | 3.13    | ✅       | ✅       |\n| macOS     | Java     | 8-16+   | ✅       | ✅       |\n| Windows   | Python   | 3.9     | ✅       | ❌       |\n| Windows   | Python   | 3.10    | ✅       | ❌       |\n| Windows   | Python   | 3.11    | ✅       | ❌       |\n| Windows   | Python   | 3.12    | ✅       | ❌       |\n| Windows   | Python   | 3.13    | ✅       | ❌       |\n| Windows   | Java     | 8-16+   | ✅       | ❌       |\n\n\n## 贡献\n\n欢迎为 `voyager` 做出贡献！\n详细信息请参阅 [CONTRIBUTING.md](https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fblob\u002Fmaster\u002FCONTRIBUTING.md)。\n\n\n### 许可证\nVoyager 版权所有 © 2022–2024 Spotify AB。\n\nVoyager 根据 [Apache 2 许可证]([https:\u002F\u002Fwww.gnu.org\u002Flicenses\u002Fgpl-3.0.en.html](https:\u002F\u002Fwww.apache.org\u002Flicenses\u002FLICENSE-2.0)) 进行授权。","# Voyager 快速上手指南\n\nVoyager 是由 Spotify 开源的高性能近似最近邻（ANN）搜索库，基于 HNSW 算法构建。它支持 Python 和 Java，专为内存中的向量\u002F嵌入数据设计，具有极高的查询速度和召回率，广泛应用于生产环境。\n\n## 1. 环境准备\n\n### 系统要求\nVoyager 支持以下操作系统和架构：\n- **Linux**: 支持 x86_64 (Intel) 和 arm64 (ARM\u002FApple Silicon)。\n- **macOS**: 支持 x86_64 (Intel) 和 arm64 (Apple Silicon)。\n- **Windows**: 仅支持 x86_64 (Intel)，**不支持** ARM 架构。\n\n### 语言版本兼容性\n- **Python**: 3.9, 3.10, 3.11, 3.12, 3.13\n- **Java**: 8 - 16+\n\n## 2. 安装步骤\n\n### Python 安装\n使用 pip 直接安装。国内用户推荐使用清华或阿里云镜像源以加速下载：\n\n```shell\npip install voyager -i https:\u002F\u002Fpypi.tuna.tsinghua.edu.cn\u002Fsimple\n```\n\n或者使用默认源：\n```shell\npip install voyager\n```\n\n### Java 安装\n在 `pom.xml` 中添加以下依赖：\n\n```xml\n\u003Cdependency>\n  \u003CgroupId>com.spotify\u003C\u002FgroupId>\n  \u003CartifactId>voyager\u003C\u002FartifactId>\n  \u003Cversion>2.1.0\u003C\u002Fversion>\n\u003C\u002Fdependency>\n```\n\n### Scala 安装\n在 `build.sbt` 中添加以下依赖：\n\n```sbt\n\"com.spotify\" % \"voyager\" % \"2.1.0\"\n```\n\n> **注意**：请前往 [Voyager Releases 页面](https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Freleases) 获取最新版本号。\n\n## 3. 基本使用 (Python 示例)\n\n以下是最简单的使用流程：创建索引、添加向量、执行搜索。\n\n```python\nimport numpy as np\nfrom voyager import Index, Space\n\n# 1. 初始化索引\n# Space.Euclidean 表示欧几里得距离，也可使用 Space.Cosine\nindex = Index(space=Space.Euclidean, num_dimensions=3)\n\n# 2. 准备数据 (例如 5 个 3 维向量)\ndata = np.random.rand(5, 3).astype('float32')\nids = [0, 1, 2, 3, 4]\n\n# 3. 将向量添加到索引中\nindex.add_items(data, ids)\n\n# 4. 执行查询\n# 查询一个随机向量，返回最近的 2 个邻居\nquery_vector = np.random.rand(3).astype('float32')\nlabels, distances = index.query(query_vector, k=2)\n\nprint(f\"最近邻 ID: {labels}\")\nprint(f\"对应距离: {distances}\")\n```\n\n### 核心概念简述\n- **Index**: 索引对象，负责存储向量和构建图结构。\n- **Space**: 距离度量空间，常用 `Space.Euclidean` (欧氏距离) 或 `Space.Cosine` (余弦相似度)。\n- **add_items**: 批量添加向量数据。\n- **query**: 输入查询向量，返回最近邻的 ID 列表和距离列表。","某音乐流媒体平台的推荐系统团队需要为千万级用户实时生成“相似歌曲”列表，以支持“听完这首接着听”的即时推荐功能。\n\n### 没有 voyager 时\n- **响应延迟高**：面对数亿首歌曲的向量库，传统线性扫描或低效索引导致每次推荐请求耗时超过 200 毫秒，严重影响用户滑动体验。\n- **召回精度不足**：原有的近似搜索方案为了速度牺牲了太多准确性，推荐的歌曲风格偏差大，用户点击率低迷。\n- **多语言维护难**：后端服务混合使用 Python 进行模型训练和 Java 处理高并发请求，两套不同的向量检索库导致索引格式不兼容，数据同步频繁出错。\n- **部署复杂**：现有依赖对 ARM 架构（如 Apple Silicon 或新型服务器）支持不佳，团队在迁移新硬件时需花费大量时间编译和调试底层库。\n\n### 使用 voyager 后\n- **毫秒级响应**：借助 HNSW 算法的高效索引，voyager 将十亿级向量的搜索延迟压缩至 10 毫秒以内，实现了真正的实时推荐。\n- **高精度匹配**：在保持极速的同时，voyager 提供了比旧方案更高的召回率，确保推荐曲目在旋律和节奏上高度契合，显著提升用户留存。\n- **无缝多语言协作**：利用 Python 和 Java 绑定的特性及索引兼容性，团队直接用同一份索引文件服务于训练和线上环境，彻底消除了数据对齐问题。\n- **开箱即用**：voyager 原生支持 macOS、Linux 及 ARM 架构，开发人员无需手动编译即可在各平台快速部署，大幅降低了运维成本。\n\nvoyager 通过兼顾极致速度与跨语言一致性，让大规模向量检索从复杂的工程难题变成了简单的代码调用。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fspotify_voyager_c0f4708a.png","spotify","Spotify","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002Fspotify_6ec80015.png","",null,"opensource@spotify.com","https:\u002F\u002Fspotify.github.io\u002F","https:\u002F\u002Fgithub.com\u002Fspotify",[85,89,93,97,101,105],{"name":86,"color":87,"percentage":88},"C++","#f34b7d",64.1,{"name":90,"color":91,"percentage":92},"Java","#b07219",21.2,{"name":94,"color":95,"percentage":96},"Python","#3572A5",12.4,{"name":98,"color":99,"percentage":100},"CMake","#DA3434",1.3,{"name":102,"color":103,"percentage":104},"Makefile","#427819",1,{"name":106,"color":107,"percentage":108},"Shell","#89e051",0,1553,78,"2026-04-02T16:51:53","Apache-2.0","Linux, macOS, Windows","未说明",{"notes":116,"python":117,"dependencies":118},"该工具基于 HNSW 算法，用于内存中的向量近似最近邻搜索。支持 Python 和 Java 绑定。在 Windows 系统上仅支持 x86_64 (Intel) 架构，不支持 ARM 架构；Linux 和 macOS 同时支持 x86_64 和 arm64 (包括 Apple Silicon)。Java 版本要求为 8 至 16+。","3.9, 3.10, 3.11, 3.12, 3.13",[119],"hnswlib (底层算法基础)",[13],[122,123,124,125,126,127],"hnsw","hnswlib","java","machine-learning","nearest-neighbor-search","python","2026-03-27T02:49:30.150509","2026-04-06T09:46:00.896958",[131,136,141,146,151,156],{"id":132,"question_zh":133,"answer_zh":134,"source_url":135},13687,"Voyager 使用的算法有相关论文吗？它与 hnswlib 有什么区别？","Voyager 库的开发者并未直接参与该算法原始论文的撰写。该库衍生自 [nmslib](https:\u002F\u002Fgithub.com\u002Fnmslib\u002Fnmslib) 和 [hnswlib](https:\u002F\u002Fgithub.com\u002Fnmslib\u002Fhnswlib)，而这些库的作者才是相关算法论文的原作者。Voyager 可以被视为对这些现有实现的一种定制或改进版本。","https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fissues\u002F67",{"id":137,"question_zh":138,"answer_zh":139,"source_url":140},13688,"为什么查询索引时返回的结果数量少于预期（例如请求 N 个邻居只返回了 N-x 个）？","这通常不是程序错误，而是由于 HNSW 算法的概率性构建特性导致的召回率（recall）问题，具体取决于数据的特征。解决方法是增加构建索引时的 `M` 参数值以提高召回率。此外，请确保数据集中不包含 NaN 值。如果目的是查找最远邻居或需要极高召回率，可能需要调整 `ef` 等搜索参数。","https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fissues\u002F38",{"id":142,"question_zh":143,"answer_zh":144,"source_url":145},13689,"在使用余弦距离（Cosine Space）时，为什么返回的距离值超出了 -1 到 1 的范围（例如出现大于 1 的值）？","Voyager 在余弦空间返回的不是标准的余弦相似度（范围 -1 到 1），而是余弦距离（Cosine Distance）。其计算公式通常为 `1 - cosine_similarity`。因此，当两个向量完全相同时，相似度为 1，距离为 0；当两个向量完全相反时，相似度为 -1，距离为 2。所以返回值的正常范围是 [0, 2]，其中 0 表示最近（最相似），2 表示最远。","https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fissues\u002F46",{"id":147,"question_zh":148,"answer_zh":149,"source_url":150},13690,"如何在 PySpark 或多进程环境中并行使用 Voyager 进行查询？","Voyager 原生支持通过线程并行化查询，您可以在调用 `Index.query` 时使用 `num_threads` 参数来利用多核性能，这是单节点上的最佳实践：`index.query(vectors, k=k, num_threads=...)`。\n\n需要注意的是，`Index` 对象本身不支持 Python 的 pickle 序列化，因此无法直接通过 `joblib` 或 Spark 的 `broadcast` 直接传输索引对象。正确的做法是：\n1. 将索引保存到文件 (`index.save(path)`)。\n2. 在每个工作进程或 Spark UDF 中，通过 `Index.load(path)` 重新加载索引文件进行查询。\n3. 或者在 Spark 中对数据进行分区聚合后，结合 `num_threads` 进行加速。","https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fissues\u002F89",{"id":152,"question_zh":153,"answer_zh":154,"source_url":155},13691,"在构建大规模索引（如超过 500 万向量）后查询时报错 'Potential candidate had negative distance' 怎么办？","这是一个已知问题，曾在旧版本中出现。该错误提示表明索引文件可能已损坏或存在计算异常。此问题已在 PR #80 中得到修复，并包含在 **v2.0.9** 及更高版本中。如果您遇到此错误，请将 Voyager 库升级到最新版本（`pip install --upgrade voyager`）并重新构建索引。","https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fissues\u002F48",{"id":157,"question_zh":158,"answer_zh":159,"source_url":160},13692,"README 中提到的 ann-benchmarks 基准测试在哪里可以看到 Voyager 的数据？","Voyager 已经被添加到官方的 `ann-benchmarks` 项目中。您可以查看相关的 Pull Request (erikbern\u002Fann-benchmarks#473) 以获取集成详情。如果在主页面暂未看到图表，可能是因为基准测试更新有延迟，建议直接查阅该仓库的最新运行结果或源代码中的配置。","https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fissues\u002F32",[162,167,172,177,182,187,192,197,202,207,212,217,222,227,232,237],{"id":163,"version":164,"summary_zh":165,"released_at":166},72553,"v2.1.1","## 变更内容\n* 精简 C++ 测试以加快构建速度，由 @stephen29xie 在 https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fpull\u002F101 中完成\n* 重新生成 Python 文档，由 @dylanrb123 在 https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fpull\u002F102 中完成\n* 重新生成 Java 文档，由 @dylanrb123 在 https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fpull\u002F103 中完成\n* 重新生成 Java 文档，由 @stephen29xie 在 https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fpull\u002F104 中完成\n* 修复 GitHub CI 中基准测试失败的问题，由 @miclegr 在 https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fpull\u002F105 中完成\n* 将 Python 绑定迁移到 Nanobind，由 @psobot 在 https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fpull\u002F92 中完成\n* 更新 GitHub Actions 工作流，由 @stephen29xie 在 https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fpull\u002F113 中完成\n* 测试并为 Python 3.13 构建 wheel 包，由 @stephen29xie 在 https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fpull\u002F107 中完成\n* 修复 `CONTRIBUTING.md` 中的拼写错误，由 @MiWeiss 在 https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fpull\u002F108 中完成\n* 修复基准测试失败问题并调整编译标志，由 @miclegr 在 https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fpull\u002F118 中完成\n* 构建并将 Python 源码分发包上传至 PyPI，由 @stephen29xie 在 https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fpull\u002F116 中完成\n\n## 新贡献者\n* @MiWeiss 在 https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fpull\u002F108 中完成了首次贡献\n\n**完整变更日志**: https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fcompare\u002Fv2.1.0...v2.1.1","2025-09-23T12:26:10",{"id":168,"version":169,"summary_zh":170,"released_at":171},72554,"v2.1.0","## 变更内容\n* @miclegr 在 https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fpull\u002F83 中优化了基准测试\n* @stephen29xie 在 https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fpull\u002F82 中为 Java 绑定实现了 Index.asBytes() 方法\n* @markkohdev 在 https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fpull\u002F63 中对 C++ 代码进行了改进\n* @stephen29xie 在 https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fpull\u002F85 中进一步改进了 C++ 代码，包括 API 增强和测试覆盖率提升\n* @stephen29xie 在 https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fpull\u002F88 中实现了当请求的邻居数量无法返回时抛出自定义 RecallError\u002FRecallException 异常\n* @stephen29xie 在 https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fpull\u002F91 中重新生成了 v2.0.10 的 Java 文档，并修复了 Python 格式问题\n* @miclegr 在 https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fpull\u002F99 中修复了 Windows 和 macOS 上的 CI 测试失败问题\n* @stephen29xie 在 https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fpull\u002F94 中修改了 Java 绑定，使调用 Index::addItem 和 Index::addItems 时能够返回 ID(s)\n* @dylanrb123 将版本号升级至 2.1.0，并重新生成文档，相关更改见 https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fpull\u002F100\n\n## 新贡献者\n* @stephen29xie 在 https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fpull\u002F82 中完成了首次贡献\n\n**完整变更日志**: https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fcompare\u002Fv2.0.9...v2.1.0","2024-12-13T19:36:31",{"id":173,"version":174,"summary_zh":175,"released_at":176},72555,"v2.0.9","## 变更内容\n* 移除负距离检查。由 @psobot 在 https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fpull\u002F80 中完成。\n\n**完整变更日志**：https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fcompare\u002Fv2.0.8...v2.0.9","2024-07-31T16:04:17",{"id":178,"version":179,"summary_zh":180,"released_at":181},72556,"v2.0.8","## 变更内容\n* 使用查找表替换 E4M3 到浮点数的转换，性能提升 20 倍。由 @psobot 在 https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fpull\u002F76 中完成。\n* 启用部分（而非全部）快速数学优化，以提升向量化性能。由 @psobot 在 https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fpull\u002F78 中完成。\n* 版本号升级至 2.0.8。由 @dylanrb123 在 https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fpull\u002F79 中完成。\n\n\n**完整变更日志**: https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fcompare\u002Fv2.0.7...v2.0.8","2024-07-29T18:31:38",{"id":183,"version":184,"summary_zh":185,"released_at":186},72557,"v2.0.7-re","正在尝试让新的 Maven 中央仓库认证流程正常工作。","2024-07-17T20:37:59",{"id":188,"version":189,"summary_zh":190,"released_at":191},72558,"v2.0.7","- 在 Java 绑定中暴露 `getNumElements` 和 `getVector` #64\r\n- 添加测试，在发布到 PyPI 之前捕获 wheel 文件中的问题 #69\r\n- 修复 `TypedIndex::currentLabel` 中的并发 bug #70","2024-07-17T18:28:09",{"id":193,"version":194,"summary_zh":195,"released_at":196},72559,"v2.0.6","* 来自 https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fpull\u002F61 的并发修复。使 `query` 在与 `addItems` 一起使用时线程安全，并且当多个外部线程或进程同时向同一个索引添加条目时，`addItems` 也具备线程安全性。\n* 来自 https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fpull\u002F60 的 PyPI 元数据修复。\n* 在 JNI 绑定中实现了 `resizeIndex`。","2024-03-22T18:48:31",{"id":198,"version":199,"summary_zh":200,"released_at":201},72560,"v2.0.5","包括对 StringIndex 的更改，以公开底层 Voyager 索引中的并行查询方法。","2024-03-20T17:53:05",{"id":203,"version":204,"summary_zh":205,"released_at":206},72561,"v2.0.4","## 变更内容\n* 由 @markkohdev 在 https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fpull\u002F43 中修复了 Python 测试。\n* 由 @psobot 在 https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fpull\u002F47 中移除了测试时对 GPG 密钥的需求。\n* 由 @samek 在 https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fpull\u002F35 中实现了 markDeleted\u002FunmarkDeleted 功能。\n* 由 @psobot 在 https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fpull\u002F55 中尝试使用较旧版本的 glibc 构建 Ubuntu JAR 文件。\n* 由 @dylanrb123 在 https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fpull\u002F54 中将版本号升级至 2.0.3。\n* 由 @psobot 在 https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fpull\u002F36 中确保原生 C++ 索引对象在 Java 线程使用期间不会被销毁。\n* 由 @psobot 在 https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fpull\u002F56 中升级至 v2.0.4。\n\n## 新贡献者\n* @samek 在 https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fpull\u002F35 中完成了首次贡献。\n\n**完整变更日志**: https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fcompare\u002Fv2.0.2...v2.0.4","2024-03-19T18:45:06",{"id":208,"version":209,"summary_zh":210,"released_at":211},72562,"v2.0.2","## 变更内容\n* 在 Java 中实现无需显式参数的索引加载（https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fpull\u002F31）\n\n\n**完整变更日志**：https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fcompare\u002Fv2.0.1...v2.0.2","2023-10-17T21:44:01",{"id":213,"version":214,"summary_zh":215,"released_at":216},72563,"v2.0.1","## What's Changed\r\n* Fix bug when loading InnerProduct indices created by v2.0.0+ in Java. (https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fpull\u002F29)\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fcompare\u002Fv2.0.0...v2.0.1","2023-10-17T18:57:21",{"id":218,"version":219,"summary_zh":220,"released_at":221},72564,"v2.0.0","v2.0.0 is a backwards-incompatible upgrade to Voyager that introduces a custom Voyager file format and revamps the `.load` API for developer convenience.\r\n\r\n## What's Changed\r\n* Add custom metadata header. by @psobot in https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fpull\u002F26\r\n* Add support for Python 3.12. by @psobot in https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fpull\u002F27\r\n* Implement order preserving transform for inner product search by @dylanrb123 in https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fpull\u002F25\r\n\r\n\r\n**Full Changelog**: https:\u002F\u002Fgithub.com\u002Fspotify\u002Fvoyager\u002Fcompare\u002Fv1.2.6...v2.0.0","2023-10-06T14:44:07",{"id":223,"version":224,"summary_zh":225,"released_at":226},72565,"v1.2.6","Includes fix for java memory leak where only the index pointer memory was freed, not the underlying index data","2023-09-05T14:51:59",{"id":228,"version":229,"summary_zh":230,"released_at":231},72566,"v1.2.5","Widened compatibility of Linux builds.","2023-07-28T18:32:35",{"id":233,"version":234,"summary_zh":235,"released_at":236},72567,"v1.2.3","java 1.2.3\r\npython 1.0.8","2023-06-21T22:19:03",{"id":238,"version":239,"summary_zh":80,"released_at":240},72568,"v1.2.2","2023-06-21T20:29:41"]