anaksor-ocr
Sokheng · 工具包
这个模型从文档、收据和路牌照片里读取高棉语和英语文字,用一个检测器找文本行,再用识别器读每一行。适合需要在 Python 里做高棉语 OCR 的开发者。
一个音乐编码器,把 30 到 360 秒的整首歌转成帧级或整段级的数值特征。适合处理冻结嵌入的音乐 AI 研究者和开发者。
MERT-v2-FullSong 是一款工具包,属于研究类,由 Mindket 上架。可免费获取。当前为第 1 版,最近更新于 。在本页下载,是一个装着它全部文件的 zip 压缩包。这些文件不会自己运行。
python -m pip install torch==2.6.0 torchaudio==2.6.0 transformers==4.53.2 huggingface-hub safetensors soundfile
MERT-v2-FullSong 是 m-a-p 推出的双向音乐编码器,能处理 30 到 360 秒的整首歌曲。它把音频转成通用的音乐表示,可以按帧,也可以按整段录音。它在 MERT-v2-30s 的基础上继续预训练,并保持相同的特征接口。它有 632 million 参数、24 层、1,024 维,读取 24 kHz 单声道音频,频率为 25 Hz。
适合想用现成歌曲特征、而不是从零训练音频模型的音乐 AI 研究者和开发者。模型卡报告的是冻结编码器的结果,所以适合在它上面训练小模型的工作。
| Industry | Who uses it | How they use it | Example |
|---|---|---|---|
| 音乐研究 | 音乐信息检索研究者 | 提取特征并在上面训练小模型 | 在冻结的歌曲嵌入上搭一个分类器 |
| 音频软件 | 开发者 | 把一首曲子变成一个嵌入向量 | 用整段录音级的嵌入比较歌曲 |
| 学术 | 音频机器学习的学生 | 逐层研究编码器学到了什么 | 读取 24 个块各自的隐藏状态 |
如果你需要商用许可,可以跳过它。记录上的许可是非商用的。
它通过 Python 里标准的 Hugging Face transformers 库加载,流程与早期的 MERT 模型相同。
| Use case | Who | What they get back |
|---|---|---|
| 帧级特征 | 研究者 | 每个 25 Hz 帧对应一个 1,024 个数的向量 |
| 整段级嵌入 | 开发者 | 一段音频或一首歌对应一个 1,024 个数的向量 |
| 逐层检查 | 学生 | 24 个块各自独立的隐藏状态 |
你需要带 pip 的 Python。模型卡固定了 torch、torchaudio 和 transformers 的版本,所以请安装匹配的一套。
python -m pip install torch==2.6.0 torchaudio==2.6.0 transformers==4.53.2 huggingface-hub safetensors soundfile
pip install -U huggingface_hub hf download m-a-p/MERT-v2-FullSong
运行下面的脚本。它读取你文件的前 30 秒,混成单声道,重采样,然后在开启隐藏状态输出的情况下运行模型。想处理整首歌,就删掉切片这一步。
import soundfile as sf
import torch
import torchaudio.functional as AF
from transformers import AutoFeatureExtractor, AutoModel
repo = "m-a-p/MERT-v2-FullSong"
device = "cuda" if torch.cuda.is_available() else "cpu"
processor = AutoFeatureExtractor.from_pretrained(repo, trust_remote_code=True)
model = AutoModel.from_pretrained(repo, trust_remote_code=True).eval().to(device)
audio, sr = sf.read("music.wav", dtype="float32", always_2d=True)
audio = audio[:30 * sr].mean(axis=1) # First 30 seconds, mixed to mono.
waveform = AF.resample(torch.from_numpy(audio), sr, processor.sampling_rate)
inputs = processor(
waveform.numpy(), sampling_rate=processor.sampling_rate, return_tensors="pt",
).to(device)
with torch.inference_mode():
output = model(**inputs, output_hidden_states=True)
frames = output.last_hidden_state # [batch, frames, 1024], 25 Hz
layers = output.hidden_states # 24 tensors, one per block
mask = output.feature_attention_mask[..., None]
embedding = (frames * mask).sum(1) / mask.sum(1).clamp_min(1) # [batch, 1024]| Tool | What it does |
|---|---|
| last_hidden_state | 25 Hz、1,024 维的帧特征 |
| hidden_states | 24 个张量,每个块一个 |
| embedding | 每段录音一个平均后的向量 |
| AutoFeatureExtractor | 把音频处理成模型期望的采样率 |
你把脚本指向一个名为 music.wav 的歌曲文件。模型返回前 30 秒的一组帧特征、每个块各一个隐藏状态,以及一个 1,024 个数的嵌入,你可以保存它或交给分类器。
如果你是新手,编码器把声音变成描述它的一串数字。第一件小事,是在一个短音乐文件上运行上面的脚本,然后打印嵌入的形状。
如果你熟悉这个领域,这是一个从 30 秒版本继续预训练的双向编码器,所以在保持相同特征接口的同时带来了整首歌的上下文。第 1 块对应第一个隐藏状态,第 24 块对应最后一个。模型卡的 MARBLE 对比用的是冻结编码器。
模型卡统计了每个 MERT2 编码器在 MARBLE 上胜过最强外部基线的指标数。那里所有分数都乘以 100,越高越好。
一个音乐编码器,把 30 到 360 秒的整首歌转成帧级或整段级的数值特征。适合处理冻结嵌入的音乐 AI 研究者和开发者。
由 m-a-p 在 Hugging Face 上制作。这些说明是 Mindket 根据它的模型页面和模型卡写的,模型自己的文件和许可证在 Hugging Face 上。
它是什么:MERT-v2-FullSong 是 m-a-p 推出的双向音乐编码器,能处理 30 到 360 秒的整首歌曲。它把音频转成通用的音乐表示,可以按帧,也可以按整段录音。它在 MERT-v2-30s 的基础上继续预训练,并保持相同的特征接口。它有 632 million 参数、24 层、1,024 维,读取 24 kHz 单声道音频,频率为 25 Hz。
适合谁:适合想用现成歌曲特征、而不是从零训练音频模型的音乐 AI 研究者和开发者。模型卡报告的是冻结编码器的结果,所以适合在它上面训练小模型的工作。
Title: 谁会用它
Industry | Who uses it | How they use it | Example
音乐研究 | 音乐信息检索研究者 | 提取特征并在上面训练小模型 | 在冻结的歌曲嵌入上搭一个分类器
音频软件 | 开发者 | 把一首曲子变成一个嵌入向量 | 用整段录音级的嵌入比较歌曲
学术 | 音频机器学习的学生 | 逐层研究编码器学到了什么 | 读取 24 个块各自的隐藏状态
如果你需要商用许可,可以跳过它。记录上的许可是非商用的。
用在哪里:它通过 Python 里标准的 Hugging Face transformers 库加载,流程与早期的 MERT 模型相同。
Title: 它能做的事
Use case | Who | What they get back
帧级特征 | 研究者 | 每个 25 Hz 帧对应一个 1,024 个数的向量
整段级嵌入 | 开发者 | 一段音频或一首歌对应一个 1,024 个数的向量
逐层检查 | 学生 | 24 个块各自独立的隐藏状态
如何设置:你需要带 pip 的 Python。模型卡固定了 torch、torchaudio 和 transformers 的版本,所以请安装匹配的一套。
python -m pip install torch==2.6.0 torchaudio==2.6.0 transformers==4.53.2 huggingface-hub safetensors soundfile
pip install -U huggingface_hub
hf download m-a-p/MERT-v2-FullSong
如何使用:运行下面的脚本。它读取你文件的前 30 秒,混成单声道,重采样,然后在开启隐藏状态输出的情况下运行模型。想处理整首歌,就删掉切片这一步。
import soundfile as sf
import torch
import torchaudio.functional as AF
from transformers import AutoFeatureExtractor, AutoModel
repo = "m-a-p/MERT-v2-FullSong"
device = "cuda" if torch.cuda.is_available() else "cpu"
processor = AutoFeatureExtractor.from_pretrained(repo, trust_remote_code=True)
model = AutoModel.from_pretrained(repo, trust_remote_code=True).eval().to(device)
audio, sr = sf.read("music.wav", dtype="float32", always_2d=True)
audio = audio[:30 * sr].mean(axis=1) # First 30 seconds, mixed to mono.
waveform = AF.resample(torch.from_numpy(audio), sr, processor.sampling_rate)
inputs = processor(
waveform.numpy(), sampling_rate=processor.sampling_rate, return_tensors="pt",
).to(device)
with torch.inference_mode():
output = model(**inputs, output_hidden_states=True)
frames = output.last_hidden_state # [batch, frames, 1024], 25 Hz
layers = output.hidden_states # 24 tensors, one per block
mask = output.feature_attention_mask[..., None]
embedding = (frames * mask).sum(1) / mask.sum(1).clamp_min(1) # [batch, 1024]
Title: 脚本返回什么
Tool | What it does
last_hidden_state | 25 Hz、1,024 维的帧特征
hidden_states | 24 个张量,每个块一个
embedding | 每段录音一个平均后的向量
AutoFeatureExtractor | 把音频处理成模型期望的采样率
示例:你把脚本指向一个名为 music.wav 的歌曲文件。模型返回前 30 秒的一组帧特征、每个块各一个隐藏状态,以及一个 1,024 个数的嵌入,你可以保存它或交给分类器。
新手与专家:如果你是新手,编码器把声音变成描述它的一串数字。第一件小事,是在一个短音乐文件上运行上面的脚本,然后打印嵌入的形状。
如果你熟悉这个领域,这是一个从 30 秒版本继续预训练的双向编码器,所以在保持相同特征接口的同时带来了整首歌的上下文。第 1 块对应第一个隐藏状态,第 24 块对应最后一个。模型卡的 MARBLE 对比用的是冻结编码器。
读取音乐文件并转成单声道
重采样到模型的采样率
编码器生成帧特征
把帧平均成一个嵌入
注意事项:模型卡统计了每个 MERT2 编码器在 MARBLE 上胜过最强外部基线的指标数。那里所有分数都乘以 100,越高越好。
Title: MARBLE 上领先的指标数,共 15 个
MERT2-30s: 14 metrics
MERT2-FS full-song: 13 metrics
用 Hugging Face 的命令行下载它的文件:
pip install -U huggingface_hub
hf download m-a-p/MERT-v2-FullSong
然后按它的模型卡使用它。这个工具包里没有会自己运行的东西。
README.md 7 KB
同一分类里与本产品共有标签最多的已上架 Hugging Face 模型。
| 产品 | 最近 30 天下载 | 点赞 | 参数量 | 许可证 | 最近更新 |
|---|---|---|---|---|---|
| MERT-v2-FullSong 本页 | 13,790 | 57 | 632M | cc-by-nc-4.0 | |
| caramel-1共有 audio · safetensors | 89 | 14 | 413M | apache-2.0 | |
| VideoJev-4B共有 feature-extraction · transformers · safetensors | 8,518 | 31 | 4.5B | apache-2.0 | |
| MOSS-VL-Realtime共有 feature-extraction · transformers · safetensors | 1,934 | 117 | 11.3B | apache-2.0 | |
| LeVJEPA 1.5 Large共有 feature-extraction · transformers · safetensors | 269 | 18 | 303M | cc-by-nc-4.0 | |
| MANTA-27B共有 feature-extraction · transformers · safetensors | 46 | 4 | 27.5B | apache-2.0 |
Sokheng · 工具包
这个模型从文档、收据和路牌照片里读取高棉语和英语文字,用一个检测器找文本行,再用识别器读每一行。适合需要在 Python 里做高棉语 OCR 的开发者。
Qwen · 工具包
Qwen2.5-7B-Instruct 的 GGUF 文件,提供八种量化大小,可通过 llama.cpp 在本地聊天。适合想在自己电脑上用 7.6B 强力模型、又不想搭 Python 环境的人。
ACE-Step · 工具包
用 4B 扩散解码器根据文字生成音乐,50 步并带引导控制,音频质量高于基础版。适合拥有 12 GB 或更多显存 GPU 的创作者。
AbdomenAtlas · 工具包
在 CT 扫描上检测并勾画 9 个器官的肿瘤,使用从放射学报告中学习的 R-Super 方法训练。这是面向医学影像团队的研究模型,采用非商业许可。
dBenf · 工具包
回答关于卫星图像块的类型化问题,使用 Sentinel-2 的全部 12 个波段,为每个选项返回概率,不生成文字。这是 Qwen3.5-0.8B 的微调版本,适合地球观测研究者。
zimmerk4 · 工具包
用一个在 JAX 物理模拟器里学会的小型策略网络,从头到尾通关游戏 Getting Over It。适合强化学习研究者和好奇的动手爱好者。