@promptbook/browser 0.112.0-71 → 0.112.0-73
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/esm/index.es.js +5598 -4524
- package/esm/index.es.js.map +1 -1
- package/esm/src/book-3.0/Book.d.ts +6 -0
- package/esm/src/book-components/Chat/save/_common/chatExportRendering.d.ts +28 -0
- package/esm/src/book-components/Chat/save/_common/getPromptbookExportBranding.d.ts +18 -0
- package/esm/src/book-components/Chat/save/html/htmlSaveFormatDefinition.d.ts +1 -1
- package/esm/src/book-components/Chat/save/html/htmlSaveFormatDefinition.test.d.ts +1 -0
- package/esm/src/book-components/Chat/save/index.d.ts +4 -4
- package/esm/src/book-components/Chat/save/markdown/mdSaveFormatDefinition.d.ts +1 -1
- package/esm/src/book-components/Chat/save/markdown/mdSaveFormatDefinition.test.d.ts +1 -0
- package/esm/src/book-components/Chat/save/pdf/buildChatPdf.d.ts +3 -2
- package/esm/src/book-components/Chat/save/pdf/pdfSaveFormatDefinition.d.ts +2 -2
- package/esm/src/book-components/Chat/save/pdf/pdfSaveFormatDefinition.test.d.ts +1 -0
- package/esm/src/book-components/Chat/save/react/reactSaveFormatDefinition.test.d.ts +1 -0
- package/esm/src/book-components/Chat/utils/getToolCallChipletInfo.test.d.ts +1 -0
- package/esm/src/book-components/Chat/utils/renderMarkdown.d.ts +26 -0
- package/esm/src/cli/cli-commands/agent/agentRunCliOptions.d.ts +14 -2
- package/esm/src/cli/cli-commands/agent/initializeAgentRunnerCommand.d.ts +2 -0
- package/esm/src/cli/cli-commands/common/handleActionErrors.d.ts +9 -4
- package/esm/src/cli/cli-commands/run/prepareRunCommandResources.d.ts +20 -0
- package/esm/src/cli/cli-commands/run/resolveRunInputParameters.d.ts +12 -0
- package/esm/src/cli/cli-commands/run/runCommandAction.d.ts +21 -0
- package/esm/src/cli/cli-commands/run/runPipelineExecution.d.ts +14 -0
- package/esm/src/cli/cli-commands/run.d.ts +1 -1
- package/esm/src/conversion/parsePipeline/applyPipelineHead.d.ts +8 -0
- package/esm/src/conversion/parsePipeline/createInitialPipelineJson.d.ts +8 -0
- package/esm/src/conversion/parsePipeline/createUniqueSectionNameResolver.d.ts +14 -0
- package/esm/src/conversion/parsePipeline/defineParameter.d.ts +8 -0
- package/esm/src/conversion/parsePipeline/extractPipelineDescription.d.ts +6 -0
- package/esm/src/conversion/parsePipeline/finalizeParsedPipeline.d.ts +8 -0
- package/esm/src/conversion/parsePipeline/getPipelineIdentification.d.ts +7 -0
- package/esm/src/conversion/parsePipeline/parsePreparedPipelineSections.d.ts +18 -0
- package/esm/src/conversion/parsePipeline/preparePipelineString.d.ts +8 -0
- package/esm/src/conversion/parsePipeline/processPipelineSection.d.ts +9 -0
- package/esm/src/conversion/pipelineJsonToString/appendMarkdownBlock.d.ts +7 -0
- package/esm/src/conversion/pipelineJsonToString/createPipelineCommands.d.ts +7 -0
- package/esm/src/conversion/pipelineJsonToString/createPipelineIntroduction.d.ts +8 -0
- package/esm/src/conversion/pipelineJsonToString/createTaskSerialization.d.ts +23 -0
- package/esm/src/conversion/pipelineJsonToString/stringifyCommands.d.ts +7 -0
- package/esm/src/conversion/pipelineJsonToString/stringifyTask.d.ts +8 -0
- package/esm/src/conversion/pipelineJsonToString.test.d.ts +1 -0
- package/esm/src/execution/createPipelineExecutor/executeSingleAttempt.d.ts +31 -0
- package/esm/src/execution/createPipelineExecutor/handleAttemptFailure.d.ts +40 -0
- package/esm/src/execution/createPipelineExecutor/reportPromptExecution.d.ts +34 -0
- package/esm/src/execution/resolveTaskTldr.d.ts +32 -0
- package/esm/src/execution/resolveTaskTldr.test.d.ts +1 -0
- package/esm/src/llm-providers/agent/AgentLlmExecutionTools.d.ts +22 -63
- package/esm/src/llm-providers/agent/AgentLlmExecutionToolsAgentKitRunner.d.ts +51 -0
- package/esm/src/llm-providers/agent/AgentLlmExecutionToolsOpenAiAssistantRunner.d.ts +43 -0
- package/esm/src/llm-providers/agent/AgentLlmExecutionToolsPromptPreparer.d.ts +41 -0
- package/esm/src/llm-providers/agent/emitAgentLlmExecutionToolsAssistantPreparationProgress.d.ts +26 -0
- package/esm/src/llm-providers/openai/OpenAiAgentKitExecutionTools.d.ts +16 -93
- package/esm/src/llm-providers/openai/OpenAiAgentKitExecutionToolsInputBuilder.d.ts +41 -0
- package/esm/src/llm-providers/openai/OpenAiAgentKitExecutionToolsOutputTypeMapper.d.ts +56 -0
- package/esm/src/llm-providers/openai/OpenAiAgentKitExecutionToolsToolBuilder.d.ts +99 -0
- package/esm/src/llm-providers/openai/OpenAiAssistantExecutionTools.d.ts +24 -120
- package/esm/src/llm-providers/openai/OpenAiAssistantExecutionToolsProgressReporter.d.ts +62 -0
- package/esm/src/llm-providers/openai/OpenAiAssistantExecutionToolsPromptBuilder.d.ts +29 -0
- package/esm/src/llm-providers/openai/OpenAiAssistantExecutionToolsStreamRunner.d.ts +63 -0
- package/esm/src/llm-providers/openai/OpenAiAssistantExecutionToolsToolRunner.d.ts +89 -0
- package/esm/src/llm-providers/openai/OpenAiCompatibleExecutionTools.d.ts +9 -28
- package/esm/src/llm-providers/openai/OpenAiCompatibleModelCatalog.d.ts +31 -0
- package/esm/src/llm-providers/openai/OpenAiCompatibleNonChatPromptCaller.d.ts +57 -0
- package/esm/src/llm-providers/openai/OpenAiCompatibleRequestManager.d.ts +29 -0
- package/esm/src/llm-providers/openai/OpenAiVectorStoreFileBatchHandler.d.ts +51 -0
- package/esm/src/llm-providers/openai/OpenAiVectorStoreFileBatchPoller.d.ts +75 -0
- package/esm/src/llm-providers/openai/OpenAiVectorStoreHandler.d.ts +1 -98
- package/esm/src/llm-providers/openai/OpenAiVectorStoreKnowledgeSourcePreparer.d.ts +44 -0
- package/esm/src/llm-providers/openai/utils/OpenAiCompatibleChatProgressReporter.d.ts +86 -0
- package/esm/src/llm-providers/openai/utils/OpenAiCompatibleChatPromptBuilder.d.ts +57 -0
- package/esm/src/llm-providers/openai/utils/OpenAiCompatibleChatToolCaller.d.ts +57 -0
- package/esm/src/remote-server/startRemoteServer/RemoteServerRuntime.d.ts +14 -0
- package/esm/src/remote-server/startRemoteServer/SocketResponse.d.ts +9 -0
- package/esm/src/remote-server/startRemoteServer/StartRemoteServerConfiguration.d.ts +18 -0
- package/esm/src/remote-server/startRemoteServer/createRemoteServerExpressApp.d.ts +7 -0
- package/esm/src/remote-server/startRemoteServer/createRemoteServerHandle.d.ts +11 -0
- package/esm/src/remote-server/startRemoteServer/createSocketServer.d.ts +9 -0
- package/esm/src/remote-server/startRemoteServer/getExecutionToolsFromIdentification.d.ts +12 -0
- package/esm/src/remote-server/startRemoteServer/registerBookRoutes.d.ts +7 -0
- package/esm/src/remote-server/startRemoteServer/registerExecutionRoutes.d.ts +7 -0
- package/esm/src/remote-server/startRemoteServer/registerListModelsSocketHandler.d.ts +8 -0
- package/esm/src/remote-server/startRemoteServer/registerLoginRoute.d.ts +7 -0
- package/esm/src/remote-server/startRemoteServer/registerNotFoundRoute.d.ts +7 -0
- package/esm/src/remote-server/startRemoteServer/registerOpenAiCompatibleChatCompletionsRoute.d.ts +7 -0
- package/esm/src/remote-server/startRemoteServer/registerOpenApiRoutes.d.ts +7 -0
- package/esm/src/remote-server/startRemoteServer/registerPreparePipelineSocketHandler.d.ts +8 -0
- package/esm/src/remote-server/startRemoteServer/registerPromptSocketHandler.d.ts +8 -0
- package/esm/src/remote-server/startRemoteServer/registerRemoteServerHttpRoutes.d.ts +7 -0
- package/esm/src/remote-server/startRemoteServer/registerRemoteServerSocketHandlers.d.ts +8 -0
- package/esm/src/remote-server/startRemoteServer/registerServerIndexRoute.d.ts +7 -0
- package/esm/src/remote-server/startRemoteServer/resolveStartRemoteServerConfiguration.d.ts +8 -0
- package/esm/src/remote-server/startRemoteServer/respondToSocketRequest.d.ts +8 -0
- package/esm/src/remote-server/startRemoteServer/startListening.d.ts +9 -0
- package/esm/src/scrapers/_common/utils/makeKnowledgeSourceHandler.d.ts +14 -1
- package/esm/src/utils/serialization/serializeToPromptbookJavascript.d.ts +2 -0
- package/esm/src/utils/serialization/serializeToPromptbookJavascript.test.d.ts +1 -0
- package/esm/src/version.d.ts +1 -1
- package/package.json +2 -2
- package/umd/index.umd.js +5601 -4527
- package/umd/index.umd.js.map +1 -1
- package/umd/src/book-3.0/Book.d.ts +6 -0
- package/umd/src/book-components/Chat/save/_common/chatExportRendering.d.ts +28 -0
- package/umd/src/book-components/Chat/save/_common/getPromptbookExportBranding.d.ts +18 -0
- package/umd/src/book-components/Chat/save/html/htmlSaveFormatDefinition.d.ts +1 -1
- package/umd/src/book-components/Chat/save/html/htmlSaveFormatDefinition.test.d.ts +1 -0
- package/umd/src/book-components/Chat/save/index.d.ts +4 -4
- package/umd/src/book-components/Chat/save/markdown/mdSaveFormatDefinition.d.ts +1 -1
- package/umd/src/book-components/Chat/save/markdown/mdSaveFormatDefinition.test.d.ts +1 -0
- package/umd/src/book-components/Chat/save/pdf/buildChatPdf.d.ts +3 -2
- package/umd/src/book-components/Chat/save/pdf/pdfSaveFormatDefinition.d.ts +2 -2
- package/umd/src/book-components/Chat/save/pdf/pdfSaveFormatDefinition.test.d.ts +1 -0
- package/umd/src/book-components/Chat/save/react/reactSaveFormatDefinition.test.d.ts +1 -0
- package/umd/src/book-components/Chat/utils/getToolCallChipletInfo.test.d.ts +1 -0
- package/umd/src/book-components/Chat/utils/renderMarkdown.d.ts +26 -0
- package/umd/src/cli/cli-commands/agent/agentRunCliOptions.d.ts +14 -2
- package/umd/src/cli/cli-commands/agent/initializeAgentRunnerCommand.d.ts +2 -0
- package/umd/src/cli/cli-commands/common/handleActionErrors.d.ts +9 -4
- package/umd/src/cli/cli-commands/run/prepareRunCommandResources.d.ts +20 -0
- package/umd/src/cli/cli-commands/run/resolveRunInputParameters.d.ts +12 -0
- package/umd/src/cli/cli-commands/run/runCommandAction.d.ts +21 -0
- package/umd/src/cli/cli-commands/run/runPipelineExecution.d.ts +14 -0
- package/umd/src/cli/cli-commands/run.d.ts +1 -1
- package/umd/src/conversion/parsePipeline/applyPipelineHead.d.ts +8 -0
- package/umd/src/conversion/parsePipeline/createInitialPipelineJson.d.ts +8 -0
- package/umd/src/conversion/parsePipeline/createUniqueSectionNameResolver.d.ts +14 -0
- package/umd/src/conversion/parsePipeline/defineParameter.d.ts +8 -0
- package/umd/src/conversion/parsePipeline/extractPipelineDescription.d.ts +6 -0
- package/umd/src/conversion/parsePipeline/finalizeParsedPipeline.d.ts +8 -0
- package/umd/src/conversion/parsePipeline/getPipelineIdentification.d.ts +7 -0
- package/umd/src/conversion/parsePipeline/parsePreparedPipelineSections.d.ts +18 -0
- package/umd/src/conversion/parsePipeline/preparePipelineString.d.ts +8 -0
- package/umd/src/conversion/parsePipeline/processPipelineSection.d.ts +9 -0
- package/umd/src/conversion/pipelineJsonToString/appendMarkdownBlock.d.ts +7 -0
- package/umd/src/conversion/pipelineJsonToString/createPipelineCommands.d.ts +7 -0
- package/umd/src/conversion/pipelineJsonToString/createPipelineIntroduction.d.ts +8 -0
- package/umd/src/conversion/pipelineJsonToString/createTaskSerialization.d.ts +23 -0
- package/umd/src/conversion/pipelineJsonToString/stringifyCommands.d.ts +7 -0
- package/umd/src/conversion/pipelineJsonToString/stringifyTask.d.ts +8 -0
- package/umd/src/conversion/pipelineJsonToString.test.d.ts +1 -0
- package/umd/src/execution/createPipelineExecutor/executeSingleAttempt.d.ts +31 -0
- package/umd/src/execution/createPipelineExecutor/handleAttemptFailure.d.ts +40 -0
- package/umd/src/execution/createPipelineExecutor/reportPromptExecution.d.ts +34 -0
- package/umd/src/execution/resolveTaskTldr.d.ts +32 -0
- package/umd/src/execution/resolveTaskTldr.test.d.ts +1 -0
- package/umd/src/llm-providers/agent/AgentLlmExecutionTools.d.ts +22 -63
- package/umd/src/llm-providers/agent/AgentLlmExecutionToolsAgentKitRunner.d.ts +51 -0
- package/umd/src/llm-providers/agent/AgentLlmExecutionToolsOpenAiAssistantRunner.d.ts +43 -0
- package/umd/src/llm-providers/agent/AgentLlmExecutionToolsPromptPreparer.d.ts +41 -0
- package/umd/src/llm-providers/agent/emitAgentLlmExecutionToolsAssistantPreparationProgress.d.ts +26 -0
- package/umd/src/llm-providers/openai/OpenAiAgentKitExecutionTools.d.ts +16 -93
- package/umd/src/llm-providers/openai/OpenAiAgentKitExecutionToolsInputBuilder.d.ts +41 -0
- package/umd/src/llm-providers/openai/OpenAiAgentKitExecutionToolsOutputTypeMapper.d.ts +56 -0
- package/umd/src/llm-providers/openai/OpenAiAgentKitExecutionToolsToolBuilder.d.ts +99 -0
- package/umd/src/llm-providers/openai/OpenAiAssistantExecutionTools.d.ts +24 -120
- package/umd/src/llm-providers/openai/OpenAiAssistantExecutionToolsProgressReporter.d.ts +62 -0
- package/umd/src/llm-providers/openai/OpenAiAssistantExecutionToolsPromptBuilder.d.ts +29 -0
- package/umd/src/llm-providers/openai/OpenAiAssistantExecutionToolsStreamRunner.d.ts +63 -0
- package/umd/src/llm-providers/openai/OpenAiAssistantExecutionToolsToolRunner.d.ts +89 -0
- package/umd/src/llm-providers/openai/OpenAiCompatibleExecutionTools.d.ts +9 -28
- package/umd/src/llm-providers/openai/OpenAiCompatibleModelCatalog.d.ts +31 -0
- package/umd/src/llm-providers/openai/OpenAiCompatibleNonChatPromptCaller.d.ts +57 -0
- package/umd/src/llm-providers/openai/OpenAiCompatibleRequestManager.d.ts +29 -0
- package/umd/src/llm-providers/openai/OpenAiVectorStoreFileBatchHandler.d.ts +51 -0
- package/umd/src/llm-providers/openai/OpenAiVectorStoreFileBatchPoller.d.ts +75 -0
- package/umd/src/llm-providers/openai/OpenAiVectorStoreHandler.d.ts +1 -98
- package/umd/src/llm-providers/openai/OpenAiVectorStoreKnowledgeSourcePreparer.d.ts +44 -0
- package/umd/src/llm-providers/openai/utils/OpenAiCompatibleChatProgressReporter.d.ts +86 -0
- package/umd/src/llm-providers/openai/utils/OpenAiCompatibleChatPromptBuilder.d.ts +57 -0
- package/umd/src/llm-providers/openai/utils/OpenAiCompatibleChatToolCaller.d.ts +57 -0
- package/umd/src/remote-server/startRemoteServer/RemoteServerRuntime.d.ts +14 -0
- package/umd/src/remote-server/startRemoteServer/SocketResponse.d.ts +9 -0
- package/umd/src/remote-server/startRemoteServer/StartRemoteServerConfiguration.d.ts +18 -0
- package/umd/src/remote-server/startRemoteServer/createRemoteServerExpressApp.d.ts +7 -0
- package/umd/src/remote-server/startRemoteServer/createRemoteServerHandle.d.ts +11 -0
- package/umd/src/remote-server/startRemoteServer/createSocketServer.d.ts +9 -0
- package/umd/src/remote-server/startRemoteServer/getExecutionToolsFromIdentification.d.ts +12 -0
- package/umd/src/remote-server/startRemoteServer/registerBookRoutes.d.ts +7 -0
- package/umd/src/remote-server/startRemoteServer/registerExecutionRoutes.d.ts +7 -0
- package/umd/src/remote-server/startRemoteServer/registerListModelsSocketHandler.d.ts +8 -0
- package/umd/src/remote-server/startRemoteServer/registerLoginRoute.d.ts +7 -0
- package/umd/src/remote-server/startRemoteServer/registerNotFoundRoute.d.ts +7 -0
- package/umd/src/remote-server/startRemoteServer/registerOpenAiCompatibleChatCompletionsRoute.d.ts +7 -0
- package/umd/src/remote-server/startRemoteServer/registerOpenApiRoutes.d.ts +7 -0
- package/umd/src/remote-server/startRemoteServer/registerPreparePipelineSocketHandler.d.ts +8 -0
- package/umd/src/remote-server/startRemoteServer/registerPromptSocketHandler.d.ts +8 -0
- package/umd/src/remote-server/startRemoteServer/registerRemoteServerHttpRoutes.d.ts +7 -0
- package/umd/src/remote-server/startRemoteServer/registerRemoteServerSocketHandlers.d.ts +8 -0
- package/umd/src/remote-server/startRemoteServer/registerServerIndexRoute.d.ts +7 -0
- package/umd/src/remote-server/startRemoteServer/resolveStartRemoteServerConfiguration.d.ts +8 -0
- package/umd/src/remote-server/startRemoteServer/respondToSocketRequest.d.ts +8 -0
- package/umd/src/remote-server/startRemoteServer/startListening.d.ts +9 -0
- package/umd/src/scrapers/_common/utils/makeKnowledgeSourceHandler.d.ts +14 -1
- package/umd/src/utils/serialization/serializeToPromptbookJavascript.d.ts +2 -0
- package/umd/src/utils/serialization/serializeToPromptbookJavascript.test.d.ts +1 -0
- package/umd/src/version.d.ts +1 -1
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import OpenAI from 'openai';
|
|
2
|
+
import type { OpenAiCompatibleExecutionToolsNonProxiedOptions } from './OpenAiCompatibleExecutionToolsOptions';
|
|
3
|
+
/**
|
|
4
|
+
* Manages OpenAI-compatible client creation plus shared retry and rate-limit behavior.
|
|
5
|
+
*
|
|
6
|
+
* @private helper of `OpenAiCompatibleExecutionTools`
|
|
7
|
+
*/
|
|
8
|
+
export declare class OpenAiCompatibleRequestManager {
|
|
9
|
+
private readonly options;
|
|
10
|
+
private client;
|
|
11
|
+
private readonly limiter;
|
|
12
|
+
constructor(options: OpenAiCompatibleExecutionToolsNonProxiedOptions);
|
|
13
|
+
/**
|
|
14
|
+
* Returns the lazily initialized OpenAI client configured from execution-tool options.
|
|
15
|
+
*/
|
|
16
|
+
getClient(): Promise<OpenAI>;
|
|
17
|
+
/**
|
|
18
|
+
* Schedules one request through the shared limiter and retry policy.
|
|
19
|
+
*/
|
|
20
|
+
executeRateLimitedRequest<T>(requestFn: () => Promise<T>): Promise<T>;
|
|
21
|
+
/**
|
|
22
|
+
* Retries transient transport errors with exponential backoff.
|
|
23
|
+
*/
|
|
24
|
+
private makeRequestWithNetworkRetry;
|
|
25
|
+
/**
|
|
26
|
+
* Determines whether the thrown error should be retried as a transient network failure.
|
|
27
|
+
*/
|
|
28
|
+
private isRetryableNetworkError;
|
|
29
|
+
}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import type OpenAI from 'openai';
|
|
2
|
+
import type { TODO_any } from '../../utils/organization/TODO_any';
|
|
3
|
+
/**
|
|
4
|
+
* Uploads prepared knowledge-source files and starts vector-store ingestion polling.
|
|
5
|
+
*
|
|
6
|
+
* @private helper of `OpenAiVectorStoreHandler`
|
|
7
|
+
*/
|
|
8
|
+
export declare class OpenAiVectorStoreFileBatchHandler {
|
|
9
|
+
private readonly options;
|
|
10
|
+
/**
|
|
11
|
+
* Creates one vector-store file-batch handler instance.
|
|
12
|
+
*/
|
|
13
|
+
constructor(options: {
|
|
14
|
+
readonly isVerbose: boolean;
|
|
15
|
+
readonly getVectorStoresApi: (client: OpenAI) => TODO_any;
|
|
16
|
+
});
|
|
17
|
+
/**
|
|
18
|
+
* Uploads knowledge source files to the vector store and polls until processing completes.
|
|
19
|
+
*/
|
|
20
|
+
uploadKnowledgeSourceFilesToVectorStore(options: {
|
|
21
|
+
readonly client: OpenAI;
|
|
22
|
+
readonly vectorStoreId: string;
|
|
23
|
+
readonly files: ReadonlyArray<File>;
|
|
24
|
+
readonly totalBytes: number;
|
|
25
|
+
readonly maxConcurrency: number;
|
|
26
|
+
readonly pollIntervalMs: number;
|
|
27
|
+
readonly uploadTimeoutMs: number;
|
|
28
|
+
readonly shouldContinueOnVectorStoreStall: boolean;
|
|
29
|
+
readonly logLabel: string;
|
|
30
|
+
}): Promise<TODO_any | null>;
|
|
31
|
+
/**
|
|
32
|
+
* Uploads the prepared knowledge-source files with bounded concurrency.
|
|
33
|
+
*/
|
|
34
|
+
private uploadPreparedKnowledgeSourceFiles;
|
|
35
|
+
/**
|
|
36
|
+
* Reuses the shared iterator to upload one slice of knowledge-source files.
|
|
37
|
+
*/
|
|
38
|
+
private uploadPreparedKnowledgeSourceFilesWorker;
|
|
39
|
+
/**
|
|
40
|
+
* Uploads one prepared knowledge-source file to OpenAI and records detailed diagnostics.
|
|
41
|
+
*/
|
|
42
|
+
private uploadPreparedKnowledgeSourceFile;
|
|
43
|
+
/**
|
|
44
|
+
* Creates the OpenAI vector-store file batch for the uploaded knowledge-source files.
|
|
45
|
+
*/
|
|
46
|
+
private createVectorStoreFileBatch;
|
|
47
|
+
/**
|
|
48
|
+
* Logs warnings for unexpected vector-store batch metadata right after creation.
|
|
49
|
+
*/
|
|
50
|
+
private logCreatedVectorStoreFileBatchIssues;
|
|
51
|
+
}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import type OpenAI from 'openai';
|
|
2
|
+
import type { TODO_any } from '../../utils/organization/TODO_any';
|
|
3
|
+
/**
|
|
4
|
+
* Metadata for uploaded knowledge source files used for vector store diagnostics.
|
|
5
|
+
*
|
|
6
|
+
* @private internal utility of `OpenAiVectorStoreFileBatchPoller`
|
|
7
|
+
*/
|
|
8
|
+
type KnowledgeSourceUploadMetadata = {
|
|
9
|
+
readonly fileId: string;
|
|
10
|
+
readonly filename: string;
|
|
11
|
+
readonly sizeBytes?: number;
|
|
12
|
+
};
|
|
13
|
+
/**
|
|
14
|
+
* Polls one vector-store file batch until it settles.
|
|
15
|
+
*
|
|
16
|
+
* @private helper of `OpenAiVectorStoreHandler`
|
|
17
|
+
*/
|
|
18
|
+
export declare class OpenAiVectorStoreFileBatchPoller {
|
|
19
|
+
private readonly options;
|
|
20
|
+
/**
|
|
21
|
+
* Creates one vector-store file-batch poller instance.
|
|
22
|
+
*/
|
|
23
|
+
constructor(options: {
|
|
24
|
+
readonly isVerbose: boolean;
|
|
25
|
+
readonly getVectorStoresApi: (client: OpenAI) => TODO_any;
|
|
26
|
+
});
|
|
27
|
+
/**
|
|
28
|
+
* Polls the created vector-store batch until ingestion completes, fails, or times out.
|
|
29
|
+
*/
|
|
30
|
+
pollVectorStoreFileBatchUntilSettled(options: {
|
|
31
|
+
readonly client: OpenAI;
|
|
32
|
+
readonly vectorStoreId: string;
|
|
33
|
+
readonly batch: TODO_any;
|
|
34
|
+
readonly expectedBatchId: string;
|
|
35
|
+
readonly isExpectedBatchIdValid: boolean;
|
|
36
|
+
readonly uploadedFiles: ReadonlyArray<KnowledgeSourceUploadMetadata>;
|
|
37
|
+
readonly pollIntervalMs: number;
|
|
38
|
+
readonly uploadTimeoutMs: number;
|
|
39
|
+
readonly shouldContinueOnVectorStoreStall: boolean;
|
|
40
|
+
readonly logLabel: string;
|
|
41
|
+
}): Promise<TODO_any>;
|
|
42
|
+
/**
|
|
43
|
+
* Logs vector store file batch diagnostics to help trace ingestion stalls or failures.
|
|
44
|
+
*/
|
|
45
|
+
private logVectorStoreFileBatchDiagnostics;
|
|
46
|
+
/**
|
|
47
|
+
* Resolves the next batch id to poll and retrieves the freshest OpenAI batch snapshot.
|
|
48
|
+
*/
|
|
49
|
+
private retrieveVectorStoreFileBatchForPolling;
|
|
50
|
+
/**
|
|
51
|
+
* Normalizes the batch identifier returned by OpenAI and logs unusual id situations once.
|
|
52
|
+
*/
|
|
53
|
+
private resolveVectorStoreFileBatchId;
|
|
54
|
+
/**
|
|
55
|
+
* Tracks observed polling progress and emits throttled verbose status logs.
|
|
56
|
+
*/
|
|
57
|
+
private trackVectorStoreFileBatchProgress;
|
|
58
|
+
/**
|
|
59
|
+
* Emits deeper diagnostics when vector-store ingestion appears stalled for too long.
|
|
60
|
+
*/
|
|
61
|
+
private maybeLogStalledVectorStoreFileBatch;
|
|
62
|
+
/**
|
|
63
|
+
* Handles terminal vector-store batch states that do not require further polling.
|
|
64
|
+
*/
|
|
65
|
+
private handleVectorStoreFileBatchTerminalState;
|
|
66
|
+
/**
|
|
67
|
+
* Stops polling once the batch exceeds the configured timeout and handles optional cancellation.
|
|
68
|
+
*/
|
|
69
|
+
private handleVectorStoreFileBatchTimeout;
|
|
70
|
+
/**
|
|
71
|
+
* Attempts to cancel a timed-out vector-store batch and logs any unusual id situation.
|
|
72
|
+
*/
|
|
73
|
+
private cancelVectorStoreFileBatchAfterTimeout;
|
|
74
|
+
}
|
|
75
|
+
export {};
|
|
@@ -1,19 +1,9 @@
|
|
|
1
1
|
import type { ClientOptions } from 'openai';
|
|
2
|
-
import OpenAI from 'openai';
|
|
2
|
+
import type OpenAI from 'openai';
|
|
3
3
|
import type { string_title } from '../../types/string_title';
|
|
4
4
|
import type { TODO_any } from '../../utils/organization/TODO_any';
|
|
5
5
|
import type { OpenAiCompatibleExecutionToolsOptions } from './OpenAiCompatibleExecutionToolsOptions';
|
|
6
6
|
import { OpenAiExecutionTools } from './OpenAiExecutionTools';
|
|
7
|
-
/**
|
|
8
|
-
* Metadata for uploaded knowledge source files used for vector store diagnostics.
|
|
9
|
-
*
|
|
10
|
-
* @private internal utility of `OpenAiVectorStoreHandler`
|
|
11
|
-
*/
|
|
12
|
-
type KnowledgeSourceUploadMetadata = {
|
|
13
|
-
readonly fileId: string;
|
|
14
|
-
readonly filename: string;
|
|
15
|
-
readonly sizeBytes?: number;
|
|
16
|
-
};
|
|
17
7
|
/**
|
|
18
8
|
* Shared options for OpenAI vector store handling.
|
|
19
9
|
*
|
|
@@ -85,92 +75,6 @@ export declare abstract class OpenAiVectorStoreHandler extends OpenAiExecutionTo
|
|
|
85
75
|
* Returns the OpenAI vector stores API surface, supporting stable and beta SDKs.
|
|
86
76
|
*/
|
|
87
77
|
protected getVectorStoresApi(client: OpenAI): TODO_any;
|
|
88
|
-
/**
|
|
89
|
-
* Downloads a knowledge source URL into a File for vector store upload.
|
|
90
|
-
*/
|
|
91
|
-
protected downloadKnowledgeSourceFile(options: {
|
|
92
|
-
readonly source: string;
|
|
93
|
-
readonly timeoutMs: number;
|
|
94
|
-
readonly logLabel: string;
|
|
95
|
-
}): Promise<{
|
|
96
|
-
readonly file: File;
|
|
97
|
-
readonly sizeBytes: number;
|
|
98
|
-
readonly filename: string;
|
|
99
|
-
readonly elapsedMs: number;
|
|
100
|
-
} | null>;
|
|
101
|
-
/**
|
|
102
|
-
* Logs vector store file batch diagnostics to help trace ingestion stalls or failures.
|
|
103
|
-
*/
|
|
104
|
-
protected logVectorStoreFileBatchDiagnostics(options: {
|
|
105
|
-
readonly client: OpenAI;
|
|
106
|
-
readonly vectorStoreId: string;
|
|
107
|
-
readonly batchId: string;
|
|
108
|
-
readonly uploadedFiles: ReadonlyArray<KnowledgeSourceUploadMetadata>;
|
|
109
|
-
readonly logLabel: string;
|
|
110
|
-
readonly reason: 'stalled' | 'timeout' | 'failed';
|
|
111
|
-
}): Promise<void>;
|
|
112
|
-
/**
|
|
113
|
-
* Uploads knowledge source files to the vector store and polls until processing completes.
|
|
114
|
-
*/
|
|
115
|
-
protected uploadKnowledgeSourceFilesToVectorStore(options: {
|
|
116
|
-
readonly client: OpenAI;
|
|
117
|
-
readonly vectorStoreId: string;
|
|
118
|
-
readonly files: ReadonlyArray<File>;
|
|
119
|
-
readonly totalBytes: number;
|
|
120
|
-
readonly logLabel: string;
|
|
121
|
-
}): Promise<TODO_any | null>;
|
|
122
|
-
/**
|
|
123
|
-
* Uploads the prepared knowledge-source files with bounded concurrency.
|
|
124
|
-
*/
|
|
125
|
-
private uploadPreparedKnowledgeSourceFiles;
|
|
126
|
-
/**
|
|
127
|
-
* Reuses the shared iterator to upload one slice of knowledge-source files.
|
|
128
|
-
*/
|
|
129
|
-
private uploadPreparedKnowledgeSourceFilesWorker;
|
|
130
|
-
/**
|
|
131
|
-
* Uploads one prepared knowledge-source file to OpenAI and records detailed diagnostics.
|
|
132
|
-
*/
|
|
133
|
-
private uploadPreparedKnowledgeSourceFile;
|
|
134
|
-
/**
|
|
135
|
-
* Creates the OpenAI vector-store file batch for the uploaded knowledge-source files.
|
|
136
|
-
*/
|
|
137
|
-
private createVectorStoreFileBatch;
|
|
138
|
-
/**
|
|
139
|
-
* Logs warnings for unexpected vector-store batch metadata right after creation.
|
|
140
|
-
*/
|
|
141
|
-
private logCreatedVectorStoreFileBatchIssues;
|
|
142
|
-
/**
|
|
143
|
-
* Polls the created vector-store batch until ingestion completes, fails, or times out.
|
|
144
|
-
*/
|
|
145
|
-
private pollVectorStoreFileBatchUntilSettled;
|
|
146
|
-
/**
|
|
147
|
-
* Resolves the next batch id to poll and retrieves the freshest OpenAI batch snapshot.
|
|
148
|
-
*/
|
|
149
|
-
private retrieveVectorStoreFileBatchForPolling;
|
|
150
|
-
/**
|
|
151
|
-
* Normalizes the batch identifier returned by OpenAI and logs unusual id situations once.
|
|
152
|
-
*/
|
|
153
|
-
private resolveVectorStoreFileBatchId;
|
|
154
|
-
/**
|
|
155
|
-
* Tracks observed polling progress and emits throttled verbose status logs.
|
|
156
|
-
*/
|
|
157
|
-
private trackVectorStoreFileBatchProgress;
|
|
158
|
-
/**
|
|
159
|
-
* Emits deeper diagnostics when vector-store ingestion appears stalled for too long.
|
|
160
|
-
*/
|
|
161
|
-
private maybeLogStalledVectorStoreFileBatch;
|
|
162
|
-
/**
|
|
163
|
-
* Handles terminal vector-store batch states that do not require further polling.
|
|
164
|
-
*/
|
|
165
|
-
private handleVectorStoreFileBatchTerminalState;
|
|
166
|
-
/**
|
|
167
|
-
* Stops polling once the batch exceeds the configured timeout and handles optional cancellation.
|
|
168
|
-
*/
|
|
169
|
-
private handleVectorStoreFileBatchTimeout;
|
|
170
|
-
/**
|
|
171
|
-
* Attempts to cancel a timed-out vector-store batch and logs any unusual id situation.
|
|
172
|
-
*/
|
|
173
|
-
private cancelVectorStoreFileBatchAfterTimeout;
|
|
174
78
|
/**
|
|
175
79
|
* Creates a vector store and uploads knowledge sources, returning its ID.
|
|
176
80
|
*/
|
|
@@ -186,4 +90,3 @@ export declare abstract class OpenAiVectorStoreHandler extends OpenAiExecutionTo
|
|
|
186
90
|
readonly totalBytes: number;
|
|
187
91
|
}>;
|
|
188
92
|
}
|
|
189
|
-
export {};
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Prepared knowledge-source files together with skipped-source bookkeeping.
|
|
3
|
+
*
|
|
4
|
+
* @private internal utility of `OpenAiVectorStoreKnowledgeSourcePreparer`
|
|
5
|
+
*/
|
|
6
|
+
type PreparedKnowledgeSourceFiles = {
|
|
7
|
+
readonly files: File[];
|
|
8
|
+
readonly skippedSources: Array<{
|
|
9
|
+
source: string;
|
|
10
|
+
reason: string;
|
|
11
|
+
}>;
|
|
12
|
+
readonly totalBytes: number;
|
|
13
|
+
};
|
|
14
|
+
/**
|
|
15
|
+
* Prepares vector-store knowledge sources for upload.
|
|
16
|
+
*
|
|
17
|
+
* @private helper of `OpenAiVectorStoreHandler`
|
|
18
|
+
*/
|
|
19
|
+
export declare class OpenAiVectorStoreKnowledgeSourcePreparer {
|
|
20
|
+
private readonly options;
|
|
21
|
+
/**
|
|
22
|
+
* Creates one knowledge-source preparer instance.
|
|
23
|
+
*/
|
|
24
|
+
constructor(options: {
|
|
25
|
+
readonly isVerbose: boolean;
|
|
26
|
+
});
|
|
27
|
+
/**
|
|
28
|
+
* Resolves supported knowledge sources into uploadable `File` objects.
|
|
29
|
+
*/
|
|
30
|
+
prepareKnowledgeSourceFiles(options: {
|
|
31
|
+
readonly knowledgeSources: ReadonlyArray<string>;
|
|
32
|
+
readonly downloadTimeoutMs: number;
|
|
33
|
+
readonly logLabel: string;
|
|
34
|
+
}): Promise<PreparedKnowledgeSourceFiles>;
|
|
35
|
+
/**
|
|
36
|
+
* Converts one knowledge source into a `File` or a skip reason.
|
|
37
|
+
*/
|
|
38
|
+
private prepareKnowledgeSourceFile;
|
|
39
|
+
/**
|
|
40
|
+
* Downloads one knowledge source URL into a `File`.
|
|
41
|
+
*/
|
|
42
|
+
private downloadKnowledgeSourceFile;
|
|
43
|
+
}
|
|
44
|
+
export {};
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import type OpenAI from 'openai';
|
|
2
|
+
import type { ToolCallProgressUpdate } from '../../../commitments/_common/toolRuntimeContext';
|
|
3
|
+
import type { serializeError } from '../../../errors/utils/serializeError';
|
|
4
|
+
import type { ChatPromptResult } from '../../../execution/PromptResult';
|
|
5
|
+
import type { Usage } from '../../../execution/Usage';
|
|
6
|
+
import type { string_model_name } from '../../../types/string_model_name';
|
|
7
|
+
import type { string_date_iso8601 } from '../../../types/string_token';
|
|
8
|
+
import type { TODO_any } from '../../../utils/organization/TODO_any';
|
|
9
|
+
/**
|
|
10
|
+
* Type describing streamed tool call.
|
|
11
|
+
*/
|
|
12
|
+
type StreamedToolCall = NonNullable<ChatPromptResult['toolCalls']>[number];
|
|
13
|
+
/**
|
|
14
|
+
* Builds incremental chat progress updates, tool-call snapshots, and the final prompt result.
|
|
15
|
+
*
|
|
16
|
+
* @private helper of `callOpenAiCompatibleChatModel`
|
|
17
|
+
*/
|
|
18
|
+
export declare class OpenAiCompatibleChatProgressReporter {
|
|
19
|
+
/**
|
|
20
|
+
* Creates an empty usage accumulator for multi-turn chat requests.
|
|
21
|
+
*/
|
|
22
|
+
createEmptyUsage(): Usage;
|
|
23
|
+
/**
|
|
24
|
+
* Creates the initial pending snapshot for one chat tool call.
|
|
25
|
+
*/
|
|
26
|
+
createPendingToolCall(options: {
|
|
27
|
+
readonly toolCall: OpenAI.Chat.Completions.ChatCompletionMessageToolCall;
|
|
28
|
+
readonly functionName: string;
|
|
29
|
+
readonly functionArguments: TODO_any;
|
|
30
|
+
readonly calledAt: string_date_iso8601;
|
|
31
|
+
}): StreamedToolCall;
|
|
32
|
+
/**
|
|
33
|
+
* Appends one incremental progress update to the currently tracked tool-call snapshot.
|
|
34
|
+
*/
|
|
35
|
+
applyToolCallProgressUpdate(toolCall: StreamedToolCall, update: ToolCallProgressUpdate): StreamedToolCall;
|
|
36
|
+
/**
|
|
37
|
+
* Finalizes one chat tool-call snapshot after execution ends.
|
|
38
|
+
*/
|
|
39
|
+
createCompletedToolCall(options: {
|
|
40
|
+
readonly toolCall: OpenAI.Chat.Completions.ChatCompletionMessageToolCall;
|
|
41
|
+
readonly functionName: string;
|
|
42
|
+
readonly calledAt: string_date_iso8601;
|
|
43
|
+
readonly currentToolCallSnapshot: StreamedToolCall;
|
|
44
|
+
readonly toolResult: TODO_any;
|
|
45
|
+
readonly errors: Array<ReturnType<typeof serializeError>> | undefined;
|
|
46
|
+
}): StreamedToolCall;
|
|
47
|
+
/**
|
|
48
|
+
* Emits one chat progress chunk with shared timing, request metadata, and tool-call snapshots.
|
|
49
|
+
*/
|
|
50
|
+
emitProgress(options: {
|
|
51
|
+
readonly start: string_date_iso8601;
|
|
52
|
+
readonly complete?: string_date_iso8601;
|
|
53
|
+
readonly rawPromptContent: string;
|
|
54
|
+
readonly onProgress: (chunk: ChatPromptResult) => void;
|
|
55
|
+
readonly content: string;
|
|
56
|
+
readonly modelName: string;
|
|
57
|
+
readonly usage: Usage;
|
|
58
|
+
readonly rawRequest: OpenAI.Chat.Completions.ChatCompletionCreateParamsNonStreaming;
|
|
59
|
+
readonly rawResponse: OpenAI.Chat.Completions.ChatCompletion;
|
|
60
|
+
readonly toolCalls?: ChatPromptResult['toolCalls'];
|
|
61
|
+
}): void;
|
|
62
|
+
/**
|
|
63
|
+
* Creates the final chat prompt result after the tool loop has finished.
|
|
64
|
+
*/
|
|
65
|
+
createChatPromptResult(options: {
|
|
66
|
+
readonly title: string;
|
|
67
|
+
readonly responseMessage: OpenAI.Chat.Completions.ChatCompletionMessage;
|
|
68
|
+
readonly rawPromptContent: string;
|
|
69
|
+
readonly rawRequest: OpenAI.Chat.Completions.ChatCompletionCreateParamsNonStreaming;
|
|
70
|
+
readonly rawResponse: OpenAI.Chat.Completions.ChatCompletion;
|
|
71
|
+
readonly modelName: string_model_name;
|
|
72
|
+
readonly start: string_date_iso8601;
|
|
73
|
+
readonly complete: string_date_iso8601;
|
|
74
|
+
readonly usage: Usage;
|
|
75
|
+
readonly toolCalls: Array<StreamedToolCall>;
|
|
76
|
+
}): ChatPromptResult;
|
|
77
|
+
/**
|
|
78
|
+
* Creates one structured log entry for streamed tool-call updates.
|
|
79
|
+
*/
|
|
80
|
+
private createToolCallLogEntry;
|
|
81
|
+
/**
|
|
82
|
+
* Resolves the final lifecycle state for one tool call after execution ends.
|
|
83
|
+
*/
|
|
84
|
+
private resolveFinalToolCallState;
|
|
85
|
+
}
|
|
86
|
+
export {};
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import type OpenAI from 'openai';
|
|
2
|
+
import type { ChatModelRequirements } from '../../../types/ModelRequirements';
|
|
3
|
+
import type { Prompt } from '../../../types/Prompt';
|
|
4
|
+
import type { string_model_name } from '../../../types/string_model_name';
|
|
5
|
+
import type { TODO_any } from '../../../utils/organization/TODO_any';
|
|
6
|
+
/**
|
|
7
|
+
* Builds cloned prompt payloads, OpenAI messages, and raw chat requests.
|
|
8
|
+
*
|
|
9
|
+
* @private helper of `callOpenAiCompatibleChatModel`
|
|
10
|
+
*/
|
|
11
|
+
export declare class OpenAiCompatibleChatPromptBuilder {
|
|
12
|
+
/**
|
|
13
|
+
* Creates a deep copy of the prompt while keeping attached files intact when structured clone is not available.
|
|
14
|
+
*/
|
|
15
|
+
clonePromptPreservingFiles(prompt: Prompt): Prompt;
|
|
16
|
+
/**
|
|
17
|
+
* Resolves OpenAI chat creation settings from model requirements and prompt format.
|
|
18
|
+
*/
|
|
19
|
+
createModelSettings(options: {
|
|
20
|
+
readonly currentModelRequirements: ChatModelRequirements;
|
|
21
|
+
readonly format?: Prompt['format'];
|
|
22
|
+
readonly modelName: string_model_name;
|
|
23
|
+
}): OpenAI.Chat.Completions.ChatCompletionCreateParamsNonStreaming;
|
|
24
|
+
/**
|
|
25
|
+
* Creates the full OpenAI chat message list, including system, thread, and user content.
|
|
26
|
+
*/
|
|
27
|
+
createMessages(options: {
|
|
28
|
+
readonly prompt: Prompt;
|
|
29
|
+
readonly currentModelRequirements: ChatModelRequirements;
|
|
30
|
+
readonly rawPromptContent: string;
|
|
31
|
+
}): Promise<Array<OpenAI.Chat.Completions.ChatCompletionMessageParam>>;
|
|
32
|
+
/**
|
|
33
|
+
* Creates one raw OpenAI chat request from the current conversation state.
|
|
34
|
+
*/
|
|
35
|
+
createRawRequest(options: {
|
|
36
|
+
readonly modelSettings: OpenAI.Chat.Completions.ChatCompletionCreateParamsNonStreaming;
|
|
37
|
+
readonly messages: Array<OpenAI.Chat.Completions.ChatCompletionMessageParam>;
|
|
38
|
+
readonly tools: ReadonlyArray<TODO_any> | undefined;
|
|
39
|
+
readonly userId: string | number | undefined;
|
|
40
|
+
}): OpenAI.Chat.Completions.ChatCompletionCreateParamsNonStreaming;
|
|
41
|
+
/**
|
|
42
|
+
* Provides access to the structured clone implementation when available.
|
|
43
|
+
*/
|
|
44
|
+
private getStructuredCloneFunction;
|
|
45
|
+
/**
|
|
46
|
+
* Checks whether the prompt is a chat prompt that carries file attachments.
|
|
47
|
+
*/
|
|
48
|
+
private hasChatPromptFiles;
|
|
49
|
+
/**
|
|
50
|
+
* Converts the existing prompt thread into OpenAI chat messages.
|
|
51
|
+
*/
|
|
52
|
+
private createThreadMessages;
|
|
53
|
+
/**
|
|
54
|
+
* Builds the final user message, including inline image attachments when present.
|
|
55
|
+
*/
|
|
56
|
+
private createPromptUserMessage;
|
|
57
|
+
}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import type OpenAI from 'openai';
|
|
2
|
+
import type { ChatPromptResult } from '../../../execution/PromptResult';
|
|
3
|
+
import type { Usage } from '../../../execution/Usage';
|
|
4
|
+
import type { Prompt } from '../../../types/Prompt';
|
|
5
|
+
import type { string_date_iso8601 } from '../../../types/string_token';
|
|
6
|
+
import type { OpenAiCompatibleExecutionToolsNonProxiedOptions } from '../OpenAiCompatibleExecutionToolsOptions';
|
|
7
|
+
import { OpenAiCompatibleChatProgressReporter } from './OpenAiCompatibleChatProgressReporter';
|
|
8
|
+
/**
|
|
9
|
+
* Type describing streamed tool call.
|
|
10
|
+
*/
|
|
11
|
+
type StreamedToolCall = NonNullable<ChatPromptResult['toolCalls']>[number];
|
|
12
|
+
/**
|
|
13
|
+
* Dependencies required to execute tool calls requested by an OpenAI-compatible chat response.
|
|
14
|
+
*/
|
|
15
|
+
type OpenAiCompatibleChatToolCallerOptions = {
|
|
16
|
+
readonly executionToolsOptions: OpenAiCompatibleExecutionToolsNonProxiedOptions;
|
|
17
|
+
readonly progressReporter: OpenAiCompatibleChatProgressReporter;
|
|
18
|
+
};
|
|
19
|
+
/**
|
|
20
|
+
* Executes chat-requested tools and keeps their progress snapshots in sync with streamed progress updates.
|
|
21
|
+
*
|
|
22
|
+
* @private helper of `callOpenAiCompatibleChatModel`
|
|
23
|
+
*/
|
|
24
|
+
export declare class OpenAiCompatibleChatToolCaller {
|
|
25
|
+
private readonly options;
|
|
26
|
+
constructor(options: OpenAiCompatibleChatToolCallerOptions);
|
|
27
|
+
/**
|
|
28
|
+
* Executes all tool calls requested in one assistant response and appends their results to the conversation.
|
|
29
|
+
*/
|
|
30
|
+
handleToolCalls(options: {
|
|
31
|
+
readonly prompt: Prompt;
|
|
32
|
+
readonly start: string_date_iso8601;
|
|
33
|
+
readonly turnComplete: string_date_iso8601;
|
|
34
|
+
readonly rawPromptContent: string;
|
|
35
|
+
readonly responseMessage: OpenAI.Chat.Completions.ChatCompletionMessage;
|
|
36
|
+
readonly rawRequest: OpenAI.Chat.Completions.ChatCompletionCreateParamsNonStreaming;
|
|
37
|
+
readonly rawResponse: OpenAI.Chat.Completions.ChatCompletion;
|
|
38
|
+
readonly modelName: string;
|
|
39
|
+
readonly usage: Usage;
|
|
40
|
+
readonly toolCalls: Array<StreamedToolCall>;
|
|
41
|
+
readonly messages: Array<OpenAI.Chat.Completions.ChatCompletionMessageParam>;
|
|
42
|
+
readonly onProgress: (chunk: ChatPromptResult) => void;
|
|
43
|
+
}): Promise<void>;
|
|
44
|
+
/**
|
|
45
|
+
* Executes one tool call requested by the chat response and appends the tool message.
|
|
46
|
+
*/
|
|
47
|
+
private executeToolCall;
|
|
48
|
+
/**
|
|
49
|
+
* Resolves the configured script tools for chat tool execution.
|
|
50
|
+
*/
|
|
51
|
+
private resolveScriptTools;
|
|
52
|
+
/**
|
|
53
|
+
* Executes the configured script tool for one chat-requested function call.
|
|
54
|
+
*/
|
|
55
|
+
private executeFunctionTool;
|
|
56
|
+
}
|
|
57
|
+
export {};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type express from 'express';
|
|
2
|
+
import type { ExecutionTask } from '../../execution/ExecutionTask';
|
|
3
|
+
import type { StartRemoteServerConfiguration } from './StartRemoteServerConfiguration';
|
|
4
|
+
/**
|
|
5
|
+
* Runtime state shared by HTTP and Socket.io handlers.
|
|
6
|
+
*
|
|
7
|
+
* @private internal utility of `startRemoteServer`
|
|
8
|
+
*/
|
|
9
|
+
export type RemoteServerRuntime<TCustomOptions> = {
|
|
10
|
+
readonly app: express.Express;
|
|
11
|
+
readonly configuration: StartRemoteServerConfiguration<TCustomOptions>;
|
|
12
|
+
readonly runningExecutionTasks: Array<ExecutionTask>;
|
|
13
|
+
readonly startupDate: Date;
|
|
14
|
+
};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { ApplicationRemoteServerOptions, RemoteServerOptions } from '../types/RemoteServerOptions';
|
|
2
|
+
/**
|
|
3
|
+
* Normalized configuration shared by remote-server helpers.
|
|
4
|
+
*
|
|
5
|
+
* @private internal utility of `startRemoteServer`
|
|
6
|
+
*/
|
|
7
|
+
export type StartRemoteServerConfiguration<TCustomOptions> = {
|
|
8
|
+
readonly port: RemoteServerOptions<TCustomOptions>['port'];
|
|
9
|
+
readonly collection: ApplicationRemoteServerOptions<TCustomOptions>['collection'] | null;
|
|
10
|
+
readonly createExecutionTools: RemoteServerOptions<TCustomOptions>['createExecutionTools'];
|
|
11
|
+
readonly createLlmExecutionTools: ApplicationRemoteServerOptions<TCustomOptions>['createLlmExecutionTools'] | null;
|
|
12
|
+
readonly isAnonymousModeAllowed: boolean;
|
|
13
|
+
readonly isApplicationModeAllowed: boolean;
|
|
14
|
+
readonly isRichUi: boolean | undefined;
|
|
15
|
+
readonly isVerbose: boolean;
|
|
16
|
+
readonly login: ApplicationRemoteServerOptions<TCustomOptions>['login'] | null;
|
|
17
|
+
readonly startOptions: RemoteServerOptions<TCustomOptions>;
|
|
18
|
+
};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
import express from 'express';
|
|
3
|
+
import http from 'http';
|
|
4
|
+
import { Server } from 'socket.io';
|
|
5
|
+
import type { RemoteServer } from '../RemoteServer';
|
|
6
|
+
/**
|
|
7
|
+
* Creates the public RemoteServer handle with lazily exposed internals.
|
|
8
|
+
*
|
|
9
|
+
* @private internal utility of `startRemoteServer`
|
|
10
|
+
*/
|
|
11
|
+
export declare function createRemoteServerHandle(app: express.Express, httpServer: http.Server, server: Server): RemoteServer;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
import http from 'http';
|
|
3
|
+
import { Server } from 'socket.io';
|
|
4
|
+
/**
|
|
5
|
+
* Creates the Socket.io server with the existing transport and CORS settings.
|
|
6
|
+
*
|
|
7
|
+
* @private internal utility of `startRemoteServer`
|
|
8
|
+
*/
|
|
9
|
+
export declare function createSocketServer(httpServer: http.Server): Server;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { ExecutionTools } from '../../execution/ExecutionTools';
|
|
2
|
+
import type { LlmExecutionTools } from '../../execution/LlmExecutionTools';
|
|
3
|
+
import type { Identification } from '../socket-types/_subtypes/Identification';
|
|
4
|
+
import type { StartRemoteServerConfiguration } from './StartRemoteServerConfiguration';
|
|
5
|
+
/**
|
|
6
|
+
* Builds execution tools for a single incoming identification.
|
|
7
|
+
*
|
|
8
|
+
* @private internal utility of `startRemoteServer`
|
|
9
|
+
*/
|
|
10
|
+
export declare function getExecutionToolsFromIdentification<TCustomOptions>(configuration: StartRemoteServerConfiguration<TCustomOptions>, identification: Identification<TCustomOptions> | null | undefined): Promise<ExecutionTools & {
|
|
11
|
+
llm: LlmExecutionTools;
|
|
12
|
+
}>;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { RemoteServerRuntime } from './RemoteServerRuntime';
|
|
2
|
+
/**
|
|
3
|
+
* Registers book listing and book source download routes.
|
|
4
|
+
*
|
|
5
|
+
* @private internal utility of `startRemoteServer`
|
|
6
|
+
*/
|
|
7
|
+
export declare function registerBookRoutes<TCustomOptions>(runtime: RemoteServerRuntime<TCustomOptions>): void;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { RemoteServerRuntime } from './RemoteServerRuntime';
|
|
2
|
+
/**
|
|
3
|
+
* Registers execution task listing, detail, and creation routes.
|
|
4
|
+
*
|
|
5
|
+
* @private internal utility of `startRemoteServer`
|
|
6
|
+
*/
|
|
7
|
+
export declare function registerExecutionRoutes<TCustomOptions>(runtime: RemoteServerRuntime<TCustomOptions>): void;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { Socket } from 'socket.io';
|
|
2
|
+
import type { RemoteServerRuntime } from './RemoteServerRuntime';
|
|
3
|
+
/**
|
|
4
|
+
* Registers the socket list-models request handler.
|
|
5
|
+
*
|
|
6
|
+
* @private internal utility of `startRemoteServer`
|
|
7
|
+
*/
|
|
8
|
+
export declare function registerListModelsSocketHandler<TCustomOptions>(runtime: RemoteServerRuntime<TCustomOptions>, socket: Socket): void;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { RemoteServerRuntime } from './RemoteServerRuntime';
|
|
2
|
+
/**
|
|
3
|
+
* Registers the application-mode login endpoint.
|
|
4
|
+
*
|
|
5
|
+
* @private internal utility of `startRemoteServer`
|
|
6
|
+
*/
|
|
7
|
+
export declare function registerLoginRoute<TCustomOptions>(runtime: RemoteServerRuntime<TCustomOptions>): void;
|
package/esm/src/remote-server/startRemoteServer/registerOpenAiCompatibleChatCompletionsRoute.d.ts
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { RemoteServerRuntime } from './RemoteServerRuntime';
|
|
2
|
+
/**
|
|
3
|
+
* Registers the OpenAI-compatible chat completions endpoint.
|
|
4
|
+
*
|
|
5
|
+
* @private internal utility of `startRemoteServer`
|
|
6
|
+
*/
|
|
7
|
+
export declare function registerOpenAiCompatibleChatCompletionsRoute<TCustomOptions>(runtime: RemoteServerRuntime<TCustomOptions>): void;
|