modular-voice-agent-sdk 1.0.0 → 1.2.0
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/README.md +5 -2
- package/dist/backends/cloud/audio-llm.d.ts +72 -0
- package/dist/backends/cloud/audio-llm.d.ts.map +1 -0
- package/dist/backends/cloud/audio-llm.js +366 -0
- package/dist/backends/cloud/audio-llm.js.map +1 -0
- package/dist/backends/cloud/index.d.ts +2 -0
- package/dist/backends/cloud/index.d.ts.map +1 -1
- package/dist/backends/cloud/index.js +2 -0
- package/dist/backends/cloud/index.js.map +1 -1
- package/dist/backends/cloud/llm.d.ts.map +1 -1
- package/dist/backends/cloud/llm.js +31 -18
- package/dist/backends/cloud/llm.js.map +1 -1
- package/dist/backends/native/audio-llm.d.ts +126 -0
- package/dist/backends/native/audio-llm.d.ts.map +1 -0
- package/dist/backends/native/audio-llm.js +680 -0
- package/dist/backends/native/audio-llm.js.map +1 -0
- package/dist/backends/native/llm.d.ts.map +1 -1
- package/dist/backends/native/llm.js +5 -7
- package/dist/backends/native/llm.js.map +1 -1
- package/dist/backends/native/stt.d.ts +2 -2
- package/dist/backends/native/stt.d.ts.map +1 -1
- package/dist/backends/native/stt.js +1 -1
- package/dist/backends/native/stt.js.map +1 -1
- package/dist/backends/transformers/llm.d.ts.map +1 -1
- package/dist/backends/transformers/llm.js +13 -10
- package/dist/backends/transformers/llm.js.map +1 -1
- package/dist/backends/transformers/stt.d.ts +2 -2
- package/dist/backends/transformers/stt.d.ts.map +1 -1
- package/dist/backends/transformers/stt.js +12 -7
- package/dist/backends/transformers/stt.js.map +1 -1
- package/dist/backends/transformers/tts.d.ts.map +1 -1
- package/dist/backends/transformers/tts.js +11 -6
- package/dist/backends/transformers/tts.js.map +1 -1
- package/dist/cache.d.ts +19 -0
- package/dist/cache.d.ts.map +1 -1
- package/dist/cache.js +39 -0
- package/dist/cache.js.map +1 -1
- package/dist/cli.js +47 -7
- package/dist/cli.js.map +1 -1
- package/dist/client/voice-client.d.ts +4 -2
- package/dist/client/voice-client.d.ts.map +1 -1
- package/dist/client/voice-client.js +15 -13
- package/dist/client/voice-client.js.map +1 -1
- package/dist/client/web-speech-stt.d.ts +12 -1
- package/dist/client/web-speech-stt.d.ts.map +1 -1
- package/dist/client/web-speech-stt.js +49 -4
- package/dist/client/web-speech-stt.js.map +1 -1
- package/dist/server/handler.d.ts +12 -7
- package/dist/server/handler.d.ts.map +1 -1
- package/dist/server/handler.js +20 -20
- package/dist/server/handler.js.map +1 -1
- package/dist/services/llm-logger.d.ts +7 -18
- package/dist/services/llm-logger.d.ts.map +1 -1
- package/dist/services/llm-logger.js +22 -41
- package/dist/services/llm-logger.js.map +1 -1
- package/dist/types.d.ts +27 -5
- package/dist/types.d.ts.map +1 -1
- package/dist/voice-pipeline.d.ts +48 -10
- package/dist/voice-pipeline.d.ts.map +1 -1
- package/dist/voice-pipeline.js +138 -40
- package/dist/voice-pipeline.js.map +1 -1
- package/package.json +1 -1
- package/scripts/setup.sh +23 -0
- package/USAGE.md +0 -567
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handler.js","sourceRoot":"","sources":["../../src/server/handler.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAKH,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAc3F
|
|
1
|
+
{"version":3,"file":"handler.js","sourceRoot":"","sources":["../../src/server/handler.ts"],"names":[],"mappings":"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"}
|
|
@@ -74,24 +74,21 @@ export declare class LLMLogger {
|
|
|
74
74
|
/**
|
|
75
75
|
* Tracks conversation state and emits structured events for new messages.
|
|
76
76
|
* Works with Message[] arrays directly - used by all backends.
|
|
77
|
-
*
|
|
77
|
+
* Each backend instance has its own tracker (per-session isolation).
|
|
78
78
|
*/
|
|
79
79
|
export declare class LLMConversationTracker {
|
|
80
|
-
private
|
|
80
|
+
private loggedMessages;
|
|
81
|
+
private callCount;
|
|
81
82
|
private logger;
|
|
82
83
|
constructor(logger: LLMLogger);
|
|
83
|
-
/**
|
|
84
|
-
* Get or create state for a conversation
|
|
85
|
-
*/
|
|
86
|
-
private getState;
|
|
87
84
|
/**
|
|
88
85
|
* Process messages array and emit events for new messages
|
|
89
86
|
*/
|
|
90
|
-
logInput(
|
|
87
|
+
logInput(messages: TrackerMessage[]): void;
|
|
91
88
|
/**
|
|
92
89
|
* Log an LLM response (text content and/or tool calls)
|
|
93
90
|
*/
|
|
94
|
-
logOutput(
|
|
91
|
+
logOutput(content: string, toolCalls?: Array<{
|
|
95
92
|
name: string;
|
|
96
93
|
arguments: Record<string, unknown>;
|
|
97
94
|
}>): void;
|
|
@@ -99,17 +96,9 @@ export declare class LLMConversationTracker {
|
|
|
99
96
|
* Log a raw response string (for backends that return tool calls as formatted strings)
|
|
100
97
|
* Parses <tool_call> tags and handles accordingly
|
|
101
98
|
*/
|
|
102
|
-
logRawOutput(
|
|
103
|
-
/**
|
|
104
|
-
* Remove a conversation's tracking state (called when session ends)
|
|
105
|
-
*/
|
|
106
|
-
removeConversation(conversationId: string): void;
|
|
107
|
-
/**
|
|
108
|
-
* Reset tracker state for a specific conversation
|
|
109
|
-
*/
|
|
110
|
-
resetConversation(conversationId: string): void;
|
|
99
|
+
logRawOutput(response: string): void;
|
|
111
100
|
/**
|
|
112
|
-
* Reset
|
|
101
|
+
* Reset tracker state
|
|
113
102
|
*/
|
|
114
103
|
reset(): void;
|
|
115
104
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"llm-logger.d.ts","sourceRoot":"","sources":["../../src/services/llm-logger.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,MAAM,MAAM,WAAW,GACnB;IAAE,IAAI,EAAE,kBAAkB,CAAA;CAAE,GAC5B;IAAE,IAAI,EAAE,gBAAgB,CAAC;IAAC,WAAW,EAAE,OAAO,CAAA;CAAE,GAChD;IAAE,IAAI,EAAE,iBAAiB,CAAA;CAAE,GAC3B;IAAE,IAAI,EAAE,cAAc,CAAA;CAAE,GACxB;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACnC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACjC;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,GAClE;IAAE,IAAI,EAAE,aAAa,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACxC;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACtC;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACrC;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAMvC,6EAA6E;AAC7E,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,WAAW,GAAG,MAAM,CAAC;IAC/C,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,CAAC,CAAC;IACpF,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAMD;;;GAGG;AACH,qBAAa,SAAS;IACpB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAS5B;IAEF,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAQ3B;IAEF,OAAO,CAAC,OAAO,CAAU;gBAEb,OAAO,GAAE;QAAE,OAAO,CAAC,EAAE,OAAO,CAAA;KAAO;IAI/C;;OAEG;IACH,GAAG,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI;IAiE7B;;OAEG;IACH,OAAO,CAAC,UAAU;IAMlB;;OAEG;IACH,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;CAGnC;
|
|
1
|
+
{"version":3,"file":"llm-logger.d.ts","sourceRoot":"","sources":["../../src/services/llm-logger.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,MAAM,MAAM,WAAW,GACnB;IAAE,IAAI,EAAE,kBAAkB,CAAA;CAAE,GAC5B;IAAE,IAAI,EAAE,gBAAgB,CAAC;IAAC,WAAW,EAAE,OAAO,CAAA;CAAE,GAChD;IAAE,IAAI,EAAE,iBAAiB,CAAA;CAAE,GAC3B;IAAE,IAAI,EAAE,cAAc,CAAA;CAAE,GACxB;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACnC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACjC;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,GAClE;IAAE,IAAI,EAAE,aAAa,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACxC;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACtC;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACrC;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAMvC,6EAA6E;AAC7E,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,WAAW,GAAG,MAAM,CAAC;IAC/C,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,CAAC,CAAC;IACpF,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAMD;;;GAGG;AACH,qBAAa,SAAS;IACpB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAS5B;IAEF,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAQ3B;IAEF,OAAO,CAAC,OAAO,CAAU;gBAEb,OAAO,GAAE;QAAE,OAAO,CAAC,EAAE,OAAO,CAAA;KAAO;IAI/C;;OAEG;IACH,GAAG,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI;IAiE7B;;OAEG;IACH,OAAO,CAAC,UAAU;IAMlB;;OAEG;IACH,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;CAGnC;AAMD;;;;GAIG;AACH,qBAAa,sBAAsB;IACjC,OAAO,CAAC,cAAc,CAAgB;IACtC,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,MAAM,CAAY;gBAEd,MAAM,EAAE,SAAS;IAI7B;;OAEG;IACH,QAAQ,CAAC,QAAQ,EAAE,cAAc,EAAE,GAAG,IAAI;IA4B1C;;OAEG;IACH,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,CAAC,GAAG,IAAI;IAczG;;;OAGG;IACH,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAUpC;;OAEG;IACH,KAAK,IAAI,IAAI;IAKb;;OAEG;IACH,OAAO,CAAC,UAAU;IAOlB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAqBxB;;OAEG;IACH,OAAO,CAAC,aAAa;CAYtB;AASD;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,SAAS,CAK5C;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,sBAAsB,CAK1D"}
|
|
@@ -108,47 +108,41 @@ export class LLMLogger {
|
|
|
108
108
|
this.enabled = enabled;
|
|
109
109
|
}
|
|
110
110
|
}
|
|
111
|
+
// ============================================================================
|
|
112
|
+
// Unified Conversation Tracker
|
|
113
|
+
// ============================================================================
|
|
111
114
|
/**
|
|
112
115
|
* Tracks conversation state and emits structured events for new messages.
|
|
113
116
|
* Works with Message[] arrays directly - used by all backends.
|
|
114
|
-
*
|
|
117
|
+
* Each backend instance has its own tracker (per-session isolation).
|
|
115
118
|
*/
|
|
116
119
|
export class LLMConversationTracker {
|
|
117
|
-
|
|
120
|
+
loggedMessages = [];
|
|
121
|
+
callCount = 0;
|
|
118
122
|
logger;
|
|
119
123
|
constructor(logger) {
|
|
120
124
|
this.logger = logger;
|
|
121
125
|
}
|
|
122
126
|
/**
|
|
123
|
-
*
|
|
127
|
+
* Process messages array and emit events for new messages
|
|
124
128
|
*/
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
if (
|
|
128
|
-
// New conversation!
|
|
129
|
-
state = { loggedMessages: [], callCount: 0 };
|
|
130
|
-
this.conversations.set(conversationId, state);
|
|
129
|
+
logInput(messages) {
|
|
130
|
+
// First call? Log new conversation
|
|
131
|
+
if (this.callCount === 0) {
|
|
131
132
|
this.logger.log({ type: 'new_conversation' });
|
|
132
133
|
}
|
|
133
|
-
return state;
|
|
134
|
-
}
|
|
135
|
-
/**
|
|
136
|
-
* Process messages array and emit events for new messages
|
|
137
|
-
*/
|
|
138
|
-
logInput(conversationId, messages) {
|
|
139
|
-
const state = this.getState(conversationId);
|
|
140
134
|
// Find which messages are new
|
|
141
135
|
const newMessages = [];
|
|
142
136
|
for (let i = 0; i < messages.length; i++) {
|
|
143
137
|
const msgKey = this.messageKey(messages[i]);
|
|
144
|
-
if (i >=
|
|
138
|
+
if (i >= this.loggedMessages.length || this.loggedMessages[i] !== msgKey) {
|
|
145
139
|
newMessages.push(messages[i]);
|
|
146
|
-
|
|
140
|
+
this.loggedMessages[i] = msgKey;
|
|
147
141
|
}
|
|
148
142
|
}
|
|
149
|
-
|
|
150
|
-
const isFirstCall =
|
|
151
|
-
|
|
143
|
+
this.loggedMessages.length = messages.length;
|
|
144
|
+
const isFirstCall = this.callCount === 0;
|
|
145
|
+
this.callCount++;
|
|
152
146
|
// Emit events
|
|
153
147
|
this.logger.log({ type: 'llm_call_start', isFirstCall });
|
|
154
148
|
for (const msg of newMessages) {
|
|
@@ -158,9 +152,7 @@ export class LLMConversationTracker {
|
|
|
158
152
|
/**
|
|
159
153
|
* Log an LLM response (text content and/or tool calls)
|
|
160
154
|
*/
|
|
161
|
-
logOutput(
|
|
162
|
-
// Ensure conversation exists (in case logOutput is called without logInput)
|
|
163
|
-
this.getState(conversationId);
|
|
155
|
+
logOutput(content, toolCalls) {
|
|
164
156
|
this.logger.log({ type: 'llm_call_output' });
|
|
165
157
|
if (toolCalls && toolCalls.length > 0) {
|
|
166
158
|
for (const tc of toolCalls) {
|
|
@@ -176,32 +168,21 @@ export class LLMConversationTracker {
|
|
|
176
168
|
* Log a raw response string (for backends that return tool calls as formatted strings)
|
|
177
169
|
* Parses <tool_call> tags and handles accordingly
|
|
178
170
|
*/
|
|
179
|
-
logRawOutput(
|
|
171
|
+
logRawOutput(response) {
|
|
180
172
|
const toolCall = this.parseToolCall(response);
|
|
181
173
|
if (toolCall) {
|
|
182
|
-
this.logOutput(
|
|
174
|
+
this.logOutput('', [toolCall]);
|
|
183
175
|
}
|
|
184
176
|
else {
|
|
185
|
-
this.logOutput(
|
|
177
|
+
this.logOutput(response);
|
|
186
178
|
}
|
|
187
179
|
}
|
|
188
180
|
/**
|
|
189
|
-
*
|
|
190
|
-
*/
|
|
191
|
-
removeConversation(conversationId) {
|
|
192
|
-
this.conversations.delete(conversationId);
|
|
193
|
-
}
|
|
194
|
-
/**
|
|
195
|
-
* Reset tracker state for a specific conversation
|
|
196
|
-
*/
|
|
197
|
-
resetConversation(conversationId) {
|
|
198
|
-
this.conversations.delete(conversationId);
|
|
199
|
-
}
|
|
200
|
-
/**
|
|
201
|
-
* Reset all tracker state (e.g., for testing)
|
|
181
|
+
* Reset tracker state
|
|
202
182
|
*/
|
|
203
183
|
reset() {
|
|
204
|
-
this.
|
|
184
|
+
this.loggedMessages = [];
|
|
185
|
+
this.callCount = 0;
|
|
205
186
|
}
|
|
206
187
|
/**
|
|
207
188
|
* Generate a unique key for a message (for deduplication)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"llm-logger.js","sourceRoot":"","sources":["../../src/services/llm-logger.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"llm-logger.js","sourceRoot":"","sources":["../../src/services/llm-logger.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -95,9 +95,32 @@ export interface ProgressInfo {
|
|
|
95
95
|
total?: number;
|
|
96
96
|
}
|
|
97
97
|
export type ProgressCallback = (progress: ProgressInfo) => void;
|
|
98
|
+
/**
|
|
99
|
+
* Result from STT transcription
|
|
100
|
+
*/
|
|
101
|
+
export interface STTResult {
|
|
102
|
+
transcript: string;
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* TurnContext - Per-turn state that flows through the pipeline
|
|
106
|
+
*
|
|
107
|
+
* Created fresh for each user request (not session-level).
|
|
108
|
+
* Allows backends to share state within a single turn without
|
|
109
|
+
* relying on call-order-dependent internal state.
|
|
110
|
+
*/
|
|
111
|
+
export interface TurnContext {
|
|
112
|
+
/** Current conversation history (read-only reference) */
|
|
113
|
+
readonly history: Message[];
|
|
114
|
+
/** Tools available for this turn */
|
|
115
|
+
readonly tools?: ToolDefinition[];
|
|
116
|
+
/** Result from STT stage (set by STT backend) */
|
|
117
|
+
sttResult?: STTResult;
|
|
118
|
+
/** Result from LLM stage (set by LLM backend, or by CloudAudioLLM during transcription) */
|
|
119
|
+
llmResult?: LLMGenerateResult;
|
|
120
|
+
}
|
|
98
121
|
export interface STTPipeline {
|
|
99
122
|
initialize(onProgress?: ProgressCallback): Promise<void>;
|
|
100
|
-
transcribe(audio: Float32Array): Promise<string>;
|
|
123
|
+
transcribe(audio: Float32Array, turn?: TurnContext): Promise<string>;
|
|
101
124
|
isReady(): boolean;
|
|
102
125
|
}
|
|
103
126
|
/**
|
|
@@ -110,8 +133,8 @@ export interface LLMGenerateOptions {
|
|
|
110
133
|
onToken?: (token: string) => void;
|
|
111
134
|
/** Callback when tool calls are detected */
|
|
112
135
|
onToolCall?: (toolCall: ToolCall) => void;
|
|
113
|
-
/**
|
|
114
|
-
|
|
136
|
+
/** Turn context for sharing state between pipeline stages */
|
|
137
|
+
turn?: TurnContext;
|
|
115
138
|
}
|
|
116
139
|
/**
|
|
117
140
|
* LLM generation result
|
|
@@ -189,7 +212,6 @@ export interface CloudLLMConfig {
|
|
|
189
212
|
baseUrl: string;
|
|
190
213
|
apiKey?: string;
|
|
191
214
|
model: string;
|
|
192
|
-
|
|
193
|
-
temperature?: number;
|
|
215
|
+
modelParams?: Record<string, unknown>;
|
|
194
216
|
}
|
|
195
217
|
//# sourceMappingURL=types.d.ts.map
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/voice-pipeline.d.ts
CHANGED
|
@@ -8,13 +8,15 @@
|
|
|
8
8
|
* The pipeline is stateless - callers manage conversation history via ConversationContext.
|
|
9
9
|
*/
|
|
10
10
|
import type { STTPipeline, LLMPipeline, TTSPipeline, Message, ProgressCallback, AudioPlayable, Tool, ToolDefinition, ToolCall } from './types';
|
|
11
|
+
/** Factory function that creates a backend instance */
|
|
12
|
+
export type BackendFactory<T> = () => T;
|
|
11
13
|
export interface VoicePipelineConfig {
|
|
12
|
-
/** STT backend (optional if client does local STT) */
|
|
13
|
-
stt?: STTPipeline | null;
|
|
14
|
-
/** LLM backend (required) */
|
|
15
|
-
llm: LLMPipeline
|
|
16
|
-
/** TTS backend (optional if client does local TTS) */
|
|
17
|
-
tts?: TTSPipeline | null;
|
|
14
|
+
/** STT backend factory (optional if client does local STT) */
|
|
15
|
+
stt?: BackendFactory<STTPipeline> | null;
|
|
16
|
+
/** LLM backend factory (required) */
|
|
17
|
+
llm: BackendFactory<LLMPipeline>;
|
|
18
|
+
/** TTS backend factory (optional if client does local TTS) */
|
|
19
|
+
tts?: BackendFactory<TTSPipeline> | null;
|
|
18
20
|
/** System prompt for the LLM */
|
|
19
21
|
systemPrompt: string;
|
|
20
22
|
/** Registered tools for function calling */
|
|
@@ -41,12 +43,21 @@ export interface VoicePipelineCallbacks {
|
|
|
41
43
|
* Conversation context - callers manage history externally
|
|
42
44
|
*/
|
|
43
45
|
export interface ConversationContext {
|
|
44
|
-
/** Unique conversation ID for tracking/logging */
|
|
45
|
-
conversationId: string;
|
|
46
46
|
/** Conversation history (managed by caller) */
|
|
47
47
|
history: Message[];
|
|
48
48
|
}
|
|
49
|
+
/**
|
|
50
|
+
* Session backends - per-session instances created from factories
|
|
51
|
+
*/
|
|
52
|
+
export interface SessionBackends {
|
|
53
|
+
stt: STTPipeline | null;
|
|
54
|
+
llm: LLMPipeline;
|
|
55
|
+
tts: TTSPipeline | null;
|
|
56
|
+
}
|
|
49
57
|
export declare class VoicePipeline {
|
|
58
|
+
private sttFactory;
|
|
59
|
+
private llmFactory;
|
|
60
|
+
private ttsFactory;
|
|
50
61
|
private stt;
|
|
51
62
|
private llm;
|
|
52
63
|
private tts;
|
|
@@ -56,6 +67,7 @@ export declare class VoicePipeline {
|
|
|
56
67
|
private toolDefinitions;
|
|
57
68
|
private toolFillerPhrases;
|
|
58
69
|
private fillerPhraseIndex;
|
|
70
|
+
private initialized;
|
|
59
71
|
constructor(config: VoicePipelineConfig);
|
|
60
72
|
/**
|
|
61
73
|
* Register a tool for function calling
|
|
@@ -77,8 +89,28 @@ export declare class VoicePipeline {
|
|
|
77
89
|
* Create initial history with system prompt
|
|
78
90
|
*/
|
|
79
91
|
createInitialHistory(): Message[];
|
|
92
|
+
/**
|
|
93
|
+
* Initialize the pipeline by warming the model cache.
|
|
94
|
+
* Creates instances and initializes them, which loads models into cache.
|
|
95
|
+
* These instances are also stored for the pipeline's own use (local/browser mode).
|
|
96
|
+
* Subsequent session instances will initialize instantly from cache.
|
|
97
|
+
*/
|
|
80
98
|
initialize(onProgress?: ProgressCallback): Promise<void>;
|
|
99
|
+
/**
|
|
100
|
+
* Check if the pipeline has been initialized (cache warmed).
|
|
101
|
+
*/
|
|
81
102
|
isReady(): boolean;
|
|
103
|
+
/**
|
|
104
|
+
* Create per-session backend instances.
|
|
105
|
+
* Call this when a new session (e.g., WebSocket connection) starts.
|
|
106
|
+
* Returns initialized backends ready for use.
|
|
107
|
+
*/
|
|
108
|
+
createSessionBackends(): Promise<SessionBackends>;
|
|
109
|
+
/**
|
|
110
|
+
* Check if this pipeline has the same factory for STT and LLM.
|
|
111
|
+
* Used by handlers to detect CloudAudioLLM pattern where one instance serves both roles.
|
|
112
|
+
*/
|
|
113
|
+
hasSameSTTAndLLM(): boolean;
|
|
82
114
|
/**
|
|
83
115
|
* Check if pipeline has STT configured
|
|
84
116
|
*/
|
|
@@ -90,13 +122,19 @@ export declare class VoicePipeline {
|
|
|
90
122
|
/**
|
|
91
123
|
* Process text input through LLM (and optionally TTS)
|
|
92
124
|
* Returns new messages to append to history
|
|
125
|
+
* @param backends - Optional per-session backends. If not provided, uses pipeline's internal backends.
|
|
126
|
+
*/
|
|
127
|
+
processText(text: string, context: ConversationContext, callbacks: Omit<VoicePipelineCallbacks, 'onTranscript'>, backends?: SessionBackends): Promise<Message[]>;
|
|
128
|
+
/**
|
|
129
|
+
* Create a TurnContext for a single turn through the pipeline
|
|
93
130
|
*/
|
|
94
|
-
|
|
131
|
+
private createTurnContext;
|
|
95
132
|
/**
|
|
96
133
|
* Process audio input through STT → LLM → TTS
|
|
97
134
|
* Returns new messages to append to history
|
|
135
|
+
* @param backends - Optional per-session backends. If not provided, uses pipeline's internal backends.
|
|
98
136
|
*/
|
|
99
|
-
processAudio(audio: Float32Array, context: ConversationContext, callbacks: VoicePipelineCallbacks): Promise<Message[]>;
|
|
137
|
+
processAudio(audio: Float32Array, context: ConversationContext, callbacks: VoicePipelineCallbacks, backends?: SessionBackends): Promise<Message[]>;
|
|
100
138
|
/**
|
|
101
139
|
* Internal: Process transcript through LLM
|
|
102
140
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"voice-pipeline.d.ts","sourceRoot":"","sources":["../src/voice-pipeline.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EACV,WAAW,EACX,WAAW,EACX,WAAW,EACX,OAAO,EACP,gBAAgB,EAChB,aAAa,EACb,IAAI,EACJ,cAAc,EACd,QAAQ,
|
|
1
|
+
{"version":3,"file":"voice-pipeline.d.ts","sourceRoot":"","sources":["../src/voice-pipeline.ts"],"names":[],"mappings":"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"}
|