Quantus

GitHub
658 89 非常简单 1 次阅读 2天前NOASSERTION开发框架其他
AI 解读 由 AI 自动生成,仅供参考

Quantus 是一款专为可解释人工智能(XAI)设计的开源评估工具包,旨在帮助开发者和研究人员科学、负责地衡量神经网络解释方法的有效性。随着深度学习模型日益复杂,理解模型“为何做出某种预测”变得至关重要,但市面上众多的解释算法往往缺乏统一的评估标准。Quantus 正是为了解决这一痛点而生,它提供了一套系统化的指标体系,让用户能够量化评估不同解释方法的可靠性与准确性。

该工具特别适合 AI 研究人员、算法工程师以及需要验证模型透明度的数据科学家使用。Quantus 内置了超过 35 种评估指标,涵盖六大类别,支持图像、时间序列及表格等多种数据类型,并兼容 PyTorch 和 TensorFlow 主流框架。其独特亮点在于高效的批量计算实现,可将现有忠诚度指标的评估速度提升 12 倍,大幅缩短实验周期。此外,Quantus 还无缝集成 Captum、tf-explain 等流行库,并持续更新如 EfficientMPRT 等前沿度量方法。无论是学术研究还是工业级模型审计,Quantus 都能为用户提供严谨的评估依据,推动可信 AI 的发展。

使用场景

某医疗 AI 团队正在开发基于深度学习的肺结节 CT 影像诊断系统,需要向医院专家证明模型是依据病灶特征而非背景噪声做出判断。

没有 Quantus 时

  • 团队仅凭肉眼观察热力图(Heatmap)来主观臆断模型是否“看对了地方”,缺乏客观数据支撑,难以说服持疑的放射科医生。
  • 试图手动复现论文中的评估指标(如忠实度、鲁棒性),但因 PyTorch 与 TensorFlow 版本差异导致代码报错,耗费数周仍无法跑通基准测试。
  • 面对数十种解释性算法(如 Grad-CAM, LIME),不知道哪种最适合当前场景,只能盲目尝试,导致模型优化方向错误。
  • 缺乏统一的评估框架,不同成员使用的评估标准不一致,使得实验结果无法复现,严重阻碍了模型的合规审批进程。

使用 Quantus 后

  • 直接调用 Quantus 内置的 35+ 种标准化指标(如 Faithfulness, Robustness),生成量化评分报告,用确凿数据向医生证明模型关注区域的可靠性。
  • 利用其对 PyTorch 和 TensorFlow 的原生支持及预置接口,几分钟内即可集成 Captum 或 tf-explain 生成的解释结果进行批量评估,效率提升十倍不止。
  • 通过对比不同解释方法在六大类别下的得分雷达图,快速筛选出最能反映病灶特征的算法组合,精准指导模型迭代。
  • 依托其严格的版本控制和可复现性设计,确保所有评估流程符合学术与行业标准,大幅缩短了医疗器械注册所需的验证周期。

Quantus 将模糊的“模型直觉”转化为可信的“量化证据”,成为连接黑盒算法与高风险领域落地应用的关键桥梁。

运行环境要求

操作系统
  • 未说明
GPU

未说明 (支持 PyTorch 和 TensorFlow,具体取决于用户模型需求)

内存

未说明

依赖
notes该工具包主要用于评估神经网络解释(XAI),支持 PyTorch 和 TensorFlow 框架。扩展支持 Captum、tf-explain 和 Zennit 等解释方法库。由于处于活跃开发中,使用时需注意版本号以确保结果可复现。支持图像、时间序列和表格数据。
python3.8, 3.9, 3.10, 3.11
torch
tensorflow
captum
tf-explain
zennit
numpy
scipy
matplotlib
Quantus hero image

快速开始

用于评估神经网络解释的工具包

PyTorch 和 TensorFlow

开始使用! 启动教程 Python 版本 PyPI 版本 代码风格:black 文档状态 codecov.io 下载量

Quantus 目前仍在积极开发中,请务必注意 Quantus 的版本,以确保工作的可重复性。

📑 论文快捷链接!

