gomlx

GitHub
1.4k 73 中等 1 次阅读 今天Apache-2.0开发框架
AI 解读 由 AI 自动生成,仅供参考

GoMLX 是一个专为 Go 语言打造的高性能机器学习与数学计算框架,常被开发者视为"Go 语言版的 PyTorch 或 TensorFlow"。它旨在解决 Go 生态中缺乏原生、高效且功能完整的深度学习工具的痛点,让开发者无需依赖 Python 环境即可在 Go 项目中直接完成模型的训练、微调、修改及组合。

这套框架非常适合熟悉 Go 语言的软件工程师、后端开发者以及希望将 AI 能力无缝集成到现有 Go 服务中的研究人员。其设计理念高度契合 Go 哲学,强调代码的可读性与逻辑的透明性,虽然写法上略显严谨,但能帮助用户建立清晰的心智模型,避免隐性陷阱。

GoMLX 的技术亮点在于其灵活的双后端架构:一方面提供纯 Go 实现的后端,确保极高的可移植性,甚至能在浏览器(WASM)或嵌入式设备上运行;另一方面集成了基于 OpenXLA 的高性能引擎,支持即时编译(JIT),可充分利用 NVIDIA GPU、TPU 等多硬件加速资源。这使得它既能胜任轻量级边缘计算任务,也能通过分布式执行技术处理大规模模型训练,性能表现可与主流 Python 框架媲美。

使用场景

某电商平台的后端团队希望在不引入 Python 依赖的情况下,直接在现有的 Go 微服务架构中集成实时欺诈检测模型。

没有 gomlx 时

  • 架构割裂:必须额外部署 Python 推理服务,通过 gRPC 或 HTTP 进行跨语言调用,显著增加了系统延迟和运维复杂度。
  • 训练门槛高:数据科学家需将模型从实验环境重写为生产代码,Go 工程师因缺乏原生深度学习库而无法直接参与模型迭代。
  • 硬件加速困难:纯 Go 实现难以利用 GPU 或 TPU 进行大规模训练,导致处理海量交易数据时耗时过长。
  • 调试黑盒:跨语言边界使得错误追踪困难,内存管理和数据类型转换容易引发隐蔽的运行时崩溃。

使用 gomlx 后

  • 原生集成:直接在 Go 代码中构建、训练并部署模型,消除了外部服务依赖,将推理延迟降低至毫秒级。
  • 统一技术栈:利用 gomlx 提供的可微分算子和类似 PyTorch 的 API,Go 工程师能无缝接手模型优化工作,加速功能上线。
  • 高性能计算:通过集成的 OpenXLA 后端,自动调用 JIT 编译技术加速 CPU、GPU 及 TPU 运算,大幅缩短大模型训练时间。
  • 透明可控:遵循 Go 语言简洁透明的哲学,开发者可清晰掌控从数据预处理到梯度更新的每一步,便于排查问题和定制非标准算法。

gomlx 让 Go 开发者能在单一语言环境下享受工业级的机器学习能力,彻底打破了算法工程化中的语言壁垒。

运行环境要求

操作系统
  • Linux
  • macOS
  • Windows
GPU
  • 非必需
  • 若使用高性能后端 (OpenXLA/XLA),支持 NVIDIA GPU (可能支持 AMD ROCm, Intel GPU) 及 Google TPU
  • 纯 Go 后端无需 GPU
  • 未指定具体显存大小或 CUDA 版本要求
内存

未说明

依赖
notes1. 该工具是 Go 语言的机器学习框架,旨在无需 Python 即可运行。2. 提供两种主要后端:'go'后端为纯 Go 实现,兼容性极强(支持浏览器 WASM、嵌入式设备),但速度较慢;'xla'后端基于 OpenXLA,支持 JIT 编译到 CPU/GPU/TPU,性能高但目前主要支持 Linux 和 macOS 的 CPU 及部分 GPU。3. 新增对 Apple CoreML/Metal 的后端支持 (go-darwinml)。4. 支持在浏览器中通过 WASM 运行。
python无需 Python (纯 Go 语言框架)
Go (语言环境)
github.com/gomlx/gomlx
github.com/gomlx/go-xla (可选,用于 XLA 后端)
github.com/gomlx/onnx-gomlx (可选,用于 ONNX 模型)
github.com/gomlx/go-huggingface (可选,用于加载 HuggingFace 模型)
github.com/janpfeifer/gonb (可选,用于 Jupyter Notebook 支持)
gomlx hero image

