recognize-anything

GitHub
3.6k 325 简单 1 次阅读 2天前Apache-2.0图像其他
AI 解读 由 AI 自动生成,仅供参考

recognize-anything 是一个开源且强大的基础图像识别模型系列,旨在让计算机像人类一样精准地“看懂”图片内容。它主要解决了传统模型只能识别有限预设类别、难以应对未知物体或复杂场景的痛点,实现了对常见类别及多样化开放集类别的高精度识别。

该工具非常适合开发者、研究人员以及需要处理大量图像数据的设计师使用。无论是构建智能相册、开发视觉搜索应用,还是进行多模态学术研究,recognize-anything 都能提供可靠的技术支持。普通用户也可通过其在线演示轻松体验给图片自动打标签的乐趣。

其核心技术亮点在于推出了新一代 RAM++ 模型,不仅在零样本(zero-shot)场景下超越了现有的主流模型,还能同时处理预定义类别和未知的开放集类别。此外,项目包含的 Tag2Text 模型创新性地将图像 tagging(打标签)与 captioning(生成描述)相结合,并能与 Grounding-DINO、SAM 等定位模型联动,形成强大的视觉语义分析流水线,为深入理解图像内容提供了全新方案。

使用场景

某电商运营团队每天需处理数万张用户上传的商品实拍图,以便快速生成搜索标签和商品描述。

没有 recognize-anything 时

  • 依赖人工打标签,效率极低且容易因疲劳导致漏标或错标常见品类(如“连衣裙”、“运动鞋”)。
  • 面对用户拍摄的冷门或新颖商品(开放集类别),传统模型完全无法识别,导致大量长尾商品无法被检索。
  • 生成的商品描述过于通用,缺乏对画面中具体物体交互(如“人手持咖啡杯”)的精准语义分析。
  • 想要实现精细化的局部定位(如自动抠图或框选特定商品),需要串联多个独立模型,开发维护成本高昂。
  • 数据标注周期长达数周,严重拖慢新品上架速度和营销活动的响应节奏。

使用 recognize-anything 后

  • RAM++ 模型自动高精度识别所有常见品类,将打标效率提升百倍,释放人力专注于创意策划。
  • 凭借强大的零样本泛化能力,轻松识别从未见过的“开放集”新奇商品,确保全量商品均可被搜索命中。
  • 结合 Tag2Text 能力,直接输出包含详细物体交互关系的自然语言描述,显著提升商品详情页的可读性。
  • 通过与 Grounding-DINO 等模型联动,一键完成从标签识别到物体精准定位的完整流程,大幅降低工程复杂度。
  • 新品图片上传即完成结构化处理,上架周期从数周缩短至分钟级,迅速响应市场热点。

recognize-anything 通过统一的强基座模型,彻底解决了图像识别中常见类别与开放集类别难以兼顾的痛点,实现了从“看图”到“懂图”的质变。

运行环境要求

GPU

未说明(模型基于 Swin-Large 骨干网络,通常推理需要支持 CUDA 的 NVIDIA GPU,显存建议 8GB+ 以加载大模型)

内存

未说明

依赖
notesREADME 中未直接列出具体的运行环境配置(如 OS、Python 版本、依赖库列表)。该项目提供 RAM++、RAM 和 Tag2Text 模型,其中 RAM++ 和 RAM 使用 Swin-Large 作为骨干网络。用户需手动创建 'pretrained' 文件夹并下载检查点文件。项目提供了 Colab 和 Bohrium 的在线演示链接,暗示其可在云端 GPU 环境运行。具体依赖需参考项目代码库中的 requirements.txt 或安装脚本。
python未说明
recognize-anything hero image

快速开始

:label: 识别任何事物模型

本项目旨在开发一系列开源且强大的基础图像识别模型。

训练数据集 标签列表 Web演示 在Colab中打开 在Bohrium中打开

  • 识别任何事物增强版模型(RAM++) [论文]

    RAM++ 是 RAM 的下一代模型,能够以高精度识别任意类别,包括预定义的常见类别和多样化的开放集类别。

  • 识别任何事物模型(RAM) [论文][演示]

    RAM 是一个图像标注模型,能够以高精度识别任何常见类别。

    RAM 已被 CVPR 2024 多模态基础模型研讨会 接受。

  • Tag2Text(ICLR 2024) [论文][演示]

    Tag2Text 是一种由标注引导的视觉语言模型,能够同时支持标注和全面的图文描述。

    Tag2Text 已被 ICLR 2024 接受!维也纳见!

