greptor 0.5.1 → 0.6.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 +48 -6
- package/dist/greptor.d.ts.map +1 -1
- package/dist/greptor.js +3 -1
- package/dist/greptor.js.map +1 -1
- package/dist/llm/llm-factory.d.ts +7 -0
- package/dist/llm/llm-factory.d.ts.map +1 -0
- package/dist/llm/llm-factory.js +52 -0
- package/dist/llm/llm-factory.js.map +1 -0
- package/dist/types.d.ts +21 -2
- package/dist/types.d.ts.map +1 -1
- package/package.json +19 -1
package/README.md
CHANGED
|
@@ -34,23 +34,59 @@ bun add greptor
|
|
|
34
34
|
|
|
35
35
|
### Step 2: Initialize
|
|
36
36
|
|
|
37
|
-
Create a Greptor instance with your base directory, topic, and
|
|
37
|
+
Create a Greptor instance with your base directory, topic, and model config.
|
|
38
38
|
|
|
39
39
|
```typescript
|
|
40
40
|
import { createGreptor } from 'greptor';
|
|
41
|
-
import { openai } from "@ai-sdk/openai";
|
|
42
41
|
|
|
43
42
|
// Create Greptor instance
|
|
44
43
|
const greptor = await createGreptor({
|
|
45
44
|
baseDir: './projects/investing',
|
|
46
45
|
topic: 'Investing, stock market, financial, and macroeconomics',
|
|
47
|
-
model:
|
|
46
|
+
model: {
|
|
47
|
+
provider: "@ai-sdk/openai",
|
|
48
|
+
model: "gpt-5-mini",
|
|
49
|
+
},
|
|
48
50
|
});
|
|
49
51
|
```
|
|
50
52
|
|
|
51
53
|
- **`baseDir`**: Home directory for your project where all data will be stored.
|
|
52
54
|
- **`topic`**: Helps Greptor understand your data better and generate a relevant tag schema.
|
|
53
|
-
- **`model`**: A `
|
|
55
|
+
- **`model`**: A config object with `provider`, `model`, and optional `options` for the [Vercel AI SDK](https://ai-sdk.dev).
|
|
56
|
+
|
|
57
|
+
#### Model Config
|
|
58
|
+
|
|
59
|
+
Greptor uses an LLM (via [Greptor](https://github.com/greptorio/greptor)) to process content. You'll need to:
|
|
60
|
+
|
|
61
|
+
1. **Choose a provider** from the [AI SDK ecosystem](https://sdk.vercel.ai/providers/ai-sdk-providers):
|
|
62
|
+
- `@ai-sdk/openai` - OpenAI (GPT-4, GPT-4o, etc.)
|
|
63
|
+
- `@ai-sdk/anthropic` - Anthropic (Claude)
|
|
64
|
+
- `@ai-sdk/groq` - Groq (fast inference)
|
|
65
|
+
- `@ai-sdk/openai-compatible` - OpenAI-compatible endpoints (NVIDIA NIM, OpenRouter, etc.)
|
|
66
|
+
- And [many more](https://sdk.vercel.ai/providers/ai-sdk-providers)...
|
|
67
|
+
|
|
68
|
+
2. **Get an API key** from your provider and set it as an environment variable:
|
|
69
|
+
```bash
|
|
70
|
+
export OPENAI_API_KEY="sk-..."
|
|
71
|
+
# or add to ~/.bashrc, ~/.zshrc, etc.
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
3. **Provide it in the model config** when creating Greptor.
|
|
75
|
+
```typescript
|
|
76
|
+
const greptor = await createGreptor({
|
|
77
|
+
baseDir: './projects/investing',
|
|
78
|
+
topic: 'Investing, stock market, financial, and macroeconomics',
|
|
79
|
+
model: {
|
|
80
|
+
provider: "@ai-sdk/openai-compatible",
|
|
81
|
+
model: "z-ai/glm4.7",
|
|
82
|
+
name: "nvidia",
|
|
83
|
+
options: {
|
|
84
|
+
baseURL: "https://integrate.api.nvidia.com/v1",
|
|
85
|
+
apiKey: process.env.NVIDIA_API_KEY,
|
|
86
|
+
},
|
|
87
|
+
},
|
|
88
|
+
});
|
|
89
|
+
```
|
|
54
90
|
|
|
55
91
|
### Step 3: Start Feeding Documents
|
|
56
92
|
|
|
@@ -304,7 +340,10 @@ Greptor provides optional hooks to monitor the ingestion and processing pipeline
|
|
|
304
340
|
const greptor = await createGreptor({
|
|
305
341
|
baseDir: './projects/investing',
|
|
306
342
|
topic: 'Investing, stock market, financial, and macroeconomics',
|
|
307
|
-
model:
|
|
343
|
+
model: {
|
|
344
|
+
provider: "@ai-sdk/openai",
|
|
345
|
+
model: "gpt-5-mini",
|
|
346
|
+
},
|
|
308
347
|
hooks: {
|
|
309
348
|
onProcessingRunStarted: ({ documentsToProcess, totalDocuments }) => {
|
|
310
349
|
console.log(`📋 Starting processing run: ${documentsToProcess} documents queued`);
|
|
@@ -375,7 +414,10 @@ Here's a comprehensive example for investment research:
|
|
|
375
414
|
const greptor = await createGreptor({
|
|
376
415
|
baseDir: './projects/investing',
|
|
377
416
|
topic: 'Investing, stock market, financial, and macroeconomics',
|
|
378
|
-
model:
|
|
417
|
+
model: {
|
|
418
|
+
provider: "@ai-sdk/openai",
|
|
419
|
+
model: "gpt-5-mini",
|
|
420
|
+
},
|
|
379
421
|
tagSchema: [
|
|
380
422
|
{
|
|
381
423
|
name: 'company',
|
package/dist/greptor.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"greptor.d.ts","sourceRoot":"","sources":["../src/greptor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,iBAAiB,EACjB,eAAe,EACf,gBAAgB,EAChB,cAAc,EACd,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"greptor.d.ts","sourceRoot":"","sources":["../src/greptor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,iBAAiB,EACjB,eAAe,EACf,gBAAgB,EAChB,cAAc,EACd,MAAM,YAAY,CAAC;AAcpB,MAAM,WAAW,OAAO;IACvB,GAAG,EAAE,CAAC,KAAK,EAAE,eAAe,KAAK,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAC3D,WAAW,EAAE,CACZ,OAAO,EAAE,MAAM,EAAE,EACjB,SAAS,EAAE,OAAO,KACd,OAAO,CAAC,iBAAiB,CAAC,CAAC;CAChC;AAED,wBAAsB,aAAa,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC,CAoH7E"}
|
package/dist/greptor.js
CHANGED
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import path from "node:path";
|
|
2
2
|
import YAML from "yaml";
|
|
3
|
+
import { resolveModel } from "./llm/llm-factory.js";
|
|
3
4
|
import { createProcessingQueue, enqueueUnprocessedDocuments, startBackgroundWorkers, } from "./processing/processor.js";
|
|
4
5
|
import { generateSkill } from "./skills/skill-generator.js";
|
|
5
6
|
import { createFileStorage } from "./storage/file-storage.js";
|
|
6
7
|
import { initializeTagSchema } from "./tag-schema/initialize.js";
|
|
7
8
|
export async function createGreptor(options) {
|
|
8
|
-
const { baseDir,
|
|
9
|
+
const { baseDir, hooks } = options;
|
|
10
|
+
const model = await resolveModel(options.model);
|
|
9
11
|
const contentPath = path.join(baseDir, "content");
|
|
10
12
|
const storage = createFileStorage(contentPath);
|
|
11
13
|
const tagSchema = await initializeTagSchema(storage.baseDir, model, options.topic, options.tagSchema);
|
package/dist/greptor.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"greptor.js","sourceRoot":"","sources":["../src/greptor.ts"],"names":[],"mappings":"AAOA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EACN,qBAAqB,EACrB,2BAA2B,EAC3B,sBAAsB,GACtB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAUjE,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,OAAuB;IAC1D,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,
|
|
1
|
+
{"version":3,"file":"greptor.js","sourceRoot":"","sources":["../src/greptor.ts"],"names":[],"mappings":"AAOA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EACN,qBAAqB,EACrB,2BAA2B,EAC3B,sBAAsB,GACtB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAUjE,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,OAAuB;IAC1D,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC;IACnC,MAAM,KAAK,GAAG,MAAM,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAChD,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IAClD,MAAM,OAAO,GAAG,iBAAiB,CAAC,WAAW,CAAC,CAAC;IAE/C,MAAM,SAAS,GAAG,MAAM,mBAAmB,CAC1C,OAAO,CAAC,OAAO,EACf,KAAK,EACL,OAAO,CAAC,KAAK,EACb,OAAO,CAAC,SAAS,CACjB,CAAC;IAEF,MAAM,KAAK,GAAG,qBAAqB,EAAE,CAAC;IACtC,MAAM,WAAW,GAAG,MAAM,2BAA2B,CAAC;QACrD,OAAO;QACP,KAAK;KACL,CAAC,CAAC;IAEH,MAAM,GAAG,GAAG;QACX,MAAM,EAAE,OAAO,CAAC,KAAK;QACrB,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC;QACpC,KAAK;QACL,OAAO;QACP,KAAK;KACL,CAAC;IAEF,sBAAsB,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,CAAC,OAAO,IAAI,CAAC,EAAE,CAAC,CAAC;IAE1E,KAAK,UAAU,GAAG,CAAC,KAAsB;QACxC,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YAC7B,KAAK,EAAE,OAAO,EAAE,CAAC;gBAChB,KAAK,EAAE,IAAI,KAAK,CAAC,uBAAuB,KAAK,CAAC,MAAM,EAAE,CAAC;gBACvD,OAAO,EAAE;oBACR,MAAM,EAAE,KAAK,CAAC,MAAM;oBACpB,SAAS,EAAE,KAAK,CAAC,SAAS;oBAC1B,KAAK,EAAE,KAAK,CAAC,KAAK;iBAClB;aACD,CAAC,CAAC;YACH,OAAO;gBACN,OAAO,EAAE,KAAK;gBACd,OAAO,EAAE,uBAAuB,KAAK,CAAC,MAAM,EAAE;aAC9C,CAAC;QACH,CAAC;QAED,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;QAEhD,IAAI,GAAG,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;YAC9B,OAAO;gBACN,OAAO,EAAE,KAAK;gBACd,OAAO,EAAE,0BAA0B;aACnC,CAAC;QACH,CAAC;QAED,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YAC1B,KAAK,EAAE,OAAO,EAAE,CAAC;gBAChB,KAAK,EAAE,IAAI,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC;gBAC7B,OAAO,EAAE;oBACR,MAAM,EAAE,KAAK,CAAC,MAAM;oBACpB,SAAS,EAAE,KAAK,CAAC,SAAS;oBAC1B,KAAK,EAAE,KAAK,CAAC,KAAK;iBAClB;aACD,CAAC,CAAC;YACH,OAAO;gBACN,OAAO,EAAE,KAAK;gBACd,OAAO,EAAE,GAAG,CAAC,OAAO;aACpB,CAAC;QACH,CAAC;QAED,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAEvB,OAAO;YACN,OAAO,EAAE,IAAI;YACb,OAAO,EAAE,gBAAgB;YACzB,GAAG,EAAE,GAAG,CAAC,GAAG;SACZ,CAAC;IACH,CAAC;IAED,KAAK,UAAU,WAAW,CACzB,OAAiB,EACjB,SAAS,GAAG,KAAK;QAEjB,IAAI,CAAC;YACJ,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,aAAa,CACxC;gBACC,MAAM,EAAE,OAAO,CAAC,KAAK;gBACrB,OAAO;gBACP,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,SAAS;gBACT,SAAS;aACT,EACD,OAAO,CACP,CAAC;YAEF,OAAO;gBACN,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE,oBAAoB,SAAS,EAAE;gBACxC,SAAS;aACT,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,MAAM,YAAY,GACjB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACxD,KAAK,EAAE,OAAO,EAAE,CAAC;gBAChB,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,YAAY,CAAC;aAC/D,CAAC,CAAC;YACH,OAAO;gBACN,OAAO,EAAE,KAAK;gBACd,OAAO,EAAE,YAAY;aACrB,CAAC;QACH,CAAC;IACF,CAAC;IAED,OAAO;QACN,GAAG;QACH,WAAW;KACX,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { LanguageModel } from "ai";
|
|
2
|
+
import type { ModelConfig } from "../types.js";
|
|
3
|
+
/**
|
|
4
|
+
* Resolves a LanguageModel from a configuration object.
|
|
5
|
+
*/
|
|
6
|
+
export declare function resolveModel(config: ModelConfig): Promise<LanguageModel>;
|
|
7
|
+
//# sourceMappingURL=llm-factory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"llm-factory.d.ts","sourceRoot":"","sources":["../../src/llm/llm-factory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,IAAI,CAAC;AACxC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAqB/C;;GAEG;AACH,wBAAsB,YAAY,CACjC,MAAM,EAAE,WAAW,GACjB,OAAO,CAAC,aAAa,CAAC,CA4CxB"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
const PROVIDER_EXPORTS = {
|
|
2
|
+
"@ai-sdk/amazon-bedrock": "createAmazonBedrock",
|
|
3
|
+
"@ai-sdk/anthropic": "createAnthropic",
|
|
4
|
+
"@ai-sdk/azure": "createAzure",
|
|
5
|
+
"@ai-sdk/cerebras": "createCerebras",
|
|
6
|
+
"@ai-sdk/cohere": "createCohere",
|
|
7
|
+
"@ai-sdk/deepinfra": "createDeepInfra",
|
|
8
|
+
"@ai-sdk/google": "createGoogleGenerativeAI",
|
|
9
|
+
"@ai-sdk/google-vertex": "createVertex",
|
|
10
|
+
"@ai-sdk/groq": "createGroq",
|
|
11
|
+
"@ai-sdk/mistral": "createMistral",
|
|
12
|
+
"@ai-sdk/openai": "createOpenAI",
|
|
13
|
+
"@ai-sdk/openai-compatible": "createOpenAICompatible",
|
|
14
|
+
"@ai-sdk/perplexity": "createPerplexity",
|
|
15
|
+
"@ai-sdk/togetherai": "createTogetherAI",
|
|
16
|
+
"@ai-sdk/xai": "createXai",
|
|
17
|
+
"@openrouter/ai-sdk-provider": "createOpenRouter",
|
|
18
|
+
};
|
|
19
|
+
/**
|
|
20
|
+
* Resolves a LanguageModel from a configuration object.
|
|
21
|
+
*/
|
|
22
|
+
export async function resolveModel(config) {
|
|
23
|
+
const { provider, model, options } = config;
|
|
24
|
+
const exportName = PROVIDER_EXPORTS[provider];
|
|
25
|
+
if (!exportName) {
|
|
26
|
+
throw new Error(`Unknown or unsupported provider: ${provider}. Please ensure the package is installed.`);
|
|
27
|
+
}
|
|
28
|
+
try {
|
|
29
|
+
// Dynamic import of the provider package
|
|
30
|
+
const mod = await import(provider);
|
|
31
|
+
const factory = mod[exportName];
|
|
32
|
+
if (typeof factory !== "function") {
|
|
33
|
+
throw new Error(`Provider ${provider} does not export a factory function named ${exportName}.`);
|
|
34
|
+
}
|
|
35
|
+
// Create the provider instance (e.g., const openai = createOpenAI({...}))
|
|
36
|
+
const providerInstance = factory(options);
|
|
37
|
+
// The provider instance is typically a function that takes the model ID
|
|
38
|
+
// e.g. openai('gpt-4')
|
|
39
|
+
if (typeof providerInstance !== "function") {
|
|
40
|
+
throw new Error(`Provider factory for ${provider} did not return a valid provider function.`);
|
|
41
|
+
}
|
|
42
|
+
return providerInstance(model);
|
|
43
|
+
}
|
|
44
|
+
catch (error) {
|
|
45
|
+
if (error instanceof Error &&
|
|
46
|
+
error.message.includes("Cannot find module")) {
|
|
47
|
+
throw new Error(`Failed to import provider ${provider}. Make sure it is installed in your project.\nrun: bun add ${provider}`);
|
|
48
|
+
}
|
|
49
|
+
throw error;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
//# sourceMappingURL=llm-factory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"llm-factory.js","sourceRoot":"","sources":["../../src/llm/llm-factory.ts"],"names":[],"mappings":"AAGA,MAAM,gBAAgB,GAA2B;IAChD,wBAAwB,EAAE,qBAAqB;IAC/C,mBAAmB,EAAE,iBAAiB;IACtC,eAAe,EAAE,aAAa;IAC9B,kBAAkB,EAAE,gBAAgB;IACpC,gBAAgB,EAAE,cAAc;IAChC,mBAAmB,EAAE,iBAAiB;IACtC,gBAAgB,EAAE,0BAA0B;IAC5C,uBAAuB,EAAE,cAAc;IACvC,cAAc,EAAE,YAAY;IAC5B,iBAAiB,EAAE,eAAe;IAClC,gBAAgB,EAAE,cAAc;IAChC,2BAA2B,EAAE,wBAAwB;IACrD,oBAAoB,EAAE,kBAAkB;IACxC,oBAAoB,EAAE,kBAAkB;IACxC,aAAa,EAAE,WAAW;IAC1B,6BAA6B,EAAE,kBAAkB;CACjD,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CACjC,MAAmB;IAEnB,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;IAE5C,MAAM,UAAU,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAC9C,IAAI,CAAC,UAAU,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CACd,oCAAoC,QAAQ,2CAA2C,CACvF,CAAC;IACH,CAAC;IAED,IAAI,CAAC;QACJ,yCAAyC;QACzC,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,CAAC;QACnC,MAAM,OAAO,GAAG,GAAG,CAAC,UAAU,CAAC,CAAC;QAEhC,IAAI,OAAO,OAAO,KAAK,UAAU,EAAE,CAAC;YACnC,MAAM,IAAI,KAAK,CACd,YAAY,QAAQ,6CAA6C,UAAU,GAAG,CAC9E,CAAC;QACH,CAAC;QAED,0EAA0E;QAC1E,MAAM,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;QAE1C,wEAAwE;QACxE,uBAAuB;QACvB,IAAI,OAAO,gBAAgB,KAAK,UAAU,EAAE,CAAC;YAC5C,MAAM,IAAI,KAAK,CACd,wBAAwB,QAAQ,4CAA4C,CAC5E,CAAC;QACH,CAAC;QAED,OAAO,gBAAgB,CAAC,KAAK,CAAC,CAAC;IAChC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,IACC,KAAK,YAAY,KAAK;YACtB,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAC,EAC3C,CAAC;YACF,MAAM,IAAI,KAAK,CACd,6BAA6B,QAAQ,8DAA8D,QAAQ,EAAE,CAC7G,CAAC;QACH,CAAC;QACD,MAAM,KAAK,CAAC;IACb,CAAC;AACF,CAAC"}
|
package/dist/types.d.ts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import type { LanguageModel } from "ai";
|
|
2
1
|
import type { DocumentRef } from "./storage/types.js";
|
|
3
2
|
import type { TagSchema } from "./tag-schema/types.js";
|
|
4
3
|
export type { TagSchema, TagSchemaItem, } from "./tag-schema/types.js";
|
|
@@ -54,10 +53,30 @@ export interface GreptorHooks {
|
|
|
54
53
|
onDocumentProcessingCompleted?: (event: DocumentProcessingCompletedEvent) => void;
|
|
55
54
|
onError?: (event: ErrorEvent) => void;
|
|
56
55
|
}
|
|
56
|
+
export interface ModelConfig {
|
|
57
|
+
/**
|
|
58
|
+
* The name of the AI SDK provider fro [AI SDK ecosystem](https://sdk.vercel.ai/providers/ai-sdk-providers):
|
|
59
|
+
- `@ai-sdk/openai` - OpenAI (GPT-4, GPT-4o, etc.)
|
|
60
|
+
- `@ai-sdk/anthropic` - Anthropic (Claude)
|
|
61
|
+
- `@ai-sdk/groq` - Groq (fast inference)
|
|
62
|
+
- `@ai-sdk/openai-compatible` - OpenAI-compatible endpoints (NVIDIA NIM, OpenRouter, etc.)
|
|
63
|
+
- And [many more](https://sdk.vercel.ai/providers/ai-sdk-providers)...
|
|
64
|
+
*/
|
|
65
|
+
provider: string;
|
|
66
|
+
/**
|
|
67
|
+
* The model ID to use (specific to the provider).
|
|
68
|
+
*/
|
|
69
|
+
model: string;
|
|
70
|
+
/**
|
|
71
|
+
* Configuration options passed to the provider factory function.
|
|
72
|
+
* Examples: apiKey, baseURL, etc.
|
|
73
|
+
*/
|
|
74
|
+
options?: Record<string, unknown>;
|
|
75
|
+
}
|
|
57
76
|
export interface GreptorOptions {
|
|
58
77
|
baseDir: string;
|
|
59
78
|
topic: string;
|
|
60
|
-
model:
|
|
79
|
+
model: ModelConfig;
|
|
61
80
|
workers?: number;
|
|
62
81
|
tagSchema?: TagSchema;
|
|
63
82
|
hooks?: GreptorHooks;
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "greptor",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.6.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Transform messy, unstructured text into clean, grep-friendly data for agentic search workflows.",
|
|
6
6
|
"license": "MIT",
|
|
@@ -57,6 +57,24 @@
|
|
|
57
57
|
},
|
|
58
58
|
"dependencies": {
|
|
59
59
|
"@ai-sdk/openai-compatible": "^2.0.2",
|
|
60
|
+
"@ai-sdk/amazon-bedrock": "3.0.57",
|
|
61
|
+
"@ai-sdk/anthropic": "2.0.56",
|
|
62
|
+
"@ai-sdk/azure": "2.0.82",
|
|
63
|
+
"@ai-sdk/cerebras": "1.0.33",
|
|
64
|
+
"@ai-sdk/cohere": "2.0.21",
|
|
65
|
+
"@ai-sdk/deepinfra": "1.0.30",
|
|
66
|
+
"@ai-sdk/gateway": "2.0.23",
|
|
67
|
+
"@ai-sdk/google": "2.0.49",
|
|
68
|
+
"@ai-sdk/google-vertex": "3.0.81",
|
|
69
|
+
"@ai-sdk/groq": "2.0.33",
|
|
70
|
+
"@ai-sdk/mistral": "2.0.26",
|
|
71
|
+
"@ai-sdk/openai": "2.0.71",
|
|
72
|
+
"@ai-sdk/perplexity": "2.0.22",
|
|
73
|
+
"@ai-sdk/provider": "2.0.0",
|
|
74
|
+
"@ai-sdk/provider-utils": "3.0.19",
|
|
75
|
+
"@ai-sdk/togetherai": "1.0.30",
|
|
76
|
+
"@ai-sdk/vercel": "1.0.31",
|
|
77
|
+
"@ai-sdk/xai": "2.0.42",
|
|
60
78
|
"ai": "^6.0.6",
|
|
61
79
|
"yaml": "^2.8.2",
|
|
62
80
|
"zod": "^4.1.12"
|