hazo_llm_api 1.0.4 → 1.0.5
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/components/index.d.ts +7 -0
- package/dist/components/index.d.ts.map +1 -0
- package/dist/components/index.js +7 -0
- package/dist/components/index.js.map +1 -0
- package/dist/components/layout/index.d.ts +7 -0
- package/dist/components/layout/index.d.ts.map +1 -0
- package/dist/components/layout/index.js +7 -0
- package/dist/components/layout/index.js.map +1 -0
- package/dist/components/layout/layout.d.ts +21 -0
- package/dist/components/layout/layout.d.ts.map +1 -0
- package/dist/components/layout/layout.js +18 -0
- package/dist/components/layout/layout.js.map +1 -0
- package/dist/index.d.ts +15 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +21 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/config/config_parser.d.ts +131 -0
- package/dist/lib/config/config_parser.d.ts.map +1 -0
- package/dist/lib/config/config_parser.js +297 -0
- package/dist/lib/config/config_parser.js.map +1 -0
- package/dist/lib/config/index.d.ts +8 -0
- package/dist/lib/config/index.d.ts.map +1 -0
- package/dist/lib/config/index.js +22 -0
- package/dist/lib/config/index.js.map +1 -0
- package/dist/lib/config/provider_loader.d.ts +113 -0
- package/dist/lib/config/provider_loader.d.ts.map +1 -0
- package/dist/lib/config/provider_loader.js +169 -0
- package/dist/lib/config/provider_loader.js.map +1 -0
- package/dist/lib/database/index.d.ts +8 -0
- package/dist/lib/database/index.d.ts.map +1 -0
- package/dist/lib/database/index.js +10 -0
- package/dist/lib/database/index.js.map +1 -0
- package/dist/lib/database/init_database.d.ts +118 -0
- package/dist/lib/database/init_database.d.ts.map +1 -0
- package/dist/lib/database/init_database.js +591 -0
- package/dist/lib/database/init_database.js.map +1 -0
- package/dist/lib/database/utils.d.ts +53 -0
- package/dist/lib/database/utils.d.ts.map +1 -0
- package/dist/lib/database/utils.js +87 -0
- package/dist/lib/database/utils.js.map +1 -0
- package/dist/lib/index.d.ts +14 -0
- package/dist/lib/index.d.ts.map +1 -0
- package/dist/lib/index.js +17 -0
- package/dist/lib/index.js.map +1 -0
- package/dist/lib/llm_api/chain_helpers.d.ts +117 -0
- package/dist/lib/llm_api/chain_helpers.d.ts.map +1 -0
- package/dist/lib/llm_api/chain_helpers.js +445 -0
- package/dist/lib/llm_api/chain_helpers.js.map +1 -0
- package/dist/lib/llm_api/hazo_llm_image_image.d.ts +26 -0
- package/dist/lib/llm_api/hazo_llm_image_image.d.ts.map +1 -0
- package/dist/lib/llm_api/hazo_llm_image_image.js +94 -0
- package/dist/lib/llm_api/hazo_llm_image_image.js.map +1 -0
- package/dist/lib/llm_api/hazo_llm_image_image_text.d.ts +26 -0
- package/dist/lib/llm_api/hazo_llm_image_image_text.d.ts.map +1 -0
- package/dist/lib/llm_api/hazo_llm_image_image_text.js +222 -0
- package/dist/lib/llm_api/hazo_llm_image_image_text.js.map +1 -0
- package/dist/lib/llm_api/hazo_llm_image_text.d.ts +20 -0
- package/dist/lib/llm_api/hazo_llm_image_text.d.ts.map +1 -0
- package/dist/lib/llm_api/hazo_llm_image_text.js +78 -0
- package/dist/lib/llm_api/hazo_llm_image_text.js.map +1 -0
- package/dist/lib/llm_api/hazo_llm_prompt_chain.d.ts +20 -0
- package/dist/lib/llm_api/hazo_llm_prompt_chain.d.ts.map +1 -0
- package/dist/lib/llm_api/hazo_llm_prompt_chain.js +368 -0
- package/dist/lib/llm_api/hazo_llm_prompt_chain.js.map +1 -0
- package/dist/lib/llm_api/hazo_llm_text_image.d.ts +20 -0
- package/dist/lib/llm_api/hazo_llm_text_image.d.ts.map +1 -0
- package/dist/lib/llm_api/hazo_llm_text_image.js +69 -0
- package/dist/lib/llm_api/hazo_llm_text_image.js.map +1 -0
- package/dist/lib/llm_api/hazo_llm_text_image_text.d.ts +26 -0
- package/dist/lib/llm_api/hazo_llm_text_image_text.d.ts.map +1 -0
- package/dist/lib/llm_api/hazo_llm_text_image_text.js +154 -0
- package/dist/lib/llm_api/hazo_llm_text_image_text.js.map +1 -0
- package/dist/lib/llm_api/hazo_llm_text_text.d.ts +20 -0
- package/dist/lib/llm_api/hazo_llm_text_text.d.ts.map +1 -0
- package/dist/lib/llm_api/hazo_llm_text_text.js +91 -0
- package/dist/lib/llm_api/hazo_llm_text_text.js.map +1 -0
- package/dist/lib/llm_api/index.d.ts +223 -0
- package/dist/lib/llm_api/index.d.ts.map +1 -0
- package/dist/lib/llm_api/index.js +1220 -0
- package/dist/lib/llm_api/index.js.map +1 -0
- package/dist/lib/llm_api/provider_helper.d.ts +163 -0
- package/dist/lib/llm_api/provider_helper.d.ts.map +1 -0
- package/dist/lib/llm_api/provider_helper.js +346 -0
- package/dist/lib/llm_api/provider_helper.js.map +1 -0
- package/dist/lib/llm_api/types.d.ts +667 -0
- package/dist/lib/llm_api/types.d.ts.map +1 -0
- package/dist/lib/llm_api/types.js +49 -0
- package/dist/lib/llm_api/types.js.map +1 -0
- package/dist/lib/prompts/get_prompt.d.ts +76 -0
- package/dist/lib/prompts/get_prompt.d.ts.map +1 -0
- package/dist/lib/prompts/get_prompt.js +342 -0
- package/dist/lib/prompts/get_prompt.js.map +1 -0
- package/dist/lib/prompts/index.d.ts +9 -0
- package/dist/lib/prompts/index.d.ts.map +1 -0
- package/dist/lib/prompts/index.js +9 -0
- package/dist/lib/prompts/index.js.map +1 -0
- package/dist/lib/prompts/prompt_cache.d.ts +151 -0
- package/dist/lib/prompts/prompt_cache.d.ts.map +1 -0
- package/dist/lib/prompts/prompt_cache.js +276 -0
- package/dist/lib/prompts/prompt_cache.js.map +1 -0
- package/dist/lib/prompts/substitute_variables.d.ts +38 -0
- package/dist/lib/prompts/substitute_variables.d.ts.map +1 -0
- package/dist/lib/prompts/substitute_variables.js +171 -0
- package/dist/lib/prompts/substitute_variables.js.map +1 -0
- package/dist/lib/providers/gemini/gemini_client.d.ts +25 -0
- package/dist/lib/providers/gemini/gemini_client.d.ts.map +1 -0
- package/dist/lib/providers/gemini/gemini_client.js +235 -0
- package/dist/lib/providers/gemini/gemini_client.js.map +1 -0
- package/dist/lib/providers/gemini/gemini_provider.d.ts +111 -0
- package/dist/lib/providers/gemini/gemini_provider.d.ts.map +1 -0
- package/dist/lib/providers/gemini/gemini_provider.js +431 -0
- package/dist/lib/providers/gemini/gemini_provider.js.map +1 -0
- package/dist/lib/providers/gemini/index.d.ts +8 -0
- package/dist/lib/providers/gemini/index.d.ts.map +1 -0
- package/dist/lib/providers/gemini/index.js +8 -0
- package/dist/lib/providers/gemini/index.js.map +1 -0
- package/dist/lib/providers/index.d.ts +8 -0
- package/dist/lib/providers/index.d.ts.map +1 -0
- package/dist/lib/providers/index.js +8 -0
- package/dist/lib/providers/index.js.map +1 -0
- package/dist/lib/providers/qwen/index.d.ts +8 -0
- package/dist/lib/providers/qwen/index.d.ts.map +1 -0
- package/dist/lib/providers/qwen/index.js +8 -0
- package/dist/lib/providers/qwen/index.js.map +1 -0
- package/dist/lib/providers/qwen/qwen_client.d.ts +154 -0
- package/dist/lib/providers/qwen/qwen_client.d.ts.map +1 -0
- package/dist/lib/providers/qwen/qwen_client.js +1002 -0
- package/dist/lib/providers/qwen/qwen_client.js.map +1 -0
- package/dist/lib/providers/qwen/qwen_provider.d.ts +139 -0
- package/dist/lib/providers/qwen/qwen_provider.d.ts.map +1 -0
- package/dist/lib/providers/qwen/qwen_provider.js +304 -0
- package/dist/lib/providers/qwen/qwen_provider.js.map +1 -0
- package/dist/lib/providers/registry.d.ts +66 -0
- package/dist/lib/providers/registry.d.ts.map +1 -0
- package/dist/lib/providers/registry.js +158 -0
- package/dist/lib/providers/registry.js.map +1 -0
- package/dist/lib/providers/types.d.ts +145 -0
- package/dist/lib/providers/types.d.ts.map +1 -0
- package/dist/lib/providers/types.js +37 -0
- package/dist/lib/providers/types.js.map +1 -0
- package/dist/server.d.ts +27 -0
- package/dist/server.d.ts.map +1 -0
- package/dist/server.js +50 -0
- package/dist/server.js.map +1 -0
- package/package.json +12 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hazo_llm_text_image_text.js","sourceRoot":"","sources":["../../../src/lib/llm_api/hazo_llm_text_image_text.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* hazo_llm_text_text Function
|
|
3
|
+
*
|
|
4
|
+
* Text input → Text output
|
|
5
|
+
* Standard text generation using LLM.
|
|
6
|
+
* Supports static prompts, dynamic prompts from database, and variable substitution.
|
|
7
|
+
*/
|
|
8
|
+
import type { Database as SqlJsDatabase } from 'sql.js';
|
|
9
|
+
import type { TextTextParams, LLMResponse, LLMApiConfig } from './types.js';
|
|
10
|
+
/**
|
|
11
|
+
* Call the LLM with text input and get text output
|
|
12
|
+
*
|
|
13
|
+
* @param params - Text input parameters
|
|
14
|
+
* @param db - Database instance for dynamic prompts
|
|
15
|
+
* @param config - LLM API configuration
|
|
16
|
+
* @param llm - Optional LLM provider name (uses primary LLM if not specified)
|
|
17
|
+
* @returns LLM response with generated text
|
|
18
|
+
*/
|
|
19
|
+
export declare function hazo_llm_text_text(params: TextTextParams, db: SqlJsDatabase | null, config: LLMApiConfig, llm?: string): Promise<LLMResponse>;
|
|
20
|
+
//# sourceMappingURL=hazo_llm_text_text.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hazo_llm_text_text.d.ts","sourceRoot":"","sources":["../../../src/lib/llm_api/hazo_llm_text_text.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,QAAQ,IAAI,aAAa,EAAE,MAAM,QAAQ,CAAC;AACxD,OAAO,KAAK,EACV,cAAc,EACd,WAAW,EACX,YAAY,EACb,MAAM,YAAY,CAAC;AAwBpB;;;;;;;;GAQG;AACH,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,cAAc,EACtB,EAAE,EAAE,aAAa,GAAG,IAAI,EACxB,MAAM,EAAE,YAAY,EACpB,GAAG,CAAC,EAAE,MAAM,GACX,OAAO,CAAC,WAAW,CAAC,CA4EtB"}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* hazo_llm_text_text Function
|
|
3
|
+
*
|
|
4
|
+
* Text input → Text output
|
|
5
|
+
* Standard text generation using LLM.
|
|
6
|
+
* Supports static prompts, dynamic prompts from database, and variable substitution.
|
|
7
|
+
*/
|
|
8
|
+
import { get_prompt_text } from '../prompts/get_prompt.js';
|
|
9
|
+
import { substitute_variables } from '../prompts/substitute_variables.js';
|
|
10
|
+
import { SERVICE_TYPES } from '../providers/types.js';
|
|
11
|
+
import { get_validated_provider, log_api_start, log_api_complete, log_api_details, log_api_response, handle_caught_error, } from './provider_helper.js';
|
|
12
|
+
// =============================================================================
|
|
13
|
+
// Constants
|
|
14
|
+
// =============================================================================
|
|
15
|
+
const FILE_NAME = 'hazo_llm_text_text.ts';
|
|
16
|
+
const API_NAME = 'text_text';
|
|
17
|
+
// =============================================================================
|
|
18
|
+
// hazo_llm_text_text Function
|
|
19
|
+
// =============================================================================
|
|
20
|
+
/**
|
|
21
|
+
* Call the LLM with text input and get text output
|
|
22
|
+
*
|
|
23
|
+
* @param params - Text input parameters
|
|
24
|
+
* @param db - Database instance for dynamic prompts
|
|
25
|
+
* @param config - LLM API configuration
|
|
26
|
+
* @param llm - Optional LLM provider name (uses primary LLM if not specified)
|
|
27
|
+
* @returns LLM response with generated text
|
|
28
|
+
*/
|
|
29
|
+
export async function hazo_llm_text_text(params, db, config, llm) {
|
|
30
|
+
// Use default logger if not provided
|
|
31
|
+
const { default_logger } = await import('./index.js');
|
|
32
|
+
const logger = config.logger || default_logger;
|
|
33
|
+
try {
|
|
34
|
+
log_api_start(API_NAME, FILE_NAME, logger);
|
|
35
|
+
// ==========================================================================
|
|
36
|
+
// Step 1: Get the prompt text
|
|
37
|
+
// ==========================================================================
|
|
38
|
+
let prompt_text;
|
|
39
|
+
if (params.prompt_area && params.prompt_key) {
|
|
40
|
+
if (!db) {
|
|
41
|
+
const error_msg = 'Database not initialized for dynamic prompt retrieval';
|
|
42
|
+
logger.error(error_msg, { file: FILE_NAME });
|
|
43
|
+
return { success: false, error: error_msg };
|
|
44
|
+
}
|
|
45
|
+
const dynamic_prompt = get_prompt_text(db, params.prompt_area, params.prompt_key, logger);
|
|
46
|
+
if (!dynamic_prompt) {
|
|
47
|
+
const error_msg = `Prompt not found for area="${params.prompt_area}" key="${params.prompt_key}"`;
|
|
48
|
+
logger.error(error_msg, { file: FILE_NAME });
|
|
49
|
+
return { success: false, error: error_msg };
|
|
50
|
+
}
|
|
51
|
+
prompt_text = dynamic_prompt;
|
|
52
|
+
}
|
|
53
|
+
else {
|
|
54
|
+
prompt_text = params.prompt;
|
|
55
|
+
}
|
|
56
|
+
// ==========================================================================
|
|
57
|
+
// Step 2: Substitute variables
|
|
58
|
+
// ==========================================================================
|
|
59
|
+
const final_prompt = substitute_variables(prompt_text, params.prompt_variables, logger);
|
|
60
|
+
// ==========================================================================
|
|
61
|
+
// Step 3: Get and validate provider
|
|
62
|
+
// ==========================================================================
|
|
63
|
+
const provider_result = get_validated_provider({
|
|
64
|
+
llm,
|
|
65
|
+
service_type: SERVICE_TYPES.TEXT_TEXT,
|
|
66
|
+
logger,
|
|
67
|
+
});
|
|
68
|
+
if (!provider_result.success) {
|
|
69
|
+
return provider_result.error_response;
|
|
70
|
+
}
|
|
71
|
+
const provider = provider_result.provider;
|
|
72
|
+
log_api_details(provider, SERVICE_TYPES.TEXT_TEXT, FILE_NAME, logger, {
|
|
73
|
+
prompt_text: final_prompt,
|
|
74
|
+
llm_requested: llm || 'primary',
|
|
75
|
+
});
|
|
76
|
+
// ==========================================================================
|
|
77
|
+
// Step 4: Call the provider
|
|
78
|
+
// ==========================================================================
|
|
79
|
+
const response = await provider.text_text({
|
|
80
|
+
...params,
|
|
81
|
+
prompt: final_prompt,
|
|
82
|
+
}, logger);
|
|
83
|
+
log_api_response(response, FILE_NAME, logger);
|
|
84
|
+
log_api_complete(API_NAME, FILE_NAME, response.success, logger);
|
|
85
|
+
return response;
|
|
86
|
+
}
|
|
87
|
+
catch (error) {
|
|
88
|
+
return handle_caught_error(error, 'hazo_llm_text_text', FILE_NAME, logger);
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
//# sourceMappingURL=hazo_llm_text_text.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hazo_llm_text_text.js","sourceRoot":"","sources":["../../../src/lib/llm_api/hazo_llm_text_text.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,223 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* LLM API Module
|
|
3
|
+
*
|
|
4
|
+
* Main entry point for the LLM API functionality.
|
|
5
|
+
* Provides initialization and specialized LLM functions:
|
|
6
|
+
* - hazo_llm_text_text: Text input → Text output
|
|
7
|
+
* - hazo_llm_image_text: Image input → Text output
|
|
8
|
+
* - hazo_llm_text_image: Text input → Image output
|
|
9
|
+
* - hazo_llm_image_image: Image input → Image output
|
|
10
|
+
* - hazo_llm_text_image_text: Text → Image → Text (chained)
|
|
11
|
+
* - hazo_llm_image_image_text: Images → Image → Text (chained)
|
|
12
|
+
*
|
|
13
|
+
* Database is auto-initialized on module import using config defaults.
|
|
14
|
+
*/
|
|
15
|
+
import type { LLMApiConfig, LLMApiClient, LLMResponse, LLMStreamResponse, TextTextParams, ImageTextParams, TextImageParams, ImageImageParams, TextImageTextParams, ImageImageTextParams, PromptChainParams, PromptChainResponse, Logger } from './types.js';
|
|
16
|
+
import type { ProviderName } from '../providers/types.js';
|
|
17
|
+
/**
|
|
18
|
+
* Default console logger used when no custom logger is provided
|
|
19
|
+
* Can be used directly or as a fallback in functions
|
|
20
|
+
*/
|
|
21
|
+
export declare const default_logger: Logger;
|
|
22
|
+
/**
|
|
23
|
+
* Get the current logger instance
|
|
24
|
+
* Returns the stored logger (set during initialization) or default logger
|
|
25
|
+
*
|
|
26
|
+
* @returns Current logger instance
|
|
27
|
+
*
|
|
28
|
+
* @example
|
|
29
|
+
* ```typescript
|
|
30
|
+
* import { get_logger } from 'hazo_llm_api/server';
|
|
31
|
+
*
|
|
32
|
+
* const logger = get_logger();
|
|
33
|
+
* logger.info('My message');
|
|
34
|
+
* ```
|
|
35
|
+
*/
|
|
36
|
+
export declare function get_logger(): Logger;
|
|
37
|
+
/**
|
|
38
|
+
* Set the logger instance
|
|
39
|
+
* Called internally during initialization, but can also be called directly
|
|
40
|
+
*
|
|
41
|
+
* @param logger - Logger instance to use
|
|
42
|
+
*/
|
|
43
|
+
export declare function set_logger(logger: Logger): void;
|
|
44
|
+
/**
|
|
45
|
+
* Get the current hooks configuration
|
|
46
|
+
*
|
|
47
|
+
* @returns Current hooks configuration
|
|
48
|
+
*/
|
|
49
|
+
export declare function get_hooks(): import('./types.js').LLMHooks;
|
|
50
|
+
/**
|
|
51
|
+
* Set the hooks configuration
|
|
52
|
+
* Called internally during initialization, but can also be called directly
|
|
53
|
+
*
|
|
54
|
+
* @param hooks - Hooks configuration to use
|
|
55
|
+
*/
|
|
56
|
+
export declare function set_hooks(hooks: import('./types.js').LLMHooks): void;
|
|
57
|
+
/**
|
|
58
|
+
* Initialize the LLM API with the given configuration
|
|
59
|
+
* Creates/connects to the database and prepares the client for use
|
|
60
|
+
*
|
|
61
|
+
* @param config - Configuration options for the LLM API (all fields optional)
|
|
62
|
+
* @returns Initialized LLM API client
|
|
63
|
+
*
|
|
64
|
+
* @example
|
|
65
|
+
* ```typescript
|
|
66
|
+
* // Minimal initialization (uses defaults)
|
|
67
|
+
* const api = await initialize_llm_api({});
|
|
68
|
+
*
|
|
69
|
+
* // With custom logger
|
|
70
|
+
* const api = await initialize_llm_api({ logger: myLogger });
|
|
71
|
+
*
|
|
72
|
+
* // With custom database path
|
|
73
|
+
* const api = await initialize_llm_api({ sqlite_path: '~/data/prompts.db' });
|
|
74
|
+
* ```
|
|
75
|
+
*/
|
|
76
|
+
export declare function initialize_llm_api(config?: LLMApiConfig): Promise<LLMApiClient>;
|
|
77
|
+
/**
|
|
78
|
+
* Check if database has been initialized (either auto or manual)
|
|
79
|
+
* @returns true if database is ready for use
|
|
80
|
+
*/
|
|
81
|
+
export declare function is_database_ready(): boolean;
|
|
82
|
+
/**
|
|
83
|
+
* Wait for auto-initialization to complete
|
|
84
|
+
* Useful if you need to ensure database is ready before operations
|
|
85
|
+
*/
|
|
86
|
+
export declare function ensure_database_ready(): Promise<boolean>;
|
|
87
|
+
/**
|
|
88
|
+
* Text input → Text output
|
|
89
|
+
* Standard text generation using LLM
|
|
90
|
+
*
|
|
91
|
+
* @param params - Text input parameters
|
|
92
|
+
* @param llm - Optional LLM provider name (uses primary LLM if not specified). Use LLM_PROVIDERS constants for type safety.
|
|
93
|
+
* @returns LLM response with generated text
|
|
94
|
+
*
|
|
95
|
+
* @example
|
|
96
|
+
* ```typescript
|
|
97
|
+
* import { hazo_llm_text_text, LLM_PROVIDERS } from 'hazo_llm_api/server';
|
|
98
|
+
*
|
|
99
|
+
* const response = await hazo_llm_text_text({ prompt: 'Hello' }, LLM_PROVIDERS.GEMINI);
|
|
100
|
+
* ```
|
|
101
|
+
*/
|
|
102
|
+
export declare function hazo_llm_text_text(params: TextTextParams, llm?: ProviderName): Promise<LLMResponse>;
|
|
103
|
+
/**
|
|
104
|
+
* Image input → Text output
|
|
105
|
+
* Analyze an image and get text description
|
|
106
|
+
*
|
|
107
|
+
* @param params - Image input parameters
|
|
108
|
+
* @param llm - Optional LLM provider name (uses primary LLM if not specified). Use LLM_PROVIDERS constants for type safety.
|
|
109
|
+
* @returns LLM response with text description
|
|
110
|
+
*/
|
|
111
|
+
export declare function hazo_llm_image_text(params: ImageTextParams, llm?: ProviderName): Promise<LLMResponse>;
|
|
112
|
+
/**
|
|
113
|
+
* Text input → Image output
|
|
114
|
+
* Generate an image from text description
|
|
115
|
+
*
|
|
116
|
+
* @param params - Text input parameters for image generation
|
|
117
|
+
* @param llm - Optional LLM provider name (uses primary LLM if not specified). Use LLM_PROVIDERS constants for type safety.
|
|
118
|
+
* @returns LLM response with generated image
|
|
119
|
+
*/
|
|
120
|
+
export declare function hazo_llm_text_image(params: TextImageParams, llm?: ProviderName): Promise<LLMResponse>;
|
|
121
|
+
/**
|
|
122
|
+
* Image input → Image output
|
|
123
|
+
* Transform/edit an image based on instructions
|
|
124
|
+
*
|
|
125
|
+
* @param params - Image input parameters with transformation instructions
|
|
126
|
+
* @param llm - Optional LLM provider name (uses primary LLM if not specified). Use LLM_PROVIDERS constants for type safety.
|
|
127
|
+
* @returns LLM response with transformed image
|
|
128
|
+
*/
|
|
129
|
+
export declare function hazo_llm_image_image(params: ImageImageParams, llm?: ProviderName): Promise<LLMResponse>;
|
|
130
|
+
/**
|
|
131
|
+
* Text → Image → Text (Chained)
|
|
132
|
+
* Generate an image from prompt_image, then analyze it with prompt_text
|
|
133
|
+
*
|
|
134
|
+
* @param params - Parameters with two prompts: one for image gen, one for analysis
|
|
135
|
+
* @param llm - Optional LLM provider name (uses primary LLM if not specified). Use LLM_PROVIDERS constants for type safety.
|
|
136
|
+
* @returns LLM response with generated image and analysis text
|
|
137
|
+
*/
|
|
138
|
+
export declare function hazo_llm_text_image_text(params: TextImageTextParams, llm?: ProviderName): Promise<LLMResponse>;
|
|
139
|
+
/**
|
|
140
|
+
* Images → Image → Text (Chained)
|
|
141
|
+
* Chain multiple image transformations, then describe the final result
|
|
142
|
+
*
|
|
143
|
+
* @param params - Parameters with images, prompts, and description prompt
|
|
144
|
+
* @param llm - Optional LLM provider name (uses primary LLM if not specified). Use LLM_PROVIDERS constants for type safety.
|
|
145
|
+
* @returns LLM response with final image and description text
|
|
146
|
+
*/
|
|
147
|
+
export declare function hazo_llm_image_image_text(params: ImageImageTextParams, llm?: ProviderName): Promise<LLMResponse>;
|
|
148
|
+
/**
|
|
149
|
+
* Execute a chain of prompts with dynamic value resolution
|
|
150
|
+
* Each call can reference values from previous call results
|
|
151
|
+
*
|
|
152
|
+
* @param params - Chain parameters including call definitions
|
|
153
|
+
* @param llm - Optional LLM provider name (uses primary LLM if not specified). Use LLM_PROVIDERS constants for type safety.
|
|
154
|
+
* @returns Chain response with merged results and individual call outcomes
|
|
155
|
+
*
|
|
156
|
+
* @example
|
|
157
|
+
* ```typescript
|
|
158
|
+
* import { hazo_llm_prompt_chain } from 'hazo_llm_api/server';
|
|
159
|
+
*
|
|
160
|
+
* const response = await hazo_llm_prompt_chain({
|
|
161
|
+
* chain_calls: [
|
|
162
|
+
* {
|
|
163
|
+
* prompt_area: { match_type: 'direct', value: 'document' },
|
|
164
|
+
* prompt_key: { match_type: 'direct', value: 'initial_read' }
|
|
165
|
+
* },
|
|
166
|
+
* {
|
|
167
|
+
* prompt_area: { match_type: 'direct', value: 'document' },
|
|
168
|
+
* prompt_key: { match_type: 'direct', value: 'process_results' },
|
|
169
|
+
* local_1: {
|
|
170
|
+
* match_type: 'call_chain',
|
|
171
|
+
* value: 'call[0].tax_category',
|
|
172
|
+
* variable_name: 'previous_category'
|
|
173
|
+
* }
|
|
174
|
+
* }
|
|
175
|
+
* ]
|
|
176
|
+
* });
|
|
177
|
+
* ```
|
|
178
|
+
*/
|
|
179
|
+
export declare function hazo_llm_prompt_chain(params: PromptChainParams, llm?: ProviderName): Promise<PromptChainResponse>;
|
|
180
|
+
/**
|
|
181
|
+
* Text input → Text output (Streaming)
|
|
182
|
+
* Generate text from a prompt with streaming response
|
|
183
|
+
*
|
|
184
|
+
* @param params - Text input parameters
|
|
185
|
+
* @param llm - Optional LLM provider name (uses primary LLM if not specified)
|
|
186
|
+
* @returns Async generator yielding text chunks
|
|
187
|
+
*
|
|
188
|
+
* @example
|
|
189
|
+
* ```typescript
|
|
190
|
+
* const stream = await hazo_llm_text_text_stream({ prompt: 'Tell me a story' });
|
|
191
|
+
*
|
|
192
|
+
* for await (const chunk of stream) {
|
|
193
|
+
* if (chunk.error) {
|
|
194
|
+
* console.error(chunk.error);
|
|
195
|
+
* break;
|
|
196
|
+
* }
|
|
197
|
+
* process.stdout.write(chunk.text);
|
|
198
|
+
* if (chunk.done) break;
|
|
199
|
+
* }
|
|
200
|
+
* ```
|
|
201
|
+
*/
|
|
202
|
+
export declare function hazo_llm_text_text_stream(params: TextTextParams, llm?: ProviderName): LLMStreamResponse;
|
|
203
|
+
/**
|
|
204
|
+
* Image input → Text output (Streaming)
|
|
205
|
+
* Analyze an image and stream text description
|
|
206
|
+
*
|
|
207
|
+
* @param params - Image input parameters
|
|
208
|
+
* @param llm - Optional LLM provider name (uses primary LLM if not specified)
|
|
209
|
+
* @returns Async generator yielding text chunks
|
|
210
|
+
*/
|
|
211
|
+
export declare function hazo_llm_image_text_stream(params: ImageTextParams, llm?: ProviderName): LLMStreamResponse;
|
|
212
|
+
/**
|
|
213
|
+
* Check if the LLM API has been initialized
|
|
214
|
+
* @returns true if initialized
|
|
215
|
+
*/
|
|
216
|
+
export declare function is_initialized(): boolean;
|
|
217
|
+
/**
|
|
218
|
+
* Get the current configuration (without sensitive logger)
|
|
219
|
+
* @returns Current configuration or null if not initialized
|
|
220
|
+
*/
|
|
221
|
+
export declare function get_current_config(): Omit<LLMApiConfig, 'logger'> | null;
|
|
222
|
+
export type { LLMApiConfig, LLMApiClient, LLMResponse, TextTextParams, ImageTextParams, TextImageParams, ImageImageParams, TextImageTextParams, ImageImageTextParams, ChainImage, Logger, PromptVariable, PromptVariables, Base64Data, PromptTextMode, PromptRecord, CallLLMParams, GeminiGenerationConfig, GeminiApiGenerationConfig, ChainMatchType, ChainFieldDefinition, ChainCallDefinition, ChainCallResult, PromptChainParams, PromptChainResponse, } from './types.js';
|
|
223
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/llm_api/index.ts"],"names":[],"mappings":"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"}
|