:bulb: 亮点

卓越的图像识别能力

RAM++ 在常见标签类别、不常见标签类别以及人与物体交互短语方面,均优于现有的最先进基础图像识别模型。

零样本图像识别性能对比。

强大的视觉语义分析能力

我们已将 Tag2Text 和 RAM 与定位模型(Grounding-DINO 和 SAM)相结合,在 Grounded-SAM 项目中开发出一套强大的视觉语义分析流水线。

:sunrise: 模型动物园

RAM++

RAM++ 是 RAM 的下一代版本,能够以高精度识别任何类别,包括预定义的常见类别以及多样化的开放集类别。

  • 针对常见预定义类别。 RAM++ 具备强大的零样本泛化能力,展现出卓越的图像标注能力,其性能与 RAM 保持一致。
  • 针对多样化的开放集类别。 RAM++ 在 CLIP 和 RAM 的基础上实现了显著提升。

(绿色表示完全监督学习,其他颜色表示零样本性能。)

RAM++ 在开放集类别识别方面表现出显著提升。

RAM

RAM 是一款强大的图像标注模型,能够以高精度识别任何常见类别。

  • 强大且通用。 RAM 具备出色的零样本泛化能力;
    • RAM 展现出令人印象深刻的零样本性能,显著优于 CLIP 和 BLIP。
    • RAM 甚至超越了完全监督的方法(ML-Decoder)。
    • RAM 的性能与 Google 标注 API 相当。
  • 可复现且经济实惠。 RAM 使用开源且无需标注的数据集,复现成本较低;
  • 灵活且多功能。 RAM 具有极高的灵活性,适用于多种应用场景。

(绿色表示完全监督学习,蓝色表示零样本性能。)

RAM 在 Tag2text 框架的基础上显著提升了标注能力。

  • 准确性。 RAM 利用数据引擎生成额外的标注并清理错误标注,相比 Tag2Text 准确性更高。
  • 覆盖范围。 RAM 将固定标签的数量从 3,400 多个提升至 6,400+ 个(经过同义词归并后为 4,500 多个不同的语义标签),覆盖了更多有价值的类别。 此外,RAM 还具备开放集能力,能够识别训练过程中未出现过的标签。
Tag2text

Tag2Text 是一个高效且可控的视觉-语言模型,具有标注引导功能。

  • 标注。 Tag2Text 能够识别 3,400+ 种人类常用类别,无需人工标注。
  • 描述生成。 Tag2Text 将标签信息作为引导元素融入文本生成中,从而产生更可控、更全面的描述
  • 检索。 Tag2Text 提供标签作为额外的可见对齐指标,用于图像-文本检索。

Tag2Text 在标注引导下生成更全面的描述。

Tag2Text 提供标签作为额外的可见对齐指标。

:open_book: 训练数据集

图像文本与标签

这些标注文件来自 Tag2TextRAM。Tag2Text 会自动从图像-文本对中提取图像标签。而 RAM 则通过自动化数据引擎进一步扩充标签和文本内容。

数据集 大小 图像 文本 标签
COCO 168 MB 113K 680K 3.2M
VG 55 MB 100K 923K 2.7M
SBU 234 MB 849K 1.7M 7.6M
CC3M 766 MB 2.8M 5.6M 28.2M
CC3M-val 3.5 MB 12K 26K 132K

CC12M 将在下一次更新中发布。

LLM 标签描述

这些标签描述文件来自 RAM++,通过调用 GPT API 生成。您也可以使用 generate_tag_des_llm.py 自定义任何标签类别。

标签描述 标签列表
RAM 标签列表 4,585
OpenImages 罕见标签 200

:toolbox: 检查点

注意:您需要创建一个名为 'pretrained' 的文件夹,并将这些检查点下载到该文件夹中。

名称 骨干网络 数据集 说明 检查点
1 RAM++ (14M) Swin-Large COCO、VG、SBU、CC3M、CC3M-val、CC12M 为任意类别提供强大的图像标注能力。 下载链接
2 RAM (14M) Swin-Large COCO、VG、SBU、CC3M、CC3M-val、CC12M 为常见类别提供强大的图像标注能力。 下载链接
3 Tag2Text (14M) Swin-Base COCO、VG、SBU、CC3M、CC3M-val、CC12M 支持全面的图像描述与标注。 下载链接

