UNPKG

@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
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; }