快速开始

GoMLX,一个加速的机器学习和数学框架

GoDev GitHub Go Report Card Linux/amd64 测试 Linux/arm64 测试 Darwin/arm64 测试 Windows/amd64 测试 覆盖率 Slack 赞助 gomlx

📖 关于 GoMLX

GoMLX Gopher

GoMLX 是一套易于使用的机器学习和通用数学库及工具。 它可以被视为 Go 语言版的 PyTorch/Jax/TensorFlow

它可用于训练、微调、修改和组合机器学习模型。 提供了使这些操作变得简单的所有工具:从完整的可微分算子集, 到在笔记本中进行训练时用于绘制指标的 UI 工具。

它几乎可以在任何运行 Go 的地方运行,使用纯 Go 后端实现。 甚至可以在浏览器中通过 WASM 运行(查看用 GoMLX 创建的演示)。 很可能它也能在嵌入式设备上运行(参见 Tamago)。

此外,它还支持基于 OpenXLA 的高度优化后端引擎, 该引擎利用即时编译技术,可在 CPU、GPU(Nvidia,以及可能的 AMD ROCm 和 Intel,还有 Mac 设备)以及 Google 的 TPU 上运行。 它还支持现代分布式执行功能(新功能,仍在积极改进中),可通过 XLA Shardy 实现多 TPU 或多 GPU 分布式训练, 这是对 GSPMD 分布式策略 的进一步发展。

该引擎与 Google 的 JaxTensorFlowPytorch/XLA 所使用的引擎相同, 在许多情况下性能也相当。 使用此后端可以训练大型模型或处理大规模数据集。

[!Tip]

  • 请参阅我们的 🎓 教程 🎓
  • 参阅 Eli Bendersky 的博客文章“GoMLX:无需 Python 的 Go 语言机器学习”(略显过时,但仍具参考价值)
  • 一个针对 Kaggle 狗猫分类问题的引导式示例:狗猫分类
  • 一份简单的 GoMLX 幻灯片介绍,包含少量示例代码。

它被开发出来是为了成为 Go 语言的一个功能齐全的机器学习平台,既可用于生产环境,又便于用户试验各种机器学习想法——详见下文的长期目标。

它力求做到 简单易读、易于理解,帮助用户建立正确且透明的心理模型, 从而避免意外情况的发生——这完全符合 Go 语言的设计哲学。 当然,在某些情况下可能会需要更多的代码输入(即更冗长)。

同时,它也非常灵活,易于扩展,适合尝试非常规的想法:例如,您可以使用它来试验新的优化器方案、复杂的正则化方法、奇特的多任务学习等。

🗺️ 概述

GoMLX 是一个功能齐全的机器学习框架,支持从底层到高层的各种知名机器学习组件。 然而,它目前仍然只是主流机器学习库/框架(如 TensorFlow、Jax 或 PyTorch)所提供功能的一部分。

使用 GoMLX 开发的示例

后端

GoMLX 是一个友好的“中间 ML API”,提供通用的 API 和一系列 ML 层等组件。但它本身并不执行任何计算:它依赖于不同的后端来编译并在各种硬件上执行计算。

目前有一个通用的后端接口(位于 github.com/gomlx/gomlx/backends,但很快将迁移到独立的仓库),并有三种不同的实现:

  1. xla:适用于 CPU、GPU 和 TPU 的 OpenXLA 后端。就现有技术而言属于最先进的水平,但仅支持静态形状。 目前支持 linux/amd64、linux/arm64(CPU)以及 darwin/arm64(CPU)。使用 go-xla 提供的 Go 版本 API。
  2. go:纯 Go 后端(无 C/C++ 依赖):速度较慢但非常便携(可编译为 WASM、Windows 等):
  3. 🚀 新增 🚀 go-darwinml:Apple CoreML 的 Go 绑定,支持 Metal 加速、MLX 以及所有 DarwinOS 相关的后端。

