轩辕镜像
轩辕镜像专业版
个人中心搜索镜像
交易
充值流量我的订单
工具
工单支持镜像收录Run 助手IP 归属地密码生成Npm 源Pip 源
帮助
常见问题我要吐槽
其他
关于我们网站地图

官方QQ群: 13763429

轩辕镜像
镜像详情
lintoai/linto-diarization-simple
官方博客使用教程热门镜像工单支持
本站面向开发者与科研用户,提供开源镜像的搜索和下载加速服务。
所有镜像均来源于原始开源仓库,本站不存储、不修改、不传播任何镜像内容。
轩辕镜像 - 国内开发者首选的专业 Docker 镜像下载加速服务平台 - 官方QQ群:13763429 👈点击免费获得技术支持。
本站面向开发者与科研用户,提供开源镜像的搜索和下载加速服务。所有镜像均来源于原始开源仓库,本站不存储、不修改、不传播任何镜像内容。

本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com

linto-diarization-simple Docker 镜像下载 - 轩辕镜像

linto-diarization-simple 镜像详细信息和使用指南

linto-diarization-simple 镜像标签列表和版本信息

linto-diarization-simple 镜像拉取命令和加速下载

linto-diarization-simple 镜像使用说明和配置指南

Docker 镜像加速服务 - 轩辕镜像平台

国内开发者首选的 Docker 镜像加速平台

极速拉取 Docker 镜像服务

相关 Docker 镜像推荐

热门 Docker 镜像下载

linto-diarization-simple
lintoai/linto-diarization-simple

linto-diarization-simple 镜像详细信息

linto-diarization-simple 镜像标签列表

linto-diarization-simple 镜像使用说明

linto-diarization-simple 镜像拉取命令

Docker 镜像加速服务

轩辕镜像平台优势

镜像下载指南

相关 Docker 镜像推荐

LinTO-diarization是LinTO的说话人分离服务,可猜测说话人数,若提供语音样本还能识别说话人,支持作为独立HTTP服务或微服务部署。
0 次下载activelintoai镜像
🚀轩辕镜像专业版更稳定💎一键安装 Docker 配置镜像源
中文简介版本下载
🚀轩辕镜像专业版更稳定💎一键安装 Docker 配置镜像源

linto-diarization-simple 镜像详细说明

linto-diarization-simple 使用指南

linto-diarization-simple 配置说明

linto-diarization-simple 官方文档

LinTO-diarization

LinTO-diarization是LinTO的说话人分离服务,具备猜测说话人数的能力,若提供目标说话人的语音样本,还可进行说话人识别。该服务既可作为独立的说话人分离服务使用,也可部署为微服务。

  • 前提条件
  • 部署
    • HTTP服务
    • 微服务
  • 使用方法
    • HTTP API
      • /healthcheck
      • /diarization
      • /docs
    • 使用Celery
  • 许可证

前提条件

Docker环境

此Docker镜像基于_nvidia/cuda:12.3.2-runtime-ubuntu22.04_构建

分离服务需要Docker环境正常运行。

若需启用GPU功能,还需安装nvidia-container-toolkit。

使用GPU时,每个工作进程消耗的显存约为1GB。

(微服务)消息代理和共享文件夹

任务模式下,分离服务的唯一入口是发布到Redis消息代理的任务。此外,为避免大型音频文件通过消息代理传输,分离服务使用挂载到/opt/audio的共享存储文件夹。

部署

linto-diarization支持两种部署方式:

  • 作为独立服务,通过HTTP API提供说话人分离功能
  • 作为连接到消息代理的微服务

1- 第一步:构建或拉取镜像

git clone [***]
cd linto-diarization
docker build . -t linto-diarization-simple:latest -f simple/Dockerfile

或

docker pull lintoai/linto-diarization-simple

若需启用说话人识别,需运行Qdrant:

docker run \
    -p 6333:6333 \  # Qdrant默认端口
    -v ./qdrant_storage:/qdrant/storage:z \
    qdrant/qdrant

HTTP服务

1- 配置.env文件

simple/.envdefault提供了.env文件示例。

环境变量参数:

