TRIDENT

GitHub
522 113 中等 1 次阅读 今天NOASSERTION开发框架图像
AI 解读 由 AI 自动生成,仅供参考

TRIDENT 是一款专为大规模全切片病理图像(WSI)处理打造的开源工具包,由哈佛医学院 Mahmood 实验室研发。它旨在解决病理 AI 研究中处理海量高分辨率扫描图像时面临的效率瓶颈与技术门槛,让从组织分割到特征提取的全流程更加流畅高效。

这款工具非常适合病理学研究人员、生物信息学家以及从事医疗 AI 开发的工程师使用。用户利用 TRIDENT 可以轻松完成多项核心任务:自动从背景中精准提取组织区域(支持去除伪影和笔迹干扰)、按需截取不同倍率的图像块,并调用超过 20 种前沿基础模型(如 UNI、Virchow、GigaPath 等)快速提取高质量的图像特征向量。

TRIDENT 的独特亮点在于其强大的兼容性与扩展性。它不仅原生支持多种主流病理图像格式及转换,还创新性地引入了针对有限存储空间的批量缓存机制,显著提升了在大规模数据集上的处理速度。此外,工具集成了包括最新 Threads 在内的多种切片级基础模型,并提供了详细的安装检查脚本,帮助用户在本地或离线环境中稳定运行复杂的深度学习管道,是加速数字病理研究与临床转化的得力助手。

使用场景

某三甲医院病理科与 AI 实验室合作,试图构建一个覆盖万例全切片图像(WSI)的癌症预后预测模型,需从海量原始扫描数据中提取高质量特征。

没有 TRIDENT 时

  • 格式混乱难统一:不同扫描仪生成的 .svs.czi 等私有格式互不兼容,研究人员需编写繁琐脚本手动转换,耗时且易出错。
  • 背景噪声干扰大:切片中大量的空白背景和笔迹标记未被清除,直接导致后续模型训练收敛困难,准确率大幅波动。
  • 特征提取门槛高:想要利用 UNI、Virchow 等前沿基础模型提取特征,需分别配置多个独立环境,依赖冲突频发,部署周期长达数周。
  • 内存溢出频繁:处理超大尺寸切片时,传统方法常因显存或内存不足而中断,难以实现规模化批量处理。

使用 TRIDENT 后

  • 一键格式标准化:利用内置转换器将各类私有格式统一转为标准 .tiff,并支持嵌套目录自动搜索,数据预处理效率提升十倍。
  • 智能组织分割:调用集成的 GrandQC 或原生分割算法,自动去除背景、伪影及笔迹,仅保留有效组织区域,显著净化输入数据。
  • 多模型无缝集成:通过简单命令即可调用 20+ 种预训练基础模型(如 UNI、GigaPath)进行斑块或整图特征提取,无需反复配置环境。
  • 大规模缓存机制:新增的批量 WSI 缓存功能优化了有限 SSD 空间下的读写策略,稳定支撑万起级切片的连续处理任务。

TRIDENT 将原本碎片化、高门槛的病理图像处理流程整合为一站式解决方案,让研究人员能专注于算法创新而非数据清洗。

运行环境要求

操作系统
  • 未说明
GPU
  • 可选但推荐(支持 --gpu 参数指定索引),具体型号和显存未说明,取决于所选基础模型(如 UNI, Virchow 等)的需求
  • 部分模型可能需要 HuggingFace 访问权限
内存

未说明(但在有限 SSD 空间下支持批量 WSI 缓存优化)

依赖
notes建议使用 conda 创建环境。安装时可根据需求选择不同配置(如仅补丁编码器、全量安装等)。部分模型(如 GrandQC)仅限非商业用途且需引用原文。某些模型需要手动配置本地路径或申请 HuggingFace gated 访问权限。支持多种 WSI 格式转换及嵌套目录搜索。
python3.10 或 3.11
transformers
timm
safetensors
PIL (Pillow)
CuCIM (可选)
TRIDENT hero image

快速开始

🔱 三叉戟

arXiv | 博客 | 引用 | 文档 | 许可证

Trident 是一个用于大规模全切片图像处理的工具包。 该项目由哈佛医学院和布莱根妇女医院的 Mahmood 实验室 开发。本研究得到了美国国立卫生研究院 NIGMS R35GM138216 的资助。

[!注意] 欢迎大家贡献!请报告任何问题。您也可以通过提交拉取请求来参与贡献。