:running: 模型推理

设置步骤

  1. 创建并激活 Conda 环境:
conda create -n recognize-anything python=3.8 -y
conda activate recognize-anything
  1. 安装 recognize-anything 包:
pip install git+https://github.com/xinyu1205/recognize-anything.git
  1. 或者,如果您需要进行开发,可以从源代码构建:
git clone https://github.com/xinyu1205/recognize-anything.git
cd recognize-anything
pip install -e .

之后,您就可以在其他项目中导入 RAM++、RAM 和 Tag2Text 模型:

from ram.models import ram_plus, ram, tag2text

RAM++ 推理

获取图像的英文和中文输出:

python inference_ram_plus.py --image images/demo/demo1.jpg --pretrained pretrained/ram_plus_swin_large_14m.pth

输出将如下所示:

Image Tags:  armchair | blanket | lamp | carpet | couch | dog | gray | green | hassock | home | lay | living room | picture frame | pillow | plant | room | wall lamp | sit | wood floor
图像标签:  扶手椅  | 毯子/覆盖层 | 灯  | 地毯  | 沙发 | 狗 | 灰色 | 绿色  | 坐垫/搁脚凳/草丛 | 家/住宅 | 躺  | 客厅  | 相框  | 枕头  | 植物  | 房间  | 壁灯  | 坐/放置/坐落 | 木地板

RAM++ 在未见类别上的推理(开放集)

  1. 获取图像的 OpenImages-罕见类别

我们已在 openimages_rare_200_llm_tag_descriptions 中发布了 OpenImages-罕见类别的 LLM 标签描述。

python inference_ram_plus_openset.py  --image images/openset_example.jpg 
--pretrained pretrained/ram_plus_swin_large_14m.pth
--llm_tag_des datasets/openimages_rare_200/openimages_rare_200_llm_tag_descriptions.json

输出将如下所示:

图像标签: 特写 | 小型车 | 卡丁车 | 赛马 | 运动型多用途车 | 跑车
  1. 您也可以通过标签描述自定义任何要识别的类别:

修改 categories,并调用 GPT API 生成相应的标签描述:

python generate_tag_des_llm.py 
--openai_api_key '您的 OpenAI API 密钥'
--output_file_path datasets/openimages_rare_200/openimages_rare_200_llm_tag_descriptions.json

RAM 推理

获取图像的英文和中文输出:

python inference_ram.py  --image images/demo/demo1.jpg 
--pretrained pretrained/ram_swin_large_14m.pth

输出将如下所示:

图像标签: 扶手椅 | 毯子 | 灯 | 地毯 | 沙发 | 狗 | 地板 | 家具 | 灰色 | 绿色 | 客厅 | 相框 | 枕头 | 植物 | 房间 | 坐 | 凳子 | 木地板
图像标签: 扶手椅 | 毯子/覆盖层 | 灯 | 地毯 | 沙发 | 狗 | 地板/地面 | 家具 | 灰色 | 绿色 | 客厅 | 相框 | 枕头 | 植物 | 房间 | 坐/放置/坐落 | 凳子 | 木地板
RAM 在未见类别上的推理(开放集)

首先,在 build_openset_label_embedding 中自定义识别类别,然后获取图像的标签:

python inference_ram_openset.py  --image images/openset_example.jpg 
--pretrained pretrained/ram_swin_large_14m.pth

输出将如下所示:

图像标签: 黑白 | 卡丁车
Tag2Text 推理

获取标记和标题生成结果:

python inference_tag2text.py  --image images/demo/demo1.jpg 
--pretrained pretrained/tag2text_swin_14m.pth
或者获取标记及指定标题生成结果(可选):

python inference_tag2text.py  --image images/demo/demo1.jpg 
--pretrained pretrained/tag2text_swin_14m.pth
--specified-tags "云,天空"

批量推理与评估

我们发布了两个数据集 OpenImages-common(214 个常见标签类别)和 OpenImages-rare(200 个罕见标签类别)。请将 OpenImages v6 的测试图像复制或符号链接到 datasets/openimages_common_214/imgs/datasets/openimages_rare_200/imgs

