Skip to content

Commit fd36db5

Browse files
committed
fix: remove unsupport voice
1 parent 30a0bbb commit fd36db5

3 files changed

Lines changed: 20 additions & 24 deletions

File tree

packages/cli/src/commands/omni/chat.ts

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -31,18 +31,14 @@ interface VoiceEntry {
3131

3232
// qwen-omni 系统音色
3333
const OMNI_VOICES: VoiceEntry[] = [
34+
{ voice: "Tina", name: "甜妹", desc: "甜美亲切", lang: "中文/英文" },
3435
{ voice: "Dylan", name: "北京-晓东", desc: "胡同少年", lang: "中文/北京" },
3536
{ voice: "Kiki", name: "粤语-阿清", desc: "甜美港妹", lang: "中文/英文" },
3637
{ voice: "Li", name: "南京-老李", desc: "南京大叔", lang: "中文/英文" },
3738
{ voice: "Sunny", name: "四川-晴儿", desc: "甜飒川妹", lang: "中文" },
38-
{ voice: "Elias", name: "墨讲师", desc: "学术讲师女", lang: "中文/英文" },
39-
{ voice: "Nofish", name: "不吃鱼", desc: "南方口音男", lang: "中文/英文" },
4039
{ voice: "Marcus", name: "陕西-秦川", desc: "陕北汉子", lang: "中文/英文" },
4140
{ voice: "Eric", name: "四川-程川", desc: "成都大哥", lang: "中文/英文" },
42-
{ voice: "Jada", name: "上海-阿珍", desc: "沪上阿姐", lang: "中文" },
4341
{ voice: "Rocky", name: "粤语-阿强", desc: "幽默港仔", lang: "中文/英文" },
44-
{ voice: "Cherry", name: "芊悦", desc: "阳光自然女", lang: "中文/英文" },
45-
{ voice: "Roy", name: "闽南-阿杰", desc: "闽南哥仔", lang: "中文/英文" },
4642
{ voice: "Jennifer", name: "詹妮弗", desc: "美剧大女主", lang: "中文/英文" },
4743
{ voice: "Ryan", name: "甜茶", desc: "美剧张力男", lang: "中文/英文" },
4844
{ voice: "Katerina", name: "卡捷琳娜", desc: "御姐深情女", lang: "中文/英文" },
@@ -150,7 +146,7 @@ export default defineCommand({
150146
},
151147
{
152148
flag: "--voice <voice>",
153-
description: "Output voice ID (default: Cherry). Use --list-voices to see all options",
149+
description: "Output voice ID (default: Tina). Use --list-voices to see all options",
154150
},
155151
{
156152
flag: "--list-voices",
@@ -199,7 +195,7 @@ export default defineCommand({
199195
}
200196

201197
const model = (flags.model as string) || config.defaultOmniModel || "qwen3.5-omni-plus";
202-
const voice = (flags.voice as string) || "Cherry";
198+
const voice = (flags.voice as string) || "Tina";
203199
const audioFormat = (flags.audioFormat as string) || "wav";
204200
const textOnly = flags.textOnly === true;
205201
const format = detectOutputFormat(config.output);

packages/cli/tests/e2e/omni.e2e.test.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,9 +24,9 @@ describe.skipIf(!isBailianE2EMediaEnabled() || !isDashScopeE2EReady())(
2424
const { stdout, stderr, exitCode } = await runCli(["omni", "--list-voices"]);
2525
expect(exitCode, stderr).toBe(0);
2626
expect(stdout).toMatch(/Omni output voices:/);
27+
expect(stdout).toMatch(/Tina/);
2728
expect(stdout).toMatch(/Dylan/);
28-
expect(stdout).toMatch(/Cherry/);
29-
expect(stdout).toMatch(/Total: 17 voices/);
29+
expect(stdout).toMatch(/Total: 13 voices/);
3030
});
3131
test("omni 缺少 --message 时打印子命令帮助并退出 (0)", async () => {
3232
const { stderr, exitCode } = await runCli([

skills/bailian-cli/reference/omni.md

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -23,21 +23,21 @@ Index: [index.md](index.md)
2323

2424
#### Options
2525

26-
| Flag | Type | Required | Description |
27-
| ---------------------- | ------- | -------- | ----------------------------------------------------------------------- |
28-
| `--message <text>` | array | yes | Message text (repeatable, prefix role: to set role) |
29-
| `--model <model>` | string | no | Model ID (default: qwen3.5-omni-plus) |
30-
| `--system <text>` | string | no | System prompt |
31-
| `--image <url>` | array | no | Image URL or local file (repeatable) |
32-
| `--audio <url>` | array | no | Audio URL or local file (.wav/.mp3/.amr/.aac/.m4a/.ogg/.3gp/.3gpp) |
33-
| `--video <url>` | array | no | Video file URL / local path, or comma-separated frame URLs |
34-
| `--voice <voice>` | string | no | Output voice ID (default: Cherry). Use --list-voices to see all options |
35-
| `--list-voices` | boolean | no | List available output voices and exit |
36-
| `--audio-format <fmt>` | string | no | Audio output format (default: wav) |
37-
| `--audio-out <path>` | string | no | Save audio to file (default: auto-generate) |
38-
| `--text-only` | boolean | no | Output text only, no audio generation |
39-
| `--max-tokens <n>` | number | no | Maximum tokens to generate |
40-
| `--temperature <n>` | number | no | Sampling temperature (0.0, 2.0] |
26+
| Flag | Type | Required | Description |
27+
| ---------------------- | ------- | -------- | --------------------------------------------------------------------- |
28+
| `--message <text>` | array | yes | Message text (repeatable, prefix role: to set role) |
29+
| `--model <model>` | string | no | Model ID (default: qwen3.5-omni-plus) |
30+
| `--system <text>` | string | no | System prompt |
31+
| `--image <url>` | array | no | Image URL or local file (repeatable) |
32+
| `--audio <url>` | array | no | Audio URL or local file (.wav/.mp3/.amr/.aac/.m4a/.ogg/.3gp/.3gpp) |
33+
| `--video <url>` | array | no | Video file URL / local path, or comma-separated frame URLs |
34+
| `--voice <voice>` | string | no | Output voice ID (default: Tina). Use --list-voices to see all options |
35+
| `--list-voices` | boolean | no | List available output voices and exit |
36+
| `--audio-format <fmt>` | string | no | Audio output format (default: wav) |
37+
| `--audio-out <path>` | string | no | Save audio to file (default: auto-generate) |
38+
| `--text-only` | boolean | no | Output text only, no audio generation |
39+
| `--max-tokens <n>` | number | no | Maximum tokens to generate |
40+
| `--temperature <n>` | number | no | Sampling temperature (0.0, 2.0] |
4141

4242
#### Examples
4343

0 commit comments

Comments
 (0)