亮点

  • 使用 onnx-gomlx 将 ONNX 模型转换为 GoMLX:既可以作为 onnxruntime 的替代方案(利用 XLA),也可以用于进一步微调模型。同时,还可以通过 go-huggingface 轻松从 HuggingFace 下载 ONNX 模型文件。
  • Docker "gomlx_jupyterlab",集成了 JupyterLab 和 GoNB(Jupyter 笔记本的 Go 内核)。
  • 自动微分:目前仅支持梯度计算,暂不支持雅可比矩阵。
  • 上下文管理:自动管理机器学习模型中的变量。
  • 包含多种流行机器学习“层”的 ML 层库:前馈神经网络层、各类激活函数、层归一化和批归一化、卷积、池化、Dropout、多头注意力机制(用于 Transformer 层)、LSTM、KAN(B 样条、GR-KAN/KAT 网络、离散 KAN、分段线性 KAN)、分段线性层(用于校准和归一化)、各种正则化方法、可逆/可微分快速傅里叶变换、可学习有理函数(既可用于激活函数,也可用于 GR-KAN/KAT 网络)、VNN(向量神经网络)用于 SO(3) 等变/不变层等。
  • 训练库,带有格式化的打印输出,并支持在 Jupyter 笔记本中使用 GoNB, a Go Kernel 绘制图表。
    • 此外,还提供多种调试工具:收集特定节点的值以供绘图、在训练过程中简单记录节点的值,以及生成创建节点的代码堆栈跟踪信息。
  • gomlx_checkpoints 是一个命令行工具,用于检查训练模型的检查点,并生成图表,使用 Plotly 绘制损失曲线和任意评估指标。请参阅训练会话示例,其中展示了训练过程中学习率变化的效果。该工具还允许将不同模型的训练过程绘制在同一张图上,以便比较它们的演变。
  • SGD 和 Adam(AdamW 和 Adamax)优化器。
  • 多种损失函数和评估指标。
  • 可直接使用的预训练模型:InceptionV3(图像模型),以及通过 onnx-gomlx 获取的更多来自 HuggingFace 的模型。同时,可以使用 go-huggingface 轻松从 HuggingFace 下载 ONNX 模型文件。
  • 将 Numpy 数组读取为 GoMLX 张量——请参阅包 github.com/gomlx/gomlx/pkg/core/tensors/numpy
  • (实验性)支持 PJRT 的静态链接:虽然构建 Go 程序的速度较慢,但部署时无需在目标机器上安装 PJRT 插件。这需要您从 XLA 源码编译自己的静态 PJRT 插件。可以使用 go build --tags=pjrt_cpu_static 命令,或通过 import _ "github.com/gomlx/gomlx/backends/xla/cpu/static" 来启用。
  • 自动安装 XLA PJRT 插件(适用于 CPU、GPU 和 TPU;支持 Linux 和 Mac),安装位置为用户的本地库目录(Linux 下为 $HOME/.local/lib,Mac 下为 $HOME/Library/Application Support/XLA)。可通过设置 GOMLX_NO_AUTO_INSTALL 或编程方式调用 xla.EnableAutoInstall(false) 来禁用此功能。
  • 分布式执行(跨多个 GPU 或 TPU),用户只需提供少量提示即可。只需配置好分布式数据集,训练器便会自动完成其余工作。请参阅 UCI-Adult 示例 中的代码更改。此功能目前仍处于实验阶段,请报告任何问题并帮助我们改进它。

👥 支持

🛠️ + ⚙️ 安装

对于大多数用户来说,无需安装。

对于 XLA,系统默认会自动安装所需的 XLA PJRT 插件(适用于 CPU、GPU 和 TPU;支持 Linux 和 Mac),安装位置为用户的本地库目录(Linux 下为 $HOME/.local/lib/go-xla;Mac 下为 $HOME/Library/Application Support/go-xla;Windows 下为 $HOME\AppData\Local\go-xla)。可以通过设置 GOMLX_NO_AUTO_INSTALL 或编程方式调用 xla.EnableAutoInstall(false) 来禁用此功能。

如果您希望手动预安装以构建生产级 Docker 镜像、指定特定版本,或进行其他自定义设置,请参阅 github.com/gomlx/go-xla 以获取详细信息,其中包含易于理解的简单安装程序。

如果您只想使用纯 Go 后端,只需导入 _ "github.com/gomlx/gomlx/backends/simplego" 即可,无需安装任何额外组件。

🐳 预构建的 Docker

最简单的入门方式就是拉取这个包含 GoMLX + JupyterLab + GoNB(Jupyter 的 Go 内核)以及 Nvidia 的 CUDA 运行时(用于可选的 GPU 支持)的 Docker 镜像——镜像大小约为 5GB。CUDA 运行时已预先安装,无需额外操作。