OpenImages-common 数据集上评估 RAM++:

python batch_inference.py \
  --model-type ram_plus \
  --checkpoint pretrained/ram_plus_swin_large_14m.pth \
  --dataset openimages_common_214 \
  --output-dir outputs/ram_plus

OpenImages-rare 数据集上评估 RAM++ 的开放集能力:

python batch_inference.py \
  --model-type ram_plus \
  --checkpoint pretrained/ram_plus_swin_large_14m.pth \
  --open-set \
  --dataset openimages_rare_200 \
  --output-dir outputs/ram_plus_openset

OpenImages-common 数据集上评估 RAM:

python batch_inference.py \
  --model-type ram \
  --checkpoint pretrained/ram_swin_large_14m.pth \
  --dataset openimages_common_214 \
  --output-dir outputs/ram

OpenImages-rare 数据集上评估 RAM 的开放集能力:

python batch_inference.py \
  --model-type ram \
  --checkpoint pretrained/ram_swin_large_14m.pth \
  --open-set \
  --dataset openimages_rare_200 \
  --output-dir outputs/ram_openset

OpenImages-common 数据集上评估 Tag2Text:

python batch_inference.py \
  --model-type tag2text \
  --checkpoint pretrained/tag2text_swin_14m.pth \
  --dataset openimages_common_214 \
  --output-dir outputs/tag2text

更多选项请参阅 batch_inference.py。若需获得 RAM 论文表 3 中的 P/R 值,对于 RAM 请传递 --threshold=0.86,对于 Tag2Text 则传递 --threshold=0.68

如需对自定义图像进行批量推理,您可以参照上述两个数据集自行设置数据集。

:golfing: 模型训练/微调

RAM++

  1. 下载 RAM 训练数据集,其中每个 JSON 文件包含一个列表。列表中的每个条目是一个字典,包含三个键值对:{'image_path': 图像路径, 'caption': 图像描述文本, 'union_label_id': 用于标注的图像标签,包括解析标签和伪标签}。

  2. 在 ram/configs/pretrain.yaml 中,将 'train_file' 设置为这些 JSON 文件的路径。

  3. 准备 预训练的 Swin-Transformer,并在 ram/configs/swin 中设置 'ckpt'。

  4. 下载 RAM++ 冻结标签嵌入文件 “ram_plus_tag_embedding_class_4585_des_51.pth”,并将其放置在 "ram/data/frozen_tag_embedding/ram_plus_tag_embedding_class_4585_des_51.pth"。

  5. 使用 8 张 A100 GPU 对模型进行预训练:

python -m torch.distributed.run --nproc_per_node=8 pretrain.py \
  --model-type ram_plus \
  --config ram/configs/pretrain.yaml  \
  --output-dir outputs/ram_plus
  1. 使用 8 张 A100 GPU 对预训练检查点进行微调:
python -m torch.distributed.run --nproc_per_node=8 finetune.py \
  --model-type ram_plus \
  --config ram/configs/finetune.yaml  \
  --checkpoint outputs/ram_plus/checkpoint_04.pth \
  --output-dir outputs/ram_plus_ft
RAM
  1. 下载 RAM 训练数据集,其中每个 JSON 文件包含一个列表。列表中的每个条目是一个字典,包含四个键值对:{'image_path': 图像路径, 'caption': 图像描述文本, 'union_label_id': 用于标注的图像标签,包括解析标签和伪标签, 'parse_label_id': 从图像描述中解析出的标签}。

  2. 在 ram/configs/pretrain.yaml 中,将 'train_file' 设置为这些 JSON 文件的路径。

  3. 准备 预训练的 Swin-Transformer,并在 ram/configs/swin 中设置 'ckpt'。

  4. 下载 RAM 冻结标签嵌入文件 “ram_tag_embedding_class_4585.pth”,并将其放置在 "ram/data/frozen_tag_embedding/ram_tag_embedding_class_4585.pth"。

  5. 使用 8 张 A100 GPU 对模型进行预训练:

python -m torch.distributed.run --nproc_per_node=8 pretrain.py \
  --model-type ram \
  --config ram/configs/pretrain.yaml  \
  --output-dir outputs/ram
  1. 使用 8 张 A100 GPU 对预训练检查点进行微调:
