@promptbook/remote-server
Version:
Promptbook: Create persistent AI agents that turn your company's scattered knowledge into action
44 lines (43 loc) • 1.97 kB
TypeScript
import type { CallChatModelStreamOptions } from '../../execution/LlmExecutionTools';
import type { ChatPromptResult, CommonPromptResult } from '../../execution/PromptResult';
import type { Prompt } from '../../types/Prompt';
import type { string_model_name } from '../../types/string_model_name';
import type { string_title } from '../../types/string_title';
import { OpenAiAssistantExecutionTools } from '../openai/OpenAiAssistantExecutionTools';
import type { AgentLlmExecutionToolsPromptPreparer } from './AgentLlmExecutionToolsPromptPreparer';
/**
* Handles deprecated OpenAI Assistant-backed executions for `AgentLlmExecutionTools`.
*
* @private internal utility of `AgentLlmExecutionTools`
*/
export declare class AgentLlmExecutionToolsOpenAiAssistantRunner {
private readonly context;
/**
* Cache of OpenAI assistants to avoid creating duplicates.
*/
private static assistantCache;
constructor(context: {
readonly getTitle: () => string_title;
readonly getModelName: () => string_model_name;
readonly isVerbose?: boolean;
readonly assistantPreparationMode?: 'internal' | 'external';
});
/**
* Runs one prepared prompt through the deprecated OpenAI Assistant backend.
*/
callChatModelStream(options: {
readonly llmTools: OpenAiAssistantExecutionTools;
readonly originalPrompt: Prompt;
readonly preparedChatPrompt: Awaited<ReturnType<AgentLlmExecutionToolsPromptPreparer['prepareChatPrompt']>>;
readonly onProgress: (chunk: ChatPromptResult) => void;
readonly streamOptions?: CallChatModelStreamOptions;
}): Promise<CommonPromptResult>;
/**
* Returns an assistant instance matching the current agent requirements, reusing caches when possible.
*/
private getOrPrepareOpenAiAssistant;
/**
* Stores one assistant id in the shared assistant cache for this agent title.
*/
private storeAssistantCache;
}