Add Kotlin and Java API for Dolphin CTC models (#2086)

This commit is contained in:
Fangjun Kuang
2025-04-02 21:16:14 +08:00
committed by GitHub
parent 0de7e1b9f0
commit eee5575836
20 changed files with 517 additions and 18 deletions

View File

@@ -0,0 +1,32 @@
// Copyright 2025 Xiaomi Corporation
package com.k2fsa.sherpa.onnx;
public class OfflineDolphinModelConfig {
private final String model;
private OfflineDolphinModelConfig(Builder builder) {
this.model = builder.model;
}
public static Builder builder() {
return new Builder();
}
public String getModel() {
return model;
}
public static class Builder {
private String model = "";
public OfflineDolphinModelConfig build() {
return new OfflineDolphinModelConfig(this);
}
public Builder setModel(String model) {
this.model = model;
return this;
}
}
}

View File

@@ -10,6 +10,7 @@ public class OfflineModelConfig {
private final OfflineMoonshineModelConfig moonshine;
private final OfflineNemoEncDecCtcModelConfig nemo;
private final OfflineSenseVoiceModelConfig senseVoice;
private final OfflineDolphinModelConfig dolphin;
private final String teleSpeech;
private final String tokens;
private final int numThreads;
@@ -28,6 +29,7 @@ public class OfflineModelConfig {
this.moonshine = builder.moonshine;
this.nemo = builder.nemo;
this.senseVoice = builder.senseVoice;
this.dolphin = builder.dolphin;
this.teleSpeech = builder.teleSpeech;
this.tokens = builder.tokens;
this.numThreads = builder.numThreads;
@@ -62,6 +64,10 @@ public class OfflineModelConfig {
return senseVoice;
}
public OfflineDolphinModelConfig getDolphin() {
return dolphin;
}
public String getTokens() {
return tokens;
}
@@ -102,6 +108,7 @@ public class OfflineModelConfig {
private OfflineMoonshineModelConfig moonshine = OfflineMoonshineModelConfig.builder().build();
private OfflineNemoEncDecCtcModelConfig nemo = OfflineNemoEncDecCtcModelConfig.builder().build();
private OfflineSenseVoiceModelConfig senseVoice = OfflineSenseVoiceModelConfig.builder().build();
private OfflineDolphinModelConfig dolphin = OfflineDolphinModelConfig.builder().build();
private String teleSpeech = "";
private String tokens = "";
private int numThreads = 1;
@@ -120,6 +127,11 @@ public class OfflineModelConfig {
return this;
}
public Builder setDolphin(OfflineDolphinModelConfig dolphin) {
this.dolphin = dolphin;
return this;
}
public Builder setParaformer(OfflineParaformerModelConfig paraformer) {
this.paraformer = paraformer;
return this;