refactor(knowledge): update authentication options and documentation

This commit is contained in:
zeyu.fz
2026-06-15 19:22:35 +08:00
parent 173e5a7e45
commit a0ab35acf1
4 changed files with 45 additions and 20 deletions
@@ -60,17 +60,24 @@ export default defineCommand({
},
{
flag: "--workspace-id <id>",
description: "Bailian workspace ID (required for AK/SK auth)",
description: "Bailian workspace ID (only needed for deprecated AK/SK auth)",
},
{
flag: "--access-key-id <key>",
description: "Deprecated: use global --api-key or env DASHSCOPE_API_KEY instead",
},
{ flag: "--access-key-id <key>", description: "Alibaba Cloud Access Key ID (deprecated)" },
{
flag: "--access-key-secret <key>",
description: "Alibaba Cloud Access Key Secret (deprecated)",
description: "Deprecated: use global --api-key or env DASHSCOPE_API_KEY instead",
},
],
notes: [
"Authentication: use global flag `--api-key <key>` or env var `DASHSCOPE_API_KEY` (recommended). AK/SK auth is deprecated and will be removed in a future version.",
"`--workspace-id` is NOT required when using API-KEY auth.",
],
examples: [
'bl knowledge retrieve --index-id idx_xxx --query "如何使用阿里云百炼"',
'bl knowledge retrieve --index-id idx_xxx --query "API限流" --rerank --rerank-model qwen3-rerank-hybrid',
'bl knowledge retrieve --api-key $DASHSCOPE_API_KEY --index-id idx_xxx --query "RAG检索" --rerank --rerank-model qwen3-rerank-hybrid',
],
async run(config: Config, flags: GlobalFlags) {
const indexId = flags.indexId as string;
+3
View File
@@ -14,6 +14,7 @@ export interface Command {
usage?: string;
options?: OptionDef[];
examples?: string[];
notes?: string[];
execute: (config: Config, flags: GlobalFlags) => Promise<void>;
}
@@ -23,6 +24,7 @@ export interface CommandSpec {
usage?: string;
options?: OptionDef[];
examples?: string[];
notes?: string[];
run: (config: Config, flags: GlobalFlags) => Promise<void>;
}
@@ -33,6 +35,7 @@ export function defineCommand(spec: CommandSpec): Command {
usage: spec.usage,
options: spec.options,
examples: spec.examples,
notes: spec.notes,
execute: (config, flags) => spec.run(config, flags),
};
}
+21 -16
View File
@@ -23,21 +23,26 @@ Index: [index.md](index.md)
#### Options
| Flag | Type | Required | Description |
| ------------------------------- | ------- | -------- | -------------------------------------------------- |
| `--index-id <id>` | string | yes | Knowledge base index ID (required) |
| `--query <text>` | string | yes | Search query (required) |
| `--dense-similarity-top-k <n>` | number | no | Dense retrieval top K |
| `--sparse-similarity-top-k <n>` | number | no | Sparse retrieval top K |
| `--rerank` | boolean | no | Enable reranking |
| `--rerank-top-n <n>` | number | no | Rerank top N results |
| `--rerank-model <name>` | string | no | Rerank model, e.g. qwen3-rerank-hybrid |
| `--rerank-mode <mode>` | string | no | Rerank mode: qa, similar, or custom |
| `--rerank-instruct <text>` | string | no | Custom rerank instruction, when mode=custom |
| `--top-k <n>` | number | no | Number of results (deprecated, use --rerank-top-n) |
| `--workspace-id <id>` | string | no | Bailian workspace ID (required for AK/SK auth) |
| `--access-key-id <key>` | string | no | Alibaba Cloud Access Key ID (deprecated) |
| `--access-key-secret <key>` | string | no | Alibaba Cloud Access Key Secret (deprecated) |
| Flag | Type | Required | Description |
| ------------------------------- | ------- | -------- | ----------------------------------------------------------------- |
| `--index-id <id>` | string | yes | Knowledge base index ID (required) |
| `--query <text>` | string | yes | Search query (required) |
| `--dense-similarity-top-k <n>` | number | no | Dense retrieval top K |
| `--sparse-similarity-top-k <n>` | number | no | Sparse retrieval top K |
| `--rerank` | boolean | no | Enable reranking |
| `--rerank-top-n <n>` | number | no | Rerank top N results |
| `--rerank-model <name>` | string | no | Rerank model, e.g. qwen3-rerank-hybrid |
| `--rerank-mode <mode>` | string | no | Rerank mode: qa, similar, or custom |
| `--rerank-instruct <text>` | string | no | Custom rerank instruction, when mode=custom |
| `--top-k <n>` | number | no | Number of results (deprecated, use --rerank-top-n) |
| `--workspace-id <id>` | string | no | Bailian workspace ID (only needed for deprecated AK/SK auth) |
| `--access-key-id <key>` | string | no | Deprecated: use global --api-key or env DASHSCOPE_API_KEY instead |
| `--access-key-secret <key>` | string | no | Deprecated: use global --api-key or env DASHSCOPE_API_KEY instead |
#### Notes
- Authentication: use global flag `--api-key <key>` or env var `DASHSCOPE_API_KEY` (recommended). AK/SK auth is deprecated and will be removed in a future version.
- `--workspace-id` is NOT required when using API-KEY auth.
#### Examples
@@ -46,5 +51,5 @@ bl knowledge retrieve --index-id idx_xxx --query "如何使用阿里云百炼"
```
```bash
bl knowledge retrieve --index-id idx_xxx --query "API限流" --rerank --rerank-model qwen3-rerank-hybrid
bl knowledge retrieve --api-key $DASHSCOPE_API_KEY --index-id idx_xxx --query "RAG检索" --rerank --rerank-model qwen3-rerank-hybrid
```
+10
View File
@@ -55,6 +55,11 @@ function formatExamples(examples: string[] | undefined): string {
return examples.map((ex) => ["```bash", ex, "```"].join("\n")).join("\n\n") + "\n";
}
function formatNotes(notes: string[] | undefined): string {
if (!notes?.length) return "";
return notes.map((n) => `- ${n}`).join("\n") + "\n";
}
function commandSection(path: string, cmd: Command): string {
const lines: string[] = [];
lines.push(`### \`bl ${path}\``, "");
@@ -69,6 +74,11 @@ function commandSection(path: string, cmd: Command): string {
lines.push("#### Options", "");
lines.push(formatOptionsTable(cmd.options));
if (cmd.notes?.length) {
lines.push("#### Notes", "");
lines.push(formatNotes(cmd.notes));
}
lines.push("#### Examples", "");
lines.push(formatExamples(cmd.examples));