hazo_llm_api 1.0.2 → 1.0.3
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/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +8 -0
- package/dist/index.js.map +1 -1
- package/dist/lib/database/index.d.ts +1 -1
- package/dist/lib/database/index.d.ts.map +1 -1
- package/dist/lib/database/index.js +3 -1
- package/dist/lib/database/index.js.map +1 -1
- package/dist/lib/database/init_database.d.ts +56 -0
- package/dist/lib/database/init_database.d.ts.map +1 -1
- package/dist/lib/database/init_database.js +88 -0
- package/dist/lib/database/init_database.js.map +1 -1
- package/dist/lib/llm_api/hazo_llm_image_image.d.ts.map +1 -1
- package/dist/lib/llm_api/hazo_llm_image_image.js +3 -1
- package/dist/lib/llm_api/hazo_llm_image_image.js.map +1 -1
- package/dist/lib/llm_api/hazo_llm_image_image_text.d.ts.map +1 -1
- package/dist/lib/llm_api/hazo_llm_image_image_text.js +3 -1
- package/dist/lib/llm_api/hazo_llm_image_image_text.js.map +1 -1
- package/dist/lib/llm_api/hazo_llm_image_text.d.ts.map +1 -1
- package/dist/lib/llm_api/hazo_llm_image_text.js +3 -1
- package/dist/lib/llm_api/hazo_llm_image_text.js.map +1 -1
- package/dist/lib/llm_api/hazo_llm_text_image.d.ts.map +1 -1
- package/dist/lib/llm_api/hazo_llm_text_image.js +3 -1
- package/dist/lib/llm_api/hazo_llm_text_image.js.map +1 -1
- package/dist/lib/llm_api/hazo_llm_text_image_text.d.ts.map +1 -1
- package/dist/lib/llm_api/hazo_llm_text_image_text.js +3 -1
- package/dist/lib/llm_api/hazo_llm_text_image_text.js.map +1 -1
- package/dist/lib/llm_api/hazo_llm_text_text.d.ts.map +1 -1
- package/dist/lib/llm_api/hazo_llm_text_text.js +3 -1
- package/dist/lib/llm_api/hazo_llm_text_text.js.map +1 -1
- package/dist/lib/llm_api/index.d.ts +109 -17
- package/dist/lib/llm_api/index.d.ts.map +1 -1
- package/dist/lib/llm_api/index.js +248 -32
- package/dist/lib/llm_api/index.js.map +1 -1
- package/dist/lib/llm_api/provider_helper.d.ts +61 -5
- package/dist/lib/llm_api/provider_helper.d.ts.map +1 -1
- package/dist/lib/llm_api/provider_helper.js +197 -10
- package/dist/lib/llm_api/provider_helper.js.map +1 -1
- package/dist/lib/llm_api/types.d.ts +211 -38
- package/dist/lib/llm_api/types.d.ts.map +1 -1
- package/dist/lib/llm_api/types.js +42 -1
- package/dist/lib/llm_api/types.js.map +1 -1
- package/dist/lib/providers/registry.d.ts +3 -3
- package/dist/lib/providers/registry.d.ts.map +1 -1
- package/dist/lib/providers/registry.js +1 -1
- package/dist/lib/providers/registry.js.map +1 -1
- package/dist/lib/providers/types.d.ts +51 -1
- package/dist/lib/providers/types.d.ts.map +1 -1
- package/dist/lib/providers/types.js +18 -0
- package/dist/lib/providers/types.js.map +1 -1
- package/dist/server.d.ts +8 -3
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +19 -2
- package/dist/server.js.map +1 -1
- package/package.json +1 -1
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
* TypeScript interfaces and types for the LLM API module.
|
|
5
5
|
* Includes configuration, function parameters, and response types.
|
|
6
6
|
*/
|
|
7
|
+
import type { ServiceType, ProviderName } from '../providers/types.js';
|
|
7
8
|
/**
|
|
8
9
|
* Logger interface matching Winston logger methods
|
|
9
10
|
* Parent application provides this logger instance
|
|
@@ -17,7 +18,9 @@ export interface Logger {
|
|
|
17
18
|
/**
|
|
18
19
|
* Gemini API generation configuration parameters
|
|
19
20
|
* All parameters are optional - only include in API calls if explicitly set
|
|
20
|
-
*
|
|
21
|
+
*
|
|
22
|
+
* Note: This is used internally by the Gemini provider.
|
|
23
|
+
* Configure via hazo_llm_api_config.ini [llm_gemini] section instead of passing directly.
|
|
21
24
|
*/
|
|
22
25
|
export interface GeminiGenerationConfig {
|
|
23
26
|
/** Controls randomness in output (0.0-2.0). Lower = more deterministic */
|
|
@@ -35,47 +38,121 @@ export interface GeminiGenerationConfig {
|
|
|
35
38
|
/** Format of the response: "text/plain" or "application/json" */
|
|
36
39
|
response_mime_type?: string;
|
|
37
40
|
}
|
|
41
|
+
/**
|
|
42
|
+
* Context passed to beforeRequest hook
|
|
43
|
+
*/
|
|
44
|
+
export interface LLMRequestContext {
|
|
45
|
+
/** Service type being called */
|
|
46
|
+
service_type: ServiceType;
|
|
47
|
+
/** Provider name */
|
|
48
|
+
provider: string;
|
|
49
|
+
/** Request parameters (type varies by service) */
|
|
50
|
+
params: Record<string, unknown>;
|
|
51
|
+
/** Timestamp when request started */
|
|
52
|
+
timestamp: Date;
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Context passed to afterResponse hook
|
|
56
|
+
*/
|
|
57
|
+
export interface LLMResponseContext extends LLMRequestContext {
|
|
58
|
+
/** The response from the LLM */
|
|
59
|
+
response: LLMResponse;
|
|
60
|
+
/** Duration of the request in milliseconds */
|
|
61
|
+
duration_ms: number;
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Context passed to onError hook
|
|
65
|
+
*/
|
|
66
|
+
export interface LLMErrorContext extends LLMRequestContext {
|
|
67
|
+
/** The error that occurred */
|
|
68
|
+
error: LLMError;
|
|
69
|
+
/** Duration until error in milliseconds */
|
|
70
|
+
duration_ms: number;
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Hook function called before each LLM request
|
|
74
|
+
* Can be async for logging to external services
|
|
75
|
+
*/
|
|
76
|
+
export type BeforeRequestHook = (context: LLMRequestContext) => void | Promise<void>;
|
|
77
|
+
/**
|
|
78
|
+
* Hook function called after each successful LLM response
|
|
79
|
+
* Can be async for logging/analytics
|
|
80
|
+
*/
|
|
81
|
+
export type AfterResponseHook = (context: LLMResponseContext) => void | Promise<void>;
|
|
82
|
+
/**
|
|
83
|
+
* Hook function called when an error occurs
|
|
84
|
+
* Can be async for error reporting
|
|
85
|
+
*/
|
|
86
|
+
export type OnErrorHook = (context: LLMErrorContext) => void | Promise<void>;
|
|
87
|
+
/**
|
|
88
|
+
* Lifecycle hooks for LLM API calls
|
|
89
|
+
* All hooks are optional and can be async
|
|
90
|
+
*
|
|
91
|
+
* @example
|
|
92
|
+
* ```typescript
|
|
93
|
+
* await initialize_llm_api({
|
|
94
|
+
* hooks: {
|
|
95
|
+
* beforeRequest: (ctx) => {
|
|
96
|
+
* console.log(`Calling ${ctx.provider}.${ctx.service_type}`);
|
|
97
|
+
* },
|
|
98
|
+
* afterResponse: (ctx) => {
|
|
99
|
+
* console.log(`Response in ${ctx.duration_ms}ms`);
|
|
100
|
+
* },
|
|
101
|
+
* onError: (ctx) => {
|
|
102
|
+
* console.error(`Error: ${ctx.error.code}`);
|
|
103
|
+
* },
|
|
104
|
+
* },
|
|
105
|
+
* });
|
|
106
|
+
* ```
|
|
107
|
+
*/
|
|
108
|
+
export interface LLMHooks {
|
|
109
|
+
/** Called before each LLM request */
|
|
110
|
+
beforeRequest?: BeforeRequestHook;
|
|
111
|
+
/** Called after each successful LLM response */
|
|
112
|
+
afterResponse?: AfterResponseHook;
|
|
113
|
+
/** Called when an error occurs */
|
|
114
|
+
onError?: OnErrorHook;
|
|
115
|
+
}
|
|
38
116
|
/**
|
|
39
117
|
* Configuration options for initializing the LLM API
|
|
40
118
|
* Supports provider-based architecture where providers are loaded from config file
|
|
119
|
+
*
|
|
120
|
+
* All configuration fields are optional - the API will use sensible defaults:
|
|
121
|
+
* - logger: Default console logger
|
|
122
|
+
* - sqlite_path: From config file or "prompt_library.sqlite" in cwd
|
|
123
|
+
* - hooks: None
|
|
124
|
+
*
|
|
125
|
+
* @example
|
|
126
|
+
* ```typescript
|
|
127
|
+
* // Minimal initialization
|
|
128
|
+
* await initialize_llm_api({});
|
|
129
|
+
*
|
|
130
|
+
* // With custom logger and hooks
|
|
131
|
+
* await initialize_llm_api({
|
|
132
|
+
* logger: myLogger,
|
|
133
|
+
* hooks: {
|
|
134
|
+
* beforeRequest: (ctx) => console.log(`Calling ${ctx.provider}`),
|
|
135
|
+
* },
|
|
136
|
+
* });
|
|
137
|
+
* ```
|
|
41
138
|
*/
|
|
42
139
|
export interface LLMApiConfig {
|
|
43
|
-
/** Winston logger instance from parent application */
|
|
44
|
-
logger: Logger;
|
|
45
|
-
/** Path to SQLite database file (default: "/prompt_library.sqlite" relative to app root) */
|
|
46
|
-
sqlite_path?: string;
|
|
47
140
|
/**
|
|
48
|
-
*
|
|
49
|
-
*
|
|
50
|
-
* @deprecated Providers load API URLs from config file
|
|
141
|
+
* Logger instance from parent application
|
|
142
|
+
* Optional - if not provided, uses default console logger
|
|
51
143
|
*/
|
|
52
|
-
|
|
144
|
+
logger?: Logger;
|
|
53
145
|
/**
|
|
54
|
-
*
|
|
55
|
-
*
|
|
146
|
+
* Path to SQLite database file
|
|
147
|
+
* Supports: relative paths, absolute paths, ~ expansion, environment variables
|
|
148
|
+
* Default: "prompt_library.sqlite" (relative to process.cwd())
|
|
56
149
|
*/
|
|
57
|
-
|
|
58
|
-
/**
|
|
59
|
-
* Legacy: API key for authentication (for backward compatibility)
|
|
60
|
-
* Providers now load API keys from .env.local
|
|
61
|
-
* @deprecated API keys are loaded from .env.local per provider
|
|
62
|
-
*/
|
|
63
|
-
api_key?: string;
|
|
64
|
-
/**
|
|
65
|
-
* Legacy: LLM model to use (for backward compatibility)
|
|
66
|
-
* @deprecated Use provider registry instead, enabled_llms and primary_llm come from config
|
|
67
|
-
*/
|
|
68
|
-
llm_model?: string;
|
|
69
|
-
/**
|
|
70
|
-
* Legacy: Generation config for text API calls (for backward compatibility)
|
|
71
|
-
* @deprecated Use provider-specific configs from config file
|
|
72
|
-
*/
|
|
73
|
-
gemini_text_config?: GeminiGenerationConfig;
|
|
150
|
+
sqlite_path?: string;
|
|
74
151
|
/**
|
|
75
|
-
*
|
|
76
|
-
*
|
|
152
|
+
* Lifecycle hooks for monitoring, logging, and analytics
|
|
153
|
+
* Optional - hooks are called at various points during LLM API calls
|
|
77
154
|
*/
|
|
78
|
-
|
|
155
|
+
hooks?: LLMHooks;
|
|
79
156
|
}
|
|
80
157
|
/**
|
|
81
158
|
* Single prompt variable key-value pair
|
|
@@ -140,6 +217,63 @@ export interface PromptRecord {
|
|
|
140
217
|
/** Timestamp when the record was last changed */
|
|
141
218
|
changed_by: string;
|
|
142
219
|
}
|
|
220
|
+
/**
|
|
221
|
+
* Error codes for LLM API errors
|
|
222
|
+
* Use these codes for programmatic error handling
|
|
223
|
+
*
|
|
224
|
+
* @example
|
|
225
|
+
* ```typescript
|
|
226
|
+
* import { LLM_ERROR_CODES } from 'hazo_llm_api/server';
|
|
227
|
+
*
|
|
228
|
+
* if (response.error_info?.code === LLM_ERROR_CODES.RATE_LIMITED) {
|
|
229
|
+
* // Implement retry logic
|
|
230
|
+
* }
|
|
231
|
+
* ```
|
|
232
|
+
*/
|
|
233
|
+
export declare const LLM_ERROR_CODES: {
|
|
234
|
+
/** Provider not found in registry */
|
|
235
|
+
readonly PROVIDER_NOT_FOUND: "PROVIDER_NOT_FOUND";
|
|
236
|
+
/** Provider is not enabled in configuration */
|
|
237
|
+
readonly PROVIDER_NOT_ENABLED: "PROVIDER_NOT_ENABLED";
|
|
238
|
+
/** Provider does not support the requested service type */
|
|
239
|
+
readonly CAPABILITY_NOT_SUPPORTED: "CAPABILITY_NOT_SUPPORTED";
|
|
240
|
+
/** API key is missing or invalid */
|
|
241
|
+
readonly API_KEY_MISSING: "API_KEY_MISSING";
|
|
242
|
+
/** Rate limit exceeded */
|
|
243
|
+
readonly RATE_LIMITED: "RATE_LIMITED";
|
|
244
|
+
/** Network error (connection failed, timeout, etc.) */
|
|
245
|
+
readonly NETWORK_ERROR: "NETWORK_ERROR";
|
|
246
|
+
/** Invalid request parameters */
|
|
247
|
+
readonly INVALID_REQUEST: "INVALID_REQUEST";
|
|
248
|
+
/** API returned an error */
|
|
249
|
+
readonly API_ERROR: "API_ERROR";
|
|
250
|
+
/** Request timed out */
|
|
251
|
+
readonly TIMEOUT: "TIMEOUT";
|
|
252
|
+
/** Database error */
|
|
253
|
+
readonly DATABASE_ERROR: "DATABASE_ERROR";
|
|
254
|
+
/** Prompt not found */
|
|
255
|
+
readonly PROMPT_NOT_FOUND: "PROMPT_NOT_FOUND";
|
|
256
|
+
/** Unknown/unexpected error */
|
|
257
|
+
readonly UNKNOWN: "UNKNOWN";
|
|
258
|
+
};
|
|
259
|
+
/**
|
|
260
|
+
* Type for LLM error codes
|
|
261
|
+
*/
|
|
262
|
+
export type LLMErrorCode = typeof LLM_ERROR_CODES[keyof typeof LLM_ERROR_CODES];
|
|
263
|
+
/**
|
|
264
|
+
* Structured error information for LLM API responses
|
|
265
|
+
* Provides detailed error information for programmatic handling
|
|
266
|
+
*/
|
|
267
|
+
export interface LLMError {
|
|
268
|
+
/** Error code for programmatic handling */
|
|
269
|
+
code: LLMErrorCode;
|
|
270
|
+
/** Human-readable error message */
|
|
271
|
+
message: string;
|
|
272
|
+
/** Whether this error is potentially retryable */
|
|
273
|
+
retryable: boolean;
|
|
274
|
+
/** Original error details (if applicable) */
|
|
275
|
+
details?: Record<string, unknown>;
|
|
276
|
+
}
|
|
143
277
|
/**
|
|
144
278
|
* Generic LLM API response
|
|
145
279
|
*/
|
|
@@ -148,8 +282,13 @@ export interface LLMResponse {
|
|
|
148
282
|
success: boolean;
|
|
149
283
|
/** The generated text response from the LLM */
|
|
150
284
|
text?: string;
|
|
151
|
-
/**
|
|
285
|
+
/**
|
|
286
|
+
* Error message if the call failed
|
|
287
|
+
* @deprecated Use error_info for structured error data
|
|
288
|
+
*/
|
|
152
289
|
error?: string;
|
|
290
|
+
/** Structured error information (new in v2.0) */
|
|
291
|
+
error_info?: LLMError;
|
|
153
292
|
/** Raw response from the API */
|
|
154
293
|
raw_response?: unknown;
|
|
155
294
|
/** Base64 encoded image data (for image output functions) */
|
|
@@ -157,6 +296,40 @@ export interface LLMResponse {
|
|
|
157
296
|
/** MIME type of the generated image */
|
|
158
297
|
image_mime_type?: string;
|
|
159
298
|
}
|
|
299
|
+
/**
|
|
300
|
+
* A single chunk from a streaming LLM response
|
|
301
|
+
*/
|
|
302
|
+
export interface LLMStreamChunk {
|
|
303
|
+
/** The text content of this chunk */
|
|
304
|
+
text: string;
|
|
305
|
+
/** Whether this is the final chunk */
|
|
306
|
+
done: boolean;
|
|
307
|
+
/**
|
|
308
|
+
* Error message if streaming failed
|
|
309
|
+
* @deprecated Use error_info for structured error data
|
|
310
|
+
*/
|
|
311
|
+
error?: string;
|
|
312
|
+
/** Structured error information if streaming failed */
|
|
313
|
+
error_info?: LLMError;
|
|
314
|
+
}
|
|
315
|
+
/**
|
|
316
|
+
* Async iterator for streaming LLM responses
|
|
317
|
+
*
|
|
318
|
+
* @example
|
|
319
|
+
* ```typescript
|
|
320
|
+
* const stream = await hazo_llm_text_text_stream({ prompt: 'Hello' });
|
|
321
|
+
*
|
|
322
|
+
* for await (const chunk of stream) {
|
|
323
|
+
* if (chunk.error) {
|
|
324
|
+
* console.error(chunk.error);
|
|
325
|
+
* break;
|
|
326
|
+
* }
|
|
327
|
+
* process.stdout.write(chunk.text);
|
|
328
|
+
* if (chunk.done) break;
|
|
329
|
+
* }
|
|
330
|
+
* ```
|
|
331
|
+
*/
|
|
332
|
+
export type LLMStreamResponse = AsyncGenerator<LLMStreamChunk, void, unknown>;
|
|
160
333
|
/**
|
|
161
334
|
* Parameters for hazo_llm_text_text (text input → text output)
|
|
162
335
|
*/
|
|
@@ -337,16 +510,16 @@ export interface LLMApiClient {
|
|
|
337
510
|
/** Whether the database has been initialized */
|
|
338
511
|
db_initialized: boolean;
|
|
339
512
|
/** Text input → Text output */
|
|
340
|
-
hazo_llm_text_text: (params: TextTextParams, llm?:
|
|
513
|
+
hazo_llm_text_text: (params: TextTextParams, llm?: ProviderName) => Promise<LLMResponse>;
|
|
341
514
|
/** Image input → Text output (image analysis) */
|
|
342
|
-
hazo_llm_image_text: (params: ImageTextParams, llm?:
|
|
515
|
+
hazo_llm_image_text: (params: ImageTextParams, llm?: ProviderName) => Promise<LLMResponse>;
|
|
343
516
|
/** Text input → Image output (image generation) */
|
|
344
|
-
hazo_llm_text_image: (params: TextImageParams, llm?:
|
|
517
|
+
hazo_llm_text_image: (params: TextImageParams, llm?: ProviderName) => Promise<LLMResponse>;
|
|
345
518
|
/** Image input → Image output (image transformation) */
|
|
346
|
-
hazo_llm_image_image: (params: ImageImageParams, llm?:
|
|
519
|
+
hazo_llm_image_image: (params: ImageImageParams, llm?: ProviderName) => Promise<LLMResponse>;
|
|
347
520
|
/** Text → Image → Text (generate image then analyze it) */
|
|
348
|
-
hazo_llm_text_image_text: (params: TextImageTextParams, llm?:
|
|
521
|
+
hazo_llm_text_image_text: (params: TextImageTextParams, llm?: ProviderName) => Promise<LLMResponse>;
|
|
349
522
|
/** Images → Image → Text (chain image transformations then describe) */
|
|
350
|
-
hazo_llm_image_image_text: (params: ImageImageTextParams, llm?:
|
|
523
|
+
hazo_llm_image_image_text: (params: ImageImageTextParams, llm?: ProviderName) => Promise<LLMResponse>;
|
|
351
524
|
}
|
|
352
525
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/lib/llm_api/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/lib/llm_api/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,5 +4,46 @@
|
|
|
4
4
|
* TypeScript interfaces and types for the LLM API module.
|
|
5
5
|
* Includes configuration, function parameters, and response types.
|
|
6
6
|
*/
|
|
7
|
-
|
|
7
|
+
// =============================================================================
|
|
8
|
+
// LLM Error Types
|
|
9
|
+
// =============================================================================
|
|
10
|
+
/**
|
|
11
|
+
* Error codes for LLM API errors
|
|
12
|
+
* Use these codes for programmatic error handling
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* ```typescript
|
|
16
|
+
* import { LLM_ERROR_CODES } from 'hazo_llm_api/server';
|
|
17
|
+
*
|
|
18
|
+
* if (response.error_info?.code === LLM_ERROR_CODES.RATE_LIMITED) {
|
|
19
|
+
* // Implement retry logic
|
|
20
|
+
* }
|
|
21
|
+
* ```
|
|
22
|
+
*/
|
|
23
|
+
export const LLM_ERROR_CODES = {
|
|
24
|
+
/** Provider not found in registry */
|
|
25
|
+
PROVIDER_NOT_FOUND: 'PROVIDER_NOT_FOUND',
|
|
26
|
+
/** Provider is not enabled in configuration */
|
|
27
|
+
PROVIDER_NOT_ENABLED: 'PROVIDER_NOT_ENABLED',
|
|
28
|
+
/** Provider does not support the requested service type */
|
|
29
|
+
CAPABILITY_NOT_SUPPORTED: 'CAPABILITY_NOT_SUPPORTED',
|
|
30
|
+
/** API key is missing or invalid */
|
|
31
|
+
API_KEY_MISSING: 'API_KEY_MISSING',
|
|
32
|
+
/** Rate limit exceeded */
|
|
33
|
+
RATE_LIMITED: 'RATE_LIMITED',
|
|
34
|
+
/** Network error (connection failed, timeout, etc.) */
|
|
35
|
+
NETWORK_ERROR: 'NETWORK_ERROR',
|
|
36
|
+
/** Invalid request parameters */
|
|
37
|
+
INVALID_REQUEST: 'INVALID_REQUEST',
|
|
38
|
+
/** API returned an error */
|
|
39
|
+
API_ERROR: 'API_ERROR',
|
|
40
|
+
/** Request timed out */
|
|
41
|
+
TIMEOUT: 'TIMEOUT',
|
|
42
|
+
/** Database error */
|
|
43
|
+
DATABASE_ERROR: 'DATABASE_ERROR',
|
|
44
|
+
/** Prompt not found */
|
|
45
|
+
PROMPT_NOT_FOUND: 'PROMPT_NOT_FOUND',
|
|
46
|
+
/** Unknown/unexpected error */
|
|
47
|
+
UNKNOWN: 'UNKNOWN',
|
|
48
|
+
};
|
|
8
49
|
//# sourceMappingURL=types.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/lib/llm_api/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG"}
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/lib/llm_api/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAoSH,gFAAgF;AAChF,kBAAkB;AAClB,gFAAgF;AAEhF;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,qCAAqC;IACrC,kBAAkB,EAAE,oBAAoB;IACxC,+CAA+C;IAC/C,oBAAoB,EAAE,sBAAsB;IAC5C,2DAA2D;IAC3D,wBAAwB,EAAE,0BAA0B;IACpD,oCAAoC;IACpC,eAAe,EAAE,iBAAiB;IAClC,0BAA0B;IAC1B,YAAY,EAAE,cAAc;IAC5B,uDAAuD;IACvD,aAAa,EAAE,eAAe;IAC9B,iCAAiC;IACjC,eAAe,EAAE,iBAAiB;IAClC,4BAA4B;IAC5B,SAAS,EAAE,WAAW;IACtB,wBAAwB;IACxB,OAAO,EAAE,SAAS;IAClB,qBAAqB;IACrB,cAAc,EAAE,gBAAgB;IAChC,uBAAuB;IACvB,gBAAgB,EAAE,kBAAkB;IACpC,+BAA+B;IAC/B,OAAO,EAAE,SAAS;CACV,CAAC"}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Central registry for managing and accessing LLM providers.
|
|
5
5
|
* Handles provider registration, capability validation, and enabled LLM tracking.
|
|
6
6
|
*/
|
|
7
|
-
import type { LLMProvider, ServiceType } from './types.js';
|
|
7
|
+
import type { LLMProvider, ServiceType, ProviderName } from './types.js';
|
|
8
8
|
import type { Logger } from '../llm_api/types.js';
|
|
9
9
|
/**
|
|
10
10
|
* Register a provider in the registry
|
|
@@ -34,11 +34,11 @@ export declare function get_primary_llm(): string | null;
|
|
|
34
34
|
export declare function is_llm_enabled(name: string): boolean;
|
|
35
35
|
/**
|
|
36
36
|
* Get a provider by name
|
|
37
|
-
* @param name - Provider name (case-insensitive)
|
|
37
|
+
* @param name - Provider name (case-insensitive). Use LLM_PROVIDERS constants for type safety.
|
|
38
38
|
* @param logger - Logger instance for error logging
|
|
39
39
|
* @returns Provider instance or null if not found
|
|
40
40
|
*/
|
|
41
|
-
export declare function get_provider(name:
|
|
41
|
+
export declare function get_provider(name: ProviderName | null | undefined, logger: Logger): LLMProvider | null;
|
|
42
42
|
/**
|
|
43
43
|
* Check if a provider supports a specific service type
|
|
44
44
|
* @param provider - Provider instance
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../src/lib/providers/registry.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,WAAW,EAEX,WAAW,
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../src/lib/providers/registry.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,WAAW,EAEX,WAAW,EAEX,YAAY,EACb,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAyBlD;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,WAAW,GAAG,IAAI,CAG7D;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,aAAa,EAAE,MAAM,EAAE,GAAG,IAAI,CAE9D;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAElD;AAED;;;GAGG;AACH,wBAAgB,eAAe,IAAI,MAAM,GAAG,IAAI,CAE/C;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEpD;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAC1B,IAAI,EAAE,YAAY,GAAG,IAAI,GAAG,SAAS,EACrC,MAAM,EAAE,MAAM,GACb,WAAW,GAAG,IAAI,CA8CpB;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAC5B,QAAQ,EAAE,WAAW,EACrB,YAAY,EAAE,WAAW,GACxB,OAAO,CAGT;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,WAAW,EACrB,YAAY,EAAE,WAAW,EACzB,MAAM,EAAE,MAAM,GACb,OAAO,CAgBT;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,IAAI,MAAM,EAAE,CAEnD;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,IAAI,CAIrC"}
|
|
@@ -61,7 +61,7 @@ export function is_llm_enabled(name) {
|
|
|
61
61
|
}
|
|
62
62
|
/**
|
|
63
63
|
* Get a provider by name
|
|
64
|
-
* @param name - Provider name (case-insensitive)
|
|
64
|
+
* @param name - Provider name (case-insensitive). Use LLM_PROVIDERS constants for type safety.
|
|
65
65
|
* @param logger - Logger instance for error logging
|
|
66
66
|
* @returns Provider instance or null if not found
|
|
67
67
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../src/lib/providers/registry.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../src/lib/providers/registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,7 +4,39 @@
|
|
|
4
4
|
* Defines the interface that all LLM providers must implement.
|
|
5
5
|
* This ensures consistent behavior across different LLM implementations.
|
|
6
6
|
*/
|
|
7
|
-
import type { LLMResponse, TextTextParams, ImageTextParams, TextImageParams, ImageImageParams, Logger } from '../llm_api/types.js';
|
|
7
|
+
import type { LLMResponse, LLMStreamResponse, TextTextParams, ImageTextParams, TextImageParams, ImageImageParams, Logger } from '../llm_api/types.js';
|
|
8
|
+
/**
|
|
9
|
+
* Provider name constants for type-safe LLM provider selection
|
|
10
|
+
* Use these constants instead of string literals for autocomplete and type safety
|
|
11
|
+
*
|
|
12
|
+
* @example
|
|
13
|
+
* ```typescript
|
|
14
|
+
* import { LLM_PROVIDERS } from 'hazo_llm_api/server';
|
|
15
|
+
*
|
|
16
|
+
* const response = await hazo_llm_text_text(params, LLM_PROVIDERS.GEMINI);
|
|
17
|
+
* ```
|
|
18
|
+
*/
|
|
19
|
+
export declare const LLM_PROVIDERS: {
|
|
20
|
+
readonly GEMINI: "gemini";
|
|
21
|
+
readonly QWEN: "qwen";
|
|
22
|
+
};
|
|
23
|
+
/**
|
|
24
|
+
* Type for provider name - union of all valid provider names
|
|
25
|
+
* Accepts both constants and string literals for backward compatibility
|
|
26
|
+
*
|
|
27
|
+
* @example
|
|
28
|
+
* ```typescript
|
|
29
|
+
* // Using constant (recommended)
|
|
30
|
+
* const provider: ProviderName = LLM_PROVIDERS.GEMINI;
|
|
31
|
+
*
|
|
32
|
+
* // Using string literal (still works)
|
|
33
|
+
* const provider: ProviderName = 'gemini';
|
|
34
|
+
*
|
|
35
|
+
* // Custom provider (also valid)
|
|
36
|
+
* const provider: ProviderName = 'my-custom-provider';
|
|
37
|
+
* ```
|
|
38
|
+
*/
|
|
39
|
+
export type ProviderName = typeof LLM_PROVIDERS[keyof typeof LLM_PROVIDERS] | (string & {});
|
|
8
40
|
/**
|
|
9
41
|
* Service type identifiers for LLM capabilities
|
|
10
42
|
*/
|
|
@@ -78,6 +110,24 @@ export interface LLMProvider {
|
|
|
78
110
|
* @returns LLM response with transformed image
|
|
79
111
|
*/
|
|
80
112
|
image_image(params: ImageImageParams, logger: Logger): Promise<LLMResponse>;
|
|
113
|
+
/**
|
|
114
|
+
* Text input → Text output (streaming)
|
|
115
|
+
* Generate text from a text prompt with streaming response
|
|
116
|
+
*
|
|
117
|
+
* @param params - Text input parameters
|
|
118
|
+
* @param logger - Logger instance
|
|
119
|
+
* @returns Async generator yielding text chunks
|
|
120
|
+
*/
|
|
121
|
+
text_text_stream?(params: TextTextParams, logger: Logger): Promise<LLMStreamResponse>;
|
|
122
|
+
/**
|
|
123
|
+
* Image input → Text output (streaming)
|
|
124
|
+
* Analyze an image and generate text description with streaming response
|
|
125
|
+
*
|
|
126
|
+
* @param params - Image input parameters
|
|
127
|
+
* @param logger - Logger instance
|
|
128
|
+
* @returns Async generator yielding text chunks
|
|
129
|
+
*/
|
|
130
|
+
image_text_stream?(params: ImageTextParams, logger: Logger): Promise<LLMStreamResponse>;
|
|
81
131
|
}
|
|
82
132
|
/**
|
|
83
133
|
* Base configuration for initializing an LLM provider
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/lib/providers/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,WAAW,EACX,cAAc,EACd,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,MAAM,EACP,MAAM,qBAAqB,CAAC;AAM7B;;GAEG;AACH,eAAO,MAAM,aAAa;;;;;CAKhB,CAAC;AAEX;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,OAAO,aAAa,CAAC,MAAM,OAAO,aAAa,CAAC,CAAC;AAE3E;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,GAAG,CAAC,WAAW,CAAC,CAAC;AAM/C;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B;;OAEG;IACH,QAAQ,IAAI,MAAM,CAAC;IAEnB;;;OAGG;IACH,gBAAgB,IAAI,eAAe,CAAC;IAEpC;;;;OAIG;IACH,qBAAqB,CAAC,YAAY,EAAE,WAAW,GAAG,MAAM,GAAG,SAAS,CAAC;IAErE;;;;;;;OAOG;IACH,SAAS,CAAC,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAExE;;;;;;;OAOG;IACH,UAAU,CAAC,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAE1E;;;;;;;OAOG;IACH,UAAU,CAAC,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAE1E;;;;;;;OAOG;IACH,WAAW,CAAC,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/lib/providers/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,WAAW,EACX,iBAAiB,EACjB,cAAc,EACd,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,MAAM,EACP,MAAM,qBAAqB,CAAC;AAM7B;;;;;;;;;;GAUG;AACH,eAAO,MAAM,aAAa;;;CAGhB,CAAC;AAEX;;;;;;;;;;;;;;;GAeG;AACH,MAAM,MAAM,YAAY,GAAG,OAAO,aAAa,CAAC,MAAM,OAAO,aAAa,CAAC,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;AAM5F;;GAEG;AACH,eAAO,MAAM,aAAa;;;;;CAKhB,CAAC;AAEX;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,OAAO,aAAa,CAAC,MAAM,OAAO,aAAa,CAAC,CAAC;AAE3E;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,GAAG,CAAC,WAAW,CAAC,CAAC;AAM/C;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B;;OAEG;IACH,QAAQ,IAAI,MAAM,CAAC;IAEnB;;;OAGG;IACH,gBAAgB,IAAI,eAAe,CAAC;IAEpC;;;;OAIG;IACH,qBAAqB,CAAC,YAAY,EAAE,WAAW,GAAG,MAAM,GAAG,SAAS,CAAC;IAErE;;;;;;;OAOG;IACH,SAAS,CAAC,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAExE;;;;;;;OAOG;IACH,UAAU,CAAC,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAE1E;;;;;;;OAOG;IACH,UAAU,CAAC,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAE1E;;;;;;;OAOG;IACH,WAAW,CAAC,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAM5E;;;;;;;OAOG;IACH,gBAAgB,CAAC,CAAC,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAEtF;;;;;;;OAOG;IACH,iBAAiB,CAAC,CAAC,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;CACzF;AAMD;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,0DAA0D;IAC1D,IAAI,EAAE,MAAM,CAAC;IAEb,sEAAsE;IACtE,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,sBAAsB;IACtB,MAAM,EAAE,MAAM,CAAC;IAEf,iDAAiD;IACjD,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB"}
|
|
@@ -5,6 +5,24 @@
|
|
|
5
5
|
* This ensures consistent behavior across different LLM implementations.
|
|
6
6
|
*/
|
|
7
7
|
// =============================================================================
|
|
8
|
+
// Provider Name Constants
|
|
9
|
+
// =============================================================================
|
|
10
|
+
/**
|
|
11
|
+
* Provider name constants for type-safe LLM provider selection
|
|
12
|
+
* Use these constants instead of string literals for autocomplete and type safety
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* ```typescript
|
|
16
|
+
* import { LLM_PROVIDERS } from 'hazo_llm_api/server';
|
|
17
|
+
*
|
|
18
|
+
* const response = await hazo_llm_text_text(params, LLM_PROVIDERS.GEMINI);
|
|
19
|
+
* ```
|
|
20
|
+
*/
|
|
21
|
+
export const LLM_PROVIDERS = {
|
|
22
|
+
GEMINI: 'gemini',
|
|
23
|
+
QWEN: 'qwen',
|
|
24
|
+
};
|
|
25
|
+
// =============================================================================
|
|
8
26
|
// Service Type Constants
|
|
9
27
|
// =============================================================================
|
|
10
28
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/lib/providers/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/lib/providers/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAYH,gFAAgF;AAChF,0BAA0B;AAC1B,gFAAgF;AAEhF;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,MAAM,EAAE,QAAQ;IAChB,IAAI,EAAE,MAAM;CACJ,CAAC;AAoBX,gFAAgF;AAChF,yBAAyB;AACzB,gFAAgF;AAEhF;;GAEG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,SAAS,EAAE,WAAW;IACtB,UAAU,EAAE,YAAY;IACxB,UAAU,EAAE,YAAY;IACxB,WAAW,EAAE,aAAa;CAClB,CAAC"}
|
package/dist/server.d.ts
CHANGED
|
@@ -13,9 +13,14 @@
|
|
|
13
13
|
* - hazo_llm_image_image: Image input → Image output
|
|
14
14
|
* - hazo_llm_text_image_text: Text → Image → Text (chained)
|
|
15
15
|
*/
|
|
16
|
-
export { initialize_llm_api, hazo_llm_text_text, hazo_llm_image_text, hazo_llm_text_image, hazo_llm_image_image, hazo_llm_text_image_text, hazo_llm_image_image_text, is_initialized, get_current_config, } from './lib/llm_api/index.js';
|
|
17
|
-
export { initialize_database, get_database, close_database, insert_prompt, update_prompt, delete_prompt, } from './lib/database/index.js';
|
|
16
|
+
export { initialize_llm_api, hazo_llm_text_text, hazo_llm_image_text, hazo_llm_text_image, hazo_llm_image_image, hazo_llm_text_image_text, hazo_llm_image_image_text, hazo_llm_text_text_stream, hazo_llm_image_text_stream, is_initialized, get_current_config, default_logger, get_logger, set_logger, get_hooks, set_hooks, } from './lib/llm_api/index.js';
|
|
17
|
+
export { initialize_database, get_database, close_database, insert_prompt, update_prompt, delete_prompt, get_default_sqlite_path, expand_path, resolve_sqlite_path, } from './lib/database/index.js';
|
|
18
18
|
export { get_prompt_by_area_and_key, get_prompt_text, get_prompts_by_area, get_prompt_by_uuid, get_all_prompts, substitute_variables, parse_prompt_variables, validate_variables, } from './lib/prompts/index.js';
|
|
19
19
|
export { call_gemini_api, get_gemini_api_url, } from './lib/providers/index.js';
|
|
20
|
-
export
|
|
20
|
+
export { LLM_PROVIDERS, SERVICE_TYPES } from './lib/providers/types.js';
|
|
21
|
+
export type { ProviderName, ServiceType } from './lib/providers/types.js';
|
|
22
|
+
export { LLM_ERROR_CODES } from './lib/llm_api/types.js';
|
|
23
|
+
export { build_error_response } from './lib/llm_api/provider_helper.js';
|
|
24
|
+
export type { LLMErrorCode, LLMError } from './lib/llm_api/types.js';
|
|
25
|
+
export type { LLMApiConfig, LLMApiClient, LLMResponse, TextTextParams, ImageTextParams, TextImageParams, ImageImageParams, TextImageTextParams, ImageImageTextParams, ChainImage, Logger, PromptVariable, PromptVariables, Base64Data, PromptTextMode, PromptRecord, CallLLMParams, LLMHooks, LLMRequestContext, LLMResponseContext, LLMErrorContext, BeforeRequestHook, AfterResponseHook, OnErrorHook, LLMStreamChunk, LLMStreamResponse, } from './lib/llm_api/types.js';
|
|
21
26
|
//# sourceMappingURL=server.d.ts.map
|
package/dist/server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAKH,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,oBAAoB,EACpB,wBAAwB,EACxB,yBAAyB,EACzB,cAAc,EACd,kBAAkB,
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAKH,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,oBAAoB,EACpB,wBAAwB,EACxB,yBAAyB,EAEzB,yBAAyB,EACzB,0BAA0B,EAC1B,cAAc,EACd,kBAAkB,EAElB,cAAc,EACd,UAAU,EACV,UAAU,EAEV,SAAS,EACT,SAAS,GACV,MAAM,wBAAwB,CAAC;AAKhC,OAAO,EACL,mBAAmB,EACnB,YAAY,EACZ,cAAc,EACd,aAAa,EACb,aAAa,EACb,aAAa,EAEb,uBAAuB,EACvB,WAAW,EACX,mBAAmB,GACpB,MAAM,yBAAyB,CAAC;AAKjC,OAAO,EACL,0BAA0B,EAC1B,eAAe,EACf,mBAAmB,EACnB,kBAAkB,EAClB,eAAe,EACf,oBAAoB,EACpB,sBAAsB,EACtB,kBAAkB,GACnB,MAAM,wBAAwB,CAAC;AAKhC,OAAO,EACL,eAAe,EACf,kBAAkB,GACnB,MAAM,0BAA0B,CAAC;AAKlC,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACxE,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAK1E,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AACxE,YAAY,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAKrE,YAAY,EACV,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,cAAc,EACd,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,mBAAmB,EACnB,oBAAoB,EACpB,UAAU,EACV,MAAM,EACN,cAAc,EACd,eAAe,EACf,UAAU,EACV,cAAc,EACd,YAAY,EACZ,aAAa,EAEb,QAAQ,EACR,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,EACf,iBAAiB,EACjB,iBAAiB,EACjB,WAAW,EAEX,cAAc,EACd,iBAAiB,GAClB,MAAM,wBAAwB,CAAC"}
|
package/dist/server.js
CHANGED
|
@@ -16,11 +16,19 @@
|
|
|
16
16
|
// =============================================================================
|
|
17
17
|
// LLM API Exports (Server-side ONLY)
|
|
18
18
|
// =============================================================================
|
|
19
|
-
export { initialize_llm_api, hazo_llm_text_text, hazo_llm_image_text, hazo_llm_text_image, hazo_llm_image_image, hazo_llm_text_image_text, hazo_llm_image_image_text,
|
|
19
|
+
export { initialize_llm_api, hazo_llm_text_text, hazo_llm_image_text, hazo_llm_text_image, hazo_llm_image_image, hazo_llm_text_image_text, hazo_llm_image_image_text,
|
|
20
|
+
// Streaming functions
|
|
21
|
+
hazo_llm_text_text_stream, hazo_llm_image_text_stream, is_initialized, get_current_config,
|
|
22
|
+
// Logger utilities
|
|
23
|
+
default_logger, get_logger, set_logger,
|
|
24
|
+
// Hooks utilities
|
|
25
|
+
get_hooks, set_hooks, } from './lib/llm_api/index.js';
|
|
20
26
|
// =============================================================================
|
|
21
27
|
// Database Exports (Server-side ONLY)
|
|
22
28
|
// =============================================================================
|
|
23
|
-
export { initialize_database, get_database, close_database, insert_prompt, update_prompt, delete_prompt,
|
|
29
|
+
export { initialize_database, get_database, close_database, insert_prompt, update_prompt, delete_prompt,
|
|
30
|
+
// Path helpers
|
|
31
|
+
get_default_sqlite_path, expand_path, resolve_sqlite_path, } from './lib/database/index.js';
|
|
24
32
|
// =============================================================================
|
|
25
33
|
// Prompt Utility Exports (Server-side ONLY)
|
|
26
34
|
// =============================================================================
|
|
@@ -29,4 +37,13 @@ export { get_prompt_by_area_and_key, get_prompt_text, get_prompts_by_area, get_p
|
|
|
29
37
|
// Provider Exports (Server-side ONLY)
|
|
30
38
|
// =============================================================================
|
|
31
39
|
export { call_gemini_api, get_gemini_api_url, } from './lib/providers/index.js';
|
|
40
|
+
// =============================================================================
|
|
41
|
+
// Provider Constants (Type-safe provider names)
|
|
42
|
+
// =============================================================================
|
|
43
|
+
export { LLM_PROVIDERS, SERVICE_TYPES } from './lib/providers/types.js';
|
|
44
|
+
// =============================================================================
|
|
45
|
+
// Error Handling Exports
|
|
46
|
+
// =============================================================================
|
|
47
|
+
export { LLM_ERROR_CODES } from './lib/llm_api/types.js';
|
|
48
|
+
export { build_error_response } from './lib/llm_api/provider_helper.js';
|
|
32
49
|
//# sourceMappingURL=server.js.map
|
package/dist/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,gFAAgF;AAChF,qCAAqC;AACrC,gFAAgF;AAChF,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,oBAAoB,EACpB,wBAAwB,EACxB,yBAAyB,EACzB,cAAc,EACd,kBAAkB,
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,gFAAgF;AAChF,qCAAqC;AACrC,gFAAgF;AAChF,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,oBAAoB,EACpB,wBAAwB,EACxB,yBAAyB;AACzB,sBAAsB;AACtB,yBAAyB,EACzB,0BAA0B,EAC1B,cAAc,EACd,kBAAkB;AAClB,mBAAmB;AACnB,cAAc,EACd,UAAU,EACV,UAAU;AACV,kBAAkB;AAClB,SAAS,EACT,SAAS,GACV,MAAM,wBAAwB,CAAC;AAEhC,gFAAgF;AAChF,sCAAsC;AACtC,gFAAgF;AAChF,OAAO,EACL,mBAAmB,EACnB,YAAY,EACZ,cAAc,EACd,aAAa,EACb,aAAa,EACb,aAAa;AACb,eAAe;AACf,uBAAuB,EACvB,WAAW,EACX,mBAAmB,GACpB,MAAM,yBAAyB,CAAC;AAEjC,gFAAgF;AAChF,4CAA4C;AAC5C,gFAAgF;AAChF,OAAO,EACL,0BAA0B,EAC1B,eAAe,EACf,mBAAmB,EACnB,kBAAkB,EAClB,eAAe,EACf,oBAAoB,EACpB,sBAAsB,EACtB,kBAAkB,GACnB,MAAM,wBAAwB,CAAC;AAEhC,gFAAgF;AAChF,sCAAsC;AACtC,gFAAgF;AAChF,OAAO,EACL,eAAe,EACf,kBAAkB,GACnB,MAAM,0BAA0B,CAAC;AAElC,gFAAgF;AAChF,gDAAgD;AAChD,gFAAgF;AAChF,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAGxE,gFAAgF;AAChF,yBAAyB;AACzB,gFAAgF;AAChF,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC"}
|