核心功能:

  • 组织分割:从背景中提取组织(H&E、IHC 等)。
  • 补丁提取:提取任意大小和放大倍数的组织补丁。
  • 补丁特征提取:从 20 多种基础模型中提取补丁嵌入,包括 UNIVirchowH-Optimus-0 等等……
  • 切片特征提取:从 5 种以上的切片基础模型中提取切片嵌入,包括 Threads(即将推出!)、TitanGigaPath

更新:

  • 07.25:支持 Feather 模型。
  • 05.25:新增基于批次的 WSI 缓存功能,以便在有限的 SSD 空间上进行可扩展处理 + 嵌套式 WSI 搜索(--search_nested)。
  • 04.25:原生支持 PIL.Image 和 CuCIM(使用 wsi = load_wsi(xxx.svs))。无需互联网即可进行组织分割和补丁编码。
  • 04.25:通过 --remove_artifacts--remove_penmarks 从组织分割结果中去除伪影和笔迹。
  • 02.25:新增从 czipng 等格式到 tiff 的图像转换器。
  • 02.25:支持 GrandQC(需要引用非商业用途原始仓库)的组织与背景分割。
  • 02.25:支持 MadeleineHibouLunitKaikoH-Optimus-1 模型。

[!注意] GrandQC 已根据 CC BY-NC-SA 4.0 许可证集成到 Trident 中。如果您使用 GrandQC,请引用其 原始论文

🔨 1. 安装

  • 创建环境(Python 3.10 或 3.11):conda create -n "trident" python=3.10,并激活它:conda activate trident
  • 克隆:git clone https://github.com/mahmoodlab/trident.git && cd trident
  • 本地安装:pip install -e .
    • 这将安装共享的模型栈(transformerstimmsafetensors 等)。

可选安装配置:

  • pip install -e ".[patch-encoders]" 用于 CONCH/MUSK/CTransPath 相关的附加功能。
  • pip install -e ".[slide-encoders]" 用于 PRISM/GigaPath/Madeleine 相关的附加功能。
  • pip install -e ".[omezarr]" 用于支持 OME Zarr WSI 阅读器。
  • pip install -e ".[convert]" 用于切片转换相关的依赖项。
  • pip install -e ".[full]" 安装所有可通过 pip 安装的可选依赖项。

在启动任务前运行检查:

  • trident-doctor --profile base
  • trident-doctor --profile patch-encoders --check-gated
  • trident-doctor --profile slide-encoders
  • trident-doctor --profile convert
  • trident-doctor --profile full --check-gated

[!注意] 一些模型仍需手动设置(例如,在 trident/slide_encoder_models/local_ckpts.json 中指定本地 CHIEF 仓库路径),或需要 HuggingFace 的访问权限批准。

🔨 2. 运行 Trident

CLI 选项(全部支持):

  • python run_batch_of_slides.py ...(现有命令)
  • python run_single_slide.py ...(现有命令)
  • trident batch ...trident single ...trident convert ...trident doctor ...(封装 CLI)

已经熟悉 WSI 处理? 可以从一个包含 WSI 的目录中执行分割、补丁提取和 UNI 特征提取:

python run_batch_of_slides.py --task all --wsi_dir ./wsis --job_dir ./trident_processed --patch_encoder uni_v1 --mag 20 --patch_size 256

等效的封装 CLI:

trident batch -- --task all --wsi_dir ./wsis --job_dir ./trident_processed --patch_encoder uni_v1 --mag 20 --patch_size 256

想谨慎一点吗?

运行以下命令对 单张 切片执行所有处理步骤:

python run_single_slide.py --slide_path ./wsis/xxxx.svs --job_dir ./trident_processed --patch_encoder uni_v1 --mag 20 --patch_size 256

等效的封装 CLI:

trident single -- --slide_path ./wsis/xxxx.svs --job_dir ./trident_processed --patch_encoder uni_v1 --mag 20 --patch_size 256

将图像/WSI 转换为金字塔 TIFF:

trident convert --input_dir ./wsis --mpp_csv ./wsis/to_process.csv --job_dir ./pyramidal_tiff --downscale_by 1 --num_workers 1

--mpp_csv 是必需的,必须包含 wsi,mpp 列。只有 CSV 中列出的文件会被转换。如果检测到切片中嵌入了 MPP 元数据,Trident 会将其与 CSV 中的值进行比较,并记录不匹配的情况。

或者按照逐步指南操作:

