gRPC & Protocol Buffers#

riva/proto/riva_asr.proto#

service RivaSpeechRecognition#

RivaSpeechRecognition 服务提供了两种将语音转换为文本的机制。

rpc RecognizeResponse Recognize(RecognizeRequest)

Recognize 期望一个 RecognizeRequest 并返回一个 RecognizeResponse。此请求将阻塞,直到音频上传、处理并返回转录文本。

rpc stream StreamingRecognizeResponse StreamingRecognize(stream StreamingRecognizeRequest)

StreamingRecognize 是一个非阻塞 API 调用,允许音频数据以块的形式馈送到服务器,并在数据可用时进行处理。根据 StreamingRecognizeRequest 中的配置,可以将中间结果发送回客户端。当客户端关闭流时,识别结束。

rpc RivaSpeechRecognitionConfigResponse GetRivaSpeechRecognitionConfig(RivaSpeechRecognitionConfigRequest)

使客户端能够请求当前 ASR 服务的配置,或服务中特定模型的配置。

message EndpointingConfig#

EndpointingConfig 用于配置与话语开始或结束相关的不同字段

int32 start_history#

start_history 是窗口的大小,以毫秒为单位,用于检测话语的开始。start_threshold 是用于检测话语开始的百分比阈值。(0.0 到 1.0)如果声学模型输出的 start_history 毫秒中有 start_threshold 的非空白标记,则检测到话语的开始。

可选

float start_threshold#

可选

int32 stop_history#

stop_history 是窗口的大小,以毫秒为单位,用于检测话语的结束。stop_threshold 是用于检测话语结束的百分比阈值。(0.0 到 1.0)如果声学模型输出的 stop_history 毫秒中有 stop_threshold 的非空白标记,则检测到话语的结束,并且解码器将重置。

可选

float stop_threshold#

可选

int32 stop_history_eou#

stop_history_eoustop_threshold_eou 用于 2 次传递的话语结束。stop_history_eou 是窗口的大小,以毫秒为单位,用于触发话语结束的第一次传递,并生成稳定性为 1 的部分转录文本。(stop_history_eou < stop_history)stop_threshold_eou 是用于触发话语结束的第一次传递的百分比阈值。(0.0 到 1.0)如果声学模型输出的 stop_history_eou 毫秒中有 stop_threshold_eou 的非空白标记,则触发话语结束的第一次传递。

可选

float stop_threshold_eou#

可选

message PipelineStates#
float vad_probabilities(repeated)#

神经 VAD 概率

message RecognitionConfig#

向识别器提供信息,指定如何处理请求

nvidia.riva.AudioEncoding encoding

请求中发送的音频数据的编码。

所有编码仅支持 1 声道(单声道)音频。

int32 sample_rate_hertz#

RecognizeRequestStreamingRecognizeRequest 消息中发送的音频数据的采样率,单位为赫兹 (Hz)。Riva 服务器将自动对音频进行降采样/升采样,以匹配 ASR 声学模型的采样率。低于 8kHz 的采样率值不会产生任何有意义的输出。

string language_code#

