@tryhamster/gerbil 1.0.0-rc.11 → 1.0.0-rc.13

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.
Files changed (64) hide show
  1. package/README.md +52 -1
  2. package/dist/browser/index.d.ts +159 -1
  3. package/dist/browser/index.d.ts.map +1 -1
  4. package/dist/browser/index.js +473 -6
  5. package/dist/browser/index.js.map +1 -1
  6. package/dist/cli.mjs +7 -7
  7. package/dist/cli.mjs.map +1 -1
  8. package/dist/frameworks/express.d.mts +1 -1
  9. package/dist/frameworks/express.mjs +2 -1
  10. package/dist/frameworks/express.mjs.map +1 -1
  11. package/dist/frameworks/fastify.d.mts +1 -1
  12. package/dist/frameworks/fastify.mjs +2 -1
  13. package/dist/frameworks/fastify.mjs.map +1 -1
  14. package/dist/frameworks/hono.d.mts +1 -1
  15. package/dist/frameworks/hono.mjs +2 -1
  16. package/dist/frameworks/hono.mjs.map +1 -1
  17. package/dist/frameworks/next.d.mts +2 -2
  18. package/dist/frameworks/next.mjs +2 -1
  19. package/dist/frameworks/next.mjs.map +1 -1
  20. package/dist/frameworks/react.d.mts +1 -1
  21. package/dist/frameworks/trpc.d.mts +1 -1
  22. package/dist/frameworks/trpc.mjs +2 -1
  23. package/dist/frameworks/trpc.mjs.map +1 -1
  24. package/dist/{gerbil-DoDGHe6Z.mjs → gerbil-BZklpDhM.mjs} +289 -1
  25. package/dist/gerbil-BZklpDhM.mjs.map +1 -0
  26. package/dist/gerbil-CAMb_nrK.mjs +5 -0
  27. package/dist/{gerbil-qOTe1nl2.d.mts → gerbil-DJygY0sJ.d.mts} +120 -2
  28. package/dist/gerbil-DJygY0sJ.d.mts.map +1 -0
  29. package/dist/index.d.mts +3 -3
  30. package/dist/index.d.mts.map +1 -1
  31. package/dist/index.mjs +2 -2
  32. package/dist/index.mjs.map +1 -1
  33. package/dist/integrations/ai-sdk.d.mts +72 -3
  34. package/dist/integrations/ai-sdk.d.mts.map +1 -1
  35. package/dist/integrations/ai-sdk.mjs +106 -3
  36. package/dist/integrations/ai-sdk.mjs.map +1 -1
  37. package/dist/integrations/langchain.d.mts +1 -1
  38. package/dist/integrations/langchain.mjs +2 -1
  39. package/dist/integrations/langchain.mjs.map +1 -1
  40. package/dist/integrations/llamaindex.d.mts +1 -1
  41. package/dist/integrations/llamaindex.mjs +2 -1
  42. package/dist/integrations/llamaindex.mjs.map +1 -1
  43. package/dist/integrations/mcp.d.mts +2 -2
  44. package/dist/integrations/mcp.mjs +5 -4
  45. package/dist/{mcp-kzDDWIoS.mjs → mcp-ZCC5OR7B.mjs} +3 -3
  46. package/dist/{mcp-kzDDWIoS.mjs.map → mcp-ZCC5OR7B.mjs.map} +1 -1
  47. package/dist/{one-liner-DxnNs_JK.mjs → one-liner-mH5SKPvT.mjs} +2 -2
  48. package/dist/{one-liner-DxnNs_JK.mjs.map → one-liner-mH5SKPvT.mjs.map} +1 -1
  49. package/dist/{repl-DGUw4fCc.mjs → repl-CSM1IBP1.mjs} +3 -3
  50. package/dist/skills/index.d.mts +3 -3
  51. package/dist/skills/index.d.mts.map +1 -1
  52. package/dist/skills/index.mjs +4 -3
  53. package/dist/{skills-DulrOPeP.mjs → skills-CPB_9YfF.mjs} +2 -2
  54. package/dist/{skills-DulrOPeP.mjs.map → skills-CPB_9YfF.mjs.map} +1 -1
  55. package/dist/{types-CiTc7ez3.d.mts → types-evP8RShr.d.mts} +26 -2
  56. package/dist/types-evP8RShr.d.mts.map +1 -0
  57. package/docs/ai-sdk.md +56 -1
  58. package/docs/browser.md +103 -0
  59. package/docs/embeddings.md +311 -0
  60. package/package.json +1 -1
  61. package/dist/gerbil-DJGqq7BX.mjs +0 -4
  62. package/dist/gerbil-DoDGHe6Z.mjs.map +0 -1
  63. package/dist/gerbil-qOTe1nl2.d.mts.map +0 -1
  64. package/dist/types-CiTc7ez3.d.mts.map +0 -1