步骤 1:组织分割:从一组 WSI 中分割出组织与背景

  • 命令
    python run_batch_of_slides.py --task seg --wsi_dir ./wsis --job_dir ./trident_processed --gpu 0 --segmenter hest
    
    • --task seg:指定要进行组织分割。
    • --wsi_dir ./wsis:您的 WSI 所在目录的路径。
    • --job_dir ./trident_processed:处理结果的输出目录。
    • --gpu 0:使用索引为 0 的 GPU。
  • --segmenter:分割模型。默认是 hest。可以使用 grandqc需要引用非商业用途原始仓库)进行快速的 H&E 分割,或使用 otsu 作为经典的纯图像处理回退方案。添加选项 --remove_artifacts 可进一步清除伪影。
  • 输出
    • ./trident_processed/thumbnails 中生成 WSI 缩略图。
    • ./trident_processed/contours 中生成带有组织轮廓的 WSI 缩略图。
    • ./trident_processed/contours_geojson 中生成包含组织轮廓的 GeoJSON 文件。如有必要,这些文件可以在 QuPath 中打开进行编辑或质量控制。

步骤 2:组织切片补丁提取:在特定放大倍数下,从分割后的组织区域中提取补丁。

  • 命令
    python run_batch_of_slides.py --task coords --wsi_dir ./wsis --job_dir ./trident_processed --mag 20 --patch_size 256 --overlap 0
    
    • --task coords:指定执行补丁提取操作。
    • --wsi_dir wsis:WSI 文件所在的目录路径。
    • --job_dir ./trident_processed:处理结果的输出目录。
    • --mag 20:以 20 倍放大倍数提取补丁。
    • --patch_size 256:每个补丁的尺寸为 256×256 像素。
    • --overlap 0:补丁之间无重叠(始终使用像素数表示,例如,对于 256×256 的补丁,若需 50% 重叠,则应设置为 --overlap 128)。
  • 输出
    • 补丁坐标以 h5 文件形式保存在 ./trident_processed/20x_256px/patches 目录中。
    • 带有补丁边界的 WSI 缩略图保存在 ./trident_processed/20x_256px/visualization 目录中。