在您希望在 Jupyter 中可见的目录下执行以下命令:

如果需要 GPU 支持,请在下面的 docker run 命令中添加 --gpus all 标志。

docker pull janpfeifer/gomlx_jupyterlab:latest
docker run -it --rm -p 8888:8888 -v "${PWD}":/home/jupyter/work janpfeifer/gomlx_jupyterlab:latest

终端中会显示一个以 127.0.0.1:8888 开头的 URL(包含所需的访问令牌),您可以在浏览器中打开该链接。

您还可以从那里打开并交互式地体验教程,该教程已包含在 Docker 的 Projects/gomlx/examples/tutorial 目录中。

更多关于该 Docker 的详细信息请参见 docker/jupyterlab/README.md

该 Docker 也支持 Windows 系统:Docker Desktop 底层使用 WSL2 技术。

🧭 教程

请参阅此处的教程。它涵盖了各个方面的内容。

之后,可以查看位于examples/目录中的示例。

该库本身文档齐全(如果发现遗漏之处,请提交问题),代码也相对容易阅读。 Godoc 文档可在 pkg.go.dev 上找到。

最后,欢迎随时提问:在时间允许的情况下(非工作时间),我非常乐意提供帮助: 我经常在线于 Slack 频道 #gomlx; 或者访问 groups.google.com/g/gomlx-discuss

推理与生产部署

目前,模型的推理或服务是通过使用创建模型时所用的 Go 代码,并结合包含训练权重和超参数的检查点来实现的。 换句话说,就是使用与训练相同的工具来进行推理。

例如,直接构建一个包含预训练模型的 Docker 容器并从中提供服务,或者将其集成到您自己的应用程序中,都是非常简单的操作。

关于如何实现这一点以及将模型推理导出为库的简单示例,请参阅 .../examples/cifar/classifer, 以及在Cifar-10 示例的最后几节中的使用方法。

未来,我们计划还将模型导出为 ONNX 或 XLA 的 StableHLO 格式,这样就可以直接使用支持这些格式的工具进行服务, 而无需链接 GoMLX——这将略微减小可执行文件的大小。

🎯 长期目标

  1. 在 Go 中构建和训练模型——而非 Python(或其他语言)——重点在于:
    • 易于阅读和理解,使用户能够形成对当前操作过程正确且透明的心理模型。即使这意味着编写时会更冗长。
    • 清晰、可分离的 API:每个 API 应尽可能自成一体且相互解耦。
    • 可组合性:任何组件都应可替换,以便进行自定义和实验。 这意味着有时需要更多的编码工作(不存在一个能完成所有任务的“魔术”训练对象), 但这样做可以使流程更加清晰,并便于用自定义版本替换部分组件。
    • 及时更新的文档:如果文档缺失或编写不佳,就如同代码不存在一样。
    • 清晰且可操作的错误报告
  2. 成为一个高效的研究和教育平台,用于试验新的机器学习思想并进行学习。
    • 支持多设备上的镜像训练以及各种形式的分布式训练(模型并行和/或数据并行), 特别是支持大型语言模型及类似大规模模型的训练。
  3. 成为一个稳健可靠的生产级平台。一些子目标包括:
    • 支持现代加速硬件,如 TPU 和 GPU。
    • 提供除 XLA 之外的多种后端,例如:llamacpp、WebNN(通过 Wasm)、纯 Go 实现等。
    • 导入来自Hugging Face Hub的预训练模型并支持微调——ONNX 版本已经在 onnx-gomlx 中对许多模型生效。
    • 将模型编译为 C 库和/或 WebAssembly 二进制文件,以便在任何地方(任何语言)进行链接和推理使用。

