@promptbook/remote-server
Version:
It's time for a paradigm shift. The future of software in plain English, French or Latin
41 lines (40 loc) • 1.67 kB
TypeScript
import type { string_user_id } from '../../../types/typeAliases';
import { MultipleLlmExecutionTools } from '../../multiple/MultipleLlmExecutionTools';
import type { LlmToolsConfiguration } from './LlmToolsConfiguration';
/**
* Options for `$provideLlmToolsFromEnv`
*
* @private internal type for `$provideLlmToolsFromEnv` and `$provideLlmToolsForTestingAndScriptsAndPlayground`
*/
export type CreateLlmToolsFromConfigurationOptions = {
/**
* This will will be passed to the created `LlmExecutionTools`
*
* @default false
*/
isVerbose?: boolean;
/**
* Identifier of the end user
*
* Note: This is passed to the LLM tools providers to identify misuse
*/
readonly userId?: string_user_id;
};
/**
* @@@
*
* Note: This function is not cached, every call creates new instance of `MultipleLlmExecutionTools`
*
* @returns @@@
* @public exported from `@promptbook/core`
*/
export declare function createLlmToolsFromConfiguration(configuration: LlmToolsConfiguration, options?: CreateLlmToolsFromConfigurationOptions): MultipleLlmExecutionTools;
/**
* TODO: [🎌] Together with `createLlmToolsFromConfiguration` + 'EXECUTION_TOOLS_CLASSES' gets to `@promptbook/core` ALL model providers, make this more efficient
* TODO: [🧠][🎌] Dynamically install required providers
* TODO: @@@ write discussion about this - wizzard
* TODO: [🧠][🍛] Which name is better `createLlmToolsFromConfig` or `createLlmToolsFromConfiguration`?
* TODO: [🧠] Is there some meaningfull way how to test this util
* TODO: This should be maybe not under `_common` but under `utils`
* TODO: [®] DRY Register logic
*/