package/README.md CHANGED
@@ -11,6 +11,7 @@
11
11
  <p align="center">
12
12
  <a href="#install">Install</a> •
13
13
  <a href="#quick-start">Quick Start</a> •
14
+ <a href="#embeddings">Embeddings</a> •
14
15
  <a href="#text-to-speech">TTS</a> •
15
16
  <a href="#speech-to-text">STT</a> •
16
17
  <a href="./docs/vision.md">Vision</a> •
@@ -46,6 +47,7 @@ const text = await gerbil("Explain recursion in one sentence");
46
47
  - **Zero Config** — `npx @tryhamster/gerbil "your prompt"` just works
47
48
  - **Local & Private** — No API keys, no data leaves your machine
48
49
  - **GPU Accelerated** — WebGPU with CPU fallback
50
+ - **Embeddings** — Semantic search, similarity, RAG
49
51
  - **Vision** — Analyze images with Ministral 3B
50
52
  - **Complete Audio** — Text-to-Speech (Kokoro/Supertonic) & Speech-to-Text (Whisper)
51
53
  - **Framework Ready** — AI SDK v5, Next.js, Express, LangChain
@@ -67,6 +69,30 @@ npm install @tryhamster/gerbil
67
69
 
68
70
  After global install, use `gerbil` directly instead of `npx @tryhamster/gerbil`.
69
71
 
72
+ ## Model Preloading
73
+
74
+ Download models ahead of time so users don't wait:
75
+
76
+ ```typescript
77
+ import { Gerbil } from "@tryhamster/gerbil";
78
+
79
+ const g = new Gerbil();
80
+
81
+ // Option 1: Preload for later (download only, free memory)
82
+ await g.preloadModel("qwen3-0.6b", {
83
+ onProgress: (p) => console.log(p.status, p.progress),
84
+ });
85
+ // Later: loads from disk cache (fast, no network)
86
+ await g.loadModel("qwen3-0.6b");
87
+
88
+ // Option 2: Preload and keep in memory (instant use)
89
+ await g.preloadModel("qwen3-0.6b", { keepLoaded: true });
90
+ // Instant - no loading needed
91
+ await g.generate("Hello");
92
+ ```
93
+
94
+ Works for all model types: `preloadTTS()`, `preloadSTT()`, `preloadEmbedding()`.
95
+
70
96
  ## Quick Start
71
97
 
72
98
  ```typescript
@@ -95,6 +121,30 @@ const data = await g.json("Extract: John, 32, NYC", {
95
121
  });
96
122
  ```
97
123
 
124
+ ## Embeddings
125
+
126
+ Generate semantic embeddings for search, similarity, and RAG:
127
+
128
+ ```typescript
129
+ // Compare two texts
130
+ const similarity = await g.similarity("Hello world", "Hi there");
131
+ console.log(similarity.score); // 0.85
132
+
133
+ // Semantic search
134
+ const results = await g.search("capital of France", [
135
+ "Paris is beautiful",
136
+ "London is in England",
137
+ "Dogs are pets"
138
+ ]);
139
+ // [{ text: "Paris is beautiful", score: 0.89, index: 0 }, ...]
140
+
141
+ // Generate embedding vector
142
+ const { vector } = await g.embed("Hello world");
143
+ // number[384]
144
+ ```
145
+
146
+ 📖 **[Full Embeddings Documentation →](./docs/embeddings.md)**
147
+
98
148
  ## Text-to-Speech
99
149
 
100
150
  Generate natural speech locally using Kokoro TTS (28 voices):
