专属域名
文档搜索
提交工单
轩辕助手
返回顶部
快速返回页面顶部
收起
收起工具栏
轩辕镜像
轩辕镜像专业版
个人中心搜索镜像
交易
充值流量我的订单
工具
提交工单镜像收录一键安装
Npm 源Pip 源
帮助
常见问题
其他
关于我们网站地图

官方QQ群: 13763429

轩辕镜像
镜像详情
...
lintoai/linto-transcription-service
官方博客热门镜像提交工单
本站面向开发者与科研用户,提供开源镜像的搜索和下载加速服务。
所有镜像均来源于原始开源仓库,本站不存储、不修改、不传播任何镜像内容。
轩辕镜像 —— 国内开发者首选的专业 Docker 镜像加速平台。在线技术支持请优先 提交工单,技术交流欢迎加入官方QQ群:13763429 。
本站面向开发者与科研用户,提供开源镜像的搜索和下载加速服务。所有镜像均来源于原始开源仓库,本站不存储、不修改、不传播任何镜像内容。

linto-transcription-service Docker 镜像下载 - 轩辕镜像

linto-transcription-service 镜像详细信息和使用指南

linto-transcription-service 镜像标签列表和版本信息

linto-transcription-service 镜像拉取命令和加速下载

linto-transcription-service 镜像使用说明和配置指南

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

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

极速拉取 Docker 镜像服务

相关 Docker 镜像推荐

热门 Docker 镜像下载

linto-transcription-service
lintoai/linto-transcription-service

linto-transcription-service 镜像详细信息

linto-transcription-service 镜像标签列表

linto-transcription-service 镜像使用说明

linto-transcription-service 镜像拉取命令

Docker 镜像加速服务

轩辕镜像平台优势

镜像下载指南

相关 Docker 镜像推荐

LinTO Transcription service是用于请求音视频转录的API服务,支持异步转录多种音视频格式文件,可指定说话人分离、标点等子任务,跟踪任务状态与进度,自动将结果存储到数据库避免重复转录,并能获取不同格式的转录结果。
1 收藏0 次下载activelintoai镜像
🚀轩辕镜像专业版更稳定💎一键安装 Docker 配置镜像源
中文简介版本下载
🚀轩辕镜像专业版更稳定💎一键安装 Docker 配置镜像源

linto-transcription-service 镜像详细说明

linto-transcription-service 使用指南

linto-transcription-service 配置说明

linto-transcription-service 官方文档

LinTO 转录服务

概述

转录服务是用于请求音视频转录的API服务。该服务允许您:

  • 从多种音视频文件格式请求异步转录
  • 指定转录子任务,如说话人分离和标点添加
  • 跟踪转录任务的状态和进度
  • 自动将转录结果存储在数据库中(避免同一音频文件被多次转录)
  • 获取不同格式和选项的转录结果

目录

  • 前提条件
  • 部署
    • 使用 docker run
    • 使用 docker compose
    • 环境变量
  • API
    • /list-services
      • 子服务解析
    • /transcribe
      • 转录配置
    • /job/{jobid}
    • /results/{result_id}
      • 转录结果
    • /job-log/{jobid}
    • /docs
  • 使用示例
  • 许可协议

前提条件

使用转录服务前,您必须至少具备:

  • 一个或多个运行中的linto-stt实例,且配置了相同的SERVICE_NAME(LANGUAGE必须兼容)
  • 一个运行在SERVICES_BROKER的REDIS broker
  • 一个运行在MONGO_HOST:MONGO_PORT的MongoDB数据库

可选地,如需使用说话人分离或标点功能,还需:

  • 一个或多个运行中的linto-diarization-worker(版本>1.2.0),用于说话人分离,需配置在同一服务broker上(LANGUAGE必须兼容)
  • 一个或多个运行中的linto-punctuation-worker(版本>1.2.0),用于文本标点,需配置在同一服务broker上(LANGUAGE必须兼容)

为使不同服务间共享音频文件,它们必须配置相同的共享卷RESSOURCE_FOLDER。

