ai.matey.cli 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/dist/cjs/convert-request.js +365 -0
- package/dist/cjs/convert-request.js.map +1 -0
- package/dist/cjs/convert-response.js +211 -0
- package/dist/cjs/convert-response.js.map +1 -0
- package/dist/cjs/converters/request-converters.js +183 -0
- package/dist/cjs/converters/request-converters.js.map +1 -0
- package/dist/cjs/converters/response-converters.js +203 -0
- package/dist/cjs/converters/response-converters.js.map +1 -0
- package/dist/cjs/create-backend.js +569 -0
- package/dist/cjs/create-backend.js.map +1 -0
- package/dist/cjs/index.js +31 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/main.js +181 -0
- package/dist/cjs/main.js.map +1 -0
- package/dist/cjs/ollama/commands/list.js +70 -0
- package/dist/cjs/ollama/commands/list.js.map +1 -0
- package/dist/cjs/ollama/commands/ps.js +80 -0
- package/dist/cjs/ollama/commands/ps.js.map +1 -0
- package/dist/cjs/ollama/commands/pull.js +198 -0
- package/dist/cjs/ollama/commands/pull.js.map +1 -0
- package/dist/cjs/ollama/commands/run.js +279 -0
- package/dist/cjs/ollama/commands/run.js.map +1 -0
- package/dist/cjs/ollama/commands/show.js +138 -0
- package/dist/cjs/ollama/commands/show.js.map +1 -0
- package/dist/cjs/ollama/index.js +238 -0
- package/dist/cjs/ollama/index.js.map +1 -0
- package/dist/cjs/ollama/types.js +10 -0
- package/dist/cjs/ollama/types.js.map +1 -0
- package/dist/cjs/proxy.js +406 -0
- package/dist/cjs/proxy.js.map +1 -0
- package/dist/cjs/utils/backend-loader.js +112 -0
- package/dist/cjs/utils/backend-loader.js.map +1 -0
- package/dist/cjs/utils/index.js +29 -0
- package/dist/cjs/utils/index.js.map +1 -0
- package/dist/cjs/utils/model-translation.js +138 -0
- package/dist/cjs/utils/model-translation.js.map +1 -0
- package/dist/cjs/utils/output-formatter.js +241 -0
- package/dist/cjs/utils/output-formatter.js.map +1 -0
- package/dist/cjs/utils/pipeline-inspector.js +90 -0
- package/dist/cjs/utils/pipeline-inspector.js.map +1 -0
- package/dist/cjs/utils/state-manager.js +114 -0
- package/dist/cjs/utils/state-manager.js.map +1 -0
- package/dist/esm/convert-request.js +331 -0
- package/dist/esm/convert-request.js.map +1 -0
- package/dist/esm/convert-response.js +177 -0
- package/dist/esm/convert-response.js.map +1 -0
- package/dist/esm/converters/request-converters.js +175 -0
- package/dist/esm/converters/request-converters.js.map +1 -0
- package/dist/esm/converters/response-converters.js +191 -0
- package/dist/esm/converters/response-converters.js.map +1 -0
- package/dist/esm/create-backend.js +533 -0
- package/dist/esm/create-backend.js.map +1 -0
- package/dist/esm/index.js +15 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/main.js +149 -0
- package/dist/esm/main.js.map +1 -0
- package/dist/esm/ollama/commands/list.js +67 -0
- package/dist/esm/ollama/commands/list.js.map +1 -0
- package/dist/esm/ollama/commands/ps.js +77 -0
- package/dist/esm/ollama/commands/ps.js.map +1 -0
- package/dist/esm/ollama/commands/pull.js +195 -0
- package/dist/esm/ollama/commands/pull.js.map +1 -0
- package/dist/esm/ollama/commands/run.js +243 -0
- package/dist/esm/ollama/commands/run.js.map +1 -0
- package/dist/esm/ollama/commands/show.js +135 -0
- package/dist/esm/ollama/commands/show.js.map +1 -0
- package/dist/esm/ollama/index.js +235 -0
- package/dist/esm/ollama/index.js.map +1 -0
- package/dist/esm/ollama/types.js +9 -0
- package/dist/esm/ollama/types.js.map +1 -0
- package/dist/esm/proxy.js +403 -0
- package/dist/esm/proxy.js.map +1 -0
- package/dist/esm/utils/backend-loader.js +74 -0
- package/dist/esm/utils/backend-loader.js.map +1 -0
- package/dist/esm/utils/index.js +13 -0
- package/dist/esm/utils/index.js.map +1 -0
- package/dist/esm/utils/model-translation.js +99 -0
- package/dist/esm/utils/model-translation.js.map +1 -0
- package/dist/esm/utils/output-formatter.js +224 -0
- package/dist/esm/utils/output-formatter.js.map +1 -0
- package/dist/esm/utils/pipeline-inspector.js +84 -0
- package/dist/esm/utils/pipeline-inspector.js.map +1 -0
- package/dist/esm/utils/state-manager.js +111 -0
- package/dist/esm/utils/state-manager.js.map +1 -0
- package/dist/types/convert-request.d.ts +15 -0
- package/dist/types/convert-request.d.ts.map +1 -0
- package/dist/types/convert-response.d.ts +16 -0
- package/dist/types/convert-response.d.ts.map +1 -0
- package/dist/types/converters/request-converters.d.ts +139 -0
- package/dist/types/converters/request-converters.d.ts.map +1 -0
- package/dist/types/converters/response-converters.d.ts +134 -0
- package/dist/types/converters/response-converters.d.ts.map +1 -0
- package/dist/types/create-backend.d.ts +20 -0
- package/dist/types/create-backend.d.ts.map +1 -0
- package/dist/types/index.d.ts +13 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/main.d.ts +19 -0
- package/dist/types/main.d.ts.map +1 -0
- package/dist/types/ollama/commands/list.d.ts +32 -0
- package/dist/types/ollama/commands/list.d.ts.map +1 -0
- package/dist/types/ollama/commands/ps.d.ts +27 -0
- package/dist/types/ollama/commands/ps.d.ts.map +1 -0
- package/dist/types/ollama/commands/pull.d.ts +21 -0
- package/dist/types/ollama/commands/pull.d.ts.map +1 -0
- package/dist/types/ollama/commands/run.d.ts +48 -0
- package/dist/types/ollama/commands/run.d.ts.map +1 -0
- package/dist/types/ollama/commands/show.d.ts +36 -0
- package/dist/types/ollama/commands/show.d.ts.map +1 -0
- package/dist/types/ollama/index.d.ts +12 -0
- package/dist/types/ollama/index.d.ts.map +1 -0
- package/dist/types/ollama/types.d.ts +58 -0
- package/dist/types/ollama/types.d.ts.map +1 -0
- package/dist/types/proxy.d.ts +16 -0
- package/dist/types/proxy.d.ts.map +1 -0
- package/dist/types/utils/backend-loader.d.ts +55 -0
- package/dist/types/utils/backend-loader.d.ts.map +1 -0
- package/dist/types/utils/index.d.ts +13 -0
- package/dist/types/utils/index.d.ts.map +1 -0
- package/dist/types/utils/model-translation.d.ts +64 -0
- package/dist/types/utils/model-translation.d.ts.map +1 -0
- package/dist/types/utils/output-formatter.d.ts +113 -0
- package/dist/types/utils/output-formatter.d.ts.map +1 -0
- package/dist/types/utils/pipeline-inspector.d.ts +50 -0
- package/dist/types/utils/pipeline-inspector.d.ts.map +1 -0
- package/dist/types/utils/state-manager.d.ts +91 -0
- package/dist/types/utils/state-manager.d.ts.map +1 -0
- package/package.json +75 -0
- package/readme.md +32 -0
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Response Converters
|
|
3
|
+
*
|
|
4
|
+
* Utility functions for converting Universal IR responses to various frontend formats.
|
|
5
|
+
* Useful for debugging, testing, and compatibility checking.
|
|
6
|
+
*
|
|
7
|
+
* @module
|
|
8
|
+
*/
|
|
9
|
+
import type { IRChatResponse, IRChatStream } from 'ai.matey.types';
|
|
10
|
+
import type { StreamConversionOptions } from 'ai.matey.types';
|
|
11
|
+
import { type OpenAIResponse, type OpenAIStreamChunk } from 'ai.matey.frontend';
|
|
12
|
+
import { type AnthropicResponse, type AnthropicStreamEvent } from 'ai.matey.frontend';
|
|
13
|
+
/**
|
|
14
|
+
* Convert Universal IR response to OpenAI format.
|
|
15
|
+
*
|
|
16
|
+
* @param response Universal IR response
|
|
17
|
+
* @returns OpenAI-formatted response
|
|
18
|
+
*
|
|
19
|
+
* @example
|
|
20
|
+
* ```typescript
|
|
21
|
+
* import { toOpenAI } from 'ai.matey.utils';
|
|
22
|
+
*
|
|
23
|
+
* const irResponse = await backend.execute(request);
|
|
24
|
+
* const openaiFormat = await toOpenAI(irResponse);
|
|
25
|
+
* console.log(JSON.stringify(openaiFormat, null, 2));
|
|
26
|
+
* ```
|
|
27
|
+
*/
|
|
28
|
+
export declare function toOpenAI(response: IRChatResponse): Promise<OpenAIResponse>;
|
|
29
|
+
/**
|
|
30
|
+
* Convert Universal IR response to Anthropic format.
|
|
31
|
+
*
|
|
32
|
+
* @param response Universal IR response
|
|
33
|
+
* @returns Anthropic-formatted response
|
|
34
|
+
*
|
|
35
|
+
* @example
|
|
36
|
+
* ```typescript
|
|
37
|
+
* import { toAnthropic } from 'ai.matey.utils';
|
|
38
|
+
*
|
|
39
|
+
* const irResponse = await backend.execute(request);
|
|
40
|
+
* const anthropicFormat = await toAnthropic(irResponse);
|
|
41
|
+
* ```
|
|
42
|
+
*/
|
|
43
|
+
export declare function toAnthropic(response: IRChatResponse): Promise<AnthropicResponse>;
|
|
44
|
+
/**
|
|
45
|
+
* Convert Universal IR response to Gemini format.
|
|
46
|
+
*
|
|
47
|
+
* @param response Universal IR response
|
|
48
|
+
* @returns Gemini-formatted response
|
|
49
|
+
*/
|
|
50
|
+
export declare function toGemini(response: IRChatResponse): Promise<unknown>;
|
|
51
|
+
/**
|
|
52
|
+
* Convert Universal IR response to Ollama format.
|
|
53
|
+
*
|
|
54
|
+
* @param response Universal IR response
|
|
55
|
+
* @returns Ollama-formatted response
|
|
56
|
+
*/
|
|
57
|
+
export declare function toOllama(response: IRChatResponse): Promise<unknown>;
|
|
58
|
+
/**
|
|
59
|
+
* Convert Universal IR response to Mistral format.
|
|
60
|
+
*
|
|
61
|
+
* @param response Universal IR response
|
|
62
|
+
* @returns Mistral-formatted response
|
|
63
|
+
*/
|
|
64
|
+
export declare function toMistral(response: IRChatResponse): Promise<unknown>;
|
|
65
|
+
/**
|
|
66
|
+
* Convert Universal IR stream to OpenAI SSE format.
|
|
67
|
+
*
|
|
68
|
+
* @param stream Universal IR stream
|
|
69
|
+
* @param options Stream conversion options
|
|
70
|
+
* @returns OpenAI-formatted stream chunks
|
|
71
|
+
*
|
|
72
|
+
* @example
|
|
73
|
+
* ```typescript
|
|
74
|
+
* import { toOpenAIStream } from 'ai.matey.utils';
|
|
75
|
+
*
|
|
76
|
+
* const irStream = backend.executeStream(request);
|
|
77
|
+
* for await (const chunk of toOpenAIStream(irStream)) {
|
|
78
|
+
* console.log('OpenAI chunk:', chunk);
|
|
79
|
+
* }
|
|
80
|
+
* ```
|
|
81
|
+
*/
|
|
82
|
+
export declare function toOpenAIStream(stream: IRChatStream, options?: StreamConversionOptions): AsyncGenerator<OpenAIStreamChunk, void, undefined>;
|
|
83
|
+
/**
|
|
84
|
+
* Convert Universal IR stream to Anthropic SSE format.
|
|
85
|
+
*
|
|
86
|
+
* @param stream Universal IR stream
|
|
87
|
+
* @param options Stream conversion options
|
|
88
|
+
* @returns Anthropic-formatted stream chunks
|
|
89
|
+
*/
|
|
90
|
+
export declare function toAnthropicStream(stream: IRChatStream, options?: StreamConversionOptions): AsyncGenerator<AnthropicStreamEvent, void, undefined>;
|
|
91
|
+
/**
|
|
92
|
+
* Convert Universal IR stream to Gemini SSE format.
|
|
93
|
+
*
|
|
94
|
+
* @param stream Universal IR stream
|
|
95
|
+
* @param options Stream conversion options
|
|
96
|
+
* @returns Gemini-formatted stream chunks
|
|
97
|
+
*/
|
|
98
|
+
export declare function toGeminiStream(stream: IRChatStream, options?: StreamConversionOptions): AsyncGenerator<unknown, void, undefined>;
|
|
99
|
+
/**
|
|
100
|
+
* Convert Universal IR stream to Mistral SSE format.
|
|
101
|
+
*
|
|
102
|
+
* @param stream Universal IR stream
|
|
103
|
+
* @param options Stream conversion options
|
|
104
|
+
* @returns Mistral-formatted stream chunks
|
|
105
|
+
*/
|
|
106
|
+
export declare function toMistralStream(stream: IRChatStream, options?: StreamConversionOptions): AsyncGenerator<unknown, void, undefined>;
|
|
107
|
+
/**
|
|
108
|
+
* Convert Universal IR response to multiple formats at once.
|
|
109
|
+
* Useful for debugging and comparing how different providers handle the same response.
|
|
110
|
+
*
|
|
111
|
+
* @param response Universal IR response
|
|
112
|
+
* @param formats Array of format names to convert to
|
|
113
|
+
* @returns Object with converted responses for each format
|
|
114
|
+
*
|
|
115
|
+
* @example
|
|
116
|
+
* ```typescript
|
|
117
|
+
* import { toMultipleFormats } from 'ai.matey.utils';
|
|
118
|
+
*
|
|
119
|
+
* const irResponse = await backend.execute(request);
|
|
120
|
+
* const allFormats = await toMultipleFormats(irResponse, ['openai', 'anthropic', 'gemini']);
|
|
121
|
+
*
|
|
122
|
+
* console.log('OpenAI:', JSON.stringify(allFormats.openai, null, 2));
|
|
123
|
+
* console.log('Anthropic:', JSON.stringify(allFormats.anthropic, null, 2));
|
|
124
|
+
* console.log('Gemini:', JSON.stringify(allFormats.gemini, null, 2));
|
|
125
|
+
* ```
|
|
126
|
+
*/
|
|
127
|
+
export declare function toMultipleFormats(response: IRChatResponse, formats?: Array<'openai' | 'anthropic' | 'gemini' | 'ollama' | 'mistral'>): Promise<{
|
|
128
|
+
openai?: OpenAIResponse;
|
|
129
|
+
anthropic?: AnthropicResponse;
|
|
130
|
+
gemini?: unknown;
|
|
131
|
+
ollama?: unknown;
|
|
132
|
+
mistral?: unknown;
|
|
133
|
+
}>;
|
|
134
|
+
//# sourceMappingURL=response-converters.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"response-converters.d.ts","sourceRoot":"","sources":["../../../src/converters/response-converters.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACnE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AAC9D,OAAO,EAEL,KAAK,cAAc,EACnB,KAAK,iBAAiB,EACvB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAEL,KAAK,iBAAiB,EACtB,KAAK,oBAAoB,EAC1B,MAAM,mBAAmB,CAAC;AAS3B;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,QAAQ,CAAC,QAAQ,EAAE,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC,CAGhF;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,WAAW,CAAC,QAAQ,EAAE,cAAc,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAGtF;AAED;;;;;GAKG;AACH,wBAAsB,QAAQ,CAAC,QAAQ,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC,CAGzE;AAED;;;;;GAKG;AACH,wBAAsB,QAAQ,CAAC,QAAQ,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC,CAGzE;AAED;;;;;GAKG;AACH,wBAAsB,SAAS,CAAC,QAAQ,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC,CAG1E;AAMD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAuB,cAAc,CACnC,MAAM,EAAE,YAAY,EACpB,OAAO,CAAC,EAAE,uBAAuB,GAChC,cAAc,CAAC,iBAAiB,EAAE,IAAI,EAAE,SAAS,CAAC,CAGpD;AAED;;;;;;GAMG;AACH,wBAAuB,iBAAiB,CACtC,MAAM,EAAE,YAAY,EACpB,OAAO,CAAC,EAAE,uBAAuB,GAChC,cAAc,CAAC,oBAAoB,EAAE,IAAI,EAAE,SAAS,CAAC,CAGvD;AAED;;;;;;GAMG;AACH,wBAAuB,cAAc,CACnC,MAAM,EAAE,YAAY,EACpB,OAAO,CAAC,EAAE,uBAAuB,GAChC,cAAc,CAAC,OAAO,EAAE,IAAI,EAAE,SAAS,CAAC,CAG1C;AAED;;;;;;GAMG;AACH,wBAAuB,eAAe,CACpC,MAAM,EAAE,YAAY,EACpB,OAAO,CAAC,EAAE,uBAAuB,GAChC,cAAc,CAAC,OAAO,EAAE,IAAI,EAAE,SAAS,CAAC,CAG1C;AAMD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAsB,iBAAiB,CACrC,QAAQ,EAAE,cAAc,EACxB,OAAO,GAAE,KAAK,CAAC,QAAQ,GAAG,WAAW,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAItE,GACA,OAAO,CAAC;IACT,MAAM,CAAC,EAAE,cAAc,CAAC;IACxB,SAAS,CAAC,EAAE,iBAAiB,CAAC;IAC9B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC,CAwBD"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Create Backend Subcommand
|
|
3
|
+
*
|
|
4
|
+
* Interactive wizard to generate backend adapter templates for use with ai-matey.
|
|
5
|
+
*
|
|
6
|
+
* @module cli/create-backend
|
|
7
|
+
*/
|
|
8
|
+
export interface CreateBackendOptions {
|
|
9
|
+
interactive?: boolean;
|
|
10
|
+
provider?: string;
|
|
11
|
+
output?: string;
|
|
12
|
+
name?: string;
|
|
13
|
+
baseUrl?: string;
|
|
14
|
+
help?: boolean;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Main CLI entry point.
|
|
18
|
+
*/
|
|
19
|
+
export declare function main(argv?: string[]): Promise<void>;
|
|
20
|
+
//# sourceMappingURL=create-backend.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"create-backend.d.ts","sourceRoot":"","sources":["../../src/create-backend.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAofH,MAAM,WAAW,oBAAoB;IACnC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAuCD;;GAEG;AACH,wBAAsB,IAAI,CAAC,IAAI,GAAE,MAAM,EAA0B,GAAG,OAAO,CAAC,IAAI,CAAC,CAmFhF"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CLI Utilities and Interfaces
|
|
3
|
+
*
|
|
4
|
+
* ⚠️ WARNING: This module uses Node.js-specific APIs (child_process, readline, fs) and
|
|
5
|
+
* is NOT browser-compatible. Import from 'ai.matey.backend' for
|
|
6
|
+
* browser-compatible adapters.
|
|
7
|
+
*
|
|
8
|
+
* @module cli
|
|
9
|
+
*/
|
|
10
|
+
export * from './utils/index.js';
|
|
11
|
+
export * from './converters/request-converters.js';
|
|
12
|
+
export * from './converters/response-converters.js';
|
|
13
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,cAAc,kBAAkB,CAAC;AAGjC,cAAc,oCAAoC,CAAC;AACnD,cAAc,qCAAqC,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
/**
|
|
3
|
+
* AI.Matey CLI - Main Entry Point
|
|
4
|
+
*
|
|
5
|
+
* Unified CLI with subcommands for various utilities.
|
|
6
|
+
*
|
|
7
|
+
* Usage:
|
|
8
|
+
* ai-matey <command> [options]
|
|
9
|
+
*
|
|
10
|
+
* Commands:
|
|
11
|
+
* convert-response Convert IR responses to provider formats
|
|
12
|
+
* emulate-ollama Emulate Ollama CLI interface
|
|
13
|
+
* (future) emulate-openai, emulate-anthropic, etc.
|
|
14
|
+
*
|
|
15
|
+
* @module cli/main
|
|
16
|
+
*/
|
|
17
|
+
declare function main(): Promise<void>;
|
|
18
|
+
export { main };
|
|
19
|
+
//# sourceMappingURL=main.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../../src/main.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;;;GAcG;AAqEH,iBAAe,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAqEnC;AAMD,OAAO,EAAE,IAAI,EAAE,CAAC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Ollama `list` Command
|
|
3
|
+
*
|
|
4
|
+
* List available models.
|
|
5
|
+
*
|
|
6
|
+
* @module cli/ollama/commands/list
|
|
7
|
+
*/
|
|
8
|
+
import type { BackendAdapter } from 'ai.matey.types';
|
|
9
|
+
import type { ModelMapping } from '../../utils/model-translation.js';
|
|
10
|
+
export interface ListCommandOptions {
|
|
11
|
+
/**
|
|
12
|
+
* Backend adapter to use.
|
|
13
|
+
*/
|
|
14
|
+
backend: BackendAdapter;
|
|
15
|
+
/**
|
|
16
|
+
* Model mapping (for showing translated names).
|
|
17
|
+
*/
|
|
18
|
+
modelMapping?: ModelMapping;
|
|
19
|
+
/**
|
|
20
|
+
* Output as JSON.
|
|
21
|
+
*/
|
|
22
|
+
json?: boolean;
|
|
23
|
+
/**
|
|
24
|
+
* Verbose output.
|
|
25
|
+
*/
|
|
26
|
+
verbose?: boolean;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Execute the list command.
|
|
30
|
+
*/
|
|
31
|
+
export declare function listCommand(options: ListCommandOptions): Promise<void>;
|
|
32
|
+
//# sourceMappingURL=list.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../../../src/ollama/commands/list.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAGrE,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,OAAO,EAAE,cAAc,CAAC;IAExB;;OAEG;IACH,YAAY,CAAC,EAAE,YAAY,CAAC;IAE5B;;OAEG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IAEf;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,wBAAsB,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAqE5E"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Ollama `ps` Command
|
|
3
|
+
*
|
|
4
|
+
* List running models.
|
|
5
|
+
*
|
|
6
|
+
* @module cli/ollama/commands/ps
|
|
7
|
+
*/
|
|
8
|
+
import type { BackendAdapter } from 'ai.matey.types';
|
|
9
|
+
export interface PsCommandOptions {
|
|
10
|
+
/**
|
|
11
|
+
* Backend adapter to use.
|
|
12
|
+
*/
|
|
13
|
+
backend: BackendAdapter;
|
|
14
|
+
/**
|
|
15
|
+
* Output as JSON.
|
|
16
|
+
*/
|
|
17
|
+
json?: boolean;
|
|
18
|
+
/**
|
|
19
|
+
* Verbose output.
|
|
20
|
+
*/
|
|
21
|
+
verbose?: boolean;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Execute the ps command.
|
|
25
|
+
*/
|
|
26
|
+
export declare function psCommand(options: PsCommandOptions): Promise<void>;
|
|
27
|
+
//# sourceMappingURL=ps.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ps.d.ts","sourceRoot":"","sources":["../../../../src/ollama/commands/ps.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAKrD,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,OAAO,EAAE,cAAc,CAAC;IAExB;;OAEG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IAEf;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,wBAAsB,SAAS,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAyExE"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Pull Command - Download GGUF models from Ollama registry
|
|
3
|
+
*
|
|
4
|
+
* Downloads .gguf model files from the Ollama registry API.
|
|
5
|
+
*
|
|
6
|
+
* @module cli/ollama/commands/pull
|
|
7
|
+
*/
|
|
8
|
+
/**
|
|
9
|
+
* Options for pull command.
|
|
10
|
+
*/
|
|
11
|
+
export interface PullCommandOptions {
|
|
12
|
+
model: string;
|
|
13
|
+
output?: string;
|
|
14
|
+
verbose?: boolean;
|
|
15
|
+
insecure?: boolean;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Pull command - Download GGUF model from Ollama registry.
|
|
19
|
+
*/
|
|
20
|
+
export declare function pullCommand(options: PullCommandOptions): Promise<void>;
|
|
21
|
+
//# sourceMappingURL=pull.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pull.d.ts","sourceRoot":"","sources":["../../../../src/ollama/commands/pull.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAcH;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AA0KD;;GAEG;AACH,wBAAsB,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CA2D5E"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Ollama `run` Command
|
|
3
|
+
*
|
|
4
|
+
* Run a model interactively or with a single prompt.
|
|
5
|
+
*
|
|
6
|
+
* @module cli/ollama/commands/run
|
|
7
|
+
*/
|
|
8
|
+
import type { BackendAdapter } from 'ai.matey.types';
|
|
9
|
+
import { type ModelMapping } from '../../utils/model-translation.js';
|
|
10
|
+
export interface RunCommandOptions {
|
|
11
|
+
/**
|
|
12
|
+
* Backend adapter to use.
|
|
13
|
+
*/
|
|
14
|
+
backend: BackendAdapter;
|
|
15
|
+
/**
|
|
16
|
+
* Model name to run.
|
|
17
|
+
*/
|
|
18
|
+
model: string;
|
|
19
|
+
/**
|
|
20
|
+
* Single prompt (non-interactive mode).
|
|
21
|
+
*/
|
|
22
|
+
prompt?: string;
|
|
23
|
+
/**
|
|
24
|
+
* Model mapping for translation.
|
|
25
|
+
*/
|
|
26
|
+
modelMapping?: ModelMapping;
|
|
27
|
+
/**
|
|
28
|
+
* Format output as JSON.
|
|
29
|
+
*/
|
|
30
|
+
json?: boolean;
|
|
31
|
+
/**
|
|
32
|
+
* Verbose output.
|
|
33
|
+
*/
|
|
34
|
+
verbose?: boolean;
|
|
35
|
+
/**
|
|
36
|
+
* System message.
|
|
37
|
+
*/
|
|
38
|
+
system?: string;
|
|
39
|
+
/**
|
|
40
|
+
* Disable streaming.
|
|
41
|
+
*/
|
|
42
|
+
noStream?: boolean;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Execute the run command.
|
|
46
|
+
*/
|
|
47
|
+
export declare function runCommand(options: RunCommandOptions): Promise<void>;
|
|
48
|
+
//# sourceMappingURL=run.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../../../src/ollama/commands/run.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAErD,OAAO,EAAkB,KAAK,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAKrF,MAAM,WAAW,iBAAiB;IAChC;;OAEG;IACH,OAAO,EAAE,cAAc,CAAC;IAExB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,YAAY,CAAC,EAAE,YAAY,CAAC;IAE5B;;OAEG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IAEf;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;GAEG;AACH,wBAAsB,UAAU,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CA8E1E"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Ollama `show` Command
|
|
3
|
+
*
|
|
4
|
+
* Show model information.
|
|
5
|
+
*
|
|
6
|
+
* @module cli/ollama/commands/show
|
|
7
|
+
*/
|
|
8
|
+
import type { BackendAdapter } from 'ai.matey.types';
|
|
9
|
+
import type { ModelMapping } from '../../utils/model-translation.js';
|
|
10
|
+
export interface ShowCommandOptions {
|
|
11
|
+
/**
|
|
12
|
+
* Backend adapter to use.
|
|
13
|
+
*/
|
|
14
|
+
backend: BackendAdapter;
|
|
15
|
+
/**
|
|
16
|
+
* Model name to show.
|
|
17
|
+
*/
|
|
18
|
+
model: string;
|
|
19
|
+
/**
|
|
20
|
+
* Model mapping for translation.
|
|
21
|
+
*/
|
|
22
|
+
modelMapping?: ModelMapping;
|
|
23
|
+
/**
|
|
24
|
+
* Output as JSON.
|
|
25
|
+
*/
|
|
26
|
+
json?: boolean;
|
|
27
|
+
/**
|
|
28
|
+
* Verbose output.
|
|
29
|
+
*/
|
|
30
|
+
verbose?: boolean;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Execute the show command.
|
|
34
|
+
*/
|
|
35
|
+
export declare function showCommand(options: ShowCommandOptions): Promise<void>;
|
|
36
|
+
//# sourceMappingURL=show.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"show.d.ts","sourceRoot":"","sources":["../../../../src/ollama/commands/show.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAKrE,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,OAAO,EAAE,cAAc,CAAC;IAExB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,YAAY,CAAC,EAAE,YAAY,CAAC;IAE5B;;OAEG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IAEf;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,wBAAsB,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CA2I5E"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ollama/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAqHH;;GAEG;AACH,wBAAsB,IAAI,CAAC,IAAI,GAAE,MAAM,EAA0B,GAAG,OAAO,CAAC,IAAI,CAAC,CAmIhF"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Ollama CLI Types
|
|
3
|
+
*
|
|
4
|
+
* Shared types for Ollama CLI interface.
|
|
5
|
+
*
|
|
6
|
+
* @module cli/ollama/types
|
|
7
|
+
*/
|
|
8
|
+
export interface GlobalOptions {
|
|
9
|
+
/**
|
|
10
|
+
* Path to backend module.
|
|
11
|
+
*/
|
|
12
|
+
backend: string;
|
|
13
|
+
/**
|
|
14
|
+
* Path to model mapping JSON file.
|
|
15
|
+
*/
|
|
16
|
+
modelMap?: string;
|
|
17
|
+
/**
|
|
18
|
+
* Disable colored output.
|
|
19
|
+
*/
|
|
20
|
+
noColor?: boolean;
|
|
21
|
+
/**
|
|
22
|
+
* Disable streaming output.
|
|
23
|
+
*/
|
|
24
|
+
noStream?: boolean;
|
|
25
|
+
/**
|
|
26
|
+
* Output as JSON.
|
|
27
|
+
*/
|
|
28
|
+
json?: boolean;
|
|
29
|
+
/**
|
|
30
|
+
* Verbose output.
|
|
31
|
+
*/
|
|
32
|
+
verbose?: boolean;
|
|
33
|
+
}
|
|
34
|
+
export interface RunOptions extends GlobalOptions {
|
|
35
|
+
/**
|
|
36
|
+
* Model name.
|
|
37
|
+
*/
|
|
38
|
+
model: string;
|
|
39
|
+
/**
|
|
40
|
+
* Single prompt (optional).
|
|
41
|
+
*/
|
|
42
|
+
prompt?: string;
|
|
43
|
+
/**
|
|
44
|
+
* System message.
|
|
45
|
+
*/
|
|
46
|
+
system?: string;
|
|
47
|
+
}
|
|
48
|
+
export interface ListOptions extends GlobalOptions {
|
|
49
|
+
}
|
|
50
|
+
export interface PsOptions extends GlobalOptions {
|
|
51
|
+
}
|
|
52
|
+
export interface ShowOptions extends GlobalOptions {
|
|
53
|
+
/**
|
|
54
|
+
* Model name.
|
|
55
|
+
*/
|
|
56
|
+
model: string;
|
|
57
|
+
}
|
|
58
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/ollama/types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;OAEG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IAEf;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,UAAW,SAAQ,aAAa;IAC/C;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,WAAY,SAAQ,aAAa;CAAG;AAErD,MAAM,WAAW,SAAU,SAAQ,aAAa;CAAG;AAEnD,MAAM,WAAW,WAAY,SAAQ,aAAa;IAChD;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;CACf"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
/**
|
|
3
|
+
* AI.Matey Proxy Server
|
|
4
|
+
*
|
|
5
|
+
* HTTP proxy server that accepts provider-format requests (e.g., OpenAI)
|
|
6
|
+
* and routes them through any ai-matey backend adapter.
|
|
7
|
+
*
|
|
8
|
+
* Usage:
|
|
9
|
+
* ai-matey proxy --backend ./backend.mjs --port 3000 --format openai
|
|
10
|
+
*
|
|
11
|
+
* This allows you to use ANY backend as a drop-in replacement for OpenAI/Anthropic/etc!
|
|
12
|
+
*
|
|
13
|
+
* @module cli/proxy
|
|
14
|
+
*/
|
|
15
|
+
export declare function main(argv?: string[]): Promise<void>;
|
|
16
|
+
//# sourceMappingURL=proxy.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"proxy.d.ts","sourceRoot":"","sources":["../../src/proxy.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;GAYG;AAwYH,wBAAsB,IAAI,CAAC,IAAI,GAAE,MAAM,EAA0B,GAAG,OAAO,CAAC,IAAI,CAAC,CA6DhF"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Backend Loader Utility
|
|
3
|
+
*
|
|
4
|
+
* Dynamically loads backend modules from file paths.
|
|
5
|
+
* Node.js only - uses dynamic import.
|
|
6
|
+
*
|
|
7
|
+
* @module cli/utils/backend-loader
|
|
8
|
+
*/
|
|
9
|
+
import type { BackendAdapter } from 'ai.matey.types';
|
|
10
|
+
export interface BackendModule {
|
|
11
|
+
default: BackendAdapter;
|
|
12
|
+
}
|
|
13
|
+
export interface LoadBackendOptions {
|
|
14
|
+
/**
|
|
15
|
+
* Path to backend module file.
|
|
16
|
+
*/
|
|
17
|
+
path: string;
|
|
18
|
+
/**
|
|
19
|
+
* Current working directory for resolving relative paths.
|
|
20
|
+
*/
|
|
21
|
+
cwd?: string;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Load a backend from a module file.
|
|
25
|
+
*
|
|
26
|
+
* @param options - Load options
|
|
27
|
+
* @returns Loaded backend adapter
|
|
28
|
+
*
|
|
29
|
+
* @example
|
|
30
|
+
* ```typescript
|
|
31
|
+
* const backend = await loadBackend({ path: './my-backend.mjs' });
|
|
32
|
+
* const response = await backend.execute(request);
|
|
33
|
+
* ```
|
|
34
|
+
*/
|
|
35
|
+
export declare function loadBackend(options: LoadBackendOptions): Promise<BackendAdapter>;
|
|
36
|
+
/**
|
|
37
|
+
* Check if a backend is a model runner (has lifecycle methods).
|
|
38
|
+
*
|
|
39
|
+
* @param backend - Backend to check
|
|
40
|
+
* @returns True if backend is a model runner
|
|
41
|
+
*/
|
|
42
|
+
export declare function isModelRunner(backend: BackendAdapter): boolean;
|
|
43
|
+
/**
|
|
44
|
+
* Get backend capabilities.
|
|
45
|
+
*
|
|
46
|
+
* @param backend - Backend to inspect
|
|
47
|
+
* @returns Capability flags
|
|
48
|
+
*/
|
|
49
|
+
export declare function getBackendCapabilities(backend: BackendAdapter): {
|
|
50
|
+
hasLifecycle: boolean;
|
|
51
|
+
hasModelList: boolean;
|
|
52
|
+
hasStats: boolean;
|
|
53
|
+
metadata: import("ai.matey.types").AdapterMetadata;
|
|
54
|
+
};
|
|
55
|
+
//# sourceMappingURL=backend-loader.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"backend-loader.d.ts","sourceRoot":"","sources":["../../../src/utils/backend-loader.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAErD,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,cAAc,CAAC;CACzB;AAED,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,cAAc,CAAC,CAkCtF;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAM9D;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,cAAc;;;;;EAO7D"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CLI Utilities
|
|
3
|
+
*
|
|
4
|
+
* Common utilities for CLI implementation.
|
|
5
|
+
* Node.js only - not browser-compatible.
|
|
6
|
+
*
|
|
7
|
+
* @module cli/utils
|
|
8
|
+
*/
|
|
9
|
+
export * from './backend-loader.js';
|
|
10
|
+
export * from './model-translation.js';
|
|
11
|
+
export * from './output-formatter.js';
|
|
12
|
+
export * from './state-manager.js';
|
|
13
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC;AACvC,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Model Translation Utility
|
|
3
|
+
*
|
|
4
|
+
* Translates model names between different providers.
|
|
5
|
+
* Supports backend.modelMapping property or external mapping files.
|
|
6
|
+
*
|
|
7
|
+
* @module cli/utils/model-translation
|
|
8
|
+
*/
|
|
9
|
+
import type { BackendAdapter } from 'ai.matey.types';
|
|
10
|
+
export type ModelMapping = Record<string, string>;
|
|
11
|
+
export interface ModelTranslationOptions {
|
|
12
|
+
/**
|
|
13
|
+
* Backend adapter (may have modelMapping property).
|
|
14
|
+
*/
|
|
15
|
+
backend: BackendAdapter;
|
|
16
|
+
/**
|
|
17
|
+
* External model mapping (overrides backend.modelMapping).
|
|
18
|
+
*/
|
|
19
|
+
mapping?: ModelMapping;
|
|
20
|
+
/**
|
|
21
|
+
* Fallback to backend's default model if no mapping found.
|
|
22
|
+
*/
|
|
23
|
+
useBackendDefault?: boolean;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Translate a model name using mapping or backend default.
|
|
27
|
+
*
|
|
28
|
+
* @param modelName - Original model name
|
|
29
|
+
* @param options - Translation options
|
|
30
|
+
* @returns Translated model name or original if no mapping
|
|
31
|
+
*
|
|
32
|
+
* @example
|
|
33
|
+
* ```typescript
|
|
34
|
+
* const backend = new OpenAIBackend({ defaultModel: 'gpt-4o' });
|
|
35
|
+
* backend.modelMapping = { 'llama3.1': 'gpt-4o' };
|
|
36
|
+
*
|
|
37
|
+
* const translated = translateModel('llama3.1', { backend });
|
|
38
|
+
* // → 'gpt-4o'
|
|
39
|
+
* ```
|
|
40
|
+
*/
|
|
41
|
+
export declare function translateModel(modelName: string, options: ModelTranslationOptions): string;
|
|
42
|
+
/**
|
|
43
|
+
* Load model mapping from JSON file.
|
|
44
|
+
*
|
|
45
|
+
* @param path - Path to JSON file
|
|
46
|
+
* @returns Model mapping
|
|
47
|
+
*/
|
|
48
|
+
export declare function loadModelMapping(path: string): Promise<ModelMapping>;
|
|
49
|
+
/**
|
|
50
|
+
* Get reverse mapping (backend model → original model name).
|
|
51
|
+
*
|
|
52
|
+
* @param mapping - Forward mapping
|
|
53
|
+
* @returns Reverse mapping
|
|
54
|
+
*/
|
|
55
|
+
export declare function reverseMapping(mapping: ModelMapping): ModelMapping;
|
|
56
|
+
/**
|
|
57
|
+
* Check if model name needs translation.
|
|
58
|
+
*
|
|
59
|
+
* @param modelName - Model name to check
|
|
60
|
+
* @param options - Translation options
|
|
61
|
+
* @returns True if translation is available
|
|
62
|
+
*/
|
|
63
|
+
export declare function hasTranslation(modelName: string, options: Omit<ModelTranslationOptions, 'useBackendDefault'>): boolean;
|
|
64
|
+
//# sourceMappingURL=model-translation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"model-translation.d.ts","sourceRoot":"","sources":["../../../src/utils/model-translation.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAErD,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAElD,MAAM,WAAW,uBAAuB;IACtC;;OAEG;IACH,OAAO,EAAE,cAAc,CAAC;IAExB;;OAEG;IACH,OAAO,CAAC,EAAE,YAAY,CAAC;IAEvB;;OAEG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,uBAAuB,GAAG,MAAM,CAwB1F;AAED;;;;;GAKG;AACH,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAmB1E;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,YAAY,GAAG,YAAY,CAMlE;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAC5B,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,IAAI,CAAC,uBAAuB,EAAE,mBAAmB,CAAC,GAC1D,OAAO,CAaT"}
|