@@ -298,6 +348,7 @@ Use any HuggingFace model: `npx @tryhamster/gerbil -m hf:org/model "prompt"`
298
348
 
299
349
  | Guide | Description |
300
350
  |-------|-------------|
351
+ | [📖 Embeddings](./docs/embeddings.md) | Semantic search, similarity, RAG |
301
352
  | [📖 Vision](./docs/vision.md) | Image analysis with Ministral 3B |
302
353
  | [📖 Text-to-Speech](./docs/tts.md) | Kokoro & Supertonic TTS, streaming audio |
303
354
  | [📖 Speech-to-Text](./docs/stt.md) | Whisper STT, transcription, voice input |
@@ -305,7 +356,7 @@ Use any HuggingFace model: `npx @tryhamster/gerbil -m hf:org/model "prompt"`
305
356
  | [📖 Skills](./docs/skills.md) | Built-in skills, custom skill development |
306
357
  | [📖 Tools](./docs/tools.md) | Tool calling, agentic workflows |
307
358
  | [📖 REPL](./docs/repl.md) | Interactive terminal dashboard |
308
- | [📖 AI SDK](./docs/ai-sdk.md) | Vercel AI SDK v5 (LLM, TTS, STT) |
359
+ | [📖 AI SDK](./docs/ai-sdk.md) | Vercel AI SDK v5 (LLM, TTS, STT, Embeddings) |
309
360
  | [📖 Frameworks](./docs/frameworks.md) | Next.js, Express, React, LangChain |
310
361
  | [📖 CLI](./docs/cli.md) | All CLI commands and options |
311
362
  | [📖 MCP Server](./docs/mcp.md) | MCP server for Claude Desktop & Cursor |
@@ -92,6 +92,24 @@ type EmbedResult = {
92
92
  /** Time in ms */
93
93
  totalTime: number;
94
94
  };