变量名描述示例
SERVING_MODE(必填)指定启动模式http
CONCURRENCY主工作进程之外的额外工作进程数0 | 1 | 2 | ...
DEVICE嵌入模型使用的设备(默认:若GPU/CUDA可用则使用,否则使用CPU)cpu | cuda | cuda:0
DEVICE_CLUSTERING聚类使用的设备(默认与DEVICE相同)cpu | cuda | cuda:0
DEVICE_IDENTIFICATION说话人识别(若启用)使用的设备(默认与DEVICE相同)cpu | cuda | cuda:0
NUM_THREADSCPU运行任务的最大线程数1 | 4 | ...
CUDA_VISIBLE_DEVICES使用GPU/CUDA时的设备索引。多GPU机器建议同时设置CUDA_DEVICE_ORDER=PCI_BUS_ID0 | 1 | 2 | ...
SPEAKER_SAMPLES_FOLDER(默认:/opt/speaker_samples)目标说话人语音样本文件所在文件夹/path/to/folder
SPEAKER_PRECOMPUTED_FOLDER(默认:/opt/speaker_precomputed)存储预计算说话人嵌入向量的文件夹/path/to/folder
QDRANT_HOSTQdrant实例的主机地址localhost
QDRANT_PORTQdrant实例的端口号6333
QDRANT_COLLECTIONQdrant中存储嵌入向量的集合名称speaker_embeddings
QDRANT_RECREATE_COLLECTION是否重建集合,或使用挂载卷中的现有集合true

2- 运行容器

以下命令启动容器,提供绑定到主机<HOST_SERVING_PORT>端口(如8080)的HTTP API:

docker run --rm \
-v <SHARED_FOLDER>:/opt/audio \
-p <HOST_SERVING_PORT>:80 \
--env-file .env \
linto-diarization-simple:latest

若需启用说话人识别,需提供目标说话人的语音样本:样本可放在以说话人名称命名的独立文件夹中,或命名为说话人名称的独立文件中。然后将样本的父文件夹作为卷挂载到容器的/opt/speaker_samples(或通过SPEAKER_SAMPLES_FOLDER环境变量自定义的文件夹):

docker run ... -v </path/to/speaker/samples/folder>:/opt/speaker_samples

启用说话人识别时,若要使用挂载到Qdrant容器卷中的现有集合,可设置环境变量QDRANT_RECREATE_COLLECTION=false,避免每次启动容器时的初始化时间。

如需启用GPU功能,可添加--gpus all参数;若有多块GPU,可设置CUDA_VISIBLE_DEVICES指定使用的GPU索引。

使用Celery

LinTO-diarization可作为微服务使用Celery部署。这种方式下,容器启动Celery工作进程,等待消息代理上的分离任务。

需在SERVICES_BROKER地址运行消息代理。

1- 配置.env文件

simple/.envdefault提供了.env文件示例。

环境变量参数: 参数与HTTP API相同,新增以下参数:

变量名描述示例
SERVING_MODE(必填)指定启动模式task
SERVICES_BROKER消息代理URIredis://my_redis_broker:6379
BROKER_PASS消息代理密码(无密码则留空)my_password
QUEUE_NAME覆盖生成的队列名称(见下文队列名称)my_queue
SERVICE_NAME服务名称diarization-ml
LANGUAGEBCP-47语言代码en-US 或 * 或用|分隔的多种语言
MODEL_INFO模型的人类可读描述Multilingual diarization model

2- 配置docker-compose.yml

#docker-compose.yml

version: '3.7'

services:
  punctuation-service:
    image: linto-diarization-simple:latest
    volumes:
      - /path/to/shared/folder:/opt/audio
    env_file: .env
    deploy:
      replicas: 1
    networks:
      - your-net

networks:
  your-net:
    external: true

3- 使用docker compose启动

docker stack deploy --resolve-image always --compose-file docker-compose.yml your_stack

队列名称:

默认服务队列名称为SERVICE_NAME。可通过QUEUE_NAME环境变量覆盖。

服务发现:

作为微服务时,实例会在服务注册中心注册自身信息以供发现。服务信息以JSON对象形式存储在Redis的db0中,键为service:{HOST_NAME}。

注册信息如下:

{
  "service_name": $SERVICE_NAME,
  "host_name": $HOST_NAME,
  "service_type": "diarization",
  "service_language": $LANGUAGE,
  "queue_name": $QUEUE_NAME,
  "version": "1.2.0",  # 此仓库版本
  "info": $MODEL_INFO,
  "last_alive": 65478213,
  "concurrency": 1
}

使用方法

HTTP API

/healthcheck

返回API状态

方法:GET

健康检查通过时返回"1"。

/diarization

说话人分离API。

输入参数:

  • file:WAV音频文件
  • speaker_count:(整数,可选)说话人数。若为空,分离服务将自动聚类。
  • max_speaker:(整数,可选)说话人数未知时的最大说话人数。
  • speaker_names:(字符串,可选)目标说话人名称列表,用于说话人识别(仅提供说话人样本时可用)。可能值:
    • 空字符串"":不进行说话人识别
    • 通配符"*":对所有说话人进行识别
    • JSON格式的说话人名称列表(如:"["speaker1", ..., "speakerN"]")或用"|"分隔的列表(如:"speaker1|...|speakerN"):仅对列出的说话人进行识别

响应(application/json)为以下结构的JSON对象:

{
  "speakers": [
      {"spk_id": "spk5", "duration": 2.2, "nbr_seg": 1},
      ...
  ],
  "segments": [
      {"seg_id": 1, "spk_id": "spk5", "seg_begin": 0.0, "seg_end": 2.2},
      ...
  ]
}

