Files
CamTalk/backend/internal/orchestrator/orchestrator.go
2026-06-20 19:57:36 +08:00

32 lines
864 B
Go

// Package orchestrator 实现 STT → LLM → TTS 流式并行管道。
package orchestrator
import (
"context"
"github.com/hhs/camtalk/internal/models"
)
// Orchestrator AI 编排器接口。
// 接收查询并执行完整的 STT → LLM → TTS 管道。
type Orchestrator interface {
// ProcessQuery 处理一次用户查询。
// ctx 用于整体超时和中断控制。
// sessionID 用于会话管理和历史获取。
// req 包含图像和音频数据。
// sender 用于向客户端推送消息。
ProcessQuery(
ctx context.Context,
sessionID string,
req models.WsQuery,
sender Sender,
) error
}
// QueryRequest 查询请求(内部使用)。
type QueryRequest struct {
Image []byte // JPEG 图片(已从 Base64 解码)
Audio []byte // 音频数据(已从 Base64 解码)
Language string // 语言,如 "zh-CN"
}