部署

使用 docker run

  1. 首先构建镜像:
bash
cd linto-transcription-service &&
docker build . -t transcription_service
  1. 创建并填充.env文件
bash
cp .envdefault .env

按照环境变量部分描述填充.env文件

  1. 启动容器:
bash
docker run --rm -it -p $SERVING_PORT:8080 \
    -v $YOUR_SHARED_FOLDER:/opt/audio \
    --env-file .env \
    --name my_transcription_api \
    transcription_service \
    /bin/bash

将SERVING_PORT和YOUR_SHARED_FOLDER替换为您的值。

使用 docker compose

  1. 创建并填充.env文件
bash
cp .envdefault .env

按照环境变量部分描述填充.env文件

  1. 启动compose
bash
docker-compose up .

环境变量

环境变量描述示例
WEBSERVER_HTTP_PORTWeb服务器监听HTTP请求的端口号8080
LANGUAGE用于文本标准化(数字转文字、标点标准化等)的语言代码(BCP-47代码)fr-FR
KEEP_AUDIO请求后是否保留音频文件1(是)| 0(否)
CONCURRENCY工作进程数(默认10)10
SERVICE_NAMESTT服务名称,用于连接到正确的redis通道和mongo集合my_stt_service
SERVICES_BROKER消息代理地址redis://broker_address:6379
BROKER_PASS代理密码Password
MONGO_HOSTMongoDB结果存储地址my-mongo-service
MONGO_PORTMongoDB结果存储端口27017
RESOLVE_POLICY子服务解析策略(默认ANY)*ANY | DEFAULT | STRICT
<SERVICE_TYPE>_DEFAULT子任务<SERVICE_TYPE>的默认服务名称 *punctuation-1

*: 参见子服务解析

心跳设置

环境变量描述示例
REGISTRATION_MODE通过HTTP启用服务向API网关注册。如果未设置此变量,以下所有变量将被忽略。HTTP或未设置
PROXIED_SERVICE_BASE_URL转录服务的基础URL[***]
GATEWAY_SERVICE_BASE_URLAPI网关用于新服务注册的路由[***]
GATEWAY_PROXY_PATHAPI网关上路由到此服务的基础路径/transcribe

API

转录服务提供REST API用于提交转录请求。

转录服务围绕两个概念展开:

  • 由job_id标识的异步任务:job_id表示正在进行的转录任务
  • 由result_id标识的转录结果

典型的转录流程如下:

  1. 在/transcribe提交文件和转录配置。该路由返回201状态码和job_id
  2. 使用/job/{job_id}路由跟踪任务进度。任务完成时,将返回201状态码和result_id
  3. 使用/results/{result_id}路由获取转录结果,可指定所需格式和选项

/list-services

list-services GET路由用于获取可用的转录子服务。

返回一个JSON对象,包含按服务类型索引的已部署服务列表。列出的服务会根据设置的LANGUAGE参数进行过滤。

json
{
  "diarization": [ # 服务类型
    {
      "service_name": "diarization-1", # 服务名称。在转录配置中用作参数以调用此特定服务
      "service_type": "diarization", # 服务类型
      "service_language": "*", # 支持的语言
      "queue_name": "diarization-queue", # 此服务使用的Celery队列
      "info": "说话人分离服务", # 服务信息
      "instances": [ # 此特定服务的实例
        {
          "host_name": "feb42aacd8ad", # 实例唯一ID
          "last_alive": ***, # 最后心跳时间
          "version": "1.2.0", # 服务版本
          "concurrency": 1 # 实例并发数
        }
      ]
    }
  ],
  "punctuation": [
    {
      "service_name": "punctuation-1",
      "service_type": "punctuation",
      "service_language": "fr-FR",
      "queue_name": "punctuation-queue",
      "info": "标点服务",
      "instances": [
        {
          "host_name": "b0e9e24349a9",
          "last_alive": ***,
          "version": "1.2.0",
          "concurrency": 1
        }
      ]
    }
  ]
}

子服务解析