步骤 3a:补丁特征提取:使用指定的编码器从组织补丁中提取特征。

  • 命令
    python run_batch_of_slides.py --task feat --wsi_dir ./wsis --job_dir ./trident_processed --patch_encoder uni_v1 --mag 20 --patch_size 256 
    
    • --task feat:指定执行特征提取操作。
    • --wsi_dir wsis:WSI 文件所在的目录路径。
    • --job_dir ./trident_processed:处理结果的输出目录。
    • --patch_encoder uni_v1:使用 UNI 补丁编码器。支持的模型列表见下文。
    • --mag 20:在 20 倍放大倍数下从补丁中提取特征。
    • --patch_size 256:补丁尺寸为 256×256 像素。
  • 输出
    • 特征以 h5 文件形式保存在 ./trident_processed/20x_256px/features_uni_v1 目录中。(形状:(n_patches, feature_dim)

Trident 支持 24 种补丁编码器,可通过补丁 encoder_factory 加载。需要特定安装的模型会返回包含额外说明的错误信息。HuggingFace 上的门控模型需要提交访问申请。

补丁编码器 嵌入维度 参数 链接
UNI 1024 --patch_encoder uni_v1 --patch_size 256 --mag 20 MahmoodLab/UNI
UNI2-h 1536 --patch_encoder uni_v2 --patch_size 256 --mag 20 MahmoodLab/UNI2-h
CONCH 512 --patch_encoder conch_v1 --patch_size 512 --mag 20 MahmoodLab/CONCH
CONCHv1.5 768 --patch_encoder conch_v15 --patch_size 512 --mag 20 MahmoodLab/conchv1_5
Virchow 2560 --patch_encoder virchow --patch_size 224 --mag 20 paige-ai/Virchow
Virchow2 2560 --patch_encoder virchow2 --patch_size 224 --mag 20 paige-ai/Virchow2
Phikon 768 --patch_encoder phikon --patch_size 224 --mag 20 owkin/phikon
Phikon-v2 1024 --patch_encoder phikon_v2 --patch_size 224 --mag 20 owkin/phikon-v2
Prov-Gigapath 1536 --patch_encoder gigapath --patch_size 256 --mag 20 prov-gigapath
H-Optimus-0 1536 --patch_encoder hoptimus0 --patch_size 224 --mag 20 bioptimus/H-optimus-0
H-Optimus-1 1536 --patch_encoder hoptimus1 --patch_size 224 --mag 20 bioptimus/H-optimus-1
H0-mini 768/1536 --patch_encoder h0-mini --patch_size 224 --mag 20 bioptimus/H0-mini
MUSK 1024 --patch_encoder musk --patch_size 384 --mag 20 xiangjx/musk
Midnight-12k 3072 --patch_encoder midnight12k --patch_size 224 --mag 20 kaiko-ai/midnight
OpenMidnight 1536 --patch_encoder openmidnight --patch_size 224 --mag 20 SophontAI/OpenMidnight
GPFM 1024 --patch_encoder gpfm --patch_size 224 --mag 20 majiabo/GPFM
GenBio-PathFM 4608 --patch_encoder genbio-pathfm --patch_size 224 --mag 20 genbio-ai/genbio-pathfm
Kaiko 384/768/1024 --patch_encoder {kaiko-vits8, kaiko-vits16, kaiko-vitb8, kaiko-vitb16, kaiko-vitl14} --patch_size 256 --mag 20 1aurent/kaikoai-models-66636c99d8e1e34bc6dcf795
Lunit 384 --patch_encoder lunit-vits8 --patch_size 224 --mag 20 1aurent/vit_small_patch8_224.lunit_dino
Hibou 1024 --patch_encoder hibou_l --patch_size 224 --mag 20 histai/hibou-L
CTransPath-CHIEF 768 --patch_encoder ctranspath --patch_size 256 --mag 10
ResNet50 1024 --patch_encoder resnet50 --patch_size 256 --mag 20

步骤 3b:幻灯片特征提取:使用幻灯片编码器提取幻灯片嵌入。同时也会自动提取正确的补丁嵌入。

  • 命令
    python run_batch_of_slides.py --task feat --wsi_dir ./wsis --job_dir ./trident_processed --slide_encoder titan --mag 20 --patch_size 512 
    
    • --task feat:指定要进行特征提取。
    • --wsi_dir wsis:包含WSI的目录路径。
    • --job_dir ./trident_processed:处理结果的输出目录。
    • --slide_encoder titan:使用Titan幻灯片编码器。支持的模型见下文。
    • --mag 20:在20倍放大倍率下从补丁中提取特征。
    • --patch_size 512:补丁大小为512×512像素。
  • 输出
    • 特征以h5文件格式保存在./trident_processed/20x_256px/slide_features_titan中。(形状:(feature_dim)

Trident支持5种幻灯片编码器,通过幻灯片级别的encoder_factory加载。需要特定安装的模型会返回带有额外说明的错误信息。HuggingFace上的门控模型需要申请访问权限。

演示板编码器 补丁编码器 参数 链接
Threads conch_v15 --slide_encoder threads --patch_size 512 --mag 20 (即将推出!)
Titan conch_v15 --slide_encoder titan --patch_size 512 --mag 20 MahmoodLab/TITAN
PRISM virchow --slide_encoder prism --patch_size 224 --mag 20 paige-ai/Prism
CHIEF ctranspath --slide_encoder chief --patch_size 256 --mag 10 CHIEF
GigaPath gigapath --slide_encoder gigapath --patch_size 256 --mag 20 prov-gigapath
Madeleine conch_v1 --slide_encoder madeleine --patch_size 256 --mag 10 MahmoodLab/madeleine
Feather conch_v15 --slide_encoder feather --patch_size 512 --mag 20 MahmoodLab/FEATHER

[!注意] 如果您的任务涉及每位患者有多张幻灯片,您可以通过以下方式生成患者级别的嵌入:(1) 独立处理每张幻灯片并取其平均幻灯片嵌入(晚期融合),或 (2) 将所有补丁合并在一起,将其作为单个“伪幻灯片”进行处理(早期融合)。有关这两种融合策略的实现,请查看我们的姊妹仓库Patho-Bench

请参阅我们的教程以获取更多支持,以及详细自述文件以了解其他功能。

🙋 常见问题解答

  • :如何从使用CLAM提取的旧版补丁坐标中提取补丁嵌入?

    • python run_batch_of_slides.py --task feat --wsi_dir ..wsis --job_dir legacy_dir --patch_encoder uni_v1 --mag 20 --patch_size 256 --coords_dir extracted_mag20x_patch256_fp/
      
  • :如何保留对应于组织中孔洞的补丁?

    • :在run_batch_of_slides中,此行为是默认设置。将--remove_holes设置为排除位于孔洞上的补丁。
  • :使用timm构建模型时,我看到一些奇怪的消息。这是怎么回事?

    • :请确保已安装timm==0.9.16timm==1.X.X会导致大多数模型出现问题。
  • :如何在其他仓库中以最少的工作量使用run_single_slide.pyrun_batch_of_slides.py

    • :确保已使用pip install -e .安装了trident。然后,这两个脚本将被公开,并可集成到任何Python代码中,例如:
import sys 
from run_single_slide import main

sys.argv = [
    "run_single_slide",
    '--slide_path', "output/wsis/394140.svs",
    "--job_dir", 'output/',
    "--mag", "20",
    "--patch_size", '256'
]

main()
  • :我对组织与背景的分割效果不满意。该怎么办?

  • :我想处理一个自定义的WSI列表。可以吗?另外,我的大部分WSI都没有存储每像素微米数(mpp)。我可以传递这个值吗?

    • :可以,使用--custom_list_of_wsis参数。提供一个包含WSI名称的CSV文件(带幻灯片扩展名,wsi)。可选地,提供mpp值(字段mpp)。
  • :使用Trident是否需要安装任何额外的软件包?

    • :运行pip install -e .会安装核心依赖项。但某些可选组件仍需额外安装。请使用配置文件(.[patch-encoders].[slide-encoders].[convert].[omezarr].[full])并运行trident-doctor进行飞行前检查。

许可证与使用条款

ⓒ Mahmood Lab。本仓库根据CC-BY-NC-ND 4.0许可证发布,仅可用于非商业性的学术研究目的,并需正确注明出处。任何商业用途、销售或其他盈利行为均被禁止,且须事先获得批准。下载任何预训练编码器即表示您同意遵守该模型各自的许可证。

致谢

该项目建立在许多优秀的开源项目之上,如TimmHuggingFace以及社区的开源贡献。我们感谢各位作者和开发人员的贡献。

问题

资助

本工作由美国国立卫生研究院NIGMS资助,项目编号为R35GM138216

如何引用

如果您在研究中认为我们的工作有所帮助,或者使用了本代码的部分内容,请考虑引用我们的论文:

@article{zhang2025standardizing,
  title={加速病理学人工智能模型的数据处理与基准测试},
  author={Zhang, Andrew 和 Jaume, Guillaume 和 Vaidya, Anurag 和 Ding, Tong 和 Mahmood, Faisal},
  journal={arXiv 预印本 arXiv:2502.06750},
  year={2025}
}

@article{vaidya2025molecular,
  title={面向肿瘤病理学的分子驱动型基础模型},
  author={Vaidya, Anurag 和 Zhang, Andrew 和 Jaume, Guillaume 和 Song, Andrew H 和 Ding, Tong 和 Wagner, Sophia J 和 Lu, Ming Y 和 Doucet, Paul 和 Robertson, Harry 和 Almagro-Perez, Cristina 等},
  journal={arXiv 预印本 arXiv:2501.16652},
  year={2025}
}

版本历史

v0.2.52026/04/07
v0.2.42026/03/05
v0.2.32025/11/19
v0.2.22025/08/05
v0.2.12025/07/16
v0.2.02025/06/06
v0.1.12025/04/13
v0.1.02025/04/10
v0.0.52025/02/18
v0.0.42025/02/18
v0.0.32025/02/18
v0.0.22025/02/15
v0.0.12025/02/11

常见问题

相似工具推荐

openclaw

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

349.3k|★★★☆☆|2天前
Agent开发框架图像

stable-diffusion-webui

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

162.1k|★★★☆☆|3天前
开发框架图像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 真正成长为懂上

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

ComfyUI

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

108.1k|★★☆☆☆|今天
开发框架图像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|★★☆☆☆|2天前
插件开发框架

LLMs-from-scratch

LLMs-from-scratch 是一个基于 PyTorch 的开源教育项目,旨在引导用户从零开始一步步构建一个类似 ChatGPT 的大型语言模型(LLM)。它不仅是同名技术著作的官方代码库,更提供了一套完整的实践方案,涵盖模型开发、预训练及微调的全过程。 该项目主要解决了大模型领域“黑盒化”的学习痛点。许多开发者虽能调用现成模型,却难以深入理解其内部架构与训练机制。通过亲手编写每一行核心代码,用户能够透彻掌握 Transformer 架构、注意力机制等关键原理,从而真正理解大模型是如何“思考”的。此外,项目还包含了加载大型预训练权重进行微调的代码,帮助用户将理论知识延伸至实际应用。 LLMs-from-scratch 特别适合希望深入底层原理的 AI 开发者、研究人员以及计算机专业的学生。对于不满足于仅使用 API,而是渴望探究模型构建细节的技术人员而言,这是极佳的学习资源。其独特的技术亮点在于“循序渐进”的教学设计:将复杂的系统工程拆解为清晰的步骤,配合详细的图表与示例,让构建一个虽小但功能完备的大模型变得触手可及。无论你是想夯实理论基础,还是为未来研发更大规模的模型做准备

90.1k|★★★☆☆|2天前
语言模型图像Agent