@aalis/plugin-asr-openai 0.4.0 → 0.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -4,9 +4,9 @@ export declare const displayName = "OpenAI Whisper ASR";
4
4
  export declare const subsystem = "media";
5
5
  export declare const provides: string[];
6
6
  export declare const inject: {
7
- required: string[];
8
7
  optional: string[];
9
8
  };
9
+ export declare const reusable = true;
10
10
  interface Cfg {
11
11
  apiKey: string;
12
12
  baseUrl: string;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAKzD,eAAO,MAAM,IAAI,6BAA6B,CAAC;AAC/C,eAAO,MAAM,WAAW,uBAAuB,CAAC;AAChD,eAAO,MAAM,SAAS,UAAU,CAAC;AACjC,eAAO,MAAM,QAAQ,EAAE,MAAM,EAAO,CAAC;AACrC,eAAO,MAAM,MAAM;;;CAAiD,CAAC;AAErE,UAAU,GAAG;IACX,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,eAAO,MAAM,YAAY,EAAE,YAK1B,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,GAK3B,CAAC;AA+BF,wBAAgB,KAAK,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAgDtE"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAOzD,eAAO,MAAM,IAAI,6BAA6B,CAAC;AAC/C,eAAO,MAAM,WAAW,uBAAuB,CAAC;AAChD,eAAO,MAAM,SAAS,UAAU,CAAC;AACjC,eAAO,MAAM,QAAQ,UAAU,CAAC;AAChC,eAAO,MAAM,MAAM;;CAAuC,CAAC;AAC3D,eAAO,MAAM,QAAQ,OAAO,CAAC;AAE7B,UAAU,GAAG;IACX,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,eAAO,MAAM,YAAY,EAAE,YAK1B,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,GAK3B,CAAC;AA4CF,wBAAgB,KAAK,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAyCtE"}
package/dist/index.js CHANGED
@@ -6,11 +6,14 @@
6
6
  // ============================================================
7
7
  import { Buffer } from 'node:buffer';
8
8
  import { createProcessGateway } from '@aalis/plugin-process-api';
9
+ import { createStorageGateway, isStorageUri } from '@aalis/plugin-storage-api';
10
+ import { safeFetch } from '@aalis/util-network-guard';
9
11
  export const name = '@aalis/plugin-asr-openai';
10
12
  export const displayName = 'OpenAI Whisper ASR';
11
13
  export const subsystem = 'media';