子服务解析是允许转录服务使用适当的可选子服务(如说话人分离或标点预测)的机制。当子任务配置中未传递serviceName时应用解析。

有三种解析服务名称的策略:

  • ANY:使用任何兼容的子服务
  • DEFAULT:使用服务的默认子服务(必须声明)
  • STRICT:如果未指定服务,则引发错误

解析策略在启动时通过RESOLVE_POLICY环境变量声明:ANY | DEFAULT | STRICT(默认ANY)。

默认服务名称必须在启动时声明:<SERVICE_TYPE>_DEFAULT。例如,默认标点子服务为"punctuation-1",则PUNCTUATION_DEFAULT=punctuation1。

语言兼容性

子服务兼容的条件是其子服务的语言与转录服务的语言兼容。

/transcribe

/transcribe路由接受包含音频文件的POST请求。

该路由接受multipart/form-data请求。

响应格式可以是application/json或text/plain,由请求头的accept字段指定。

表单参数描述是否必需
transcriptionConfig(可选对象)描述转录参数的转录配置,JSON格式参见转录配置
force_sync(可选布尔值,默认false)如果为true,则执行同步请求true | false | null

如果请求被接受,响应应为201状态码,包含JSON或文本格式的jobid。

accept: application/json时:

json
{"jobid" : "the-job-id"}

accept: text/plain时:

the-job-id

如果force_sync标志设置为true,请求返回200状态码和转录结果(参见转录结果),使用与/result/{result_id}路由相同的accept选项。

不建议对大文件使用force_sync,因为它会在整个转录期间阻塞工作进程。

此外,还可以上传时间戳文件(与音频文件一起),其中包含要转录的片段时间戳。时间戳文件是文本文件,每行一个片段,可包含可选的说话人ID:

txt
# start stop [speakerid]
0.0 7.05 1
7.05 13.0

转录配置

转录配置描述请求的转录输入参数和标志。它允许设置:

  • 转录目标语言
  • 语音活动检测(VAD)参数
  • 说话人分离参数
  • 标点参数

结构如下:

json
{
  "language": "fr-FR",          # 转录目标语言(默认:null)
  "vadConfig": {
    "enableVad": true,          # 启用语音活动检测(默认:true)
    "methodName": "WebRTC",     # VAD方法(默认:WebRTC)
    "minDuration": 30,          # 语音片段最小持续时间(默认:0)
    "maxDuration": 1200         # 语音片段最大持续时间(默认:1200)
  },
  "diarizationConfig": {
    "enableDiarization": true,  # 是否启用说话人分离(默认:false)
    "numberOfSpeaker": null,    # 如果设置,强制说话人数量
    "maxNumberOfSpeaker": 50,   # 如果设置且未设置numberOfSpeaker,限制最大说话人数量
    "speakerIdentification": null,  # 要识别的说话人名称(取决于说话人分离worker的安装)
    "serviceName": null         # 强制服务名称(参见子服务解析)
  },
  "punctuationConfig": {
    "enablePunctuation": false, # 是否添加标点(默认:false)
    "serviceName": null         # 强制服务名称(参见子服务解析)
  }
}

serviceName可用于指定特定的子服务版本。可用服务可在/list-services查看。

