modular-voice-agent-sdk 1.0.0 → 1.2.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/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-runtime.d.ts +29 -0
- package/dist/cache-runtime.d.ts.map +1 -0
- package/dist/cache-runtime.js +43 -0
- package/dist/cache-runtime.js.map +1 -0
- package/dist/cache.d.ts +4 -0
- package/dist/cache.d.ts.map +1 -1
- package/dist/cache.js +5 -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
package/dist/voice-pipeline.js
CHANGED
|
@@ -17,19 +17,26 @@ const DEFAULT_TOOL_FILLER_PHRASES = [
|
|
|
17
17
|
'Let me look that up.',
|
|
18
18
|
];
|
|
19
19
|
export class VoicePipeline {
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
20
|
+
// Factories for creating per-session instances
|
|
21
|
+
sttFactory;
|
|
22
|
+
llmFactory;
|
|
23
|
+
ttsFactory;
|
|
24
|
+
// Internal backends for pipeline's own use (e.g., local/browser mode)
|
|
25
|
+
stt = null;
|
|
26
|
+
llm = null;
|
|
27
|
+
tts = null;
|
|
23
28
|
systemPrompt;
|
|
24
29
|
textNormalizer = new TextNormalizer();
|
|
25
30
|
tools = new Map();
|
|
26
31
|
toolDefinitions = [];
|
|
27
32
|
toolFillerPhrases;
|
|
28
33
|
fillerPhraseIndex = 0;
|
|
34
|
+
// Track if cache has been warmed
|
|
35
|
+
initialized = false;
|
|
29
36
|
constructor(config) {
|
|
30
|
-
this.
|
|
31
|
-
this.
|
|
32
|
-
this.
|
|
37
|
+
this.sttFactory = config.stt ?? null;
|
|
38
|
+
this.llmFactory = config.llm;
|
|
39
|
+
this.ttsFactory = config.tts ?? null;
|
|
33
40
|
this.systemPrompt = config.systemPrompt;
|
|
34
41
|
this.toolFillerPhrases = config.toolFillerPhrases ?? DEFAULT_TOOL_FILLER_PHRASES;
|
|
35
42
|
// Register tools
|
|
@@ -75,43 +82,115 @@ export class VoicePipeline {
|
|
|
75
82
|
createInitialHistory() {
|
|
76
83
|
return [{ role: 'system', content: this.systemPrompt }];
|
|
77
84
|
}
|
|
85
|
+
/**
|
|
86
|
+
* Initialize the pipeline by warming the model cache.
|
|
87
|
+
* Creates instances and initializes them, which loads models into cache.
|
|
88
|
+
* These instances are also stored for the pipeline's own use (local/browser mode).
|
|
89
|
+
* Subsequent session instances will initialize instantly from cache.
|
|
90
|
+
*/
|
|
78
91
|
async initialize(onProgress) {
|
|
92
|
+
// Create instances - these warm the cache and are kept for pipeline's own use
|
|
93
|
+
// Handle special case: if stt and llm use the same factory (e.g., CloudAudioLLM),
|
|
94
|
+
// create one instance and use it for both
|
|
95
|
+
if (this.hasSameSTTAndLLM()) {
|
|
96
|
+
const sharedInstance = this.llmFactory();
|
|
97
|
+
this.stt = sharedInstance;
|
|
98
|
+
this.llm = sharedInstance;
|
|
99
|
+
}
|
|
100
|
+
else {
|
|
101
|
+
this.stt = this.sttFactory?.() ?? null;
|
|
102
|
+
this.llm = this.llmFactory();
|
|
103
|
+
}
|
|
104
|
+
this.tts = this.ttsFactory?.() ?? null;
|
|
79
105
|
const promises = [this.llm.initialize(onProgress)];
|
|
80
|
-
if
|
|
106
|
+
// Only initialize STT separately if it's a different instance
|
|
107
|
+
if (this.stt && !this.hasSameSTTAndLLM()) {
|
|
81
108
|
promises.push(this.stt.initialize(onProgress));
|
|
82
109
|
}
|
|
83
110
|
if (this.tts) {
|
|
84
111
|
promises.push(this.tts.initialize(onProgress));
|
|
85
112
|
}
|
|
86
113
|
await Promise.all(promises);
|
|
114
|
+
this.initialized = true;
|
|
87
115
|
}
|
|
116
|
+
/**
|
|
117
|
+
* Check if the pipeline has been initialized (cache warmed).
|
|
118
|
+
*/
|
|
88
119
|
isReady() {
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
120
|
+
return this.initialized;
|
|
121
|
+
}
|
|
122
|
+
/**
|
|
123
|
+
* Create per-session backend instances.
|
|
124
|
+
* Call this when a new session (e.g., WebSocket connection) starts.
|
|
125
|
+
* Returns initialized backends ready for use.
|
|
126
|
+
*/
|
|
127
|
+
async createSessionBackends() {
|
|
128
|
+
if (!this.initialized) {
|
|
129
|
+
throw new Error('VoicePipeline not initialized. Call initialize() first.');
|
|
130
|
+
}
|
|
131
|
+
// Create fresh instances for this session
|
|
132
|
+
// Handle special case: if stt and llm use the same factory, share the instance
|
|
133
|
+
let stt;
|
|
134
|
+
let llm;
|
|
135
|
+
if (this.hasSameSTTAndLLM()) {
|
|
136
|
+
const sharedInstance = this.llmFactory();
|
|
137
|
+
stt = sharedInstance;
|
|
138
|
+
llm = sharedInstance;
|
|
139
|
+
}
|
|
140
|
+
else {
|
|
141
|
+
stt = this.sttFactory?.() ?? null;
|
|
142
|
+
llm = this.llmFactory();
|
|
143
|
+
}
|
|
144
|
+
const tts = this.ttsFactory?.() ?? null;
|
|
145
|
+
// Initialize (fast - uses cache)
|
|
146
|
+
const promises = [llm.initialize()];
|
|
147
|
+
// Only initialize STT separately if it's a different instance
|
|
148
|
+
if (stt && !this.hasSameSTTAndLLM()) {
|
|
149
|
+
promises.push(stt.initialize());
|
|
150
|
+
}
|
|
151
|
+
if (tts)
|
|
152
|
+
promises.push(tts.initialize());
|
|
153
|
+
await Promise.all(promises);
|
|
154
|
+
return { stt, llm, tts };
|
|
155
|
+
}
|
|
156
|
+
/**
|
|
157
|
+
* Check if this pipeline has the same factory for STT and LLM.
|
|
158
|
+
* Used by handlers to detect CloudAudioLLM pattern where one instance serves both roles.
|
|
159
|
+
*/
|
|
160
|
+
hasSameSTTAndLLM() {
|
|
161
|
+
return this.sttFactory !== null && this.sttFactory === this.llmFactory;
|
|
92
162
|
}
|
|
93
163
|
/**
|
|
94
164
|
* Check if pipeline has STT configured
|
|
95
165
|
*/
|
|
96
166
|
hasSTT() {
|
|
97
|
-
return this.
|
|
167
|
+
return this.sttFactory !== null;
|
|
98
168
|
}
|
|
99
169
|
/**
|
|
100
170
|
* Check if pipeline has TTS configured
|
|
101
171
|
*/
|
|
102
172
|
hasTTS() {
|
|
103
|
-
return this.
|
|
173
|
+
return this.ttsFactory !== null;
|
|
104
174
|
}
|
|
105
175
|
/**
|
|
106
176
|
* Process text input through LLM (and optionally TTS)
|
|
107
177
|
* Returns new messages to append to history
|
|
178
|
+
* @param backends - Optional per-session backends. If not provided, uses pipeline's internal backends.
|
|
108
179
|
*/
|
|
109
|
-
async processText(text, context, callbacks) {
|
|
180
|
+
async processText(text, context, callbacks, backends) {
|
|
181
|
+
const llm = backends?.llm ?? this.llm;
|
|
182
|
+
const tts = backends?.tts ?? this.tts;
|
|
183
|
+
if (!llm) {
|
|
184
|
+
callbacks.onError(new Error('Pipeline not initialized. Call initialize() first.'));
|
|
185
|
+
return [];
|
|
186
|
+
}
|
|
110
187
|
try {
|
|
188
|
+
// Create a fresh TurnContext for this turn
|
|
189
|
+
const turn = this.createTurnContext(context);
|
|
111
190
|
const newMessages = await this.processTranscript(text, context, {
|
|
112
191
|
...callbacks,
|
|
113
192
|
onTranscript: () => { },
|
|
114
|
-
});
|
|
193
|
+
}, llm, tts, turn);
|
|
115
194
|
callbacks.onComplete();
|
|
116
195
|
return newMessages;
|
|
117
196
|
}
|
|
@@ -120,23 +199,42 @@ export class VoicePipeline {
|
|
|
120
199
|
return [];
|
|
121
200
|
}
|
|
122
201
|
}
|
|
202
|
+
/**
|
|
203
|
+
* Create a TurnContext for a single turn through the pipeline
|
|
204
|
+
*/
|
|
205
|
+
createTurnContext(context) {
|
|
206
|
+
return {
|
|
207
|
+
history: context.history,
|
|
208
|
+
tools: this.toolDefinitions.length > 0 ? this.toolDefinitions : undefined,
|
|
209
|
+
};
|
|
210
|
+
}
|
|
123
211
|
/**
|
|
124
212
|
* Process audio input through STT → LLM → TTS
|
|
125
213
|
* Returns new messages to append to history
|
|
214
|
+
* @param backends - Optional per-session backends. If not provided, uses pipeline's internal backends.
|
|
126
215
|
*/
|
|
127
|
-
async processAudio(audio, context, callbacks) {
|
|
128
|
-
|
|
216
|
+
async processAudio(audio, context, callbacks, backends) {
|
|
217
|
+
const stt = backends?.stt ?? this.stt;
|
|
218
|
+
const llm = backends?.llm ?? this.llm;
|
|
219
|
+
const tts = backends?.tts ?? this.tts;
|
|
220
|
+
if (!this.sttFactory) {
|
|
129
221
|
callbacks.onError(new Error('No STT backend configured. Use processText() instead.'));
|
|
130
222
|
return [];
|
|
131
223
|
}
|
|
224
|
+
if (!stt || !llm) {
|
|
225
|
+
callbacks.onError(new Error('Pipeline not initialized. Call initialize() first.'));
|
|
226
|
+
return [];
|
|
227
|
+
}
|
|
132
228
|
try {
|
|
133
|
-
|
|
229
|
+
// Create a fresh TurnContext for this turn
|
|
230
|
+
const turn = this.createTurnContext(context);
|
|
231
|
+
const transcript = await stt.transcribe(audio, turn);
|
|
134
232
|
if (!transcript.trim()) {
|
|
135
233
|
callbacks.onError(new Error('Could not transcribe audio'));
|
|
136
234
|
return [];
|
|
137
235
|
}
|
|
138
236
|
callbacks.onTranscript(transcript);
|
|
139
|
-
const newMessages = await this.processTranscript(transcript, context, callbacks);
|
|
237
|
+
const newMessages = await this.processTranscript(transcript, context, callbacks, llm, tts, turn);
|
|
140
238
|
callbacks.onComplete();
|
|
141
239
|
return newMessages;
|
|
142
240
|
}
|
|
@@ -148,23 +246,23 @@ export class VoicePipeline {
|
|
|
148
246
|
/**
|
|
149
247
|
* Internal: Process transcript through LLM
|
|
150
248
|
*/
|
|
151
|
-
async processTranscript(transcript, context, callbacks) {
|
|
249
|
+
async processTranscript(transcript, context, callbacks, llm, tts, turn) {
|
|
152
250
|
const newMessages = [];
|
|
153
251
|
// Add user message to context history
|
|
154
252
|
const userMessage = { role: 'user', content: transcript };
|
|
155
253
|
context.history.push(userMessage);
|
|
156
254
|
newMessages.push(userMessage);
|
|
157
255
|
// Generate response with context
|
|
158
|
-
const responseMessages = await this.generateResponse(context, callbacks);
|
|
256
|
+
const responseMessages = await this.generateResponse(context, callbacks, llm, tts, turn);
|
|
159
257
|
newMessages.push(...responseMessages);
|
|
160
258
|
return newMessages;
|
|
161
259
|
}
|
|
162
260
|
/**
|
|
163
261
|
* Internal: Generate LLM response (with tool loop)
|
|
164
262
|
*/
|
|
165
|
-
async generateResponse(context, callbacks) {
|
|
263
|
+
async generateResponse(context, callbacks, llm, tts, turn) {
|
|
166
264
|
const newMessages = [];
|
|
167
|
-
const useNativeTools = (
|
|
265
|
+
const useNativeTools = (llm.supportsTools?.() ?? false) && this.toolDefinitions.length > 0;
|
|
168
266
|
const hasTools = this.toolDefinitions.length > 0;
|
|
169
267
|
// Tool execution loop
|
|
170
268
|
for (let iteration = 0; iteration < MAX_TOOL_ITERATIONS; iteration++) {
|
|
@@ -172,8 +270,8 @@ export class VoicePipeline {
|
|
|
172
270
|
// Native tools now support streaming (via <text_response> format)
|
|
173
271
|
// So we can stream whenever it's appropriate
|
|
174
272
|
const shouldStream = !isToolCheckTurn || useNativeTools;
|
|
175
|
-
const result = await this.generateLLMResponse(context, callbacks, useNativeTools, shouldStream // Enable streaming for native tools too
|
|
176
|
-
);
|
|
273
|
+
const result = await this.generateLLMResponse(context, callbacks, useNativeTools, shouldStream, // Enable streaming for native tools too
|
|
274
|
+
llm, tts, turn);
|
|
177
275
|
const toolCalls = useNativeTools
|
|
178
276
|
? result.toolCalls
|
|
179
277
|
: this.parsePromptBasedToolCalls(result.content);
|
|
@@ -181,7 +279,7 @@ export class VoicePipeline {
|
|
|
181
279
|
// Only call streamResponse if we didn't stream during generation
|
|
182
280
|
// Native tools stream during generation, so skip here
|
|
183
281
|
if (!shouldStream) {
|
|
184
|
-
await this.streamResponse(result.content, callbacks);
|
|
282
|
+
await this.streamResponse(result.content, callbacks, tts);
|
|
185
283
|
}
|
|
186
284
|
const assistantMsg = { role: 'assistant', content: result.content };
|
|
187
285
|
context.history.push(assistantMsg);
|
|
@@ -192,7 +290,7 @@ export class VoicePipeline {
|
|
|
192
290
|
if (this.toolFillerPhrases.length > 0) {
|
|
193
291
|
const fillerPhrase = this.toolFillerPhrases[this.fillerPhraseIndex % this.toolFillerPhrases.length];
|
|
194
292
|
this.fillerPhraseIndex++;
|
|
195
|
-
await this.streamResponse(fillerPhrase + ' ', callbacks);
|
|
293
|
+
await this.streamResponse(fillerPhrase + ' ', callbacks, tts);
|
|
196
294
|
}
|
|
197
295
|
const assistantContent = useNativeTools ? result.content : '';
|
|
198
296
|
const assistantMsg = {
|
|
@@ -247,16 +345,16 @@ export class VoicePipeline {
|
|
|
247
345
|
/**
|
|
248
346
|
* Stream a response to the client with optional TTS
|
|
249
347
|
*/
|
|
250
|
-
async streamResponse(content, callbacks) {
|
|
348
|
+
async streamResponse(content, callbacks, tts) {
|
|
251
349
|
if (!content)
|
|
252
350
|
return;
|
|
253
351
|
// Stream text chunks
|
|
254
352
|
callbacks.onResponseChunk(content);
|
|
255
353
|
// TTS if available
|
|
256
|
-
if (
|
|
354
|
+
if (tts) {
|
|
257
355
|
const normalizedText = this.textNormalizer.normalize(content);
|
|
258
356
|
if (normalizedText) {
|
|
259
|
-
const playable = await
|
|
357
|
+
const playable = await tts.synthesize(normalizedText);
|
|
260
358
|
callbacks.onAudio(playable);
|
|
261
359
|
}
|
|
262
360
|
}
|
|
@@ -264,29 +362,29 @@ export class VoicePipeline {
|
|
|
264
362
|
/**
|
|
265
363
|
* Generate LLM response
|
|
266
364
|
*/
|
|
267
|
-
async generateLLMResponse(context, callbacks, useNativeTools, shouldStream) {
|
|
365
|
+
async generateLLMResponse(context, callbacks, useNativeTools, shouldStream, llm, tts, turn) {
|
|
268
366
|
const tools = this.toolDefinitions.length > 0 ? this.toolDefinitions : undefined;
|
|
269
|
-
if (shouldStream &&
|
|
270
|
-
return this.generateWithStreamingTTS(context, callbacks, useNativeTools);
|
|
367
|
+
if (shouldStream && tts) {
|
|
368
|
+
return this.generateWithStreamingTTS(context, callbacks, useNativeTools, llm, tts, turn);
|
|
271
369
|
}
|
|
272
370
|
if (shouldStream) {
|
|
273
|
-
const result = await
|
|
371
|
+
const result = await llm.generate(context.history, {
|
|
274
372
|
tools,
|
|
275
|
-
conversationId: context.conversationId,
|
|
276
373
|
onToken: (token) => callbacks.onResponseChunk(token),
|
|
374
|
+
turn,
|
|
277
375
|
});
|
|
278
376
|
return { content: result.content, toolCalls: result.toolCalls };
|
|
279
377
|
}
|
|
280
|
-
const result = await
|
|
378
|
+
const result = await llm.generate(context.history, {
|
|
281
379
|
tools,
|
|
282
|
-
|
|
380
|
+
turn,
|
|
283
381
|
});
|
|
284
382
|
return { content: result.content, toolCalls: result.toolCalls };
|
|
285
383
|
}
|
|
286
384
|
/**
|
|
287
385
|
* Generate with streaming TTS (sentence by sentence)
|
|
288
386
|
*/
|
|
289
|
-
async generateWithStreamingTTS(context, callbacks, _useNativeTools) {
|
|
387
|
+
async generateWithStreamingTTS(context, callbacks, _useNativeTools, llm, tts, turn) {
|
|
290
388
|
const tools = this.toolDefinitions.length > 0 ? this.toolDefinitions : undefined;
|
|
291
389
|
let sentenceBuffer = '';
|
|
292
390
|
const sentenceEnders = /[.!?]/;
|
|
@@ -304,7 +402,7 @@ export class VoicePipeline {
|
|
|
304
402
|
};
|
|
305
403
|
const queueTTS = (sentence, index) => {
|
|
306
404
|
const normalizedText = this.textNormalizer.normalize(sentence);
|
|
307
|
-
const promise =
|
|
405
|
+
const promise = tts
|
|
308
406
|
.synthesize(normalizedText)
|
|
309
407
|
.then((playable) => {
|
|
310
408
|
playableQueue.set(index, playable);
|
|
@@ -316,9 +414,9 @@ export class VoicePipeline {
|
|
|
316
414
|
});
|
|
317
415
|
ttsPromises.push(promise);
|
|
318
416
|
};
|
|
319
|
-
const result = await
|
|
417
|
+
const result = await llm.generate(context.history, {
|
|
320
418
|
tools,
|
|
321
|
-
|
|
419
|
+
turn,
|
|
322
420
|
onToken: (token) => {
|
|
323
421
|
callbacks.onResponseChunk(token);
|
|
324
422
|
sentenceBuffer += token;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"voice-pipeline.js","sourceRoot":"","sources":["../src/voice-pipeline.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"voice-pipeline.js","sourceRoot":"","sources":["../src/voice-pipeline.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/scripts/setup.sh
CHANGED
|
@@ -110,6 +110,29 @@ else
|
|
|
110
110
|
fi
|
|
111
111
|
fi
|
|
112
112
|
|
|
113
|
+
# --- llama.cpp (llama-mtmd-cli for multimodal audio) ---
|
|
114
|
+
echo ""
|
|
115
|
+
echo "==> Setting up llama-mtmd-cli (for audio LLMs)..."
|
|
116
|
+
if [ -L "llama-mtmd-cli" ] || [ -f "llama-mtmd-cli" ]; then
|
|
117
|
+
echo " Already exists, skipping."
|
|
118
|
+
else
|
|
119
|
+
# Try to find llama-mtmd-cli from PATH or common locations
|
|
120
|
+
if command -v llama-mtmd-cli &> /dev/null; then
|
|
121
|
+
MTMD_PATH="$(command -v llama-mtmd-cli)"
|
|
122
|
+
ln -s "$MTMD_PATH" llama-mtmd-cli
|
|
123
|
+
echo " Linked to $MTMD_PATH"
|
|
124
|
+
elif [ -f "/opt/homebrew/bin/llama-mtmd-cli" ]; then
|
|
125
|
+
ln -s /opt/homebrew/bin/llama-mtmd-cli llama-mtmd-cli
|
|
126
|
+
echo " Linked to /opt/homebrew/bin/llama-mtmd-cli"
|
|
127
|
+
elif [ -f "/usr/local/bin/llama-mtmd-cli" ]; then
|
|
128
|
+
ln -s /usr/local/bin/llama-mtmd-cli llama-mtmd-cli
|
|
129
|
+
echo " Linked to /usr/local/bin/llama-mtmd-cli"
|
|
130
|
+
else
|
|
131
|
+
echo " ⚠️ llama-mtmd-cli not found (optional - for audio LLMs)."
|
|
132
|
+
echo " Install with: brew install llama.cpp"
|
|
133
|
+
fi
|
|
134
|
+
fi
|
|
135
|
+
|
|
113
136
|
# --- sherpa-onnx (TTS) ---
|
|
114
137
|
echo ""
|
|
115
138
|
echo "==> Setting up sherpa-onnx for $OS/$ARCH..."
|