/docs

/docs路由提供OpenAPI/swagger接口文档。

通过消息代理

分离工作进程接受包含以下参数的请求:

  • file:(字符串)共享文件夹中的文件相对路径。
  • speaker_count:(整数,默认None)固定说话人数。
  • max_speaker:(整数,默认None)说话人数未知时的最大说话人数。
  • speaker_names:(字符串,默认None)目标说话人名称列表,用于说话人识别(仅提供说话人样本时可用)。可能值:
    • 空字符串"":不进行说话人识别
    • 通配符"*":对所有说话人进行识别
    • JSON格式的说话人名称列表(如:"["speaker1", ..., "speakerN"]")或用"|"分隔的列表(如:"speaker1|...|speakerN"):仅对列出的说话人进行识别

返回格式

成功分离后返回以下结构的JSON对象:

{
  "speakers": [
      {"spk_id": "spk5", "duration": 2.0, "nbr_seg": 1},
      ...
  ],
  "segments": [
      {"seg_id": 1, "spk_id": "spk5", "seg_begin": 0.0, "seg_end": 2.0},
      ...
  ]
}
  • speakers字段包含说话人数组,每个说话人有总时长和段数。
  • segments字段包含每个音频段,包含段ID、说话人ID、开始时间和结束时间。

测试

Curl

可使用以下curl命令测试HTTP API:

curl -X POST "[***]" -H  "accept: application/json" -H  "Content-Type: multipart/form-data" -F "file=@YOUR_FILE.wav;type=audio/x-wav" -F "speaker_count=NUMBER_OF_SPEAKERS"

许可证

本项目基于AGPLv3许可证开发(见LICENSE)。

致谢

  • cvqluu/simple_diarizer 分离框架(许可证GPL v3)。
  • tango4j/Auto-Tuning-Spectral-Clustering 自动调谐谱聚类(许可证MIT)。
  • desh2608/diarizer 多种分离方法。
查看更多 linto-diarization-simple 相关镜像 →
lintoai/linto-stt-kaldi logo
lintoai/linto-stt-kaldi
by lintoai
LinTO-STT-Kaldi是基于Kaldi训练模型的自动语音识别(ASR)API,支持作为独立转录服务或通过消息代理连接器部署于微服务架构,提供离线及实时转录功能。
150K+ pulls
上次更新:1 个月前

常见问题

轩辕镜像免费版与专业版有什么区别?

免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。

轩辕镜像免费版与专业版有分别支持哪些镜像?

免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。

流量耗尽错误提示

当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。

410 错误问题

通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。

manifest unknown 错误

先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。

镜像拉取成功后,如何去掉轩辕镜像域名前缀?

使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。

查看全部问题→

轩辕镜像下载加速使用手册

探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式

🔐

登录方式进行 Docker 镜像下载加速教程

通过 Docker 登录方式配置轩辕镜像加速服务,包含7个详细步骤

🐧

Linux Docker 镜像下载加速教程

在 Linux 系统上配置轩辕镜像源,支持主流发行版

🖥️

Windows/Mac Docker 镜像下载加速教程

在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统

📦

Docker Compose 镜像下载加速教程

在 Docker Compose 中使用轩辕镜像加速,支持容器编排

📋

K8s containerd 镜像下载加速教程

在 k8s 中配置 containerd 使用轩辕镜像加速

🔧

宝塔面板 Docker 镜像下载加速教程

在宝塔面板中配置轩辕镜像加速,提升服务器管理效率

💾

群晖 NAS Docker 镜像下载加速教程

在 Synology 群晖NAS系统中配置轩辕镜像加速

🐂

飞牛fnOS Docker 镜像下载加速教程

在飞牛fnOS系统中配置轩辕镜像加速

📱

极空间 NAS Docker 镜像下载加速教程

在极空间NAS中配置轩辕镜像加速

⚡

爱快路由 ikuai Docker 镜像下载加速教程

在爱快ikuai系统中配置轩辕镜像加速

🔗

绿联 NAS Docker 镜像下载加速教程

在绿联NAS系统中配置轩辕镜像加速

🌐

威联通 NAS Docker 镜像下载加速教程

在威联通NAS系统中配置轩辕镜像加速

📦

Podman Docker 镜像下载加速教程

在 Podman 中配置轩辕镜像加速,支持多系统

📚

ghcr、Quay、nvcr、k8s、gcr 等仓库下载镜像加速教程

配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤

🚀

专属域名方式进行 Docker 镜像下载加速教程

无需登录即可使用轩辕镜像加速服务,更加便捷高效

需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429

商务:17300950906
|©2024-2025 源码跳动
商务合作电话:17300950906|Copyright © 2024-2025 杭州源码跳动科技有限公司. All rights reserved.