python -m torch.distributed.run --nproc_per_node=8 finetune.py \
  --model-type ram \
  --config ram/configs/finetune.yaml  \
  --checkpoint outputs/ram/checkpoint_04.pth \
  --output-dir outputs/ram_ft
Tag2Text
  1. 下载 RAM 训练数据集,其中每个 JSON 文件包含一个列表。列表中的每个条目是一个字典,包含三个键值对:{'image_path': 图像路径, 'caption': 图像描述文本, 'parse_label_id': 从图像描述中解析出的标签}。

  2. 在 ram/configs/pretrain_tag2text.yaml 中,将 'train_file' 设置为这些 JSON 文件的路径。

  3. 准备 预训练的 Swin-Transformer,并在 ram/configs/swin 中设置 'ckpt'。

  4. 使用 8 张 A100 GPU 对模型进行预训练:

python -m torch.distributed.run --nproc_per_node=8 pretrain.py \
  --model-type tag2text \
  --config ram/configs/pretrain_tag2text.yaml  \
  --output-dir outputs/tag2text
  1. 使用 8 张 A100 GPU 对预训练检查点进行微调:
python -m torch.distributed.run --nproc_per_node=8 finetune.py \
  --model-type tag2text \
  --config ram/configs/finetune_tag2text.yaml  \
  --checkpoint outputs/tag2text/checkpoint_04.pth \
  --output-dir outputs/tag2text_ft

:black_nib: 引用

如果您认为我们的工作对您的研究有所帮助,请考虑引用。

@article{huang2023open,
  title={开放集图像标注与多粒度文本监督},
  author={黄鑫宇、黄义杰、张友才、田伟伟、冯锐、张跃杰、谢延春、李雅倩、张磊},
  journal={arXiv 预印本},
  pages={arXiv--2310},
  year={2023}
}

@article{zhang2023recognize,
  title={识别一切:强大的图像标注模型},
  author={张友才、黄鑫宇、马金宇、李兆阳、罗赵川、谢延春、秦宇卓、罗彤、李雅倩、刘士龙等},
  journal={arXiv 预印本 arXiv:2306.03514},
  year={2023}
}

@article{huang2023tag2text,
  title={Tag2Text:通过图像标注引导视觉-语言模型},
  author={黄鑫宇、张友才、马金宇、田伟伟、冯锐、张跃杰、李雅倩、郭彦东、张磊},
  journal={arXiv 预印本 arXiv:2303.05657},
  year={2023}
}

:hearts: 致谢

这项工作得益于 BLIP 令人惊叹的代码库,在此表示衷心感谢!

我们还要感谢 @Cheng Rui、@Shilong Liu 和 @Ren Tianhe 在 将 RAM/Tag2Text 与 Grounded-SAM 结合方面提供的帮助。

此外,我们也感谢 Ask-AnythingPrompt-can-anything 将 RAM/Tag2Text 结合起来,这极大地扩展了 RAM/Tag2Text 的应用范围。

常见问题

相似工具推荐

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

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|★★☆☆☆|昨天
插件Agent图像

LLMs-from-scratch

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

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

Deep-Live-Cam

Deep-Live-Cam 是一款专注于实时换脸与视频生成的开源工具,用户仅需一张静态照片,即可通过“一键操作”实现摄像头画面的即时变脸或制作深度伪造视频。它有效解决了传统换脸技术流程繁琐、对硬件配置要求极高以及难以实时预览的痛点,让高质量的数字内容创作变得触手可及。 这款工具不仅适合开发者和技术研究人员探索算法边界,更因其极简的操作逻辑(仅需三步:选脸、选摄像头、启动),广泛适用于普通用户、内容创作者、设计师及直播主播。无论是为了动画角色定制、服装展示模特替换,还是制作趣味短视频和直播互动,Deep-Live-Cam 都能提供流畅的支持。 其核心技术亮点在于强大的实时处理能力,支持口型遮罩(Mouth Mask)以保留使用者原始的嘴部动作,确保表情自然精准;同时具备“人脸映射”功能,可同时对画面中的多个主体应用不同面孔。此外,项目内置了严格的内容安全过滤机制,自动拦截涉及裸露、暴力等不当素材,并倡导用户在获得授权及明确标注的前提下合规使用,体现了技术发展与伦理责任的平衡。

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