如果您想为 Quantus 做出贡献、改进或扩展,请加入我们的 Discord

新闻与亮点! :rocket:

  • 🐼 对于训练数据归因评估,可以查看 quanda!
  • 新增批量实现,使现有忠实度指标的速度提升 12 倍 (!)
  • 新增指标:由Hedström 等人(2023)提出的EfficientMPRTSmoothMPRT
  • 被《机器学习研究期刊》(MLOSS)接收,阅读论文
  • 提供超过35 种六大类别的指标,用于 XAI 评估
  • 支持多种数据类型(图像、时间序列、表格数据、NLP 即将支持!)和模型(PyTorch、TensorFlow)
  • 扩展了对解释方法的内置支持(captumtf-explainzennit)

引用

如果您在研究中发现本工具包或其配套论文 Quantus:用于负责任地评估神经网络解释及其他领域的可解释 AI 工具包 有趣或有用,请使用以下 Bibtex 格式引用我们:

@article{hedstrom2023quantus,
  author  = {Anna Hedstr{\"{o}}m and Leander Weber and Daniel Krakowczyk and Dilyara Bareeva and Franz Motzkus and Wojciech Samek and Sebastian Lapuschkin and Marina Marina M.{-}C. H{\"{o}}hne},
  title   = {Quantus: An Explainable AI Toolkit for Responsible Evaluation of Neural Network Explanations and Beyond},
  journal = {Journal of Machine Learning Research},
  year    = {2023},
  volume  = {24},
  number  = {34},
  pages   = {1--11},
  url     = {http://jmlr.org/papers/v24/22-0142.html}
}

在应用 Quantus 的各项指标时,请务必同时正确引用原始作者的工作(如下所示)。

目录

库概览

仅通过简单直观地比较可解释人工智能(XAI)方法,往往不足以判断哪种解释方法效果最好,如图 a) 中所示的四种基于梯度的方法——显著图(Mørch 等,1995; Baehrens 等,2010)、积分梯度(Sundararajan 等,2017)、GradientShap(Lundberg 和 Lee,2017) 或 FusionGrad(Bykov 等,2021)——尽管如此,在缺乏真实标签数据的情况下,这种做法仍是评估 XAI 方法的常见方式。因此,我们开发了 Quantus,一个易于使用但功能全面的工具箱,用于对解释进行定量评估——包含 30 多种不同的指标。

借助 Quantus,我们可以获得更丰富的见解,例如 b) 通过在多个评估标准上进行全面量化来比较这些方法,以及 c) 通过对单个参数(如忠实度测试中的像素替换策略)进行敏感性分析,从而了解其如何影响 XAI 方法的排名。

指标

该项目最初的目标是收集已在 XAI 研究背景下提出的现有评估指标,以帮助自动化“XAI 定量评估”的任务。在实施过程中,我们逐渐认识到,XAI 指标通常属于六类之一,即:1) 忠实度、2) 鲁棒性、3) 局部化、4) 复杂性、5) 随机化(敏感性)或 6) 公理化指标。该库包含了以下评估指标的实现:

忠实性 用于量化解释在多大程度上遵循模型的预测行为(即强调更重要的特征在模型输出中起更大作用)。

  • 忠实性相关性 (Bhatt et al., 2020):迭代地将给定归因的随机子集替换为基准值,然后测量该归因子集之和与函数输出差异之间的相关性。
  • 忠实性估计 (Alvarez-Melis et al., 2018):计算不同点上概率下降与归因分数之间的相关性。
  • 单调性度量 (Arya et al. 2019):从参考基准开始,逐步替换排序后的归因向量中的每个特征,以衡量其对模型性能的影响。
  • 单调性度量 (Nguyen et al, 2020):测量归因绝对值与概率估计不确定性之间的斯皮尔曼等级相关系数。
  • 像素翻转 (Bach et al., 2015):捕捉按照归因值降序扰动像素对分类得分的影响。
  • 区域扰动 (Samek et al., 2015):是像素翻转的扩展,将单个像素替换为一个区域。
  • 选择性 (Montavon et al., 2018):衡量当移除具有最高归因值的特征时,被评估的预测函数开始下降的速度。
  • SensitivityN (Ancona et al., 2019):在改变总特征数量的比例时,计算归因之和与目标输出变化之间的相关性,并对多个测试样本取平均。
  • IROF (Rieger at el., 2020):对于多个测试样本,计算按顺序移除特征片段(超像素)时,其平均重要性排序曲线下的面积,并取平均。
  • 不忠实性 (Chih-Kuan, Yeh, et al., 2019):表示归因与输入扰动的点积与显著扰动后模型输出差异之间的期望均方误差。
  • ROAD (Rong, Leemann, et al., 2022):通过迭代移除k个最重要的像素来衡量模型在测试集上的准确率;每一步都用噪声线性插值替换最相关的k个像素(MoRF顺序)。
  • 充分性 (Dasgupta et al., 2022):衡量相似解释是否具有相同预测标签的程度。