95
+ type SearchResult = {
96
+ /** The matched text */
97
+ text: string;
98
+ /** Similarity score (0-1, higher is more similar) */
99
+ score: number;
100
+ /** Index in the original corpus */
101
+ index: number;
102
+ };
103
+ type SimilarityResult = {
104
+ /** Similarity score (0-1, higher is more similar) */
105
+ score: number;
106
+ /** First text */
107
+ textA: string;
108
+ /** Second text */
109
+ textB: string;
110
+ /** Time in ms */
111
+ totalTime: number;
112
+ };
95
113
  type LoadOptions = {
96
114
  /** Progress callback */
97
115
  onProgress?: (info: ProgressInfo) => void;
@@ -985,6 +1003,142 @@ type UseVoiceChatReturn = {
985
1003
  * ```
986
1004
  */
987
1005
  declare function useVoiceChat(options?: UseVoiceChatOptions): UseVoiceChatReturn;
1006
+ /** Embedding result type */
1007
+ type BrowserEmbedResult = {
1008
+ vector: number[];
1009
+ text: string;
1010
+ };
1011
+ /** Search result type */
1012
+ type BrowserSearchResult = {
1013
+ text: string;
1014
+ score: number;
1015
+ index: number;
1016
+ };
1017
+ /** useEmbedding options */
1018
+ type UseEmbeddingOptions = {
1019
+ /** Embedding model (default: "Xenova/all-MiniLM-L6-v2") */
1020
+ model?: string;
1021
+ /** Normalize vectors (default: true) */
1022
+ normalize?: boolean;
1023
+ /** Auto-load on mount (default: false) */
1024
+ autoLoad?: boolean;
1025
+ /** Callback when ready */
1026
+ onReady?: () => void;
1027
+ /** Callback on error */
1028
+ onError?: (error: string) => void;
1029
+ };
1030
+ /** useEmbedding return type */
1031
+ type UseEmbeddingReturn = {
1032
+ /** Generate embedding for text */
1033
+ embed: (text: string) => Promise<number[]>;
1034
+ /** Generate embeddings for multiple texts */
1035
+ embedBatch: (texts: string[]) => Promise<BrowserEmbedResult[]>;
1036
+ /** Compute cosine similarity between two texts */
1037
+ similarity: (textA: string, textB: string) => Promise<number>;
1038
+ /** Semantic search - find most similar texts */
1039
+ search: (query: string, corpus: string[], topK?: number) => Promise<BrowserSearchResult[]>;
1040
+ /** Find nearest text to an embedding vector */
1041
+ findNearest: (embedding: number[], candidates: string[], topK?: number) => Promise<BrowserSearchResult[]>;
1042
+ /** Compute cosine similarity between two vectors */
1043
+ cosineSimilarity: (a: number[], b: number[]) => number;
1044
+ /** Manually load the model */
1045
+ load: () => void;
1046
+ /** Whether model is loading */
1047
+ isLoading: boolean;
1048
+ /** Whether model is ready */
1049
+ isReady: boolean;
1050
+ /** Loading progress */
1051
+ loadingProgress: {
1052
+ status: string;
1053
+ message?: string;
1054
+ progress?: number;
1055
+ } | null;
1056
+ /** Error message */
1057
+ error: string | null;
1058
+ };
1059
+ /**
1060
+ * React hook for text embeddings in the browser
1061
+ *
1062
+ * @example
1063
+ * ```tsx
1064
+ * import { useEmbedding } from "@tryhamster/gerbil/browser";
1065
+ *
1066
+ * function App() {
1067
+ * const { embed, similarity, search, isLoading, isReady } = useEmbedding();
1068
+ *
1069
+ * if (isLoading) return <div>Loading embedding model...</div>;
1070
+ *
1071
+ * const handleSearch = async () => {
1072
+ * const results = await search("capital of France", [
1073
+ * "Paris is beautiful",
1074
+ * "London is in England",
1075
+ * "Dogs are pets"
1076
+ * ]);
1077
+ * console.log(results); // [{ text: "Paris is beautiful", score: 0.89, index: 0 }, ...]
1078
+ * };
1079
+ *
1080
+ * return <button onClick={handleSearch}>Search</button>;
1081
+ * }
1082
+ * ```
1083
+ */
1084
+ declare function useEmbedding(options?: UseEmbeddingOptions): UseEmbeddingReturn;
1085
+ /** Progress callback for preloading */
1086
+ type PreloadProgress = {
1087
+ status: "downloading" | "loading" | "ready" | "error";
1088
+ file?: string;
1089
+ progress?: number;
1090
+ message?: string;
1091
+ };
1092
+ /** Preload options */
1093
+ type PreloadOptions = {
1094
+ onProgress?: (progress: PreloadProgress) => void;
1095
+ };
1096
+ /**
1097
+ * Preload a chat/LLM model (downloads to IndexedDB cache)
1098
+ *
1099
+ * Call this during app initialization to ensure the model is ready
1100
+ * when users need it.
1101
+ *
1102
+ * @example
1103
+ * ```ts
1104
+ * // In your app's initialization
1105
+ * import { preloadChatModel } from "@tryhamster/gerbil/browser";
1106
+ *
1107
+ * await preloadChatModel("qwen3-0.6b", {
1108
+ * onProgress: (p) => console.log(p.status, p.progress),
1109
+ * });
1110
+ *
1111
+ * // Later, useChat will load instantly from cache
1112
+ * ```
1113
+ */
1114
+ declare function preloadChatModel(modelId: string, options?: PreloadOptions): Promise<void>;
1115
+ /**
1116
+ * Preload an embedding model
1117
+ *
1118
+ * @example
1119
+ * ```ts
1120
+ * await preloadEmbeddingModel("Xenova/all-MiniLM-L6-v2");
1121
+ * ```
1122
+ */
1123
+ declare function preloadEmbeddingModel(modelId?: string, options?: PreloadOptions): Promise<void>;
1124
+ /**
1125
+ * Preload a TTS model
1126
+ *
1127
+ * @example
1128
+ * ```ts
1129
+ * await preloadTTSModel("kokoro-82m");
1130
+ * ```
1131
+ */
1132
+ declare function preloadTTSModel(modelId?: TTSModelId, options?: PreloadOptions): Promise<void>;
1133
+ /**
1134
+ * Preload an STT model
1135
+ *
1136
+ * @example
1137
+ * ```ts
1138
+ * await preloadSTTModel("whisper-tiny.en");
1139
+ * ```
1140
+ */
1141
+ declare function preloadSTTModel(modelId?: string, options?: PreloadOptions): Promise<void>;
988
1142
  /**
989
1143
  * Check if WebGPU is supported
990
1144
  */
@@ -1003,7 +1157,11 @@ declare const _default: {
1003
1157
  createGerbilWorker: typeof createGerbilWorker;
1004
1158
  playAudio: typeof playAudio;
1005
1159
  createAudioPlayer: typeof createAudioPlayer;
1160
+ preloadChatModel: typeof preloadChatModel;
1161
+ preloadEmbeddingModel: typeof preloadEmbeddingModel;
1162
+ preloadTTSModel: typeof preloadTTSModel;
1163
+ preloadSTTModel: typeof preloadSTTModel;
1006
1164
  };
1007
1165
  //#endregion
1008
- export { AudioChunk, BUILTIN_MODELS, BrowserVoiceInfo, CacheConfig, CompleteOptions, EmbedOptions, EmbedResult, FallbackConfig, GenerateOptions, GenerateResult, GenerateStreamOptions, GerbilConfig, GerbilModelSettings, GerbilProviderSettings, GerbilWorker, GerbilWorkerOptions, ImageInput, JsonOptions, LoadOptions, LoadSTTOptions, LoadTTSOptions, LoadingProgress, Message, ModelConfig, ModelSource, ModelStats, ProgressInfo, STTModelConfig, STTProgress, SessionStats, SpeakOptions, SpeakResult, StreamingTranscriptionOptions, StreamingTranscriptionSession, SystemInfo, TTSModelConfig, TTSModelId, TTSProgress, TranscribeOptions, TranscribeResult, TranscribeSegment, UseChatOptions, UseChatReturn, UseCompletionOptions, UseCompletionReturn, UseSpeechOptions, UseSpeechReturn, UseVoiceChatOptions, UseVoiceChatReturn, UseVoiceInputOptions, UseVoiceInputReturn, VoiceChatMessage, VoiceInfo, WorkerComplete, WorkerProgress, WorkerToken, createAudioPlayer, createGerbilWorker, _default as default, getWebGPUInfo, isWebGPUSupported, playAudio, useChat, useCompletion, useSpeech, useVoiceChat, useVoiceInput };
1166
+ export { AudioChunk, BUILTIN_MODELS, BrowserEmbedResult, BrowserSearchResult, BrowserVoiceInfo, CacheConfig, CompleteOptions, EmbedOptions, EmbedResult, FallbackConfig, GenerateOptions, GenerateResult, GenerateStreamOptions, GerbilConfig, GerbilModelSettings, GerbilProviderSettings, GerbilWorker, GerbilWorkerOptions, ImageInput, JsonOptions, LoadOptions, LoadSTTOptions, LoadTTSOptions, LoadingProgress, Message, ModelConfig, ModelSource, ModelStats, PreloadOptions, PreloadProgress, ProgressInfo, STTModelConfig, STTProgress, SearchResult, SessionStats, SimilarityResult, SpeakOptions, SpeakResult, StreamingTranscriptionOptions, StreamingTranscriptionSession, SystemInfo, TTSModelConfig, TTSModelId, TTSProgress, TranscribeOptions, TranscribeResult, TranscribeSegment, UseChatOptions, UseChatReturn, UseCompletionOptions, UseCompletionReturn, UseEmbeddingOptions, UseEmbeddingReturn, UseSpeechOptions, UseSpeechReturn, UseVoiceChatOptions, UseVoiceChatReturn, UseVoiceInputOptions, UseVoiceInputReturn, VoiceChatMessage, VoiceInfo, WorkerComplete, WorkerProgress, WorkerToken, createAudioPlayer, createGerbilWorker, _default as default, getWebGPUInfo, isWebGPUSupported, playAudio, preloadChatModel, preloadEmbeddingModel, preloadSTTModel, preloadTTSModel, useChat, useCompletion, useEmbedding, useSpeech, useVoiceChat, useVoiceInput };
1009
1167
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","names":[],"sources":["../../src/core/types.ts","../../src/core/models.ts","../../src/browser/index.ts"],"sourcesContent":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","names":[],"sources":["../../src/core/types.ts","../../src/core/models.ts","../../src/browser/index.ts"],"sourcesContent":[],"mappings":"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"}