视频保存
This commit is contained in:
47
admin/src/api/transcribe.js
Normal file
47
admin/src/api/transcribe.js
Normal file
@@ -0,0 +1,47 @@
|
||||
/**
|
||||
* 语音转写 API(Phase B)
|
||||
*
|
||||
* 对应后端路由:
|
||||
* POST /api/v1/admin/recordings/:id/transcribe 提交转写任务(异步)
|
||||
* GET /api/v1/admin/recordings/:id/transcript 查询转写结果
|
||||
*
|
||||
* 后端通过外部 LLM 配置中心 (MySQL t_llm_provider/t_llm_model/t_llm_key)
|
||||
* 选择启用的 ASR 模型 + Key,调用 openai_compatible /audio/transcriptions。
|
||||
*
|
||||
* 状态机:pending → running → ready / failed
|
||||
*
|
||||
* 503:LLM 配置库未启用,admin 应提示「请联系管理员配置 STT」
|
||||
* 202:任务已在跑,前端可继续轮询
|
||||
*/
|
||||
import request from '@/utils/request'
|
||||
|
||||
/**
|
||||
* 查询某段录制的最新转写结果
|
||||
* @param {number} recordingId
|
||||
* @returns {Promise<{data: TranscriptDTO|null}>}
|
||||
*/
|
||||
export function getTranscript(recordingId) {
|
||||
return request({
|
||||
url: `/api/v1/admin/recordings/${recordingId}/transcript`,
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 提交转写任务
|
||||
* @param {number} recordingId
|
||||
* @param {Object} [opts]
|
||||
* @param {boolean} [opts.force=false] - true=已 ready 时强制重跑
|
||||
* @param {string} [opts.language=''] - ISO-639 语言提示,"" 表示自动检测
|
||||
* @returns {Promise<{data: TranscriptDTO}>}
|
||||
*/
|
||||
export function submitTranscribe(recordingId, opts = {}) {
|
||||
return request({
|
||||
url: `/api/v1/admin/recordings/${recordingId}/transcribe`,
|
||||
method: 'post',
|
||||
data: {
|
||||
force: !!opts.force,
|
||||
language: opts.language || ''
|
||||
}
|
||||
})
|
||||
}
|
||||
Reference in New Issue
Block a user