target language可以是""(自动语言检测),或描述语言的常用标签("fr"、"fr-FR"、"French"——参见[**] 注意,此参数的作用与用于文本标准化的环境变量LANGUAGE不同(后者仅限于BCP-47代码)。

要启用说话人识别,可将说话人分离配置的speakerIdentification字段设置为通配符"*"(启用所有说话人)或说话人名称列表(JSON格式,例如:"["John Doe", "Bob"]")。说话人分离worker必须已配置为可匹配所有说话人名称与一组语音样本。

/job/{jobid}

/job/{jobid} GET路由用于获取给定转录任务的状态。

响应格式为application/json。

  • 如果任务状态为started,返回102状态码和进度信息
  • 如果任务状态为done,返回201状态码和result_id
  • 如果任务状态为pending,返回404状态码。pending可能表示:转录工作进程尚未可用或jobid不存在
  • 如果任务状态为failed,返回400状态码
json
{
  # 任务待处理或jobid错误:404
  {"state": "pending"}

  # 任务已开始:102
  {"state": "started", "progress": {"current": 1, "total": 3, "step": "Transcription (75%)"}}

  # 任务已完成:201
  {"state": "done", "result_id" : "result_id"}

  # 任务失败:400
  {"state": "failed", "reason": "Something went wrong"}
}

/results/{result_id}

/results/{result_id} GET路由用于获取与result_id关联的转录结果。

转录结果

accept请求头指定结果格式:

  • application/json 返回完整的JSON对象结果;
json
{
  "raw_transcription": "bonjour est-ce que vous allez bien mais oui et vous",                       # 原始转录文本
  "transcription_result": "spk1: Bonjour ! Est-ce que vous allez bien ?\nspk2: Mais oui et vous ?", # 最终转录文本
  "language": "fr",  # 整体转录语言(请求中指定或音频中检测到的主要语言)
  "confidence": 0.9, # 整体转录置信度分数
  "segments": [ # 单个说话人连续语音的片段
    {
      "raw_segment": "bonjour est-ce que vous allez bien", # 语音片段的原始转录
      "segment": "Bonjour ! Est-ce que vous allez bien ?", # 片段的处理后转录(标点、标准化等)
      "start": 0,       # 片段开始时间
      "end": 5.26,      # 片段结束时间
      "duration": 5.26, # 片段持续时间
      "language": "fr", # 片段语言(检测到的主要语言或请求中指定)
      "spk_id": "spk1", # 片段说话人ID
      "words": [        # 片段词语信息
        {
          "word": "bonjour", # 词语
          "start": 0.0,      # 词语开始时间
          "end": 1.02,       # 词语结束时间
          "conf": 0.49       # 词语置信度分数
        },
        {
          "word": "est-ce",
          "start": 3.0,
          "end": 3.84,
          "conf": 0.63
        },
        ...
      ]
    },
    ...
  ]
}
  • text/plain 返回纯文本格式的最终转录结果
spk1: Bonjour ! Est-ce que vous allez bien ?
spk2: Mais oui et vous ?
  • text/vtt 返回WEBVTT字幕格式的转录结果
WEBVTT Kind: captions; Language: fr

00:00.000 --> 00:05.260
Bonjour ! Est-ce que vous allez bien ?

00:05.270 --> 00:06.710
Mais oui et vous ?
  • text/srt 返回SubRip字幕格式的转录结果
1
00:00:00,000 --> 00:00:05,260
Bonjour ! Est-ce que vous allez bien ?

2
00:00:05,270 --> 00:00:06,710
Mais oui et vous ?

查询字符串选项

还可以使用查询字符串指定选项:

  • return_raw: 如果设置为true,返回原始转录文本(无标点和后处理)
  • convert_number: 如果设置为true,将数字从文字转换为数字
  • wordsub: 接受多个格式为originalWord:substituteWord的值,用于在最终转录结果中替换词语

/job-log/{jobid}

/job-log/{jobid} GET路由用于检索任务详情以进行调试。返回原始文本格式的日志。

/docs

/docs路由提供Swagger-UI界面,包含API规范(OAS3)。

还允许使用预填充的可修改参数直接测试请求。

使用示例

查看更多 linto-transcription-service 相关镜像 →
lintoai/linto-stt-kaldi logo
lintoai/linto-stt-kaldi
by lintoai
LinTO-STT-Kaldi是基于Kaldi训练模型的自动语音识别(ASR)API,支持作为独立转录服务或通过消息代理连接器部署于微服务架构,提供离线及实时转录功能。
150K+ pulls
上次更新:2 个月前
lintoai/linto-stt-whisper logo
lintoai/linto-stt-whisper
by lintoai
LinTO-STT-Whisper是基于Whisper模型的自动语音识别(ASR)API,可作为独立转录服务或通过消息代理连接器部署于微服务架构,支持离线及实时转录。
250K+ pulls
上次更新:2 个月前

用户好评

来自真实用户的反馈,见证轩辕镜像的优质服务

oldzhang的头像

oldzhang

运维工程师

Linux服务器

5

"Docker加速体验非常流畅,大镜像也能快速完成下载。"

用户评价详情

oldzhang - 运维工程师

Linux服务器

5

Docker加速体验非常流畅,大镜像也能快速完成下载。

Nana - 后端开发

Mac桌面

4.9

配置Docker镜像源后,拉取速度快了数倍,开发体验提升明显。

Qiang - 平台研发

K8s集群

5

轩辕镜像在K8s集群中表现很稳定,容器部署速度明显加快。

小敏 - 测试工程师

Windows桌面

4.8

Docker镜像下载不再超时,测试环境搭建更加高效。

晨曦 - DevOps工程师

宝塔面板

5

配置简单,Docker镜像源稳定,适合快速部署环境。

阿峰 - 资深开发

群晖NAS

5

在群晖NAS上配置后,镜像下载速度飞快,非常适合家庭实验环境。

俊仔 - 后端工程师

飞牛NAS

4.9

Docker加速让容器搭建顺畅无比,再也不用等待漫长的下载。

Lily - 测试经理

Linux服务器

4.8

镜像源覆盖面广,更新及时,团队一致反馈体验不错。

浩子 - 云平台工程师

Podman容器

5

使用轩辕镜像后,Podman拉取镜像稳定无比,生产环境可靠。

Kai - 运维主管

爱快路由

5

爱快系统下配置加速服务,Docker镜像拉取速度提升非常大。

翔子 - 安全工程师

Linux服务器

4.9

镜像源稳定性高,安全合规,Docker拉取无忧。

亮哥 - 架构师

K8s containerd

5

大规模K8s集群下镜像加速效果显著,节省了大量时间。

慧慧 - 平台开发

Docker Compose

4.9

配置Compose镜像加速后,整体构建速度更快了。

Tina - 技术支持

Windows桌面

4.8

配置简单,镜像拉取稳定,适合日常开发环境。

宇哥 - DevOps Leader

极空间NAS

5

在极空间NAS上使用Docker加速,体验流畅稳定。

小静 - 数据工程师

Linux服务器

4.9

Docker镜像源下载速度快,大数据环境搭建轻松完成。

磊子 - SRE

宝塔面板

5

使用轩辕镜像后,CI/CD流程整体快了很多,值得推荐。

阿Yang - 前端开发

Mac桌面

4.9

国内网络环境下,Docker加速非常给力,前端环境轻松搭建。

Docker迷 - 架构师

威联通NAS

5

威联通NAS下配置镜像加速后,Docker体验比官方源好很多。

方宇 - 系统工程师

绿联NAS

5

绿联NAS支持加速配置,Docker镜像下载快且稳定。

常见问题

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

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

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

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

Q3:流量耗尽错误提示

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

Q4:410 错误问题

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

Q5:manifest unknown 错误

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

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

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

查看全部问题→

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

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

登录仓库拉取

通过 Docker 登录认证访问私有仓库

Linux

在 Linux 系统配置镜像加速服务

Windows/Mac

在 Docker Desktop 配置镜像加速

Docker Compose

Docker Compose 项目配置加速

K8s Containerd

Kubernetes 集群配置 Containerd

宝塔面板

在宝塔面板一键配置镜像加速

群晖

Synology 群晖 NAS 配置加速

飞牛

飞牛 fnOS 系统配置镜像加速

极空间

极空间 NAS 系统配置加速服务

爱快路由

爱快 iKuai 路由系统配置加速

绿联

绿联 NAS 系统配置镜像加速

威联通

QNAP 威联通 NAS 配置加速

Podman

Podman 容器引擎配置加速

Singularity/Apptainer

HPC 科学计算容器配置加速

其他仓库配置

ghcr、Quay、nvcr 等镜像仓库

专属域名拉取

无需登录使用专属域名加速

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

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