@tryhamster/gerbil 1.3.1 → 1.4.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/dist/architectures-Ol7yUmKf.mjs.map +1 -1
- package/dist/browser/index.d.ts +7 -1
- package/dist/browser/index.d.ts.map +1 -1
- package/dist/cli.mjs +7 -7
- package/dist/cli.mjs.map +1 -1
- package/dist/{defaults-CudhglS1.mjs → defaults-KnrRSIeJ.mjs} +20 -7
- package/dist/defaults-KnrRSIeJ.mjs.map +1 -0
- package/dist/frameworks/express.d.mts +2 -2
- package/dist/frameworks/express.mjs +1 -1
- package/dist/frameworks/fastify.d.mts +2 -2
- package/dist/frameworks/fastify.mjs +1 -1
- package/dist/frameworks/hono.d.mts +2 -2
- package/dist/frameworks/hono.mjs +1 -1
- package/dist/frameworks/next.d.mts +4 -4
- package/dist/frameworks/next.mjs +1 -1
- package/dist/frameworks/react.d.mts +2 -2
- package/dist/frameworks/trpc.d.mts +2 -2
- package/dist/frameworks/trpc.mjs +1 -1
- package/dist/gerbil-CUzVDAU7.mjs +4 -0
- package/dist/{gerbil-Du-1M2Wq.mjs → gerbil-DGrCwGtJ.mjs} +26 -3
- package/dist/{gerbil-Du-1M2Wq.mjs.map → gerbil-DGrCwGtJ.mjs.map} +1 -1
- package/dist/{gerbil-4Xid85_Z.d.mts → gerbil-_68_JSGV.d.mts} +15 -4
- package/dist/gerbil-_68_JSGV.d.mts.map +1 -0
- package/dist/gpu/hooks.d.mts +21 -16
- package/dist/gpu/hooks.d.mts.map +1 -1
- package/dist/gpu/hooks.mjs +20 -15
- package/dist/gpu/hooks.mjs.map +1 -1
- package/dist/gpu/index.d.mts +3 -3
- package/dist/gpu/index.mjs +4 -4
- package/dist/{gpu-BECDib8p.mjs → gpu-DbB321DN.mjs} +1530 -235
- package/dist/gpu-DbB321DN.mjs.map +1 -0
- package/dist/{index-C4kJrqs1.d.mts → index-BdbeBDTz.d.mts} +210 -9
- package/dist/index-BdbeBDTz.d.mts.map +1 -0
- package/dist/index.d.mts +4 -4
- package/dist/index.mjs +5 -5
- package/dist/integrations/ai-sdk.d.mts +2 -2
- package/dist/integrations/ai-sdk.mjs +1 -1
- package/dist/integrations/langchain.d.mts +2 -2
- package/dist/integrations/langchain.mjs +1 -1
- package/dist/integrations/llamaindex.d.mts +2 -2
- package/dist/integrations/llamaindex.mjs +1 -1
- package/dist/integrations/mcp.d.mts +4 -4
- package/dist/integrations/mcp.mjs +4 -4
- package/dist/{mcp-4imtBQLX.mjs → mcp-DcE3wn-L.mjs} +3 -3
- package/dist/{mcp-4imtBQLX.mjs.map → mcp-DcE3wn-L.mjs.map} +1 -1
- package/dist/{moonshine-stt-BO5gZ_D6.mjs → moonshine-stt-BGmctcdO.mjs} +555 -7
- package/dist/moonshine-stt-BGmctcdO.mjs.map +1 -0
- package/dist/moonshine-stt-QoNJeCzR.mjs +4 -0
- package/dist/{one-liner-X5vMbWzs.mjs → one-liner-DTGg6zdm.mjs} +2 -2
- package/dist/{one-liner-X5vMbWzs.mjs.map → one-liner-DTGg6zdm.mjs.map} +1 -1
- package/dist/{outetts-DmR0NfSG.d.mts → outetts-Cr5oGk4z.d.mts} +9 -6
- package/dist/{outetts-DmR0NfSG.d.mts.map → outetts-Cr5oGk4z.d.mts.map} +1 -1
- package/dist/{repl-CGadrKcY.mjs → repl-Ci0zXCT_.mjs} +3 -3
- package/dist/skills/index.d.mts +6 -6
- package/dist/skills/index.mjs +3 -3
- package/dist/{skills-BFGAXYkm.mjs → skills-Dsf0op66.mjs} +2 -2
- package/dist/{skills-BFGAXYkm.mjs.map → skills-Dsf0op66.mjs.map} +1 -1
- package/dist/{types-Cpf-aOxX.d.mts → types-CjG36Vzj.d.mts} +9 -3
- package/dist/{types-Cpf-aOxX.d.mts.map → types-CjG36Vzj.d.mts.map} +1 -1
- package/package.json +1 -1
- package/dist/defaults-CudhglS1.mjs.map +0 -1
- package/dist/gerbil-4Xid85_Z.d.mts.map +0 -1
- package/dist/gerbil-BikD0xFU.mjs +0 -4
- package/dist/gpu-BECDib8p.mjs.map +0 -1
- package/dist/index-C4kJrqs1.d.mts.map +0 -1
- package/dist/moonshine-stt-BO5gZ_D6.mjs.map +0 -1
- package/dist/moonshine-stt-fVw-UB4s.mjs +0 -4
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { i as OuteSpeaker, t as OuteDType } from "./outetts-
|
|
1
|
+
import { i as OuteSpeaker, t as OuteDType } from "./outetts-Cr5oGk4z.mjs";
|
|
2
2
|
|
|
3
3
|
//#region src/gpu/vocab-prune.d.ts
|
|
4
4
|
|
|
@@ -23,7 +23,7 @@ interface VocabKeepPlan {
|
|
|
23
23
|
* graph generators. The executor, kernels, and model loader all speak this IR.
|
|
24
24
|
*/
|
|
25
25
|
/** Every computation the engine can perform. */
|
|
26
|
-
type OpType = "Embedding" | "EmbeddingInt4" | "MatMul" | "MatMulBias" | "MatMulInt4" | "Add" | "Mul" | "RMSNorm" | "LayerNorm" | "RoPE" | "Attention" | "Softmax" | "SiLU" | "SwiGLU" | "GELU" | "Gather" | "Reshape" | "Transpose" | "Concat" | "MoERouter" | "ExpertMatMul" | "MambaSSM" | "CausalConv1d" | "CausalConv1dSiLU" | "CausalConv1dGated" | "SigmoidGate" | "ResidualRMSNorm" | "KVCacheAppend" | "ConvStateUpdate" | "SliceLastRow" | "MeanPool" | "Scale" | "Softcap" | "L2Norm" | "ApplyRotaryEmb" | "MRoPE" | "EmbedSplice" | "AddBias" | "GeluErf" | "SliceCols" | "MulCols" | "PoolMatMul" | "ClippedMatMul" | "Conv1dFull" | "ConvTranspose1d" | "Snake1d" | "RVQDequant" | "RVQEncode" | "FSQDequant" | "HalfSnake1d" | "ConvTranspose1dDepthwise" | "Conv2d" | "AvgPool2d" | "CrossAttention" | "Tanh" | "GroupNorm";
|
|
26
|
+
type OpType = "Embedding" | "EmbeddingInt4" | "MatMul" | "MatMulBias" | "MatMulInt4" | "Add" | "Mul" | "RMSNorm" | "LayerNorm" | "RoPE" | "Attention" | "Softmax" | "SiLU" | "SwiGLU" | "GELU" | "Gather" | "Reshape" | "Transpose" | "Concat" | "MoERouter" | "ExpertMatMul" | "MambaSSM" | "CausalConv1d" | "CausalConv1dSiLU" | "CausalConv1dGated" | "SigmoidGate" | "ResidualRMSNorm" | "KVCacheAppend" | "ConvStateUpdate" | "SliceLastRow" | "MeanPool" | "Scale" | "Softcap" | "L2Norm" | "ApplyRotaryEmb" | "MRoPE" | "EmbedSplice" | "AddBias" | "GeluErf" | "SliceCols" | "MulCols" | "PoolMatMul" | "ClippedMatMul" | "Conv1dFull" | "ConvTranspose1d" | "Snake1d" | "RVQDequant" | "RVQEncode" | "FSQDequant" | "HalfSnake1d" | "ConvTranspose1dDepthwise" | "Conv2d" | "AvgPool2d" | "CrossAttention" | "T5Attention" | "Tanh" | "GroupNorm";
|
|
27
27
|
type DType = "f32" | "f16" | "i32" | "u32" | "i4";
|
|
28
28
|
type TensorStorage = "constant" | "activation" | "kv_cache" | "ssm_state";
|
|
29
29
|
interface TensorDesc {
|
|
@@ -393,6 +393,8 @@ declare class Tokenizer {
|
|
|
393
393
|
* raw bytes fall back to <0xHH> tokens. When false, GPT-2 byte-level BPE.
|
|
394
394
|
*/
|
|
395
395
|
private spmMode;
|
|
396
|
+
/** Unigram (SentencePiece) model, set only when the tokenizer.json is Unigram. */
|
|
397
|
+
private unigram;
|
|
396
398
|
readonly config: TokenizerConfig;
|
|
397
399
|
readonly vocabSize: number;
|
|
398
400
|
private constructor();
|
|
@@ -400,6 +402,15 @@ declare class Tokenizer {
|
|
|
400
402
|
* Create a tokenizer from HuggingFace JSON files.
|
|
401
403
|
*/
|
|
402
404
|
static fromJSON(tokenizerJSON: any, tokenizerConfigJSON?: any): Tokenizer;
|
|
405
|
+
/**
|
|
406
|
+
* Build a Unigram (SentencePiece) tokenizer from a `model.type === "Unigram"`
|
|
407
|
+
* tokenizer.json (e.g. Flan-T5, which fronts Parler-TTS). The Unigram model is a
|
|
408
|
+
* list of `[piece, log_score]` rows plus an `unk_id`; encoding runs Viterbi
|
|
409
|
+
* best-segmentation over the lattice (maximize summed log-scores), normalizing
|
|
410
|
+
* input NFKC-style + collapsing whitespace, replacing spaces with the metaspace
|
|
411
|
+
* marker (▁), and appending the post-processor's eos (</s>) like HF's T5Tokenizer.
|
|
412
|
+
*/
|
|
413
|
+
private static fromUnigramJSON;
|
|
403
414
|
/**
|
|
404
415
|
* Resolve a literal token string (e.g. "<|endoftext|>") to its vocab id,
|
|
405
416
|
* or null if it isn't in the vocabulary.
|
|
@@ -443,6 +454,28 @@ declare class Tokenizer {
|
|
|
443
454
|
private textToTokenRepr;
|
|
444
455
|
private bpeEncode;
|
|
445
456
|
private encodeByteFallback;
|
|
457
|
+
/**
|
|
458
|
+
* Encode text with the Unigram model: split on registered added/special tokens,
|
|
459
|
+
* normalize each plain span (NFKC + whitespace collapse), apply the metaspace
|
|
460
|
+
* pre-tokenizer (spaces → ▁, leading ▁ prepended), Viterbi-segment each ▁-word,
|
|
461
|
+
* then append the post-processor eos. Mirrors HF's T5Tokenizer id stream.
|
|
462
|
+
*/
|
|
463
|
+
private encodeUnigram;
|
|
464
|
+
/** Split a ▁-encoded string into ▁-prefixed words (keep ▁ with the following run). */
|
|
465
|
+
private splitMetaspaceWords;
|
|
466
|
+
/**
|
|
467
|
+
* Viterbi best-segmentation of a single piece over the Unigram vocab: find the
|
|
468
|
+
* segmentation maximizing the sum of piece log-scores. Characters with no covering
|
|
469
|
+
* vocab piece fall back to the unk id (SentencePiece treats an unknown character
|
|
470
|
+
* as a single unk token).
|
|
471
|
+
*/
|
|
472
|
+
private viterbiEncode;
|
|
473
|
+
/** Lazily-computed longest vocab piece length (in codepoints). */
|
|
474
|
+
private get unigramMaxPieceLen();
|
|
475
|
+
private _unigramMaxPieceLen;
|
|
476
|
+
/** Lazily-computed unk emission score (min vocab score − 10, SentencePiece-style). */
|
|
477
|
+
private get unigramUnkScore();
|
|
478
|
+
private _unigramUnkScore;
|
|
446
479
|
}
|
|
447
480
|
//#endregion
|
|
448
481
|
//#region src/gpu/weight-source.d.ts
|
|
@@ -907,6 +940,12 @@ declare const DEFAULT_MODELS: {
|
|
|
907
940
|
* Pass this as the `repo`/`model` to engine.speak()/useTTS to route to OuteTTS.
|
|
908
941
|
*/
|
|
909
942
|
readonly ttsOute: "OuteAI/OuteTTS-1.0-0.6B";
|
|
943
|
+
/**
|
|
944
|
+
* Selectable describe-your-voice TTS (Parler-TTS-mini-v1: Flan-T5 encoder +
|
|
945
|
+
* cross-attending decoder LM + dac_44khz). Pass this as the `repo`/`model` to
|
|
946
|
+
* engine.speak()/useTTS with a `describeVoice` natural-language description.
|
|
947
|
+
*/
|
|
948
|
+
readonly ttsParler: "parler-tts/parler-tts-mini-v1";
|
|
910
949
|
/** Speech-to-text. */
|
|
911
950
|
readonly stt: "UsefulSensors/moonshine-base";
|
|
912
951
|
};
|
|
@@ -918,8 +957,20 @@ declare const OUTETTS_ASSETS: {
|
|
|
918
957
|
/** The default preset voice. */
|
|
919
958
|
readonly defaultVoice: "en-female-1-neutral";
|
|
920
959
|
};
|
|
921
|
-
/**
|
|
922
|
-
|
|
960
|
+
/**
|
|
961
|
+
* Bundled OuteTTS preset voices.
|
|
962
|
+
*
|
|
963
|
+
* Provenance (honest labelling):
|
|
964
|
+
* - `en-female-1-neutral` is the ONE AUTHENTIC OuteAI voice — the OuteTTS v3 bundled
|
|
965
|
+
* default speaker (default_speakers/en-female-1-neutral), copied verbatim.
|
|
966
|
+
* - `gerbil-voice-2..6` are DERIVED voices: distinct timbres produced by running
|
|
967
|
+
* pitch/tempo-varied renderings of that authentic clip back through the REAL
|
|
968
|
+
* DAC.speech encode + prosody pipeline (scripts/engine/stage-outetts-assets.py).
|
|
969
|
+
* They are genuine DAC-encoded OuteSpeakers, but they are NOT OuteAI's own
|
|
970
|
+
* `en-male-*` voices, so they are not labelled as such. (Earlier builds mislabelled
|
|
971
|
+
* them as `en-male-2-neutral` etc.; renamed for honesty.)
|
|
972
|
+
*/
|
|
973
|
+
declare const OUTETTS_PRESET_VOICES: readonly ["en-female-1-neutral", "gerbil-voice-2", "gerbil-voice-3", "gerbil-voice-4", "gerbil-voice-5", "gerbil-voice-6"];
|
|
923
974
|
/** Resolve the model repo for a set of options, falling back to the defaults. */
|
|
924
975
|
declare function resolveDefaultRepo(opts: {
|
|
925
976
|
repo?: string;
|
|
@@ -1120,10 +1171,29 @@ declare function audioTokensToDacCodes(tokenIds: number[]): {
|
|
|
1120
1171
|
interface DacSpeechGraphOptions {
|
|
1121
1172
|
/** Number of audio frames T (the code-grid width). */
|
|
1122
1173
|
numFrames: number;
|
|
1174
|
+
/**
|
|
1175
|
+
* Number of RVQ codebooks. Default 2 (DAC.speech.v1.0). Parler-TTS's
|
|
1176
|
+
* dac_44khz_8kbps uses 9 — the RVQDequant kernel loops over NCB so the only
|
|
1177
|
+
* change is the codebook/out_proj tensor first-dim and the codes grid height.
|
|
1178
|
+
*/
|
|
1179
|
+
numCodebooks?: number;
|
|
1180
|
+
/**
|
|
1181
|
+
* Decoder upsampling rates (the DecoderBlock strides). Default [8,5,4,2]
|
|
1182
|
+
* (DAC.speech.v1.0). Parler's dac_44khz uses [8,8,4,2] (hop 512). Channels
|
|
1183
|
+
* still halve per stage from `decoderDim`.
|
|
1184
|
+
*/
|
|
1185
|
+
decoderRates?: readonly number[];
|
|
1186
|
+
/** First-conv output channels (decoder_dim). Default 1536. */
|
|
1187
|
+
decoderDim?: number;
|
|
1188
|
+
/** Quantizer out_proj output / first-conv input dim (latent_dim). Default 1024. */
|
|
1189
|
+
latentDim?: number;
|
|
1123
1190
|
}
|
|
1124
1191
|
declare function generateDacSpeechDecoderGraph(opts: DacSpeechGraphOptions): ModelGraph;
|
|
1125
|
-
/**
|
|
1126
|
-
|
|
1192
|
+
/**
|
|
1193
|
+
* Final decoded PCM length (samples) for a T-frame code grid, via the DAC stage chain.
|
|
1194
|
+
* `rates` defaults to DAC.speech.v1.0 ([8,5,4,2]); pass [8,8,4,2] for Parler's dac_44khz.
|
|
1195
|
+
*/
|
|
1196
|
+
declare function dacOutputLength(numFrames: number, rates?: readonly number[]): number;
|
|
1127
1197
|
declare function generateOuteTtsBackboneGraph(rawConfig: Record<string, unknown>, dtype?: GraphDType, groupSize?: number, kvDtype?: KVDType): ModelGraph;
|
|
1128
1198
|
//#endregion
|
|
1129
1199
|
//#region src/gpu/architectures/qwen3_5_vision.d.ts
|
|
@@ -1351,6 +1421,19 @@ declare class Executor {
|
|
|
1351
1421
|
* via writeInput() and reset()s first.
|
|
1352
1422
|
*/
|
|
1353
1423
|
runGraphOutput(outputName: string, elemCount: number): Promise<Float32Array>;
|
|
1424
|
+
/**
|
|
1425
|
+
* Autoregressive step for a multi-output decoder graph (e.g. Parler-TTS's 9 codebook
|
|
1426
|
+
* lm_heads). Dispatches the whole graph ONCE at the current seqPos (so the per-layer
|
|
1427
|
+
* KVCacheAppend writes at the right cache row), reads back each named output, then
|
|
1428
|
+
* advances seqPos by `tokens` (default 1, for a prefilled prompt span pass tokens=T).
|
|
1429
|
+
* The caller writes inputs (dec_input_embed + frozen cross-attn K/V) and reset()s
|
|
1430
|
+
* before the first step. Unlike forward(), there is no single "logits" output —
|
|
1431
|
+
* the caller decodes each codebook row itself.
|
|
1432
|
+
*/
|
|
1433
|
+
runGraphStep(outputs: Array<{
|
|
1434
|
+
name: string;
|
|
1435
|
+
elemCount: number;
|
|
1436
|
+
}>, tokens?: number): Promise<Float32Array[]>;
|
|
1354
1437
|
/**
|
|
1355
1438
|
* Greedy decode step: forward + GPU argmax. Returns token ID directly.
|
|
1356
1439
|
* Always uses matvec kernels (M=1). Reads back 4 bytes instead of vocab_size*4.
|
|
@@ -1671,6 +1754,107 @@ declare class MoonshineSTT {
|
|
|
1671
1754
|
destroy(): void;
|
|
1672
1755
|
}
|
|
1673
1756
|
//#endregion
|
|
1757
|
+
//#region src/gpu/parler-tts.d.ts
|
|
1758
|
+
/**
|
|
1759
|
+
* ParlerTTS — native describe-your-voice text-to-speech for Gerbil's WebGPU backend.
|
|
1760
|
+
*
|
|
1761
|
+
* Parler-TTS (parler-tts/parler-tts-mini-v1) is an encoder-decoder codec-LM: you
|
|
1762
|
+
* describe the voice in natural language and a Flan-T5 encoder turns that DESCRIPTION
|
|
1763
|
+
* into cross-attention states, while a 24-layer decoder LM cross-attends to them and
|
|
1764
|
+
* autoregressively emits DAC audio codes for the TRANSCRIPT. Same dual-graph shape as
|
|
1765
|
+
* MoonshineSTT (encoder once → frozen cross-attn K/V → AR decode), and the same DAC
|
|
1766
|
+
* codec family as OuteTTS (the shared generateDacSpeechDecoderGraph, here with 9
|
|
1767
|
+
* codebooks + rates [8,8,4,2]).
|
|
1768
|
+
*
|
|
1769
|
+
* Pipeline (engine.speak(text, { describeVoice })):
|
|
1770
|
+
* 1. Tokenize the DESCRIPTION with the T5 tokenizer; build the relative-position
|
|
1771
|
+
* bias; run the T5 encoder once → encoder_out + per-decoder-layer frozen K/V.
|
|
1772
|
+
* 2. Tokenize the TRANSCRIPT (embed_prompts); prefill its embeddings (+ sinusoidal
|
|
1773
|
+
* positions) through the decoder so the self-attn KV-cache holds the prompt.
|
|
1774
|
+
* 3. AR-decode 9 interleaved codebooks under the delay pattern: each step the host
|
|
1775
|
+
* sums the 9 per-codebook embeddings of the current (delayed) codes + the
|
|
1776
|
+
* sinusoidal position, forwards one step, and samples each of the 9 lm_head logit
|
|
1777
|
+
* rows. Stop on EOS in codebook 0 (or the frame cap).
|
|
1778
|
+
* 4. Revert the delay pattern → [9, frames] code grid → shared DAC decode → 44.1 kHz
|
|
1779
|
+
* PCM (tanh applied host-side).
|
|
1780
|
+
*
|
|
1781
|
+
* STATUS — FIRST IMPLEMENTATION. Typechecks + builds. The end-to-end run is GPU-
|
|
1782
|
+
* contended on the dev box, so coherence is pending a final reference check once the
|
|
1783
|
+
* GPU frees up (the T5 encoder cosine + a decoder forward should be diffed vs
|
|
1784
|
+
* transformers ParlerTTSForConditionalGeneration; see scripts/engine/parler-*-ref.py
|
|
1785
|
+
* stubs). The architecture, weight layout, tokenization, delay pattern, and DAC config
|
|
1786
|
+
* are all verified against the live config.json + safetensors header.
|
|
1787
|
+
*/
|
|
1788
|
+
interface ParlerTTSOptions {
|
|
1789
|
+
/** Repo (default parler-tts/parler-tts-mini-v1). */
|
|
1790
|
+
repo?: string;
|
|
1791
|
+
revision?: string;
|
|
1792
|
+
hfToken?: string;
|
|
1793
|
+
cacheDir?: string;
|
|
1794
|
+
maxSeqLen?: number;
|
|
1795
|
+
onProgress?: (loaded: number, total: number, message: string) => void;
|
|
1796
|
+
}
|
|
1797
|
+
interface ParlerSpeakOptions {
|
|
1798
|
+
/** Natural-language voice description (the Parler hook). */
|
|
1799
|
+
describeVoice?: string;
|
|
1800
|
+
/** Sampling temperature (Parler default 1.0). */
|
|
1801
|
+
temperature?: number;
|
|
1802
|
+
/** Top-k cutoff (default 0 = off; Parler uses sampling with do_sample=True). */
|
|
1803
|
+
topK?: number;
|
|
1804
|
+
/** Greedy (argmax per codebook) for deterministic reference validation. */
|
|
1805
|
+
greedy?: boolean;
|
|
1806
|
+
/** Override the max decoded frames. */
|
|
1807
|
+
maxFrames?: number;
|
|
1808
|
+
/**
|
|
1809
|
+
* Debug hook: receives the reverted [numCodebooks, frames] code grid (codebook-major)
|
|
1810
|
+
* just before DAC decode. Used by the reference token-match test; no production effect.
|
|
1811
|
+
*/
|
|
1812
|
+
onCodes?: (codes: Uint32Array, numCodebooks: number, frames: number) => void;
|
|
1813
|
+
}
|
|
1814
|
+
interface ParlerSpeakResult {
|
|
1815
|
+
/** Mono PCM in [-1, 1]. */
|
|
1816
|
+
pcm: Float32Array;
|
|
1817
|
+
/** Sample rate (44100). */
|
|
1818
|
+
sampleRate: number;
|
|
1819
|
+
/** Number of acoustic frames decoded. */
|
|
1820
|
+
frames: number;
|
|
1821
|
+
/** Audio duration in seconds. */
|
|
1822
|
+
audioSeconds: number;
|
|
1823
|
+
}
|
|
1824
|
+
declare class ParlerTTS {
|
|
1825
|
+
private ctx;
|
|
1826
|
+
private loaded;
|
|
1827
|
+
private cfg;
|
|
1828
|
+
private maxSeqLen;
|
|
1829
|
+
private _destroyed;
|
|
1830
|
+
readonly sampleRate = 44100;
|
|
1831
|
+
private constructor();
|
|
1832
|
+
static create(options?: ParlerTTSOptions): Promise<ParlerTTS>;
|
|
1833
|
+
/**
|
|
1834
|
+
* Generate a random natural-language voice description using a host-side template
|
|
1835
|
+
* bank (no model call). Pass the result as `describeVoice` for variety. A loaded
|
|
1836
|
+
* text model can write richer ones — exposed on the Gerbil class as
|
|
1837
|
+
* {@link inventVoiceDescription}.
|
|
1838
|
+
*/
|
|
1839
|
+
static randomVoiceDescription(): string;
|
|
1840
|
+
/** Synthesize `text` in the described voice. Returns 44.1 kHz mono PCM. */
|
|
1841
|
+
speak(text: string, opts?: ParlerSpeakOptions): Promise<ParlerSpeakResult>;
|
|
1842
|
+
/**
|
|
1843
|
+
* Run the decoder: prefill the transcript prompt rows, then AR-decode the 9-codebook
|
|
1844
|
+
* delay-pattern stream. Returns the DELAYED code grid [9, steps] (codebook-major)
|
|
1845
|
+
* plus the step count, for revertDelayPattern.
|
|
1846
|
+
*
|
|
1847
|
+
* Each step the host sums the 9 per-codebook embeddings of the current delayed codes
|
|
1848
|
+
* + the sinusoidal position, writes that single [1,H] row to `dec_input_embed`,
|
|
1849
|
+
* forwards one step (KV-cache grows over [prompt ++ audio]), and reads back 9 logit
|
|
1850
|
+
* rows — one per codebook lm_head.
|
|
1851
|
+
*/
|
|
1852
|
+
private decodeAudioTokens;
|
|
1853
|
+
/** Decode the [9, frames] code grid → 44.1 kHz PCM (tanh host-side). */
|
|
1854
|
+
private decodeCodes;
|
|
1855
|
+
destroy(): void;
|
|
1856
|
+
}
|
|
1857
|
+
//#endregion
|
|
1674
1858
|
//#region src/gpu/vision-executor.d.ts
|
|
1675
1859
|
interface VisionInputs {
|
|
1676
1860
|
/** Flattened patches [N, patch_dim]. */
|
|
@@ -1945,6 +2129,8 @@ declare class WebGPUEngine {
|
|
|
1945
2129
|
private _outeTTS;
|
|
1946
2130
|
/** The preset voice the lazily-built OuteTTS engine was created with. */
|
|
1947
2131
|
private _outeVoice;
|
|
2132
|
+
/** Lazily-created Parler-TTS engine (Flan-T5 encoder + decoder LM + dac_44khz). */
|
|
2133
|
+
private _parlerTTS;
|
|
1948
2134
|
/**
|
|
1949
2135
|
* WebKit group-size probe state. When true, a candidate group size is being
|
|
1950
2136
|
* tried this page-load and must be promoted (or capped) after the FIRST
|
|
@@ -2144,7 +2330,7 @@ declare class WebGPUEngine {
|
|
|
2144
2330
|
*/
|
|
2145
2331
|
speak(text: string, options?: {
|
|
2146
2332
|
languageTag?: string;
|
|
2147
|
-
/** Kani accent tag, OR an OuteTTS preset voice name (e.g. "en-
|
|
2333
|
+
/** Kani accent tag, OR an OuteTTS preset voice name (e.g. "en-female-1-neutral"). */
|
|
2148
2334
|
voice?: string;
|
|
2149
2335
|
temperature?: number;
|
|
2150
2336
|
topP?: number;
|
|
@@ -2163,12 +2349,27 @@ declare class WebGPUEngine {
|
|
|
2163
2349
|
* (DAC.speech encode + prosody), or pass a preset/pre-encoded speaker JSON.
|
|
2164
2350
|
*/
|
|
2165
2351
|
cloneSpeaker?: OuteSpeaker;
|
|
2352
|
+
/**
|
|
2353
|
+
* Parler-TTS describe-your-voice hook: a natural-language voice description
|
|
2354
|
+
* ("a warm female voice, slightly fast, clean studio recording"). Only used by
|
|
2355
|
+
* the Parler checkpoint (DEFAULT_MODELS.ttsParler). When omitted, a neutral
|
|
2356
|
+
* default description is used.
|
|
2357
|
+
*/
|
|
2358
|
+
describeVoice?: string;
|
|
2166
2359
|
}): Promise<{
|
|
2167
2360
|
pcm: Float32Array;
|
|
2168
2361
|
sampleRate: number;
|
|
2169
2362
|
frames: number;
|
|
2170
2363
|
audioSeconds: number;
|
|
2171
2364
|
}>;
|
|
2365
|
+
/**
|
|
2366
|
+
* Parler-TTS speak path: lazily build the Parler engine (Flan-T5 description encoder
|
|
2367
|
+
* + cross-attending decoder LM + dac_44khz) and synthesize `text` in the voice given
|
|
2368
|
+
* by `describeVoice`. Single-checkpoint (all weights, incl. the DAC, in one file).
|
|
2369
|
+
*/
|
|
2370
|
+
private speakParler;
|
|
2371
|
+
/** A random natural-language voice description for Parler-TTS (host template bank). */
|
|
2372
|
+
randomVoiceDescription(): string;
|
|
2172
2373
|
/**
|
|
2173
2374
|
* OuteTTS speak path: lazily build the OuteTTS engine (loading the chosen preset
|
|
2174
2375
|
* voice's speaker JSON + the folded DAC codec weights from the mirror), rebuilding
|
|
@@ -2333,5 +2534,5 @@ declare class WebGPUEngine {
|
|
|
2333
2534
|
private checkDestroyed;
|
|
2334
2535
|
}
|
|
2335
2536
|
//#endregion
|
|
2336
|
-
export {
|
|
2337
|
-
//# sourceMappingURL=index-
|
|
2537
|
+
export { Gemma4VisionGridConfig as $, generateDacSpeechDecoderGraph as A, KaniTTS as At, generateNanoCodecDecoderGraph as B, ModelCapabilities as Bt, TranscribeOptions as C, loadKaniTTS as Ct, generateQwen3_5VisionGraph as D, ChatMessage as Dt, Executor as E, quantizeKaniBackbone as Et, generateMoonshineEncoderGraph as F, initGPU as Ft, generateGemma4VisionGraph as G, Gemma4VisionGraphInfo as H, moonshineEncoderFrames as I, GraphDType as It, DEFAULT_MODELS as J, patchGemma4VisionClips as K, parseMoonshineConfig as L, KVDType as Lt, parseOuteTtsConfig as M, SpeakOptions as Mt, MOONSHINE_REMAINING_WORK as N, SpeakResult as Nt, audioTokensToDacCodes as O, Tokenizer as Ot, generateMoonshineDecoderGraph as P, GPUDiagnosticResult as Pt, GEMMA4_IMAGE_PROCESSOR as Q, audioTokensToCodes as R, KvMode as Rt, MoonshineSTTOptions as S, LoadedMoonshine as St, MoonshineEncoderExecutor as T, loadMoonshine as Tt, dequantizeGemma4VisionProjection as U, parseKaniConfig as V, dequantizeMLXProjection as W, OUTETTS_PRESET_VOICES as X, OUTETTS_ASSETS as Y, resolveDefaultRepo as Z, ParlerSpeakOptions as _, preprocessImage as _t, GenerateObjectOptions as a, VisionPositionTensors as at, ParlerTTSOptions as b, SamplingParams as bt, GenerateResult as c, buildGemma4RotaryCosSin as ct, ObjectSchema as d, buildMRoPEPositionIds as dt, Gemma4VisionPositionTensors as et, ObjectValidator as f, buildPosEmbeds as ft, VisionInputs as g, mropeFreqDims as gt, VisionExecutor as h, buildVisionPositionTensors as ht, EncodeImageResult as i, VisionGridConfig as it, generateOuteTtsBackboneGraph as j, KaniTTSOptions as jt, dacOutputLength as k, KaniDType as kt, IntegrityCheckEntry as l, buildGemma4VisionPositionTensors as lt, WebGPUEngineOptions as m, buildRotaryCosSin as mt, AgentTool as n, PreprocessedImage as nt, GenerateObjectResult as o, buildGemma4PoolMatrix as ot, WebGPUEngine as p, buildPositionIds as pt, resolveGemma4VisionInfo as q, EmbedOptions as r, QWEN3_5_IMAGE_PROCESSOR as rt, GenerateOptions as s, buildGemma4PosEmbeds as st, AgentStep as t, ImageProcessorConfig as tt, IntegrityCheckResult as u, buildMRoPECosSin as ut, ParlerSpeakResult as v, preprocessImageGemma4 as vt, TranscribeResult as w, loadModel as wt, MoonshineSTT as x, LoadedKaniTTS as xt, ParlerTTS as y, smartResize as yt, generateKaniTtsGraph as z, ModelArchConfig as zt };
|
|
2538
|
+
//# sourceMappingURL=index-BdbeBDTz.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-BdbeBDTz.d.mts","names":[],"sources":["../src/gpu/vocab-prune.ts","../src/gpu/ir.ts","../src/gpu/architectures/index.ts","../src/gpu/device.ts","../src/gpu/kani-tts.ts","../src/gpu/tokenizer.ts","../src/gpu/weight-source.ts","../src/gpu/model-loader.ts","../src/gpu/sampler.ts","../src/gpu/vision-preprocess.ts","../src/gpu/defaults.ts","../src/gpu/architectures/gemma4_vision.ts","../src/gpu/architectures/kani_tts.ts","../src/gpu/architectures/moonshine.ts","../src/gpu/architectures/outetts.ts","../src/gpu/architectures/qwen3_5_vision.ts","../src/gpu/executor.ts","../src/gpu/moonshine-executor.ts","../src/gpu/moonshine-stt.ts","../src/gpu/parler-tts.ts","../src/gpu/vision-executor.ts","../src/gpu/index.ts"],"sourcesContent":[],"mappings":"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"}
|
package/dist/index.d.mts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import "./outetts-
|
|
2
|
-
import { A as SpeakResult, C as PreloadOptions, D as SessionStats, E as SearchResult, F as TelemetryConfig, I as TranscribeOptions, L as TranscribeResult, M as StreamingTranscriptionSession, N as SystemInfo, O as SimilarityResult, P as TTSModelConfig, R as TranscribeSegment, S as ModelStats, T as STTModelConfig, _ as LoadSTTOptions, a as EmbedResult, b as ModelLoadEvent, c as GenerateEvent, d as GerbilConfig, f as GerbilModelSettings, g as LoadOptions, h as JsonOptions, i as EmbedOptions, j as StreamingTranscriptionOptions, k as SpeakOptions, l as GenerateOptions, m as ImageInput, n as CacheConfig, o as ErrorContext, p as GerbilProviderSettings, r as ConcurrencyConfig, s as FallbackConfig, t as AudioChunk, u as GenerateResult, v as LoadTTSOptions, w as ProgressInfo, x as ModelSource, y as ModelConfig, z as VoiceInfo } from "./types-
|
|
3
|
-
import {
|
|
4
|
-
import { t as Gerbil } from "./gerbil-
|
|
1
|
+
import "./outetts-Cr5oGk4z.mjs";
|
|
2
|
+
import { A as SpeakResult, C as PreloadOptions, D as SessionStats, E as SearchResult, F as TelemetryConfig, I as TranscribeOptions, L as TranscribeResult, M as StreamingTranscriptionSession, N as SystemInfo, O as SimilarityResult, P as TTSModelConfig, R as TranscribeSegment, S as ModelStats, T as STTModelConfig, _ as LoadSTTOptions, a as EmbedResult, b as ModelLoadEvent, c as GenerateEvent, d as GerbilConfig, f as GerbilModelSettings, g as LoadOptions, h as JsonOptions, i as EmbedOptions, j as StreamingTranscriptionOptions, k as SpeakOptions, l as GenerateOptions, m as ImageInput, n as CacheConfig, o as ErrorContext, p as GerbilProviderSettings, r as ConcurrencyConfig, s as FallbackConfig, t as AudioChunk, u as GenerateResult, v as LoadTTSOptions, w as ProgressInfo, x as ModelSource, y as ModelConfig, z as VoiceInfo } from "./types-CjG36Vzj.mjs";
|
|
3
|
+
import { At as KaniTTS, J as DEFAULT_MODELS, S as MoonshineSTTOptions, a as GenerateObjectOptions, d as ObjectSchema, f as ObjectValidator, jt as KaniTTSOptions, o as GenerateObjectResult, p as WebGPUEngine, x as MoonshineSTT } from "./index-BdbeBDTz.mjs";
|
|
4
|
+
import { t as Gerbil } from "./gerbil-_68_JSGV.mjs";
|
|
5
5
|
import { a as MemoryMetadata, c as MemorySearchResult, d as RecallOptions, f as RecallResult, i as MemoryExport, l as MemoryStore, m as SearchOptions, o as MemoryOptions, p as Redactor, r as Embedder, s as MemoryRecord, t as AddOptions } from "./types-Dqv4m0vo.mjs";
|
|
6
6
|
import { _ as createGerbilEmbedder, f as createFileStore, h as createMemory, m as Memory, s as createInMemoryStore, u as createIndexedDBStore } from "./index-CRDf-nS4.mjs";
|
|
7
7
|
|
package/dist/index.mjs
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { a as resolveModel, c as configureGlobalCache, i as listBuiltinModels, l as getGlobalCache, n as BUILTIN_MODELS, o as ResponseCache, r as DEFAULT_MODEL, s as clearGlobalCache, t as Gerbil } from "./gerbil-
|
|
1
|
+
import { a as resolveModel, c as configureGlobalCache, i as listBuiltinModels, l as getGlobalCache, n as BUILTIN_MODELS, o as ResponseCache, r as DEFAULT_MODEL, s as clearGlobalCache, t as Gerbil } from "./gerbil-DGrCwGtJ.mjs";
|
|
2
2
|
import "./utils-DKO55ZmZ.mjs";
|
|
3
|
-
import { a as generateObject, c as one_liner_default, i as generate, l as stream, n as embed, r as embedBatch, s as json, t as dispose } from "./one-liner-
|
|
4
|
-
import { t as DEFAULT_MODELS } from "./defaults-
|
|
3
|
+
import { a as generateObject, c as one_liner_default, i as generate, l as stream, n as embed, r as embedBatch, s as json, t as dispose } from "./one-liner-DTGg6zdm.mjs";
|
|
4
|
+
import { t as DEFAULT_MODELS } from "./defaults-KnrRSIeJ.mjs";
|
|
5
5
|
import "./architectures-Ol7yUmKf.mjs";
|
|
6
|
-
import {
|
|
7
|
-
import { t as MoonshineSTT } from "./moonshine-stt-
|
|
6
|
+
import { O as KaniTTS, t as WebGPUEngine } from "./gpu-DbB321DN.mjs";
|
|
7
|
+
import { t as MoonshineSTT } from "./moonshine-stt-BGmctcdO.mjs";
|
|
8
8
|
import { a as createInMemoryStore, n as createMemory, t as Memory } from "./memory-Dj0J1v88.mjs";
|
|
9
9
|
import { n as createFileStore, r as createGerbilEmbedder } from "./memory-DVN0MnIG.mjs";
|
|
10
10
|
import "./vector-B0panuy6.mjs";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import "../outetts-
|
|
2
|
-
import { T as STTModelConfig, f as GerbilModelSettings, p as GerbilProviderSettings, y as ModelConfig } from "../types-
|
|
1
|
+
import "../outetts-Cr5oGk4z.mjs";
|
|
2
|
+
import { T as STTModelConfig, f as GerbilModelSettings, p as GerbilProviderSettings, y as ModelConfig } from "../types-CjG36Vzj.mjs";
|
|
3
3
|
import { EmbeddingModelV2, LanguageModelV2, LanguageModelV2CallOptions, LanguageModelV2CallWarning, LanguageModelV2Content, LanguageModelV2FinishReason, LanguageModelV2StreamPart, LanguageModelV2Usage, SpeechModelV2, SpeechModelV2CallOptions, SpeechModelV2CallWarning, TranscriptionModelV2, TranscriptionModelV2CallOptions, TranscriptionModelV2CallWarning } from "@ai-sdk/provider";
|
|
4
4
|
|
|
5
5
|
//#region src/integrations/ai-sdk.d.ts
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import "../outetts-
|
|
2
|
-
import { I as TranscribeOptions, d as GerbilConfig, k as SpeakOptions, l as GenerateOptions, m as ImageInput } from "../types-
|
|
1
|
+
import "../outetts-Cr5oGk4z.mjs";
|
|
2
|
+
import { I as TranscribeOptions, d as GerbilConfig, k as SpeakOptions, l as GenerateOptions, m as ImageInput } from "../types-CjG36Vzj.mjs";
|
|
3
3
|
|
|
4
4
|
//#region src/integrations/langchain.d.ts
|
|
5
5
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import "../outetts-
|
|
2
|
-
import { d as GerbilConfig, l as GenerateOptions } from "../types-
|
|
1
|
+
import "../outetts-Cr5oGk4z.mjs";
|
|
2
|
+
import { d as GerbilConfig, l as GenerateOptions } from "../types-CjG36Vzj.mjs";
|
|
3
3
|
|
|
4
4
|
//#region src/integrations/llamaindex.d.ts
|
|
5
5
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import "../outetts-
|
|
2
|
-
import { d as GerbilConfig } from "../types-
|
|
3
|
-
import "../index-
|
|
4
|
-
import { t as Gerbil } from "../gerbil-
|
|
1
|
+
import "../outetts-Cr5oGk4z.mjs";
|
|
2
|
+
import { d as GerbilConfig } from "../types-CjG36Vzj.mjs";
|
|
3
|
+
import "../index-BdbeBDTz.mjs";
|
|
4
|
+
import { t as Gerbil } from "../gerbil-_68_JSGV.mjs";
|
|
5
5
|
|
|
6
6
|
//#region src/integrations/mcp.d.ts
|
|
7
7
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import "../gerbil-
|
|
1
|
+
import "../gerbil-DGrCwGtJ.mjs";
|
|
2
2
|
import "../utils-DKO55ZmZ.mjs";
|
|
3
|
-
import "../one-liner-
|
|
4
|
-
import "../skills-
|
|
5
|
-
import { n as mcp_default, r as startMCPServer, t as createMCPServer } from "../mcp-
|
|
3
|
+
import "../one-liner-DTGg6zdm.mjs";
|
|
4
|
+
import "../skills-Dsf0op66.mjs";
|
|
5
|
+
import { n as mcp_default, r as startMCPServer, t as createMCPServer } from "../mcp-DcE3wn-L.mjs";
|
|
6
6
|
|
|
7
7
|
export { createMCPServer, mcp_default as default, startMCPServer };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { r as DEFAULT_MODEL, t as Gerbil } from "./gerbil-
|
|
2
|
-
import { a as summarize, f as explain, h as commit, s as review, t as translate } from "./skills-
|
|
1
|
+
import { r as DEFAULT_MODEL, t as Gerbil } from "./gerbil-DGrCwGtJ.mjs";
|
|
2
|
+
import { a as summarize, f as explain, h as commit, s as review, t as translate } from "./skills-Dsf0op66.mjs";
|
|
3
3
|
|
|
4
4
|
//#region src/integrations/mcp.ts
|
|
5
5
|
/**
|
|
@@ -318,4 +318,4 @@ var mcp_default = {
|
|
|
318
318
|
|
|
319
319
|
//#endregion
|
|
320
320
|
export { mcp_default as n, startMCPServer as r, createMCPServer as t };
|
|
321
|
-
//# sourceMappingURL=mcp-
|
|
321
|
+
//# sourceMappingURL=mcp-DcE3wn-L.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-4imtBQLX.mjs","names":["handlers: Record<string, (args: any) => Promise<any>>","skills.summarize","skills.explain","skills.review","skills.commit","skills.translate"],"sources":["../src/integrations/mcp.ts"],"sourcesContent":["/**\n * Gerbil MCP Server\n *\n * Model Context Protocol server for Claude Desktop, Cursor, etc.\n *\n * @example\n * ```bash\n * gerbil serve --mcp\n * ```\n *\n * @example Claude Desktop config\n * ```json\n * {\n * \"mcpServers\": {\n * \"gerbil\": {\n * \"command\": \"npx\",\n * \"args\": [\"-y\", \"gerbil\", \"serve\", \"--mcp\"]\n * }\n * }\n * }\n * ```\n */\n\nimport { Gerbil } from \"../core/gerbil.js\";\nimport { DEFAULT_MODEL } from \"../core/models.js\";\nimport type { GerbilConfig } from \"../core/types.js\";\nimport * as skills from \"../skills/index.js\";\n\nexport interface MCPServerOptions extends GerbilConfig {\n /** Port for HTTP transport (default: stdio) */\n port?: number;\n\n /** Tools to expose */\n tools?: string[];\n}\n\n// Tool definitions\nconst TOOL_DEFINITIONS = {\n generate: {\n name: \"gerbil_generate\",\n description: \"Generate text using a local LLM\",\n inputSchema: {\n type: \"object\",\n properties: {\n prompt: { type: \"string\", description: \"The prompt to generate from\" },\n maxTokens: { type: \"number\", description: \"Maximum tokens to generate\" },\n temperature: { type: \"number\", description: \"Sampling temperature (0-2)\" },\n system: { type: \"string\", description: \"System prompt\" },\n thinking: { type: \"boolean\", description: \"Enable thinking mode\" },\n },\n required: [\"prompt\"],\n },\n },\n summarize: {\n name: \"gerbil_summarize\",\n description: \"Summarize content\",\n inputSchema: {\n type: \"object\",\n properties: {\n content: { type: \"string\", description: \"Content to summarize\" },\n length: { type: \"string\", enum: [\"short\", \"medium\", \"long\"] },\n format: { type: \"string\", enum: [\"paragraph\", \"bullets\"] },\n },\n required: [\"content\"],\n },\n },\n explain: {\n name: \"gerbil_explain\",\n description: \"Explain code or concepts\",\n inputSchema: {\n type: \"object\",\n properties: {\n content: { type: \"string\", description: \"Code or concept to explain\" },\n level: { type: \"string\", enum: [\"beginner\", \"intermediate\", \"expert\"] },\n language: { type: \"string\", description: \"Programming language\" },\n },\n required: [\"content\"],\n },\n },\n review: {\n name: \"gerbil_review\",\n description: \"Review code for issues\",\n inputSchema: {\n type: \"object\",\n properties: {\n code: { type: \"string\", description: \"Code to review\" },\n focus: {\n type: \"array\",\n items: { type: \"string\", enum: [\"security\", \"performance\", \"style\", \"bugs\"] },\n },\n },\n required: [\"code\"],\n },\n },\n commit: {\n name: \"gerbil_commit\",\n description: \"Generate a commit message from a diff\",\n inputSchema: {\n type: \"object\",\n properties: {\n diff: { type: \"string\", description: \"Git diff\" },\n type: { type: \"string\", enum: [\"conventional\", \"simple\", \"detailed\"] },\n },\n required: [\"diff\"],\n },\n },\n translate: {\n name: \"gerbil_translate\",\n description: \"Translate text\",\n inputSchema: {\n type: \"object\",\n properties: {\n text: { type: \"string\", description: \"Text to translate\" },\n to: { type: \"string\", description: \"Target language\" },\n from: { type: \"string\", description: \"Source language (optional)\" },\n },\n required: [\"text\", \"to\"],\n },\n },\n embed: {\n name: \"gerbil_embed\",\n description: \"Generate embeddings for text\",\n inputSchema: {\n type: \"object\",\n properties: {\n text: { type: \"string\", description: \"Text to embed\" },\n },\n required: [\"text\"],\n },\n },\n};\n\n/**\n * Create MCP server\n */\nexport async function createMCPServer(options: MCPServerOptions = {}) {\n const g = new Gerbil(options);\n\n // Load model\n await g.loadModel(options.model || DEFAULT_MODEL);\n\n // Determine which tools to expose\n const enabledTools = options.tools || Object.keys(TOOL_DEFINITIONS);\n\n // Tool handlers\n const handlers: Record<string, (args: any) => Promise<any>> = {\n gerbil_generate: async (args) => {\n const result = await g.generate(args.prompt, {\n maxTokens: args.maxTokens,\n temperature: args.temperature,\n system: args.system,\n thinking: args.thinking,\n });\n return {\n content: [\n {\n type: \"text\",\n text: result.thinking\n ? `Thinking: ${result.thinking}\\n\\nAnswer: ${result.text}`\n : result.text,\n },\n ],\n };\n },\n\n gerbil_summarize: async (args) => {\n const summary = await skills.summarize({\n content: args.content,\n length: args.length,\n format: args.format,\n });\n return { content: [{ type: \"text\", text: summary }] };\n },\n\n gerbil_explain: async (args) => {\n const explanation = await skills.explain({\n content: args.content,\n level: args.level,\n language: args.language,\n } as Parameters<typeof skills.explain>[0]);\n return { content: [{ type: \"text\", text: explanation }] };\n },\n\n gerbil_review: async (args) => {\n const reviewResult = await skills.review({\n code: args.code,\n focus: args.focus,\n } as Parameters<typeof skills.review>[0]);\n return { content: [{ type: \"text\", text: reviewResult }] };\n },\n\n gerbil_commit: async (args) => {\n const message = await skills.commit({\n diff: args.diff,\n type: args.type,\n } as Parameters<typeof skills.commit>[0]);\n return { content: [{ type: \"text\", text: message }] };\n },\n\n gerbil_translate: async (args) => {\n const translated = await skills.translate({\n text: args.text,\n to: args.to,\n from: args.from,\n } as Parameters<typeof skills.translate>[0]);\n return { content: [{ type: \"text\", text: translated }] };\n },\n\n gerbil_embed: async (args) => {\n const result = await g.embed(args.text);\n return {\n content: [\n {\n type: \"text\",\n text: JSON.stringify({\n vector: result.vector.slice(0, 10),\n dimensions: result.vector.length,\n }),\n },\n ],\n };\n },\n };\n\n return {\n // Server info\n info: {\n name: \"gerbil\",\n version: \"1.0.0\",\n description: \"Local LLM inference via Gerbil\",\n },\n\n // List available tools\n listTools: () =>\n enabledTools\n .filter((t) => TOOL_DEFINITIONS[t as keyof typeof TOOL_DEFINITIONS])\n .map((t) => TOOL_DEFINITIONS[t as keyof typeof TOOL_DEFINITIONS]),\n\n // Call a tool\n callTool: async (name: string, args: any) => {\n const handler = handlers[name];\n if (!handler) {\n throw new Error(`Unknown tool: ${name}`);\n }\n return handler(args);\n },\n\n // Get Gerbil instance\n gerbil: g,\n };\n}\n\n/**\n * Start MCP server with stdio transport\n */\nexport async function startMCPServer(options: MCPServerOptions = {}) {\n const server = await createMCPServer(options);\n\n // Simple stdio protocol handler\n const readline = await import(\"node:readline\");\n const rl = readline.createInterface({\n input: process.stdin,\n output: process.stdout,\n terminal: false,\n });\n\n rl.on(\"line\", async (line) => {\n try {\n const request = JSON.parse(line);\n\n let _response: any;\n\n switch (request.method) {\n case \"initialize\":\n _response = {\n protocolVersion: \"2024-11-05\",\n serverInfo: server.info,\n capabilities: {\n tools: {},\n },\n };\n break;\n\n case \"tools/list\":\n _response = { tools: server.listTools() };\n break;\n\n case \"tools/call\":\n _response = await server.callTool(request.params.name, request.params.arguments);\n break;\n\n default:\n _response = { error: { code: -32_601, message: \"Method not found\" } };\n }\n } catch (_error) {}\n });\n}\n\nexport default { createMCPServer, startMCPServer };\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mcp-DcE3wn-L.mjs","names":["handlers: Record<string, (args: any) => Promise<any>>","skills.summarize","skills.explain","skills.review","skills.commit","skills.translate"],"sources":["../src/integrations/mcp.ts"],"sourcesContent":["/**\n * Gerbil MCP Server\n *\n * Model Context Protocol server for Claude Desktop, Cursor, etc.\n *\n * @example\n * ```bash\n * gerbil serve --mcp\n * ```\n *\n * @example Claude Desktop config\n * ```json\n * {\n * \"mcpServers\": {\n * \"gerbil\": {\n * \"command\": \"npx\",\n * \"args\": [\"-y\", \"gerbil\", \"serve\", \"--mcp\"]\n * }\n * }\n * }\n * ```\n */\n\nimport { Gerbil } from \"../core/gerbil.js\";\nimport { DEFAULT_MODEL } from \"../core/models.js\";\nimport type { GerbilConfig } from \"../core/types.js\";\nimport * as skills from \"../skills/index.js\";\n\nexport interface MCPServerOptions extends GerbilConfig {\n /** Port for HTTP transport (default: stdio) */\n port?: number;\n\n /** Tools to expose */\n tools?: string[];\n}\n\n// Tool definitions\nconst TOOL_DEFINITIONS = {\n generate: {\n name: \"gerbil_generate\",\n description: \"Generate text using a local LLM\",\n inputSchema: {\n type: \"object\",\n properties: {\n prompt: { type: \"string\", description: \"The prompt to generate from\" },\n maxTokens: { type: \"number\", description: \"Maximum tokens to generate\" },\n temperature: { type: \"number\", description: \"Sampling temperature (0-2)\" },\n system: { type: \"string\", description: \"System prompt\" },\n thinking: { type: \"boolean\", description: \"Enable thinking mode\" },\n },\n required: [\"prompt\"],\n },\n },\n summarize: {\n name: \"gerbil_summarize\",\n description: \"Summarize content\",\n inputSchema: {\n type: \"object\",\n properties: {\n content: { type: \"string\", description: \"Content to summarize\" },\n length: { type: \"string\", enum: [\"short\", \"medium\", \"long\"] },\n format: { type: \"string\", enum: [\"paragraph\", \"bullets\"] },\n },\n required: [\"content\"],\n },\n },\n explain: {\n name: \"gerbil_explain\",\n description: \"Explain code or concepts\",\n inputSchema: {\n type: \"object\",\n properties: {\n content: { type: \"string\", description: \"Code or concept to explain\" },\n level: { type: \"string\", enum: [\"beginner\", \"intermediate\", \"expert\"] },\n language: { type: \"string\", description: \"Programming language\" },\n },\n required: [\"content\"],\n },\n },\n review: {\n name: \"gerbil_review\",\n description: \"Review code for issues\",\n inputSchema: {\n type: \"object\",\n properties: {\n code: { type: \"string\", description: \"Code to review\" },\n focus: {\n type: \"array\",\n items: { type: \"string\", enum: [\"security\", \"performance\", \"style\", \"bugs\"] },\n },\n },\n required: [\"code\"],\n },\n },\n commit: {\n name: \"gerbil_commit\",\n description: \"Generate a commit message from a diff\",\n inputSchema: {\n type: \"object\",\n properties: {\n diff: { type: \"string\", description: \"Git diff\" },\n type: { type: \"string\", enum: [\"conventional\", \"simple\", \"detailed\"] },\n },\n required: [\"diff\"],\n },\n },\n translate: {\n name: \"gerbil_translate\",\n description: \"Translate text\",\n inputSchema: {\n type: \"object\",\n properties: {\n text: { type: \"string\", description: \"Text to translate\" },\n to: { type: \"string\", description: \"Target language\" },\n from: { type: \"string\", description: \"Source language (optional)\" },\n },\n required: [\"text\", \"to\"],\n },\n },\n embed: {\n name: \"gerbil_embed\",\n description: \"Generate embeddings for text\",\n inputSchema: {\n type: \"object\",\n properties: {\n text: { type: \"string\", description: \"Text to embed\" },\n },\n required: [\"text\"],\n },\n },\n};\n\n/**\n * Create MCP server\n */\nexport async function createMCPServer(options: MCPServerOptions = {}) {\n const g = new Gerbil(options);\n\n // Load model\n await g.loadModel(options.model || DEFAULT_MODEL);\n\n // Determine which tools to expose\n const enabledTools = options.tools || Object.keys(TOOL_DEFINITIONS);\n\n // Tool handlers\n const handlers: Record<string, (args: any) => Promise<any>> = {\n gerbil_generate: async (args) => {\n const result = await g.generate(args.prompt, {\n maxTokens: args.maxTokens,\n temperature: args.temperature,\n system: args.system,\n thinking: args.thinking,\n });\n return {\n content: [\n {\n type: \"text\",\n text: result.thinking\n ? `Thinking: ${result.thinking}\\n\\nAnswer: ${result.text}`\n : result.text,\n },\n ],\n };\n },\n\n gerbil_summarize: async (args) => {\n const summary = await skills.summarize({\n content: args.content,\n length: args.length,\n format: args.format,\n });\n return { content: [{ type: \"text\", text: summary }] };\n },\n\n gerbil_explain: async (args) => {\n const explanation = await skills.explain({\n content: args.content,\n level: args.level,\n language: args.language,\n } as Parameters<typeof skills.explain>[0]);\n return { content: [{ type: \"text\", text: explanation }] };\n },\n\n gerbil_review: async (args) => {\n const reviewResult = await skills.review({\n code: args.code,\n focus: args.focus,\n } as Parameters<typeof skills.review>[0]);\n return { content: [{ type: \"text\", text: reviewResult }] };\n },\n\n gerbil_commit: async (args) => {\n const message = await skills.commit({\n diff: args.diff,\n type: args.type,\n } as Parameters<typeof skills.commit>[0]);\n return { content: [{ type: \"text\", text: message }] };\n },\n\n gerbil_translate: async (args) => {\n const translated = await skills.translate({\n text: args.text,\n to: args.to,\n from: args.from,\n } as Parameters<typeof skills.translate>[0]);\n return { content: [{ type: \"text\", text: translated }] };\n },\n\n gerbil_embed: async (args) => {\n const result = await g.embed(args.text);\n return {\n content: [\n {\n type: \"text\",\n text: JSON.stringify({\n vector: result.vector.slice(0, 10),\n dimensions: result.vector.length,\n }),\n },\n ],\n };\n },\n };\n\n return {\n // Server info\n info: {\n name: \"gerbil\",\n version: \"1.0.0\",\n description: \"Local LLM inference via Gerbil\",\n },\n\n // List available tools\n listTools: () =>\n enabledTools\n .filter((t) => TOOL_DEFINITIONS[t as keyof typeof TOOL_DEFINITIONS])\n .map((t) => TOOL_DEFINITIONS[t as keyof typeof TOOL_DEFINITIONS]),\n\n // Call a tool\n callTool: async (name: string, args: any) => {\n const handler = handlers[name];\n if (!handler) {\n throw new Error(`Unknown tool: ${name}`);\n }\n return handler(args);\n },\n\n // Get Gerbil instance\n gerbil: g,\n };\n}\n\n/**\n * Start MCP server with stdio transport\n */\nexport async function startMCPServer(options: MCPServerOptions = {}) {\n const server = await createMCPServer(options);\n\n // Simple stdio protocol handler\n const readline = await import(\"node:readline\");\n const rl = readline.createInterface({\n input: process.stdin,\n output: process.stdout,\n terminal: false,\n });\n\n rl.on(\"line\", async (line) => {\n try {\n const request = JSON.parse(line);\n\n let _response: any;\n\n switch (request.method) {\n case \"initialize\":\n _response = {\n protocolVersion: \"2024-11-05\",\n serverInfo: server.info,\n capabilities: {\n tools: {},\n },\n };\n break;\n\n case \"tools/list\":\n _response = { tools: server.listTools() };\n break;\n\n case \"tools/call\":\n _response = await server.callTool(request.params.name, request.params.arguments);\n break;\n\n default:\n _response = { error: { code: -32_601, message: \"Method not found\" } };\n }\n } catch (_error) {}\n });\n}\n\nexport default { createMCPServer, startMCPServer };\n"],"mappings":"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"}
|