鲁棒性 用于衡量在输入发生轻微扰动时,解释在多大程度上保持稳定,假设模型输出大致不变。

  • 局部利普希茨估计 (Alvarez-Melis et al., 2018):检验相邻示例之间解释的一致性。
  • 最大敏感度 (Yeh et al., 2019):使用蒙特卡洛采样近似法测量解释的最大敏感度。
  • 平均敏感度 (Yeh et al., 2019):使用蒙特卡洛采样近似法测量解释的平均敏感度。
  • 连续性 (Montavon et al., 2018):捕捉输入及其扰动版本之间解释的最大变化。
  • 一致性 (Dasgupta et al., 2022):衡量具有相同解释的输入拥有相同预测标签的概率。
  • 相对输入稳定性(RIS) (Agarwal, et. al., 2022):衡量解释e_x与e_x'之间的相对距离,相对于两个输入x与x'之间的距离。
  • 相对表征稳定性(RRS) (Agarwal, et. al., 2022):衡量解释e_x与e_x'之间的相对距离,相对于分别对应于x和x'的内部模型表征L_x与L_x'之间的距离。
  • 相对输出稳定性(ROS) (Agarwal, et. al., 2022):衡量解释e_x与e_x'之间的相对距离,相对于分别对应于x和x'的输出logit h(x)与h(x')之间的距离。
定位性 测试可解释性证据是否集中在一个感兴趣区域(RoI)周围,该区域可以由边界框、分割掩码或网格中的某个单元格来定义。

  • 指向游戏 (Zhang et al., 2018): 检查得分最高的归因是否位于目标对象内
  • 归因定位 (Kohlbrenner et al., 2020): 衡量目标对象内正向归因占总正向归因的比例
  • Top-K 交集 (Theiner et al., 2021): 计算真实标签掩码与在前 k 个特征位置上二值化的解释之间的交集
  • 相关性排名准确率 (Arras et al., 2021): 衡量真实标签掩码中高归因像素所占比例与真实标签掩码大小之比
  • 相关性质量准确率 (Arras et al., 2021): 衡量真实标签掩码内正向归因占总正向归因的比例
  • AUC (Fawcett et al., 2006): 比较归因与给定真实标签掩码之间的排序
  • 聚焦 (Arias et al., 2022): 通过创建来自不同类别的数据实例的马赛克来量化解释的精确度
复杂性 衡量解释在多大程度上简洁,即使用较少的特征来解释模型预测。

随机化(敏感性) 测试当评估问题的输入(例如模型参数)逐渐被随机化时,解释会受到多大程度的影响。

  • MPRT(模型参数随机化测试) (Adebayo et. al., 2018): 以级联或独立的方式随机化单个模型层的参数,并测量相应解释与原始解释之间的距离
  • 平滑 MPRT (Hedström et. al., 2023): 在原始 MPRT 中增加一个“去噪”预处理步骤,在测量原始模型和完全随机模型的解释相似性之前,先对 N 个噪声样本的解释取平均值
  • 高效 MPRT (Hedström et. al., 2023): 重新解释 MPRT,通过评估模型完全随机化前后解释复杂度(离散熵)的变化,要求随机化后解释复杂度有所提高
  • 随机逻辑回归测试 (Sixt et al., 2020): 计算原始解释与针对随机其他类别的解释之间的距离
公理性 评估解释是否满足某些公理性质。

  • 完备性 (Sundararajan et al., 2017): 评估归因之和是否等于输入 x 和基准 x' 处函数值之差(也称为求和到差值法(Shrikumar et al., 2017)、灵敏度-n(轻微变化,Ancona et al., 2018)以及守恒性(Montavon et al., 2018))
  • 非灵敏性 (Nguyen at el., 2020): 衡量总归因是否与模型输出处的可解释证据成比例
  • 输入不变性 (Kindermans et al., 2017): 对输入进行偏移,要求归因不应随之改变(假设模型本身不改变)

未来版本将包含更多指标。如果您认为有值得加入 Quantus 的指标,请提交一个问题

免责声明。 值得注意的是,本库中各项指标的实现尚未经过原作者验证。因此,本库中的任何指标实现都可能与原作者有所不同。此外,请记住,XAI 方法的评估指标通常是某些研究者认为解释应具备的重要属性的实证诠释(或转化),因此,作者声称通过所提指标衡量的内容与实际衡量的内容之间可能存在差异,例如使用熵作为解释复杂性的操作化定义。请阅读用户指南,以获取有关如何最佳使用该库的进一步指导。

安装

如果您机器上已经安装了 PyTorchTensorFlow,则可以从 PyPI 获取 Quantus 最轻量的版本,如下所示(不会包含额外的可解释性功能或深度学习框架):

pip install quantus

或者,您也可以简单地添加所需的深度学习框架(用方括号括起来),以便将该包与 Quantus 一起安装。 要安装带有 PyTorch 的 Quantus,请运行:

pip install "quantus[torch]"

对于 TensorFlow,请运行:

pip install "quantus[tensorflow]"

软件包要求

软件包要求如下:

python>=3.8.0
torch>=1.11.0
tensorflow>=2.5.0

请注意,要安装的确切 PyTorch 和/或 TensorFlow 版本取决于您的 Python 版本(3.8-3.11)和平台(darwinlinux 等)。详情请参阅 pyproject.toml 文件中的 [project.optional-dependencies] 部分。

开始使用

以下将简要介绍如何开始使用 Quantus。请注意,本示例基于 PyTorch 框架,但我们同时也支持 TensorFlow,两者之间的差异仅在于模型、数据和解释的加载方式。要开始使用 Quantus,您需要:

  • 一个模型 (model)、输入数据 (x_batch) 和标签 (y_batch)
  • 一些您想要评估的解释 (a_batch)
步骤 1. 加载数据和模型

首先,我们来加载数据和模型。在本示例中,我们从 Quantus 中加载了一个用于本教程的预训练 LeNet 模型;不过通常情况下,您也可以使用任何 PyTorch(或 TensorFlow)模型。要按照此示例操作,您需要安装 quantus 和 torch,例如通过运行 pip install 'quantus[torch]'

import quantus
from quantus.helpers.model.models import LeNet
import torch
import torchvision
from torchvision import transforms
  
# 启用 GPU。
device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu")

# 加载一个预训练的 LeNet 分类模型(架构位于 quantus/helpers/models)。
model = LeNet()
if device.type == "cpu":
    model.load_state_dict(torch.load("tests/assets/mnist", map_location=torch.device('cpu')))
else: 
    model.load_state_dict(torch.load("tests/assets/mnist"))

# 加载数据集并创建数据加载器。
test_set = torchvision.datasets.MNIST(root='./sample_data', download=True, transform=transforms.Compose([transforms.ToTensor()]))
test_loader = torch.utils.data.DataLoader(test_set, batch_size=24)

# 加载一批用于 XAI 评估的输入和输出数据。
x_batch, y_batch = next(iter(test_loader))
x_batch, y_batch = x_batch.cpu().numpy(), y_batch.cpu().numpy()
步骤 2. 加载解释

我们还需要一些解释来进行评估。在 Quantus 中,有两种方法可以实现这一点。您可以提供:

  1. 一组重新计算的归因值 (np.ndarray)
  2. 任意解释函数 (callable),例如内置的 quantus.explain 方法,或者您自定义的函数

下面我们将展示这两种不同的选项。

使用预先计算的解释

Quantus 允许您评估已经预先计算好的解释,前提是这些解释与您在 x_batch 中提供的数据相匹配。假设您已经预先计算好了 显著性图积分梯度 的解释。

在这种情况下,您可以直接将这些解释加载到对应的变量 a_batch_saliencya_batch_intgrad 中:

a_batch_saliency = load("path/to/precomputed/saliency/explanations")
a_batch_intgrad = load("path/to/precomputed/intgrad/explanations")

另一种方法是直接使用现有的多种 XAI 框架来获取归因值,例如 CaptumZennittf.explain, 或 iNNvestigate。以下代码示例展示了如何使用 Captum 获取解释(具体来说是 显著性图积分梯度):

import captum
from captum.attr import Saliency, IntegratedGradients

# 生成测试集中第一批样本的积分梯度归因值。
a_batch_saliency = Saliency(model).attribute(inputs=torch.tensor(x_batch, dtype=torch.float32), target=torch.tensor(y_batch, dtype=torch.int64), abs=True).sum(axis=1).cpu().cpu().numpy()
a_batch_intgrad = IntegratedGradients(model).attribute(inputs=torch.tensor(x_batch, dtype=torch.float32), target=torch.tensor(y_batch, dtype=torch.int64)).sum(axis=1).cpu().numpy()

快速断言。

assert [isinstance(obj, np.ndarray) for obj in [x_batch, y_batch, a_batch_saliency, a_batch_intgrad]]


#### 传递解释函数

如果你没有预先计算好的解释集合,而是希望传递一个任意的解释函数来使用 Quantus 进行评估,那么这也是可行的。

为此,你可以例如依赖内置的 `quantus.explain` 函数来开始,该函数包含了一些流行的解释方法(请运行 `quantus.available_methods()` 查看具体有哪些)。如何使用 `quantus.explain` 或你自定义的解释函数的示例将在下一节中给出。

<img class="center" width="500" alt="drawing"  src="https://oss.gittoolsai.com/images/understandable-machine-intelligence-lab_Quantus_readme_2cb44192d8d8.png"/>

如上图所示,从定性角度来看,这些解释可能显得相当难以理解——因为我们缺乏关于解释应呈现何种样式的地面真相,因此很难对可解释性证据得出结论。为了收集不同解释方法质量的定量证据,我们可以应用 Quantus。
</details>

<details>
<summary><b><big>步骤3. 使用 Quantus 进行评估</big></b></summary> 

Quantus 实现了来自不同类别的 XAI 评估指标,例如忠实性、局部性和鲁棒性等,它们都继承自基础的 `quantus.Metric` 类。要将某个指标应用于你的场景中(比如 [最大敏感性](https://arxiv.org/abs/1901.09392)),首先需要实例化它:

```python
metric = quantus.MaxSensitivity(nr_samples=10,
                                lower_bound=0.2,
                                norm_numerator=quantus.norm_func.fro_norm,
                                norm_denominator=quantus.norm_func.fro_norm,
                                similarity_func=quantus.difference,
                                abs=True,
                                normalise=True)

然后将其应用于你的模型、数据以及(预先计算的)解释:

scores = metric(
    model=model,
    x_batch=x_batch,
    y_batch=y_batch,
    a_batch=a_batch_saliency,
    device=device,
    explain_func=quantus.explain,
    explain_func_kwargs={"method": "Saliency"},
)

使用 quantus.explain

由于在进行鲁棒性评估时需要重新计算解释,因此在这个示例中,我们还将一个解释函数 (explain_func) 传递给指标调用。这里我们依赖内置的 quantus.explain 函数来重新计算解释。超参数通过 explain_func_kwargs 字典进行设置。有关如何使用 quantus.explain 的更多详细信息,请参阅 API 文档

使用自定义函数

你也可以选择使用自己的自定义解释函数(假设它返回一个与输入 x_batch 形状匹配的 np.ndarray)。实现方式如下:

def your_own_callable(model, models, targets, **kwargs) -> np.ndarray
  """此处编写逻辑以计算归因,并返回与 x_batch 形状相同的解释(np.array),必要时可展平通道。"""
  return explanation(model, x_batch, y_batch)

scores = metric(
    model=model,
    x_batch=x_batch,
    y_batch=y_batch,
    device=device,
    explain_func=your_own_callable
)

运行大规模评估

Quantus 还提供了高级功能来支持大规模评估,例如同时评估多种 XAI 方法、通过多个指标进行多方面评估,或者两者的结合。要使用 quantus.evaluate(),你只需定义两件事:

  1. 你希望用于评估的 指标(每个 __init__ 参数配置都被视为一个独立的指标):

    metrics = {
        "max-sensitivity-10": quantus.MaxSensitivity(nr_samples=10),
        "max-sensitivity-20": quantus.MaxSensitivity(nr_samples=20),
        "region-perturbation": quantus.RegionPerturbation(),
    }
    
  2. 你希望评估的 XAI 方法,例如一个包含预先计算好的归因的字典:

    xai_methods = {
        "Saliency": a_batch_saliency,
        "IntegratedGradients": a_batch_intgrad
    }
    

之后,你可以简单地运行大规模评估(结果会通过 np.mean 取平均值):

import numpy as np
results = quantus.evaluate(
      metrics=metrics,
      xai_methods=xai_methods,
      agg_func=np.mean,
      model=model,
      x_batch=x_batch,
      y_batch=y_batch,
      **{"softmax": False,}
)

请参阅 入门教程 来运行与此示例类似的代码。有关如何自定义指标并扩展 Quantus 功能的更多信息,请参阅 入门指南

教程

还有其他教程展示了使用 Quantus 可以进行的各种分析类型。为此,请查看位于 tutorials 文件夹中的笔记本,其中包括以下示例:

……以及更多内容。

贡献

我们欢迎对 Quantus 的任何形式的贡献!如需详细的贡献指南,请先参阅 Contributing 文档。

如果您有任何与开发相关的问题,请提交一个问题,或发送邮件至 hedstroem.anna@gmail.com

版本历史

v0.6.02025/07/21
v0.5.32023/12/05
v0.5.22023/12/01
v0.5.12023/11/27
v0.5.02023/11/24
v0.4.52023/11/17
v0.4.42023/10/26
v0.4.32023/08/10
v0.4.22023/08/09
v0.4.12023/06/27
v0.4.02023/05/09
v0.3.52023/04/05
v0.3.42023/02/22
v0.3.32023/02/14
v0.3.22023/01/25
v0.3.12022/11/21
v0.3.02022/10/21
v0.2.22022/10/08
v0.2.12022/09/26
v0.2.02022/09/25

常见问题

相似工具推荐

openclaw

OpenClaw 是一款专为个人打造的本地化 AI 助手,旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚,能够直接接入你日常使用的各类通讯渠道,包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息,OpenClaw 都能即时响应,甚至支持在 macOS、iOS 和 Android 设备上进行语音交互,并提供实时的画布渲染功能供你操控。 这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地,用户无需依赖云端服务即可享受快速、私密的智能辅助,真正实现了“你的数据,你做主”。其独特的技术亮点在于强大的网关架构,将控制平面与核心助手分离,确保跨平台通信的流畅性与扩展性。 OpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者,以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力(支持 macOS、Linux 及 Windows WSL2),即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你

349.3k|★★★☆☆|1周前
Agent开发框架图像

stable-diffusion-webui

stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面,旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点,将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。 无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师,还是想要深入探索模型潜力的开发者与研究人员,都能从中获益。其核心亮点在于极高的功能丰富度:不仅支持文生图、图生图、局部重绘(Inpainting)和外绘(Outpainting)等基础模式,还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外,它内置了 GFPGAN 和 CodeFormer 等人脸修复工具,支持多种神经网络放大算法,并允许用户通过插件系统无限扩展能力。即使是显存有限的设备,stable-diffusion-webui 也提供了相应的优化选项,让高质量的 AI 艺术创作变得触手可及。

162.1k|★★★☆☆|1周前
开发框架图像Agent

everything-claude-code

everything-claude-code 是一套专为 AI 编程助手(如 Claude Code、Codex、Cursor 等)打造的高性能优化系统。它不仅仅是一组配置文件,而是一个经过长期实战打磨的完整框架,旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。 通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能,everything-claude-code 能显著提升 AI 在复杂任务中的表现,帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略,使得模型响应更快、成本更低,同时有效防御潜在的攻击向量。 这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库,还是需要 AI 协助进行安全审计与自动化测试,everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目,它融合了多语言支持与丰富的实战钩子(hooks),让 AI 真正成长为懂上

158.6k|★★☆☆☆|今天
开发框架Agent语言模型

ComfyUI

ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎,专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式,采用直观的节点式流程图界面,让用户通过连接不同的功能模块即可构建个性化的生成管线。 这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景,也能自由组合模型、调整参数并实时预览效果,轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性,不仅支持 Windows、macOS 和 Linux 全平台,还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构,并率先支持 SDXL、Flux、SD3 等前沿模型。 无论是希望深入探索算法潜力的研究人员和开发者,还是追求极致创作自由度的设计师与资深 AI 绘画爱好者,ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能,使其成为当前最灵活、生态最丰富的开源扩散模型工具之一,帮助用户将创意高效转化为现实。

108.3k|★★☆☆☆|6天前
开发框架图像Agent

gemini-cli

gemini-cli 是一款由谷歌推出的开源 AI 命令行工具,它将强大的 Gemini 大模型能力直接集成到用户的终端环境中。对于习惯在命令行工作的开发者而言,它提供了一条从输入提示词到获取模型响应的最短路径,无需切换窗口即可享受智能辅助。 这款工具主要解决了开发过程中频繁上下文切换的痛点,让用户能在熟悉的终端界面内直接完成代码理解、生成、调试以及自动化运维任务。无论是查询大型代码库、根据草图生成应用,还是执行复杂的 Git 操作,gemini-cli 都能通过自然语言指令高效处理。 它特别适合广大软件工程师、DevOps 人员及技术研究人员使用。其核心亮点包括支持高达 100 万 token 的超长上下文窗口,具备出色的逻辑推理能力;内置 Google 搜索、文件操作及 Shell 命令执行等实用工具;更独特的是,它支持 MCP(模型上下文协议),允许用户灵活扩展自定义集成,连接如图像生成等外部能力。此外,个人谷歌账号即可享受免费的额度支持,且项目基于 Apache 2.0 协议完全开源,是提升终端工作效率的理想助手。

100.8k|★★☆☆☆|1周前
插件Agent图像

markitdown

MarkItDown 是一款由微软 AutoGen 团队打造的轻量级 Python 工具,专为将各类文件高效转换为 Markdown 格式而设计。它支持 PDF、Word、Excel、PPT、图片(含 OCR)、音频(含语音转录)、HTML 乃至 YouTube 链接等多种格式的解析,能够精准提取文档中的标题、列表、表格和链接等关键结构信息。 在人工智能应用日益普及的今天,大语言模型(LLM)虽擅长处理文本,却难以直接读取复杂的二进制办公文档。MarkItDown 恰好解决了这一痛点,它将非结构化或半结构化的文件转化为模型“原生理解”且 Token 效率极高的 Markdown 格式,成为连接本地文件与 AI 分析 pipeline 的理想桥梁。此外,它还提供了 MCP(模型上下文协议)服务器,可无缝集成到 Claude Desktop 等 LLM 应用中。 这款工具特别适合开发者、数据科学家及 AI 研究人员使用,尤其是那些需要构建文档检索增强生成(RAG)系统、进行批量文本分析或希望让 AI 助手直接“阅读”本地文件的用户。虽然生成的内容也具备一定可读性,但其核心优势在于为机器

93.4k|★★☆☆☆|1周前
插件开发框架