🤔 常见问题解答

  • GoMLX 使用哪些环境变量?
    • GOMLX_BACKEND:定义要使用的后端引擎(如果使用 backends.New())。其值格式为“[:]”,其中配置部分是可选的。示例:
      • GOMLX_BACKEND=go:使用 SimpleGo 后端,即纯 Go 实现,具有很好的可移植性但速度较慢。
      • GOMLX_BACKEND="xla:cpu":使用 XLA 后端(更快的后端,目前仅支持 Linux 系统)运行 CPU 计算。
      • GOMLX_BACKEND="xla:cuda":使用 XLA 后端运行 Nvidia CUDA。
      • GOMLX_BACKEND="xla:/path/to/my/pjrt_plugin.so":使用 XLA 并加载任意 PJRT 插件。PJRT 是 XLA 的插件系统,用于支持不同的硬件。 用户可以安装为 NVIDIA GPU 构建的 PJRT(有相应的安装脚本),也有适用于 ROCm 的 PJRT(作者未测试过), 以及适用于 TPU(Google Cloud)的 PJRT,甚至还有针对新型加速器(例如:TensTorrent XLA)开发的 PJRT。
    • PJRT_PLUGIN_LIBRARY_PATH:底层 XLA 后端会将此变量视为额外的目录,用于搜索插件位置。 它会依次查找系统的库路径($LD_LIBRARY_PATH/etc/ld.so.conf)、默认路径 /usr/local/lib/gomlx/pjrt,以及用户设置的 $PJRT_PLUGIN_LIBRARY_PATH
    • GOMLX_NO_AUTO_INSTALL:若设置为 1,GoMLX 在运行于尚未安装 PJRT 的系统上时,将不会自动安装 PJRT。
    • XLA_FLAGS:用于控制 XLA 后端的可选参数。应以分号(;)分隔的选项列表形式设置。若设置为 --help,后端会打印出所有选项的帮助信息。 更多信息请参阅XLA 标志指南页面。
  • 使用 GoMLX 时应包含哪些后端?
    • 建议使用 import _ "github.com/gomlx/gomlx/backends/default",这将导入 xla(或别名 stablehlo)和 goSimpleGo)后端。 如果在编译时添加 -tags=noxla 参数,则不会包含 XLA 后端。
    • 使用 import _ "github.com/gomlx/gomlx/backends/simplego" 仅导入 go 后端(无 C++ 依赖)。
    • 使用 import _ "github.com/gomlx/gomlx/backends/xla" 仅导入 XLA 后端。
  • AI 上下文文件(Gemini/Claude Code/Conductor 等)存放在哪里?
    • 为避免项目根目录过于杂乱,这些文件已被移至 .agents/ 目录,并已加入 .gitignore 文件中。 这样一来,用户只需将所需的 AI 配置文件以符号链接的形式指向本地副本的根目录,即可轻松使用它们。

🤝 合作

该项目欢迎所有感兴趣的人士贡献代码。 许多部分尚未最终确定,因此对于那些具备 Go、机器学习和 API 设计经验的人来说,仍有大量改进和重新设计的空间。 请参阅TODO 文件获取灵感。

目前尚未制定治理规范。

如需联系,请参阅上方的“支持”部分!(可通过 Slack 频道或 Google Groups)

💖 支持本项目

如果您觉得本项目有所帮助,请考虑通过GitHub Sponsors支持我们的工作。

您的捐助将帮助我们(目前主要是)投入更多时间进行维护, 并为整个 GoMLX 生态系统添加新功能。

同时,这笔资金也将用于获取更多硬件资源的使用权(购买或云服务),以提升跨平台兼容性,例如:ROCm、Apple Metal(GPU)、多 GPU/TPU、NVIDIA DGX Spark、Tenstorrent 等。

🚀 高级主题

💖 感谢

⚖️ 许可证

版权归2025年扬·普费弗所有

GoMLX 根据 Apache许可证第2.0版 进行分发。 除非另有明确说明,否则任何有意提交以纳入本项目的贡献,都将依据 Apache许可证第2.0版 进行许可,且不附加任何额外条款或条件。

版本历史

v0.27.22026/03/21
v0.27.12026/03/17
v0.27.02026/03/13
v0.26.02025/12/17
v0.25.02025/12/05
v0.24.12025/10/23
v0.24.02025/10/21
v0.23.22025/09/29
v0.23.12025/09/25
v0.23.02025/09/21
v0.22.12025/08/22
v0.21.12025/08/16
v0.21.02025/07/01
v0.20.12025/06/12
v0.20.02025/06/03
v0.19.52025/05/30
v0.19.42025/05/24
v0.19.32025/05/20
v0.19.22025/05/01
v0.19.12025/04/30

常见问题

相似工具推荐

openclaw

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

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

stable-diffusion-webui

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

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

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

ComfyUI

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

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

gemini-cli

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

100.8k|★★☆☆☆|2天前
插件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|★★☆☆☆|5天前
插件开发框架