Skip to content

Commit ec84d36

Browse files
songguocolakevinlin09
authored andcommitted
feat(model/cosyvoice-v3):add language hints to voice clone
1 parent 90e2f45 commit ec84d36

File tree

3 files changed

+11
-2
lines changed

3 files changed

+11
-2
lines changed

src/main/java/com/alibaba/dashscope/audio/omni/OmniRealtimeConversation.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -107,7 +107,7 @@ public void appendAudio(String audioBase64) {
107107
OmniRealtimeConstants.PROTOCOL_TYPE,
108108
OmniRealtimeConstants.PROTOCOL_EVENT_TYPE_APPEND_AUDIO);
109109
append_request.put(OmniRealtimeConstants.PROTOCOL_AUDIO, audioBase64);
110-
log.info("append audio with eid: {}, length: {}", event_id, audioBase64.length());
110+
log.debug("append audio with eid: {}, length: {}", event_id, audioBase64.length());
111111
GsonBuilder builder = new GsonBuilder();
112112
builder.serializeNulls();
113113
Gson gson = builder.create();

src/main/java/com/alibaba/dashscope/audio/ttsv2/enrollment/VoiceEnrollmentParam.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,13 @@
33
import com.alibaba.dashscope.base.HalfDuplexServiceParam;
44
import com.alibaba.dashscope.exception.InputRequiredException;
55
import com.alibaba.dashscope.utils.ApiKeywords;
6+
import com.alibaba.dashscope.utils.JsonUtils;
7+
import com.google.gson.JsonArray;
68
import com.google.gson.JsonObject;
79
import java.nio.ByteBuffer;
810
import java.security.InvalidParameterException;
11+
import java.util.List;
12+
913
import lombok.Data;
1014
import lombok.EqualsAndHashCode;
1115
import lombok.experimental.SuperBuilder;
@@ -19,6 +23,7 @@ public class VoiceEnrollmentParam extends HalfDuplexServiceParam {
1923
private VoiceEnrollmentOperationType operationType;
2024
private String url;
2125
private String voiceId;
26+
private List<String> languageHints = null;
2227

2328
private int pageIndex;
2429
private int pageSize;
@@ -44,6 +49,9 @@ public JsonObject getInput() {
4449
input.addProperty("target_model", targetModel);
4550
input.addProperty("prefix", prefix);
4651
input.addProperty("url", url);
52+
if (languageHints != null) {
53+
input.add("language_hints", JsonUtils.toJsonArray(languageHints));
54+
}
4755
break;
4856
case LIST:
4957
input.addProperty(ApiKeywords.ACTION, operationType.getValue());

src/main/java/com/alibaba/dashscope/audio/ttsv2/enrollment/VoiceEnrollmentService.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -142,11 +142,12 @@ public Voice createVoice(
142142
VoiceEnrollmentParam param =
143143
VoiceEnrollmentParam.builder()
144144
.operationType(VoiceEnrollmentOperationType.CREATE)
145-
.model(this.model)
145+
.model(customParam.getModel().isEmpty() ? this.model : customParam.getModel())
146146
.targetModel(targetModel)
147147
.prefix(prefix)
148148
.url(url)
149149
.apiKey(apikey)
150+
.languageHints(customParam.getLanguageHints())
150151
.headers(customParam.getHeaders())
151152
.resources(customParam.getResources())
152153
.parameters(customParam.getParameters())

0 commit comments

Comments
 (0)