[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-bayesiains--nflows":3,"tool-bayesiains--nflows":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":69,"readme_en":70,"readme_zh":71,"quickstart_zh":72,"use_case_zh":73,"hero_image_url":74,"owner_login":75,"owner_name":76,"owner_avatar_url":77,"owner_bio":78,"owner_company":79,"owner_location":79,"owner_email":79,"owner_twitter":79,"owner_website":80,"owner_url":81,"languages":82,"stars":87,"forks":88,"last_commit_at":89,"license":90,"difficulty_score":91,"env_os":92,"env_gpu":92,"env_ram":92,"env_deps":93,"category_tags":97,"github_topics":98,"view_count":23,"oss_zip_url":79,"oss_zip_packed_at":79,"status":16,"created_at":103,"updated_at":104,"faqs":105,"releases":130},2557,"bayesiains\u002Fnflows","nflows","Normalizing flows in PyTorch","nflows 是一个基于 PyTorch 构建的开源库，专注于提供“归一化流”（Normalizing Flows）模型的完整实现。它主要解决了复杂数据分布建模的难题，让机器能够灵活地学习并生成高维数据（如图像或科学模拟数据），同时支持精确计算数据的概率密度。这对于传统生成模型难以处理的场景尤为关键。\n\n该工具非常适合人工智能研究人员、深度学习开发者以及需要处理概率推断问题的数据科学家使用。通过 nflows，用户可以轻松组合各种可逆变换模块，快速搭建自定义的流模型架构，仅需几行代码即可完成从定义变换、设定基础分布到采样和概率评估的全过程。\n\n其技术亮点在于模块化设计极佳，内置了包括仿射自回归变换、随机排列以及先进的神经样条流（Neural Spline Flows）等多种核心组件。作为多个知名科研框架（如 sbi 和 pyknos）的底层依赖，nflows 以其稳定性和学术界的广泛认可度，成为了探索无似然推断、对比学习等前沿领域的得力助手。无论是复现经典论文还是开发新型生成算法，它都能提供高效、可靠的基础设施支持。","# nflows\n\n\u003Ca href=\"https:\u002F\u002Fdoi.org\u002F10.5281\u002Fzenodo.4296287\">\u003Cimg src=\"https:\u002F\u002Fzenodo.org\u002Fbadge\u002FDOI\u002F10.5281\u002Fzenodo.4296287.svg\" alt=\"DOI\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fbayesiains\u002Fnflows\u002Factions\u002Fworkflows\u002Fbuild_lint_test.yml\">\u003Cimg src=\"https:\u002F\u002Fgithub.com\u002Fbayesiains\u002Fnflows\u002Factions\u002Fworkflows\u002Fbuild_lint_test.yml\u002Fbadge.svg\" alt=\"Build status\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fopensource.org\u002Flicenses\u002FMIT\">\u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FLicense-MIT-green.svg\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fconda-forge\u002Fnflows-feedstock\">\u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fconda\u002Fvn\u002Fconda-forge\u002Fnflows.svg\">\u003C\u002Fa>\n\n`nflows` is a comprehensive collection of [normalizing flows](https:\u002F\u002Farxiv.org\u002Fabs\u002F1912.02762) using [PyTorch](https:\u002F\u002Fpytorch.org).\n\n## Installation\n\n### From PyPI\n\nTo install from PyPI:\n```\npython -m pip install nflows\n```\n\n### From conda-forge\n\nTo install and add `nflows` to a project with [`pixi`](https:\u002F\u002Fpixi.sh\u002F), from the project directory run\n\n```\npixi add nflows\n```\n\nand to install into a particular conda environment with [`conda`](https:\u002F\u002Fdocs.conda.io\u002Fprojects\u002Fconda\u002F), in the activated environment run\n\n```\nconda install --channel conda-forge nflows\n```\n\n## Usage\n\nTo define a flow:\n\n```python\nfrom nflows import transforms, distributions, flows\n\n# Define an invertible transformation.\ntransform = transforms.CompositeTransform([\n    transforms.MaskedAffineAutoregressiveTransform(features=2, hidden_features=4),\n    transforms.RandomPermutation(features=2)\n])\n\n# Define a base distribution.\nbase_distribution = distributions.StandardNormal(shape=[2])\n\n\n# Combine into a flow.\nflow = flows.Flow(transform=transform, distribution=base_distribution)\n```\n\nTo evaluate log probabilities of inputs:\n```python\nlog_prob = flow.log_prob(inputs)\n```\n\nTo sample from the flow:\n```python\nsamples = flow.sample(num_samples)\n```\n\nAdditional examples of the workflow are provided in [examples folder](examples\u002F).\n\n## Development\n\nTo install all the dependencies for development:\n```\npip install -r requirements.txt\n```\n\n## Citing nflows\n\nTo cite the package:\n```bibtex\n@software{nflows,\n  author       = {Conor Durkan and\n                  Artur Bekasov and\n                  Iain Murray and\n                  George Papamakarios},\n  title        = {{nflows}: normalizing flows in {PyTorch}},\n  month        = nov,\n  year         = 2020,\n  publisher    = {Zenodo},\n  version      = {v0.14},\n  doi          = {10.5281\u002Fzenodo.4296287},\n  url          = {https:\u002F\u002Fdoi.org\u002F10.5281\u002Fzenodo.4296287}\n}\n```\n\nThe version number is intended to be the one from `nflows\u002Fversion.py`. The year\u002Fmonth correspond to the date of the release. BibTeX entries for other versions could be found on [Zenodo](https:\u002F\u002Fdoi.org\u002F10.5281\u002Fzenodo.4296286).\n\nIf you're using spline-based flows in particular, consider citing the _Neural Spline Flows_ paper: [[bibtex]](https:\u002F\u002Fpapers.nips.cc\u002Fpaper\u002F2019\u002Ffile\u002F7ac71d433f282034e088473244df8c02-Bibtex.bib).\n\n## References\n`nflows` is derived from [bayesiains\u002Fnsf](https:\u002F\u002Fgithub.com\u002Fbayesiains\u002Fnsf) originally published with\n> C. Durkan, A. Bekasov, I. Murray, G. Papamakarios, _Neural Spline Flows_, NeurIPS 2019.\n> [[arXiv]](https:\u002F\u002Farxiv.org\u002Fabs\u002F1906.04032) [[bibtex]](https:\u002F\u002Fpapers.nips.cc\u002Fpaper\u002F2019\u002Ffile\u002F7ac71d433f282034e088473244df8c02-Bibtex.bib)\n\n\n`nflows` has been used in\n> Conor Durkan, Iain Murray, George Papamakarios, _On Contrastive Learning for Likelihood-free Inference_, ICML 2020.\n> [[arXiv]](https:\u002F\u002Farxiv.org\u002Fabs\u002F2002.03712).\n\n> Artur Bekasov, Iain Murray, _Ordering Dimensions with Nested Dropout Normalizing Flows_.\n> [[arXiv]](https:\u002F\u002Farxiv.org\u002Fabs\u002F2006.08777).\n\n> Tim Dockhorn, James A. Ritchie, Yaoliang Yu, Iain Murray, _Density Deconvolution with Normalizing Flows_.\n> [[arXiv]](https:\u002F\u002Farxiv.org\u002Fabs\u002F2006.09396).\n\n`nflows` is used by the conditional density estimation package [pyknos](https:\u002F\u002Fgithub.com\u002Fmackelab\u002Fpyknos), and in turn the likelihood-free inference framework [sbi](https:\u002F\u002Fgithub.com\u002Fmackelab\u002Fsbi).\n","# nflows\n\n\u003Ca href=\"https:\u002F\u002Fdoi.org\u002F10.5281\u002Fzenodo.4296287\">\u003Cimg src=\"https:\u002F\u002Fzenodo.org\u002Fbadge\u002FDOI\u002F10.5281\u002Fzenodo.4296287.svg\" alt=\"DOI\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fbayesiains\u002Fnflows\u002Factions\u002Fworkflows\u002Fbuild_lint_test.yml\">\u003Cimg src=\"https:\u002F\u002Fgithub.com\u002Fbayesiains\u002Fnflows\u002Factions\u002Fworkflows\u002Fbuild_lint_test.yml\u002Fbadge.svg\" alt=\"构建状态\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fopensource.org\u002Flicenses\u002FMIT\">\u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FLicense-MIT-green.svg\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fconda-forge\u002Fnflows-feedstock\">\u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fconda\u002Fvn\u002Fconda-forge\u002Fnflows.svg\">\u003C\u002Fa>\n\n`nflows` 是一个基于 [PyTorch](https:\u002F\u002Fpytorch.org) 的、功能全面的 [归一化流](https:\u002F\u002Farxiv.org\u002Fabs\u002F1912.02762) 库。\n\n## 安装\n\n### 从 PyPI 安装\n\n从 PyPI 安装：\n```\npython -m pip install nflows\n```\n\n### 从 conda-forge 安装\n\n要安装 `nflows` 并将其添加到使用 [`pixi`](https:\u002F\u002Fpixi.sh\u002F) 的项目中，请在项目目录下运行：\n\n```\npixi add nflows\n```\n\n若要在特定的 conda 环境中安装（使用 [`conda`](https:\u002F\u002Fdocs.conda.io\u002Fprojects\u002Fconda\u002F)），请在激活的环境中运行：\n\n```\nconda install --channel conda-forge nflows\n```\n\n## 使用\n\n定义一个流：\n\n```python\nfrom nflows import transforms, distributions, flows\n\n# 定义一个可逆变换。\ntransform = transforms.CompositeTransform([\n    transforms.MaskedAffineAutoregressiveTransform(features=2, hidden_features=4),\n    transforms.RandomPermutation(features=2)\n])\n\n# 定义一个基础分布。\nbase_distribution = distributions.StandardNormal(shape=[2])\n\n\n# 组合成一个流。\nflow = flows.Flow(transform=transform, distribution=base_distribution)\n```\n\n评估输入的对数概率：\n\n```python\nlog_prob = flow.log_prob(inputs)\n```\n\n从流中采样：\n\n```python\nsamples = flow.sample(num_samples)\n```\n\n更多工作流程示例请参见 [examples 文件夹](examples\u002F)。\n\n## 开发\n\n安装所有开发依赖项：\n\n```\npip install -r requirements.txt\n```\n\n## 引用 nflows\n\n引用该包时，可以使用以下 BibTeX 格式：\n```bibtex\n@software{nflows,\n  author       = {Conor Durkan and\n                  Artur Bekasov and\n                  Iain Murray and\n                  George Papamakarios},\n  title        = {{nflows}: normalizing flows in {PyTorch}},\n  month        = nov,\n  year         = 2020,\n  publisher    = {Zenodo},\n  version      = {v0.14},\n  doi          = {10.5281\u002Fzenodo.4296287},\n  url          = {https:\u002F\u002Fdoi.org\u002F10.5281\u002Fzenodo.4296287}\n}\n```\n\n版本号应与 `nflows\u002Fversion.py` 中的版本一致。年份和月份对应于发布日期。其他版本的 BibTeX 条目可在 [Zenodo](https:\u002F\u002Fdoi.org\u002F10.5281\u002Fzenodo.4296286) 上找到。\n\n如果您特别使用基于样条的流，请考虑引用《Neural Spline Flows》论文：[[BibTeX]](https:\u002F\u002Fpapers.nips.cc\u002Fpaper\u002F2019\u002Ffile\u002F7ac71d433f282034e088473244df8c02-Bibtex.bib)。\n\n## 参考文献\n`nflows` 源自 [bayesiains\u002Fnsf](https:\u002F\u002Fgithub.com\u002Fbayesiains\u002Fnsf)，最初发表于：\n> C. Durkan, A. Bekasov, I. Murray, G. Papamakarios，《Neural Spline Flows》，NeurIPS 2019。\n> [[arXiv]](https:\u002F\u002Farxiv.org\u002Fabs\u002F1906.04032) [[BibTeX]](https:\u002F\u002Fpapers.nips.cc\u002Fpaper\u002F2019\u002Ffile\u002F7ac71d433f282034e088473244df8c02-Bibtex.bib)\n\n\n`nflows` 曾被用于：\n> Conor Durkan, Iain Murray, George Papamakarios，《关于无似然推断的对比学习》，ICML 2020。\n> [[arXiv]](https:\u002F\u002Farxiv.org\u002Fabs\u002F2002.03712)。\n\n> Artur Bekasov, Iain Murray，《利用嵌套丢弃归一化流对维度进行排序》。\n> [[arXiv]](https:\u002F\u002Farxiv.org\u002Fabs\u002F2006.08777)。\n\n> Tim Dockhorn, James A. Ritchie, Yaoliang Yu, Iain Murray，《利用归一化流进行密度去卷积》。\n> [[arXiv]](https:\u002F\u002Farxiv.org\u002Fabs\u002F2006.09396)。\n\n`nflows` 被条件密度估计库 [pyknos](https:\u002F\u002Fgithub.com\u002Fmackelab\u002Fpyknos) 使用，而 pyknos 又是无似然推断框架 [sbi](https:\u002F\u002Fgithub.com\u002Fmackelab\u002Fsbi) 的一部分。","# nflows 快速上手指南\n\n`nflows` 是一个基于 PyTorch 的归一化流（Normalizing Flows）综合工具库，提供了丰富的可逆变换和分布模型，适用于概率密度估计和生成建模。\n\n## 环境准备\n\n- **操作系统**：Linux、macOS 或 Windows\n- **Python 版本**：建议 Python 3.7+\n- **核心依赖**：\n  - [PyTorch](https:\u002F\u002Fpytorch.org) (需预先安装)\n  - `numpy`\n- **推荐包管理器**：`pip` 或 `conda`\n\n> **注意**：请确保已正确安装与你的 CUDA 版本匹配的 PyTorch。国内用户可使用清华源或阿里源加速 PyTorch 安装。\n\n## 安装步骤\n\n你可以选择通过 PyPI 或 conda-forge 进行安装。\n\n### 方式一：使用 pip 安装（推荐）\n\n```bash\npython -m pip install nflows\n```\n\n*国内加速建议*：\n```bash\npython -m pip install nflows -i https:\u002F\u002Fpypi.tuna.tsinghua.edu.cn\u002Fsimple\n```\n\n### 方式二：使用 conda 安装\n\n如果你使用 `conda` 管理环境：\n\n```bash\nconda install --channel conda-forge nflows\n```\n\n*国内加速建议*（配置清华源后）：\n```bash\nconda install -c conda-forge nflows\n```\n\n若你使用 [`pixi`](https:\u002F\u002Fpixi.sh\u002F) 管理项目依赖：\n\n```bash\npixi add nflows\n```\n\n## 基本使用\n\n以下是最小化的工作流示例，展示如何定义一个流模型、计算对数概率以及采样。\n\n### 1. 定义流模型\n\n```python\nfrom nflows import transforms, distributions, flows\n\n# 定义可逆变换序列\ntransform = transforms.CompositeTransform([\n    transforms.MaskedAffineAutoregressiveTransform(features=2, hidden_features=4),\n    transforms.RandomPermutation(features=2)\n])\n\n# 定义基础分布（标准正态分布）\nbase_distribution = distributions.StandardNormal(shape=[2])\n\n# 组合成流模型\nflow = flows.Flow(transform=transform, distribution=base_distribution)\n```\n\n### 2. 计算对数概率\n\n假设 `inputs` 是一个形状为 `[batch_size, 2]` 的 PyTorch Tensor：\n\n```python\nlog_prob = flow.log_prob(inputs)\n```\n\n### 3. 从模型中采样\n\n生成指定数量的样本：\n\n```python\nsamples = flow.sample(num_samples)\n```\n\n更多复杂示例（如训练循环、特定架构使用）请参考官方仓库中的 [examples 文件夹](examples\u002F)。","某量化金融团队正在构建高频交易数据的异常检测系统，需要精准建模多维资产收益率的复杂联合概率分布以识别罕见市场波动。\n\n### 没有 nflows 时\n- 团队被迫假设数据服从简单的高斯分布，导致模型完全无法捕捉金融数据中常见的“肥尾”效应和多峰特征，漏报率极高。\n- 为了手动实现可逆变换和雅可比行列式计算，研究人员花费数周编写底层 PyTorch 代码，不仅开发效率低下，还极易因数学推导错误导致梯度消失。\n- 缺乏标准化的流模型组件库，每次尝试新的架构（如耦合层或自回归变换）都需要从头重构代码，难以快速验证不同拓扑结构的效果。\n- 采样过程不稳定，生成的合成数据分布与真实市场情况偏差较大，无法用于有效的压力测试和数据增强。\n\n### 使用 nflows 后\n- 利用 nflows 内置的多种归一化流架构（如神经样条流），轻松拟合出高度非高斯的复杂数据分布，显著提升了极端行情下的异常检出率。\n- 直接调用封装好的 `transforms` 和 `flows` 模块，自动处理复杂的可逆变换与密度估计逻辑，将核心算法的开发周期从数周缩短至几天。\n- 通过组合 `MaskedAffineAutoregressiveTransform` 等预制组件，能够像搭积木一样快速实验不同的流模型结构，加速了模型迭代优化过程。\n- 借助 `flow.sample()` 接口一键生成高质量样本，其统计特性与真实交易数据高度一致，为风险模拟提供了可靠的数据基础。\n\nnflows 将晦涩难懂的归一化流理论转化为简洁易用的 PyTorch 模块，让开发者能专注于业务逻辑而非底层数学实现的细节。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fbayesiains_nflows_24ac4d86.png","bayesiains","Bayesiains","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002Fbayesiains_60533e30.png","A probabilistic machine learning group in Edinburgh",null,"http:\u002F\u002Fhomepages.inf.ed.ac.uk\u002Fimurray2\u002Fgroup\u002F","https:\u002F\u002Fgithub.com\u002Fbayesiains",[83],{"name":84,"color":85,"percentage":86},"Python","#3572A5",100,1006,138,"2026-04-02T14:45:50","MIT",1,"未说明",{"notes":94,"python":92,"dependencies":95},"该工具是基于 PyTorch 的归一化流（Normalizing Flows）集合。支持通过 PyPI (pip) 或 conda-forge (conda\u002Fpixi) 进行安装。开发模式下需安装 requirements.txt 中列出的额外依赖。具体硬件资源需求取决于所构建的流模型复杂度及任务规模，README 中未给出具体数值。",[96],"PyTorch",[13],[99,100,101,102],"density-estimation","normalizing-flows","generative-model","pytorch","2026-03-27T02:49:30.150509","2026-04-06T09:46:07.243346",[106,111,116,121,126],{"id":107,"question_zh":108,"answer_zh":109,"source_url":110},11821,"为什么在 GPU 上使用 ConditionalDiagonalNormal 进行采样时会报错 'expected device cuda:0 but got device cpu'？","这是因为 `torch.randn` 生成的噪声默认在 CPU 上，而模型在 GPU 上。解决方案是确保生成的噪声张量与模型位于相同的设备。可以通过给分布添加一个虚拟参数（甚至可以是空的），然后将其 `.device` 属性传递给 `torch.randn` 来修复此问题，例如：`noise = torch.randn(..., device=model_device)`。相关修复已在 PR #9 中合并，解决了大多数 GPU 相关问题。","https:\u002F\u002Fgithub.com\u002Fbayesiains\u002Fnflows\u002Fissues\u002F8",{"id":112,"question_zh":113,"answer_zh":114,"source_url":115},11822,"在使用条件流模型时，`sample` 方法的输出形状是如何受上下文（context）影响的？","`sample(num_samples, context)` 方法会为提供的**每个**上下文生成 `num_samples` 个样本。如果你提供 1000 个上下文并请求 3 个样本，你将得到 3000 个样本，其数组形状为 `[context_size, num_samples, features]`（例如 `[1000, 3, 2]`）。如果传入的上下文形状不正确（例如错误地使用了 reshape 导致维度翻转），可能会导致模型对上下文产生误解（如将双变量上下文误认为两个单变量上下文），从而生成错误的多峰分布。请确保上下文的维度排列符合预期。","https:\u002F\u002Fgithub.com\u002Fbayesiains\u002Fnflows\u002Fissues\u002F60",{"id":117,"question_zh":118,"answer_zh":119,"source_url":120},11823,"使用 `MaskedPiecewiseCubicAutoregressiveTransform` 时为什么会抛出 `InputOutsideDomain()` 错误，而有理二次样条（RQS）变换却正常？","这是因为 `MaskedPiecewiseCubicAutoregressiveTransform` 硬编码使用了 `cubic_spline`，它无法处理无约束的输入（即超出定义域的输入）。相比之下，`MaskedPiecewiseRationalQuadraticAutoregressiveTransform` 包含检查尾部（tails）的逻辑，并能自动切换到合适的变换（如 `unconstrained_cubic_spline` 或处理尾部的逻辑）。目前立方样条变换尚未完全实现尾部行为（如 `tail_bound` 参数不可用）。解决方法是修改代码以使用 `unconstrained_cubic_spline`，或者参考 RQS 变换的实现逻辑手动添加尾部处理代码。","https:\u002F\u002Fgithub.com\u002Fbayesiains\u002Fnflows\u002Fissues\u002F62",{"id":122,"question_zh":123,"answer_zh":124,"source_url":125},11824,"在高维数据上训练流模型时，为什么负对数似然（NLL）损失会变成极大的负数（如 -45），导致似然值爆炸？","这通常不是 Bug，而是高维空间中的概念性现象。在高维空间中，基础分布（如标准正态分布）的密度嵌入在更大的体积中。当数据维度通过重复特征等方式人为增加时，联合概率密度是各维度密度的乘积，这会导致对数似然值随维度线性累加。如果模型拟合得较好，高维下的总对数似然值确实可能变得非常小（即负得很多），对应的似然值（e^(-NLL)）会非常大。这在数学上是合理的，反映了高维空间中概率质量分散的特性，而非代码错误。","https:\u002F\u002Fgithub.com\u002Fbayesiains\u002Fnflows\u002Fissues\u002F22",{"id":127,"question_zh":128,"answer_zh":129,"source_url":125},11825,"如何在时间序列数据中处理缺失的尾部时间步（incomplete samples），以便利用不完整样本进行训练？","对于自回归模型（Autoregressive Model），处理缺失时间步的一个有效策略是利用其易于边缘化（marginalize）的特性。你不需要填充（impute）缺失值，因为填充会引入误差。相反，你可以简单地不预测缺失的时间步。在训练时，可以屏蔽（mask）掉缺失的时间步，仅计算已知时间步的似然。具体来说，对于缺失的维度，可以将雅可比行列式的对角线设为 1，并基于低维高斯分布计算噪声似然。这样模型仍然能在所有 n 维空间上学习到正确的密度分布，同时利用了部分观测数据。",[131,136,141,146],{"id":132,"version":133,"summary_zh":134,"released_at":135},62287,"v0.14","- 修复样条变换在遇到全尾部输入时崩溃的问题。\n- 首次发布版本将存档于 zenodo.org，以便于引用。","2020-11-29T17:38:59",{"id":137,"version":138,"summary_zh":139,"released_at":140},62288,"v0.13","GPU 相关的错误修复：在分布和变换中创建张量时，使用正确的设备。","2020-10-19T20:24:33",{"id":142,"version":143,"summary_zh":144,"released_at":145},62289,"v0.12","支持 Python 3.6，以及其他 minor changes。","2020-07-26T17:12:09",{"id":147,"version":148,"summary_zh":79,"released_at":149},62290,"v0.11","2020-06-09T17:40:54"]