12
- export const provides = [];
13
- export const inject = { required: ['media'], optional: ['process'] };
14
+ export const provides = ['asr'];
15
+ export const inject = { optional: ['process', 'storage'] };
16
+ export const reusable = true;
14
17
  export const configSchema = {
15
18
  apiKey: { type: 'string', label: 'API Key', secret: true, default: '' },
16
19
  baseUrl: { type: 'string', label: 'Base URL', default: 'https://api.openai.com/v1' },
@@ -23,13 +26,12 @@ export const defaultConfig = {
23
26
  model: 'whisper-1',
24
27
  priority: 50,
25
28
  };
26
- async function attachmentToBlob(data, proc) {
27
- if (data.startsWith('data:')) {
28
- const m = data.match(/^data:([^;]+);base64,(.+)$/);
29
- if (!m)
30
- throw new Error('无效 data URL');
31
- const mime = m[1];
32
- const buf = Buffer.from(m[2], 'base64');
29
+ async function attachmentToBlob(data, proc, storage) {
30
+ // base64 data URL(必须带 ;base64,,借此与 storage URI `data:/...` 区分)
31
+ const dataUri = data.match(/^data:([^;]+);base64,(.+)$/);
32
+ if (dataUri) {
33
+ const mime = dataUri[1];
34
+ const buf = Buffer.from(dataUri[2], 'base64');
33
35
  const ext = mime.split('/')[1]?.split(';')[0] ?? 'bin';
34
36
  return { blob: new Blob([buf], { type: mime }), filename: `audio.${ext}` };
35
37
  }
@@ -41,7 +43,7 @@ async function attachmentToBlob(data, proc) {
41
43
  return { blob: new Blob([bytes]), filename: `audio.${ext}` };
42
44
  }
43
45
  if (data.startsWith('http://') || data.startsWith('https://')) {
44
- const resp = await fetch(data);
46
+ const resp = await safeFetch(data);
45
47
  if (!resp.ok)
46
48
  throw new Error(`下载失败 ${resp.status}`);
47
49
  const ab = await resp.arrayBuffer();
@@ -51,22 +53,32 @@ async function attachmentToBlob(data, proc) {
51
53
  filename: `audio.${ext}`,
52
54
  };
53
55
  }
56
+ // storage URI(scheme:/...)或历史裸相对路径(data/... → data:/...)→ 经 storage 读取
57
+ let storageUri = null;
58
+ if (isStorageUri(data))
59
+ storageUri = data;
60
+ else if (/^data\//.test(data))
61
+ storageUri = `data:/${data.slice('data/'.length)}`;
62
+ if (storageUri) {
63
+ const bytes = (await storage.readFile(storageUri));
64
+ const ext = storageUri.split('.').pop() ?? 'bin';
65
+ return { blob: new Blob([bytes]), filename: `audio.${ext}` };
66
+ }
54
67
  throw new Error(`不支持的附件来源: ${data.slice(0, 32)}`);
55
68
  }
56
69
  export function apply(ctx, raw) {
57
70
  const cfg = { ...defaultConfig, ...raw };
58
71
  const logger = ctx.logger.child('asr-openai');
59
72
  if (!cfg.apiKey) {
60
- logger.warn('未配置 apiKey,插件不会注册 processor');
61
- return;
73
+ // openai/embedding-openai 一致:缺必填配置时抛清晰错误(而非静默 return,
74
+ // 否则声明了 provides:['asr'] 却不注册会触发难懂的 provides 校验错)。
75
+ throw new Error('OpenAI Whisper ASR 需要配置 apiKey(不使用 OpenAI ASR 可在插件管理里禁用本插件)');
62
76
  }
63
77
  const proc = createProcessGateway(ctx);
64
- const processor = {
65
- name: `asr-openai:${cfg.model}`,
66
- capabilities: ['audio'],
67
- priority: cfg.priority,
78
+ const storage = createStorageGateway(ctx);
79
+ const asr = {
68
80
  async transcribe(input) {
69
- const { blob, filename } = await attachmentToBlob(input.attachment.data, proc);
81
+ const { blob, filename } = await attachmentToBlob(input.attachment.data, proc, storage);
70
82
  const fd = new FormData();
71
83
  fd.append('file', blob, filename);
72
84
  fd.append('model', cfg.model);
@@ -87,13 +99,7 @@ export function apply(ctx, raw) {
87
99
  return { text: data.text ?? '', segments };
88
100
  },
89
101
  };
90
- const media = ctx.getService('media');
91
- if (!media) {
92
- logger.error('media 服务不可用,跳过注册');
93
- return;
94
- }
95
- const dispose = media.registerProcessor(processor);
96
- ctx.onDispose(() => dispose());
97
- logger.info(`OpenAI Whisper 转写已注册 (model=${cfg.model}, prio=${cfg.priority})`);
102
+ ctx.provide('asr', asr, { priority: cfg.priority });
103
+ logger.info(`OpenAI Whisper ASR 已注册 (model=${cfg.model}, prio=${cfg.priority})`);
98
104
  }
99
105
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aalis/plugin-asr-openai",
3
- "version": "0.4.0",
3
+ "version": "0.5.1",
4
4
  "license": "MIT",
5
5
  "description": "语音识别(ASR)—— OpenAI Whisper API 提供者",
6
6
  "type": "module",
@@ -14,25 +14,25 @@
14
14
  "dist"
15
15
  ],
16
16
  "dependencies": {
17
- "@aalis/plugin-process-api": "^0.4.0"
17
+ "@aalis/plugin-process-api": "^0.5.0",
18
+ "@aalis/plugin-storage-api": "^0.5.1",
19
+ "@aalis/util-network-guard": "^0.5.0"
18
20
  },
19
21
  "devDependencies": {
20
22
  "@types/node": "^22.0.0",
21
23
  "typescript": "^5.7.0",
22
- "@aalis/plugin-webui-api": "0.4.0",
23
- "@aalis/core": "0.4.0",
24
- "@aalis/plugin-media-api": "0.4.0"
24
+ "@aalis/core": "0.5.0",
25
+ "@aalis/plugin-webui-api": "0.5.0",
26
+ "@aalis/plugin-asr-api": "0.5.0"
25
27
  },
26
28
  "peerDependencies": {
27
29
  "@aalis/core": ">=0.2.0 <1.0.0"
28
30
  },
29
31
  "aalis": {
30
32
  "service": {
31
- "required": [
32
- "media"
33
- ],
34
33
  "optional": [
35
- "process"
34
+ "process",
35
+ "storage"
36
36
  ]
37
37
  }
38
38
  },