You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
42 lines
2.4 KiB
42 lines
2.4 KiB
package console
|
|
|
|
import "yunyan/comm"
|
|
|
|
// 会议记录服务编排 (echomeet orchestration)。
|
|
//
|
|
// 与旧的 echomeet_svc_config(每应用一份、在业务库、自己存凭据)不同:
|
|
// 编排**不存凭据**,只引用「第三方服务配置」(svc_config) 里配好的服务 id,按
|
|
// 作用域 = (app_name, region) 分层:app_name='' 且 region=0 是「全局默认」兜底,
|
|
// 越具体越优先。凭据、区域覆盖都由 svc_config / svc_region_override 那一套负责。
|
|
//
|
|
// 三类(Kind)各自映射到服务池的服务类别,管理端选服务时按此过滤:
|
|
// 识别 → svcCatASRFile(8);翻译 → svcCatMT(3);总结 → svcCatLLM(5) + svcCatLLMVision(9)。
|
|
// 识别/翻译按 Priority 升序选路,总结按 IsDefault + ClientVisible + 应用级开关。
|
|
//
|
|
// 存 console 共享库(postgres),与 svc_config 同库,便于 join 服务名/解析下发。
|
|
//
|
|
// ⚠️ 回调地址契约(下发时必须遵守):录音文件识别服务的 callback_path 字段存的是**相对路径**
|
|
// (如 /api/home/echomeet_backcall),不是完整 URL——同一个服务会被所有应用共用,而各应用/部署
|
|
// 的对外地址不同,写死完整 URL 只对一个应用有效。
|
|
// 完整回调 = 该部署的对外地址(AppRegistry.BaseUrl) + callback_path,**由 console 在下发时拼接**
|
|
// (console 才有注册表里的 base_url;业务服务未必知道自己的对外地址,尤其多区域部署)。
|
|
// 下发解析顺序:(app,region) → (app,0) → ('',region) → ('',0) 全局默认兜底,越具体越优先。
|
|
|
|
// 编排类别(会议记录三段)。常量已下沉 comm(echomeet 运行时按 kind 消费编排),此处保留包内别名。
|
|
const (
|
|
echoKindASR = comm.EchoKindASR // 识别(录音文件转写)
|
|
echoKindMT = comm.EchoKindMT // 翻译
|
|
echoKindLLM = comm.EchoKindLLM // 总结(大模型)
|
|
)
|
|
|
|
// echoKindSvcCats 各编排类别对应的服务池类别(前端选服务时按此过滤,后端校验 svc_id 归属用)。
|
|
var echoKindSvcCats = map[int32][]int32{
|
|
echoKindASR: {svcCatASRFile},
|
|
echoKindMT: {svcCatMT},
|
|
echoKindLLM: {svcCatLLM, svcCatLLMVision},
|
|
}
|
|
|
|
// EchoOrchestration / EchoOrchSetting 结构已下沉到 comm/svcpool.go(echomeet 运行时直读消费),
|
|
// console 侧用 type alias 引用,包内代码零改动。
|
|
type EchoOrchestration = comm.EchoOrchestration
|
|
type EchoOrchSetting = comm.EchoOrchSetting
|
|
|