必需。提供的音频的语言,以 [BCP-47](https://www.rfc-editor.org/rfc/bcp/bcp47.txt) 语言标签表示。示例:“en-US”。

int32 max_alternatives#

要返回的最大识别假设数。具体来说,是每个 SpeechRecognitionResultSpeechRecognitionAlternative 消息的最大数量。服务器可能会返回少于 max_alternatives 的数量。如果省略,则最多返回一个。

bool profanity_filter#

一个自定义字段,用于为生成的转录文本启用不当内容过滤。如果设置为“true”,服务器将过滤掉不当内容,并将每个过滤词中除首字母以外的所有字符替换为星号。例如,“x**”。如果设置为 false 或省略,则不会过滤掉不当内容。默认值为 false

SpeechContext speech_contexts(repeated)#

SpeechContext 数组。一种提供上下文以辅助语音识别的方法。有关更多信息,请参阅 SpeechContext 部分

int32 audio_channel_count#

输入音频数据中的声道数。如果为 0 或省略,则默认为单声道。注意:目前仅支持单声道音频输入。

bool enable_word_time_offsets#

如果为 true,则最佳结果包括单词列表以及开始和结束时间偏移(时间戳)以及这些单词的置信度分数。如果为 false,则不返回单词级时间偏移信息。默认值为 false

bool enable_automatic_punctuation#

如果为“true”,则向识别结果假设添加标点符号。默认值“false”不会向结果假设添加标点符号。

bool enable_separate_recognition_per_channel#

需要显式设置为 trueaudio_channel_count > 1 才能分别识别每个声道。识别结果将包含一个 channel_tag 字段,以说明该结果属于哪个声道。如果不是 true,我们将仅识别第一个声道。该请求将针对所有识别的声道进行累积计费:audio_channel_count 乘以音频的长度。注意:尚不支持此字段。

string model#

为给定请求选择哪个模型。如果为空,Riva 将根据其他 RecognitionConfig 参数选择正确的模型。该模型应与使用 –name 参数传递给 riva-build 的名称相对应

bool verbatim_transcripts#

verbatim_transcripts 标志启用或禁用逆文本规范化。“true”返回所说的内容,不进行反规范化。“false”应用逆文本规范化,这也是默认设置

SpeakerDiarizationConfig diarization_config#

用于启用说话人分离并设置其他参数的配置。对于非流式请求,分离结果将仅在 FINAL SpeechRecognitionResult 的最佳候选项中提供。

RecognitionConfig.CustomConfigurationEntry custom_configuration (repeated)

用于将请求级配置选项传递给模型管道中使用的插件的自定义字段。

EndpointingConfig endpointing_config#

用于调整话语开始或结束参数的配置。如果为空,Riva 将使用默认值,或者如果在 riva-build 参数中指定了自定义值,则使用自定义值。

可选

message RecognitionConfig.CustomConfigurationEntry
string key#
string value#
message RecognizeRequest#

RecognizeRequest 用于单个录音的批量处理。

RecognitionConfig config#

向识别器提供信息,指定如何处理请求。

bytes audio#

要处理的原始音频数据。音频字节必须按照 RecognitionConfig 中的指定进行编码。

nvidia.riva.RequestId id

要与请求关联的 ID。如果提供,则将在相应的响应中返回。

message RecognizeResponse#

客户端通过 Recognize 方法返回的唯一消息。它包含结果,形式为零个或多个顺序 SpeechRecognitionResult 消息。

SpeechRecognitionResult results(repeated)#

与音频的顺序部分对应的转录结果的顺序列表。目前仅返回一个转录文本。

nvidia.riva.RequestId id

与请求关联的 ID

message RivaSpeechRecognitionConfigRequest#
string model_name#

如果指定了模型,则仅返回模型的配置,否则返回所有配置。

message RivaSpeechRecognitionConfigResponse#
RivaSpeechRecognitionConfigResponse.Config model_config (repeated)
message RivaSpeechRecognitionConfigResponse.Config
string model_name#
RivaSpeechRecognitionConfigResponse.Config.ParametersEntry parameters (repeated)
message RivaSpeechRecognitionConfigResponse.Config.ParametersEntry
string key
string value
message SpeakerDiarizationConfig#

用于启用说话人分离的配置。

bool enable_speaker_diarization#

如果为“true”,则使用 WordInfo 中提供的 speaker_tag,为识别结果的最佳候选项中的每个识别单词启用说话人检测。

int32 max_speaker_count#

对话中的最大说话人数。这通过允许系统自动确定正确的说话人数来提供灵活性。如果未设置,则默认值为 8。

message SpeechContext#

向语音识别器提供“提示”,以在结果中偏向特定单词和短语。

string phrases(repeated)#

包含单词和短语“提示”的字符串列表,以便语音识别更可能识别它们。这可以用于提高特定单词和短语的准确性,例如,如果用户通常会说出特定命令。这也可以用于向识别器的词汇表添加额外的单词。

float boost#

提示增强。正值将增加识别特定短语而不是其他类似发音短语的概率。增强值越高,误报识别的可能性也越高。虽然 boost 可以接受范围广泛的正值,但大多数用例最好使用 0 到 20 之间的值。我们建议使用二分搜索方法来找到适合您用例的最佳值。

message SpeechRecognitionAlternative#

备选假设(又名 n-best 列表)。

string transcript#

表示用户所说单词的转录文本。

float confidence#

置信度估计。数字越大表示识别的单词正确的可能性越高。此字段仅针对非流式结果或 is_final=true 的流式结果设置。不保证此字段始终准确,用户不应依赖它始终被提供。虽然置信度目前可以粗略地解释为自然对数概率,但估计计算随不同的配置而变化,并且可能会发生变化。默认值 0.0 是一个 sentinel 值,表示未设置置信度。

WordInfo words(repeated)#

每个识别单词的单词特定信息列表。仅在 is_final=true 时填充

message SpeechRecognitionResult#

与最新转录文本对应的语音识别结果

SpeechRecognitionAlternative alternatives(repeated)#

可能包含一个或多个识别假设(最多为 max_alternatives 中指定的数量)。这些候选项按准确度排序,其中最佳(第一个)候选项是识别器认为最有可能的。

int32 channel_tag#

对于多声道音频,这是与来自该声道的音频的识别结果相对应的声道号。对于 audio_channel_count = N,其输出值范围可以从“1”到“N”。

float audio_processed#

到目前为止处理的音频长度,以秒为单位

message StreamingRecognitionConfig#

向识别器提供信息,指定如何处理请求

RecognitionConfig config#

向识别器提供信息,指定如何处理请求

bool interim_results#

如果为 true,则可以返回临时结果(试探性假设),因为它们会变为可用(这些临时结果用 is_final=false 标志指示)。如果为 false 或省略,则仅返回 is_final=true 结果。

message StreamingRecognitionResult#

对应于当前正在处理的音频部分的流式语音识别结果。

SpeechRecognitionAlternative alternatives(repeated)#

可能包含一个或多个识别假设(最多为 max_alternatives 中指定的数量)。这些候选项按准确度排序,其中最佳(第一个)候选项是识别器认为最有可能的。

bool is_final#

如果为 false,则此 StreamingRecognitionResult 表示可能会更改的临时结果。 如果为 true,则表示语音服务最后一次返回此特定的 StreamingRecognitionResult,识别器将不会为此部分的文本和相应的音频返回任何进一步的假设。

float stability#

估计识别器不会更改其对该临时结果的猜测的可能性。值的范围从 0.0(完全不稳定)到 1.0(完全稳定)。此字段仅针对临时结果提供(is_final=false)。默认值 0.0 是一个哨兵值,表示未设置 stability

int32 channel_tag#

对于多声道音频,这是与来自该声道的音频的识别结果相对应的声道号。对于 audio_channel_count = N,其输出值范围可以从“1”到“N”。

float audio_processed#

到目前为止处理的音频长度,以秒为单位

PipelineStates pipeline_states#

管道状态的消息

可选

message StreamingRecognizeRequest#

StreamingRecognizeRequest 用于配置音频内容并将其流式传输到 Riva ASR 服务。 发送的第一条消息必须仅包含 StreamingRecognitionConfig。 流中发送的后续消息必须仅包含要识别的音频的原始字节。

StreamingRecognitionConfig streaming_config#

向识别器提供信息,指定如何处理请求。 第一个 StreamingRecognizeRequest 消息必须包含 streaming_config 消息。

bytes audio_content#

要识别的音频数据。 音频数据的顺序块在顺序 StreamingRecognizeRequest 消息中发送。 第一个 StreamingRecognizeRequest 消息不得包含 audio 数据,所有后续 StreamingRecognizeRequest 消息都必须包含 audio 数据。 音频字节必须按照 RecognitionConfig 中的规定进行编码。

nvidia.riva.RequestId id

要与请求关联的 ID。 如果提供,则将在相应的响应中返回此 ID。

message StreamingRecognizeResponse#
StreamingRecognitionResult results(repeated)#

此重复列表包含对应于当前正在处理的音频的最新文本记录。 目前返回一个结果,其中每个结果可以有多个备选项

nvidia.riva.RequestId id

与请求关联的 ID

message WordInfo#

已识别单词的特定于单词的信息。

int32 start_time#

相对于音频开始的时间偏移(以毫秒为单位),对应于口语单词的开始。 仅当 enable_word_time_offsets=true 且仅在最佳假设中设置此字段。

int32 end_time#

相对于音频开始的时间偏移(以毫秒为单位),对应于口语单词的结束。 仅当 enable_word_time_offsets=true 且仅在最佳假设中设置此字段。

string word#

对应于此组信息的单词。

float confidence#

置信度估计。数字越大表示识别的单词正确的可能性越高。此字段仅针对非流式结果或 is_final=true 的流式结果设置。不保证此字段始终准确,用户不应依赖它始终被提供。虽然置信度目前可以粗略地解释为自然对数概率,但估计计算随不同的配置而变化,并且可能会发生变化。默认值 0.0 是一个 sentinel 值,表示未设置置信度。

int32 speaker_tag#

仅输出。 为音频中的每个说话人分配一个不同的整数值。 此字段指定检测到哪个说话人说了这个词。 值范围为“1”到 diarization_speaker_count。 如果 enable_speaker_diarization = “true” 并且仅在最佳备选项中设置 speaker_tag。

riva/proto/riva_nlp.proto#

service RivaLanguageUnderstanding#
rpc TextClassResponse ClassifyText(TextClassRequest)

ClassifyText 接受输入/查询字符串以及与请求的模型相关的参数,以用于评估文本。 该服务使用请求的模型评估文本,并返回一个或多个分类。

rpc TokenClassResponse ClassifyTokens(TokenClassRequest)

ClassifyTokens 接受字符串或标记列表以及与要使用的模型相关的参数作为输入。 该服务使用请求的模型评估文本,并在必要时执行额外的标记化,并为每个标记返回一个或多个类标签。

rpc TextTransformResponse TransformText(TextTransformRequest)

TransformText 接受输入/查询字符串以及与请求的模型相关的参数,并返回另一个字符串。 该函数的行为完全由底层模型定义,可用于翻译、添加标点符号、直接增强输入等任务。

rpc TokenClassResponse AnalyzeEntities(AnalyzeEntitiesRequest)

AnalyzeEntities 接受输入字符串并返回文本中所有命名实体,以及类别和可能性。

rpc AnalyzeIntentResponse AnalyzeIntent(AnalyzeIntentRequest)

AnalyzeIntent 接受输入字符串并返回最可能的意图以及与该意图相关的槽。

该模型要求传入有效的“domain”,并可以选择性地支持包含先前的意图分类结果,以便为模型提供上下文。

rpc TextTransformResponse PunctuateText(TextTransformRequest)

PunctuateText 接受没有或有限标点符号的文本,并返回具有更正的标点符号和大小写的相同文本。

rpc NaturalQueryResponse NaturalQuery(NaturalQueryRequest)

NaturalQuery 是一种搜索功能,可以使用自然语言编写的查询来查询一个或多个文档或上下文。

rpc RivaNLPConfigResponse GetRivaNLPConfig(RivaNLPConfigRequest)

使客户端能够请求当前 ASR 服务的配置,或服务中特定模型的配置。

message AnalyzeEntitiesOptions#

AnalyzeEntitiesOptions 是一个可选的配置消息,作为 AnalyzeEntitiesRequest 的一部分发送,带有查询元数据

string lang#

已弃用。 可选的语言字段。 如果未指定,则假定为“en-US”。

message AnalyzeEntitiesRequest#

AnalyzeEntitiesRequest 是 AnalyzeEntities 服务的输入消息

string query#

已弃用。 用于分析意图和槽的字符串

已弃用。 请求的可选配置,包括提供来自先前轮次的上下文和硬编码域/语言

nvidia.riva.RequestId id

已弃用。 要与请求关联的 ID。 如果提供,则将在相应的响应中返回此 ID。

message AnalyzeIntentContext#

AnalyzeIntentContext 保留供将来使用,届时我们可能会以各种不同的格式(包括原始神经网络隐藏状态)发回上下文

保留供将来使用

message AnalyzeIntentOptions#

AnalyzeIntentOptions 是一个可选的配置消息,作为 AnalyzeIntentRequest 的一部分发送,带有查询元数据

string previous_intent#

已弃用。

已弃用。

string domain#

已弃用。 可选的域字段。 域必须受支持,否则将返回错误。 如果留空,则将首先运行域检测器,然后将查询路由到相应的意图分类器(如果存在)

string lang#

已弃用。 可选的语言字段。 如果未指定,则假定为“en-US”。

message AnalyzeIntentRequest#

AnalyzeIntentRequest 是 AnalyzeIntent 服务的输入消息

string query#

已弃用。 用于分析意图和槽的字符串

已弃用。 请求的可选配置,包括提供来自先前轮次的上下文和硬编码域/语言

nvidia.riva.RequestId id

已弃用。 要与请求关联的 ID。 如果提供,则将在相应的响应中返回此 ID。

message AnalyzeIntentResponse#

AnalyzeIntentResponse 由 AnalyzeIntent 服务返回,并且包含与查询意图、(可选)槽数据及其域相关的信息。

Classification intent#

已弃用。 意图分类结果,包括标签和分数

TokenClassValue slots(repeated)#

已弃用。 显式标记为填充与意图相关的槽的标记列表,其中标记可能与输入不完全匹配(基于标记化后重新组合的值)

string domain_str#

已弃用。 如果请求中未硬编码域,则返回查询的推断域。 在域在 AnalyzeIntentRequest 中硬编码的情况下,返回的域与请求完全匹配。 在没有域与查询匹配的情况下,意图和槽将未设置。

已弃用,请使用 Classification 域字段。

Classification domain

已弃用。 如果请求中未硬编码域,则返回查询的推断域。 在域在 AnalyzeIntentRequest 中硬编码的情况下,返回的域与请求完全匹配。 在没有域与查询匹配的情况下,意图和槽将未设置。

nvidia.riva.RequestId id

已弃用。 与请求关联的 ID

message Classification#

Classification 消息返回类名称和相应的分数

string class_name#

已弃用。

float score#

已弃用。

message ClassificationResult#

ClassificationResults 包含零个或多个 Classification 消息。如果 Classification 的数量 > 1,则必须已指定 top_n > 1。

Classification labels(repeated)#

已弃用。

message NLPModelParams#

NLPModelParams 是核心 NLP 服务使用的每个请求消息中包含的元数据消息,用于指定模型特征/要求

string model_name#

要使用的请求模型。 如果指定,则优先于 language_code。

string language_code#

将提供的文本的语言指定为 [BCP-47](https://www.rfc-editor.org/rfc/bcp/bcp47.txt) 语言标签。 如果未设置,则默认为“en-US”。

message NaturalQueryRequest#
string query#

已弃用。 自然语言查询

uint32 top_n#

已弃用。 为查询返回的最大答案数。 如果未设置,则默认为 1。

string context#

已弃用。 要使用上述查询搜索的上下文

nvidia.riva.RequestId id

已弃用。 要与请求关联的 ID。 如果提供,则将在相应的响应中返回此 ID。

message NaturalQueryResponse#
NaturalQueryResult results(repeated)#

已弃用。

nvidia.riva.RequestId id

已弃用。 与请求关联的 ID

message NaturalQueryResult#
string answer#

已弃用。 回答查询的文本

float score

已弃用。 表示结果置信度的分数

message RivaNLPConfigRequest#
string model_name#

如果指定了模型,则仅返回模型的配置,否则返回所有配置。

message RivaNLPConfigResponse#
RivaNLPConfigResponse.Config model_config (repeated)
message RivaNLPConfigResponse.Config
string model_name
RivaNLPConfigResponse.Config.ParametersEntry parameters (repeated)
message RivaNLPConfigResponse.Config.ParametersEntry
string key
string value
message Span#

特定结果的跨度

uint32 start#

已弃用。

uint32 end#

已弃用。

message TextClassRequest#

TextClassRequest 是 ClassifyText 服务的输入消息。

string text(repeated)#

已弃用。 每个重复的文本元素都独立处理,以便使用单个请求处理多个输入字符串

uint32 top_n

已弃用。 返回每个输入的 Top N 分类结果。 0 或 1 将返回顶级类,否则返回 N。注意:当前已禁用。

已弃用。

nvidia.riva.RequestId id

已弃用。 要与请求关联的 ID。 如果提供,则将在相应的响应中返回此 ID。

message TextClassResponse#

TextClassResponse 是 ClassifyText 服务返回的消息。

ClassificationResult results(repeated)#

已弃用。

nvidia.riva.RequestId id

已弃用。 与请求关联的 ID

message TextTransformRequest#

TextTransformRequest 是一种请求类型,旨在用于 TransformText 等服务,这些服务接受任意文本输入

string text(repeated)#

每个重复的文本元素都独立处理,以便使用单个请求处理多个输入字符串

uint32 top_n#
NLPModelParams model#
nvidia.riva.RequestId id

要与请求关联的 ID。如果提供,则将在相应的响应中返回。

message TextTransformResponse#

TextTransformResponse 由 TransformText 方法返回。 响应按照请求的相同顺序返回。

string text(repeated)#
nvidia.riva.RequestId id

与请求关联的 ID

message TokenClassRequest#

TokenClassRequest 是 ClassifyText 服务的输入消息。

string text(repeated)#

已弃用。 每个重复的文本元素都独立处理,以便使用单个请求处理多个输入字符串

uint32 top_n

已弃用。 返回每个输入的 Top N 分类结果。 0 或 1 将返回顶级类,否则返回 N。注意:当前已禁用。

已弃用。

nvidia.riva.RequestId id

已弃用。 要与请求关联的 ID。 如果提供,则将在相应的响应中返回此 ID。

message TokenClassResponse#

TokenClassResponse 每个输入请求返回一个 TokenClassSequence。

TokenClassSequence results(repeated)#

已弃用。

nvidia.riva.RequestId id

已弃用。 与请求关联的 ID

message TokenClassSequence#

TokenClassSequence 用于按输入 token 的原始顺序返回 TokenClassValue 对象序列。

TokenClassValue results(repeated)#

已弃用。

message TokenClassValue#

TokenClassValue 用于将输入 token 与其分类结果相关联。

string token#

已弃用。

Classification label(repeated)#

已弃用。

Span span(repeated)#

已弃用。

riva/proto/riva_nmt.proto#

service RivaTranslation#

RivaTranslation 服务提供 rpc 以在语言之间进行翻译。

rpc TranslateTextResponse TranslateText(TranslateTextRequest)

将文本从源语言翻译成目标语言。目前,需要指定源语言和目标语言字段以及模型名称。每个请求可以传递多个文本,最多可达到模型的给定批处理大小,该批处理大小在翻译管道创建时设置。

rpc AvailableLanguageResponse ListSupportedLanguagePairs(AvailableLanguageRequest)

列出可用于 TranslateText 的可用语言对和模型名称。

rpc stream StreamingTranslateSpeechToTextResponse StreamingTranslateSpeechToText(stream StreamingTranslateSpeechToTextRequest)

流式语音转文本翻译 API。

rpc stream StreamingTranslateSpeechToSpeechResponse StreamingTranslateSpeechToSpeech(stream StreamingTranslateSpeechToSpeechRequest)
message AvailableLanguageRequest#

返回模型名称与其源语言和目标语言对的映射。 可以指定特定的模型名称以仅检索其语言对。

string model#

支持的值:“s2s_model”、“s2t_model”和已部署的 t2t 模型的名称。 如果为空,则返回所有可用的模型和语言。

message AvailableLanguageResponse#

语言对是每个模型可用的 src 到 tgt 语言集。 languages 包含所有 model_name -> 语言对。

AvailableLanguageResponse.LanguagesEntry languages (repeated)
message AvailableLanguageResponse.LanguagePair
string src_lang(repeated)#
string tgt_lang(repeated)#
message AvailableLanguageResponse.LanguagesEntry
string key
AvailableLanguageResponse.LanguagePair value
message StreamingTranslateSpeechToSpeechConfig#

Translate S2S 的配置。 重用来自其他服务的现有 protos。

nvidia.riva.asr.StreamingRecognitionConfig asr_config

来自 riva_asr.proto

SynthesizeSpeechConfig tts_config#
TranslationConfig translation_config#
message StreamingTranslateSpeechToSpeechRequest#

流式语音转语音用于配置语音翻译的整个管道。 这可以由 ASR、NMT、TTS 模型或端到端模型的级联支持。

StreamingTranslateSpeechToSpeechConfig config#
bytes audio_content#
nvidia.riva.RequestId id

要与请求关联的 ID。如果提供,则将在相应的响应中返回。

message StreamingTranslateSpeechToSpeechResponse#
nvidia.riva.tts.SynthesizeSpeechResponse speech

包含语音响应,最后一个响应发送一个空缓冲区以标记流的结束。

来自 riva_tts.proto

nvidia.riva.RequestId id

与请求关联的 ID

message StreamingTranslateSpeechToTextConfig#
nvidia.riva.asr.StreamingRecognitionConfig asr_config

现有的 ASR 配置

TranslationConfig translation_config#
message StreamingTranslateSpeechToTextRequest#
StreamingTranslateSpeechToTextConfig config#
bytes audio_content#
nvidia.riva.RequestId id

要与请求关联的 ID。如果提供,则将在相应的响应中返回。

message StreamingTranslateSpeechToTextResponse#
nvidia.riva.asr.StreamingRecognitionResult results (repeated)

来自 riva_asr.proto

nvidia.riva.RequestId id

与请求关联的 ID

message SynthesizeSpeechConfig#
nvidia.riva.AudioEncoding encoding
int32 sample_rate_hz#
string voice_name#
string language_code#
string prosody_rate#
string prosody_pitch#
string prosody_volume#
message TranslateTextRequest#

请求同步翻译 texts 中的每个文本。 可以使用 ListSupportLanguagePairs RPC 查询可用语言。 必须指定源语言和目标语言,当前是两个字符的 ISO 代码,为了与 GA 的其他 Riva 服务保持一致,这可能会更改为 BCP-47。

string texts(repeated)#
string model#
string source_language#
string target_language#
string dnt_phrases(repeated)#

不翻译或由管道自定义翻译的单词或短语列表。 要自定义翻译的单词应指定为“<word>##<custom_translation>”,而不翻译的单词应指定为“<word>”。

nvidia.riva.RequestId id

要与请求关联的 ID。如果提供,则将在相应的响应中返回。

message TranslateTextResponse#

翻译以 text:language 对的形式返回。 这些与请求中传入的“texts”是一对一的。

Translation translations(repeated)#
nvidia.riva.RequestId id

与请求关联的 ID

message Translation#

包含单个翻译,收集到翻译文本响应中。 包括目标语言代码,因为对于多语言模型,存在多种可能性。

string text#
string language#
message TranslationConfig#
string source_language_code#

BCP-47 “en-US”

string target_language_code#
string model_name#
string dnt_phrases(repeated)#

管道将不翻译的单词或短语列表。 此列表可以包括特殊单词或短语,例如,名称、首字母缩写词或任何希望从翻译中排除的短语。 这些单词或短语将按原样出现在翻译输出中。

riva/proto/riva_tts.proto#

service RivaSpeechSynthesis#
rpc SynthesizeSpeechResponse Synthesize(SynthesizeSpeechRequest)

用于从服务请求文本到语音。 提交包含所需文本和配置的请求,并接收请求格式的音频字节。

rpc stream SynthesizeSpeechResponse SynthesizeOnline(SynthesizeSpeechRequest)

用于请求通过流返回的文本到语音,因为它变为可用。 提交具有所需文本和配置的 SynthesizeSpeechRequest,并接收请求格式的字节流。

rpc RivaSynthesisConfigResponse GetRivaSynthesisConfig(RivaSynthesisConfigRequest)

使客户端能够请求当前 Synthesize 服务或服务中特定模型的配置。

message RivaSynthesisConfigRequest#
string model_name#

如果指定了模型,则仅返回模型的配置,否则返回所有配置。

message RivaSynthesisConfigResponse#
RivaSynthesisConfigResponse.Config model_config (repeated)
message RivaSynthesisConfigResponse.Config
string model_name
RivaSynthesisConfigResponse.Config.ParametersEntry parameters (repeated)
message RivaSynthesisConfigResponse.Config.ParametersEntry
string key
string value
message SynthesizeSpeechRequest#
string text#
string language_code#
nvidia.riva.AudioEncoding encoding

音频编码参数

int32 sample_rate_hz#
string voice_name#

声音参数

ZeroShotData zero_shot_data#

Zero Shot 模型参数

string custom_dictionary#

一个字符串,包含以逗号分隔的字素和相应音素的键值对,并用双空格分隔。

nvidia.riva.RequestId id

要与请求关联的 ID。如果提供,则将在相应的响应中返回。

message SynthesizeSpeechResponse#
bytes audio#
SynthesizeSpeechResponseMetadata meta#
nvidia.riva.RequestId id

与请求关联的 ID

message SynthesizeSpeechResponseMetadata#
string text#

当前实验性 API 添加,返回预处理完成后输入的文本以及每个 token 的预测持续时间。 注意:此消息可能会在未来发生重大更改,并可能被删除。

string processed_text#
float predicted_durations(repeated)#
message ZeroShotData#

Zero Shot 模型必需

bytes audio_prompt#

Zero Shot 模型的音频提示。 持续时间应在 3 到 10 秒之间。

int32 sample_rate_hz#

输入音频提示的采样率。

nvidia.riva.AudioEncoding encoding

音频提示的编码。 支持的编码为 LINEAR_PCM 和 OGGOPUS。

int32 quality#

用户希望音频通过解码器的次数。 范围在 1-40 之间。 默认为 20。

riva/proto/riva_common.proto#

message RequestId#

指定请求的请求 ID。

string value#

riva/proto/riva_audio.proto#

enum AudioEncoding

AudioEncoding 指定封装消息中音频字节的编码。

enumerator ENCODING_UNSPECIFIED = 0#

未指定。

enumerator LINEAR_PCM = 1#

未压缩的 16 位有符号小端序采样 (Linear PCM)。

enumerator FLAC = 2#

FLAC (Free Lossless Audio Codec) 是推荐的编码,因为它是无损的——因此识别不会受到影响——并且只需要大约一半的 LINEAR16 带宽。FLAC 流编码支持 16 位和 24 位采样,但是,并非 STREAMINFO 中的所有字段都受支持。

enumerator MULAW = 3#

使用 G.711 PCMU/mu-law 压缩 14 位音频采样的 8 位采样。

enumerator OGGOPUS = 4#
enumerator ALAW = 20#

使用 G.711 PCMU/a-law 压缩 13 位音频采样的 8 位采样。

riva/proto/health.proto#

service Health
rpc HealthCheckResponse Check(HealthCheckRequest)
rpc stream HealthCheckResponse Watch(HealthCheckRequest)
message HealthCheckRequest
string service
message HealthCheckResponse
HealthCheckResponse.ServingStatus status
enum HealthCheckResponse.ServingStatus
enumerator UNKNOWN = 0
enumerator SERVING = 1
enumerator NOT_SERVING = 2