@mate-academy/llm-gateway 8.8.2 → 8.8.3
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/LLMError.d.ts +12 -0
- package/dist/LLMError.js +36 -0
- package/dist/LLMError.js.map +1 -0
- package/dist/LLMGateway.d.ts +30 -0
- package/dist/LLMGateway.js +56 -0
- package/dist/LLMGateway.js.map +1 -0
- package/dist/LLMGateway.typedefs.d.ts +5 -0
- package/dist/LLMGateway.typedefs.js +3 -0
- package/dist/LLMGateway.typedefs.js.map +1 -0
- package/dist/LLMService.constants.d.ts +26309 -0
- package/dist/LLMService.constants.js +35 -0
- package/dist/LLMService.constants.js.map +1 -0
- package/dist/LLMService.factory.d.ts +71 -0
- package/dist/LLMService.factory.js +102 -0
- package/dist/LLMService.factory.js.map +1 -0
- package/dist/LLMService.typedefs.d.ts +655 -0
- package/dist/LLMService.typedefs.js +72 -0
- package/dist/LLMService.typedefs.js.map +1 -0
- package/dist/advanced.d.ts +11 -0
- package/dist/advanced.js +32 -0
- package/dist/advanced.js.map +1 -0
- package/dist/client/LLMAgent.d.ts +76 -0
- package/dist/client/LLMAgent.js +36 -0
- package/dist/client/LLMAgent.js.map +1 -0
- package/dist/client/LLMClientEngine.d.ts +110 -0
- package/dist/client/LLMClientEngine.js +406 -0
- package/dist/client/LLMClientEngine.js.map +1 -0
- package/dist/client/agentRun.typedefs.d.ts +200 -0
- package/dist/client/agentRun.typedefs.js +25 -0
- package/dist/client/agentRun.typedefs.js.map +1 -0
- package/dist/client/agentRunner.d.ts +161 -0
- package/dist/client/agentRunner.js +517 -0
- package/dist/client/agentRunner.js.map +1 -0
- package/dist/client/codegen/fetchPromptRecords.d.ts +14 -0
- package/dist/client/codegen/fetchPromptRecords.js +90 -0
- package/dist/client/codegen/fetchPromptRecords.js.map +1 -0
- package/dist/client/codegen/generateSnapshot.d.ts +19 -0
- package/dist/client/codegen/generateSnapshot.js +28 -0
- package/dist/client/codegen/generateSnapshot.js.map +1 -0
- package/dist/client/codegen/index.d.ts +6 -0
- package/dist/client/codegen/index.js +23 -0
- package/dist/client/codegen/index.js.map +1 -0
- package/dist/client/codegen/promptCatalog.typedefs.d.ts +51 -0
- package/dist/client/codegen/promptCatalog.typedefs.js +3 -0
- package/dist/client/codegen/promptCatalog.typedefs.js.map +1 -0
- package/dist/client/codegen/promptName.d.ts +8 -0
- package/dist/client/codegen/promptName.js +21 -0
- package/dist/client/codegen/promptName.js.map +1 -0
- package/dist/client/codegen/renderSnapshot.constants.d.ts +7 -0
- package/dist/client/codegen/renderSnapshot.constants.js +16 -0
- package/dist/client/codegen/renderSnapshot.constants.js.map +1 -0
- package/dist/client/codegen/renderSnapshot.d.ts +9 -0
- package/dist/client/codegen/renderSnapshot.js +109 -0
- package/dist/client/codegen/renderSnapshot.js.map +1 -0
- package/dist/client/codegen/renderSnapshot.typedefs.d.ts +19 -0
- package/dist/client/codegen/renderSnapshot.typedefs.js +3 -0
- package/dist/client/codegen/renderSnapshot.typedefs.js.map +1 -0
- package/dist/client/coerceToolResult.d.ts +10 -0
- package/dist/client/coerceToolResult.js +38 -0
- package/dist/client/coerceToolResult.js.map +1 -0
- package/dist/client/createLLMClient.d.ts +10 -0
- package/dist/client/createLLMClient.js +47 -0
- package/dist/client/createLLMClient.js.map +1 -0
- package/dist/client/defineLLMPrompts.d.ts +34 -0
- package/dist/client/defineLLMPrompts.js +13 -0
- package/dist/client/defineLLMPrompts.js.map +1 -0
- package/dist/client/errors.d.ts +57 -0
- package/dist/client/errors.js +70 -0
- package/dist/client/errors.js.map +1 -0
- package/dist/client/index.d.ts +13 -0
- package/dist/client/index.js +30 -0
- package/dist/client/index.js.map +1 -0
- package/dist/client/llmClient.typedefs.d.ts +265 -0
- package/dist/client/llmClient.typedefs.js +11 -0
- package/dist/client/llmClient.typedefs.js.map +1 -0
- package/dist/client/llmConfig.schema.d.ts +53 -0
- package/dist/client/llmConfig.schema.js +49 -0
- package/dist/client/llmConfig.schema.js.map +1 -0
- package/dist/client/plainMessages.d.ts +12 -0
- package/dist/client/plainMessages.js +19 -0
- package/dist/client/plainMessages.js.map +1 -0
- package/dist/client/promptClientPort.typedefs.d.ts +60 -0
- package/dist/client/promptClientPort.typedefs.js +3 -0
- package/dist/client/promptClientPort.typedefs.js.map +1 -0
- package/dist/client/promptRegistry.runtime.d.ts +121 -0
- package/dist/client/promptRegistry.runtime.js +264 -0
- package/dist/client/promptRegistry.runtime.js.map +1 -0
- package/dist/client/promptSnapshot.typedefs.d.ts +55 -0
- package/dist/client/promptSnapshot.typedefs.js +3 -0
- package/dist/client/promptSnapshot.typedefs.js.map +1 -0
- package/dist/client/promptVariables.d.ts +7 -0
- package/dist/client/promptVariables.js +13 -0
- package/dist/client/promptVariables.js.map +1 -0
- package/dist/client/snapshotRuntime.d.ts +17 -0
- package/dist/client/snapshotRuntime.js +42 -0
- package/dist/client/snapshotRuntime.js.map +1 -0
- package/dist/client/snapshotRuntime.typedefs.d.ts +13 -0
- package/dist/client/snapshotRuntime.typedefs.js +3 -0
- package/dist/client/snapshotRuntime.typedefs.js.map +1 -0
- package/dist/client/validationGate.d.ts +24 -0
- package/dist/client/validationGate.js +54 -0
- package/dist/client/validationGate.js.map +1 -0
- package/dist/codegen.d.ts +6 -0
- package/dist/codegen.js +23 -0
- package/dist/codegen.js.map +1 -0
- package/dist/index.d.ts +10 -0
- package/dist/index.js +27 -0
- package/dist/index.js.map +1 -0
- package/dist/providers/GoogleGenerativeAI/GoogleGenerativeAI.constants.d.ts +873 -0
- package/dist/providers/GoogleGenerativeAI/GoogleGenerativeAI.constants.js +269 -0
- package/dist/providers/GoogleGenerativeAI/GoogleGenerativeAI.constants.js.map +1 -0
- package/dist/providers/GoogleGenerativeAI/GoogleGenerativeAI.entity.d.ts +24 -0
- package/dist/providers/GoogleGenerativeAI/GoogleGenerativeAI.entity.js +210 -0
- package/dist/providers/GoogleGenerativeAI/GoogleGenerativeAI.entity.js.map +1 -0
- package/dist/providers/GoogleGenerativeAI/GoogleGenerativeAI.typedefs.d.ts +22 -0
- package/dist/providers/GoogleGenerativeAI/GoogleGenerativeAI.typedefs.js +20 -0
- package/dist/providers/GoogleGenerativeAI/GoogleGenerativeAI.typedefs.js.map +1 -0
- package/dist/providers/GoogleGenerativeAI/GoogleGenerativeAIService.factory.d.ts +6 -0
- package/dist/providers/GoogleGenerativeAI/GoogleGenerativeAIService.factory.js +18 -0
- package/dist/providers/GoogleGenerativeAI/GoogleGenerativeAIService.factory.js.map +1 -0
- package/dist/providers/GoogleGenerativeAI/index.d.ts +5 -0
- package/dist/providers/GoogleGenerativeAI/index.js +22 -0
- package/dist/providers/GoogleGenerativeAI/index.js.map +1 -0
- package/dist/providers/GoogleGenerativeAI/schemas/GoogleSchemaAdapter.d.ts +12 -0
- package/dist/providers/GoogleGenerativeAI/schemas/GoogleSchemaAdapter.js +72 -0
- package/dist/providers/GoogleGenerativeAI/schemas/GoogleSchemaAdapter.js.map +1 -0
- package/dist/providers/GoogleGenerativeAI/services/GoogleGenerativeAIAssistance.service.d.ts +71 -0
- package/dist/providers/GoogleGenerativeAI/services/GoogleGenerativeAIAssistance.service.js +876 -0
- package/dist/providers/GoogleGenerativeAI/services/GoogleGenerativeAIAssistance.service.js.map +1 -0
- package/dist/providers/GoogleGenerativeAI/services/GoogleGenerativeAICompletion.service.d.ts +25 -0
- package/dist/providers/GoogleGenerativeAI/services/GoogleGenerativeAICompletion.service.js +216 -0
- package/dist/providers/GoogleGenerativeAI/services/GoogleGenerativeAICompletion.service.js.map +1 -0
- package/dist/providers/GoogleGenerativeAI/services/GoogleGenerativeAISpeechToText.service.d.ts +10 -0
- package/dist/providers/GoogleGenerativeAI/services/GoogleGenerativeAISpeechToText.service.js +136 -0
- package/dist/providers/GoogleGenerativeAI/services/GoogleGenerativeAISpeechToText.service.js.map +1 -0
- package/dist/providers/GoogleGenerativeAI/services/GoogleGenerativeAITextToSpeech.service.d.ts +11 -0
- package/dist/providers/GoogleGenerativeAI/services/GoogleGenerativeAITextToSpeech.service.js +97 -0
- package/dist/providers/GoogleGenerativeAI/services/GoogleGenerativeAITextToSpeech.service.js.map +1 -0
- package/dist/providers/GoogleGenerativeAI/services/index.d.ts +4 -0
- package/dist/providers/GoogleGenerativeAI/services/index.js +21 -0
- package/dist/providers/GoogleGenerativeAI/services/index.js.map +1 -0
- package/dist/providers/LLMAPI/LLMAPI.constants.d.ts +35832 -0
- package/dist/providers/LLMAPI/LLMAPI.constants.js +8601 -0
- package/dist/providers/LLMAPI/LLMAPI.constants.js.map +1 -0
- package/dist/providers/LLMAPI/LLMAPI.entity.d.ts +6 -0
- package/dist/providers/LLMAPI/LLMAPI.entity.js +48 -0
- package/dist/providers/LLMAPI/LLMAPI.entity.js.map +1 -0
- package/dist/providers/LLMAPI/LLMAPI.typedefs.d.ts +516 -0
- package/dist/providers/LLMAPI/LLMAPI.typedefs.js +564 -0
- package/dist/providers/LLMAPI/LLMAPI.typedefs.js.map +1 -0
- package/dist/providers/LLMAPI/LLMAPI.voices.d.ts +376 -0
- package/dist/providers/LLMAPI/LLMAPI.voices.js +739 -0
- package/dist/providers/LLMAPI/LLMAPI.voices.js.map +1 -0
- package/dist/providers/LLMAPI/LLMAPIService.factory.d.ts +6 -0
- package/dist/providers/LLMAPI/LLMAPIService.factory.js +19 -0
- package/dist/providers/LLMAPI/LLMAPIService.factory.js.map +1 -0
- package/dist/providers/LLMAPI/index.d.ts +7 -0
- package/dist/providers/LLMAPI/index.js +24 -0
- package/dist/providers/LLMAPI/index.js.map +1 -0
- package/dist/providers/LLMAPI/schemas/LLMAPISchemaAdapter.d.ts +3 -0
- package/dist/providers/LLMAPI/schemas/LLMAPISchemaAdapter.js +8 -0
- package/dist/providers/LLMAPI/schemas/LLMAPISchemaAdapter.js.map +1 -0
- package/dist/providers/LLMAPI/services/LLMAPIAssistance.service.d.ts +76 -0
- package/dist/providers/LLMAPI/services/LLMAPIAssistance.service.js +825 -0
- package/dist/providers/LLMAPI/services/LLMAPIAssistance.service.js.map +1 -0
- package/dist/providers/LLMAPI/services/LLMAPICompletion.service.d.ts +25 -0
- package/dist/providers/LLMAPI/services/LLMAPICompletion.service.js +177 -0
- package/dist/providers/LLMAPI/services/LLMAPICompletion.service.js.map +1 -0
- package/dist/providers/LLMAPI/services/LLMAPISpeechToText.service.d.ts +17 -0
- package/dist/providers/LLMAPI/services/LLMAPISpeechToText.service.js +34 -0
- package/dist/providers/LLMAPI/services/LLMAPISpeechToText.service.js.map +1 -0
- package/dist/providers/LLMAPI/services/LLMAPITextToSpeech.service.d.ts +20 -0
- package/dist/providers/LLMAPI/services/LLMAPITextToSpeech.service.js +36 -0
- package/dist/providers/LLMAPI/services/LLMAPITextToSpeech.service.js.map +1 -0
- package/dist/providers/LLMAPI/services/index.d.ts +4 -0
- package/dist/providers/LLMAPI/services/index.js +21 -0
- package/dist/providers/LLMAPI/services/index.js.map +1 -0
- package/dist/providers/LLMAPI/utilities/index.d.ts +4 -0
- package/dist/providers/LLMAPI/utilities/index.js +13 -0
- package/dist/providers/LLMAPI/utilities/index.js.map +1 -0
- package/dist/providers/LLMAPI/utilities/parseXmlToolCalls.d.ts +7 -0
- package/dist/providers/LLMAPI/utilities/parseXmlToolCalls.js +35 -0
- package/dist/providers/LLMAPI/utilities/parseXmlToolCalls.js.map +1 -0
- package/dist/providers/LLMAPI/utilities/stripThinkingTags.d.ts +1 -0
- package/dist/providers/LLMAPI/utilities/stripThinkingTags.js +7 -0
- package/dist/providers/LLMAPI/utilities/stripThinkingTags.js.map +1 -0
- package/dist/providers/LLMAPI/utilities/structuredOutput.d.ts +13 -0
- package/dist/providers/LLMAPI/utilities/structuredOutput.js +29 -0
- package/dist/providers/LLMAPI/utilities/structuredOutput.js.map +1 -0
- package/dist/providers/LLMAPI/utilities/validateStructuredResponse.d.ts +10 -0
- package/dist/providers/LLMAPI/utilities/validateStructuredResponse.js +21 -0
- package/dist/providers/LLMAPI/utilities/validateStructuredResponse.js.map +1 -0
- package/dist/providers/OpenAI/OpenAI.constants.d.ts +1664 -0
- package/dist/providers/OpenAI/OpenAI.constants.js +310 -0
- package/dist/providers/OpenAI/OpenAI.constants.js.map +1 -0
- package/dist/providers/OpenAI/OpenAI.entity.d.ts +15 -0
- package/dist/providers/OpenAI/OpenAI.entity.js +162 -0
- package/dist/providers/OpenAI/OpenAI.entity.js.map +1 -0
- package/dist/providers/OpenAI/OpenAI.typedefs.d.ts +61 -0
- package/dist/providers/OpenAI/OpenAI.typedefs.js +39 -0
- package/dist/providers/OpenAI/OpenAI.typedefs.js.map +1 -0
- package/dist/providers/OpenAI/OpenAIService.factory.d.ts +6 -0
- package/dist/providers/OpenAI/OpenAIService.factory.js +18 -0
- package/dist/providers/OpenAI/OpenAIService.factory.js.map +1 -0
- package/dist/providers/OpenAI/index.d.ts +5 -0
- package/dist/providers/OpenAI/index.js +22 -0
- package/dist/providers/OpenAI/index.js.map +1 -0
- package/dist/providers/OpenAI/schemas/OpenAISchemaAdapter.d.ts +14 -0
- package/dist/providers/OpenAI/schemas/OpenAISchemaAdapter.js +87 -0
- package/dist/providers/OpenAI/schemas/OpenAISchemaAdapter.js.map +1 -0
- package/dist/providers/OpenAI/services/OpenAIAssistance.service.d.ts +42 -0
- package/dist/providers/OpenAI/services/OpenAIAssistance.service.js +712 -0
- package/dist/providers/OpenAI/services/OpenAIAssistance.service.js.map +1 -0
- package/dist/providers/OpenAI/services/OpenAICompletion.service.d.ts +7 -0
- package/dist/providers/OpenAI/services/OpenAICompletion.service.js +12 -0
- package/dist/providers/OpenAI/services/OpenAICompletion.service.js.map +1 -0
- package/dist/providers/OpenAI/services/OpenAISpeechToText.service.d.ts +17 -0
- package/dist/providers/OpenAI/services/OpenAISpeechToText.service.js +40 -0
- package/dist/providers/OpenAI/services/OpenAISpeechToText.service.js.map +1 -0
- package/dist/providers/OpenAI/services/OpenAITextToSpeech.service.d.ts +13 -0
- package/dist/providers/OpenAI/services/OpenAITextToSpeech.service.js +32 -0
- package/dist/providers/OpenAI/services/OpenAITextToSpeech.service.js.map +1 -0
- package/dist/providers/OpenAI/services/buildFunctionCallOutput.d.ts +3 -0
- package/dist/providers/OpenAI/services/buildFunctionCallOutput.js +19 -0
- package/dist/providers/OpenAI/services/buildFunctionCallOutput.js.map +1 -0
- package/dist/providers/OpenAI/services/index.d.ts +4 -0
- package/dist/providers/OpenAI/services/index.js +21 -0
- package/dist/providers/OpenAI/services/index.js.map +1 -0
- package/dist/providers/OpenAICompatible/OpenAICompatibleCompletion.service.d.ts +30 -0
- package/dist/providers/OpenAICompatible/OpenAICompatibleCompletion.service.js +233 -0
- package/dist/providers/OpenAICompatible/OpenAICompatibleCompletion.service.js.map +1 -0
- package/dist/providers/OpenAICompatible/OpenAICompatibleSpeechToText.service.d.ts +22 -0
- package/dist/providers/OpenAICompatible/OpenAICompatibleSpeechToText.service.js +98 -0
- package/dist/providers/OpenAICompatible/OpenAICompatibleSpeechToText.service.js.map +1 -0
- package/dist/providers/OpenAICompatible/OpenAICompatibleTextToSpeech.service.d.ts +22 -0
- package/dist/providers/OpenAICompatible/OpenAICompatibleTextToSpeech.service.js +67 -0
- package/dist/providers/OpenAICompatible/OpenAICompatibleTextToSpeech.service.js.map +1 -0
- package/dist/providers/index.d.ts +3 -0
- package/dist/providers/index.js +20 -0
- package/dist/providers/index.js.map +1 -0
- package/dist/services/LLMAssistanceService.abstract.d.ts +39 -0
- package/dist/services/LLMAssistanceService.abstract.js +101 -0
- package/dist/services/LLMAssistanceService.abstract.js.map +1 -0
- package/dist/services/LLMBaseService.abstract.d.ts +161 -0
- package/dist/services/LLMBaseService.abstract.js +392 -0
- package/dist/services/LLMBaseService.abstract.js.map +1 -0
- package/dist/services/LLMCompletionService.abstract.d.ts +16 -0
- package/dist/services/LLMCompletionService.abstract.js +12 -0
- package/dist/services/LLMCompletionService.abstract.js.map +1 -0
- package/dist/services/LLMServicePurposeFactory.abstract.d.ts +12 -0
- package/dist/services/LLMServicePurposeFactory.abstract.js +7 -0
- package/dist/services/LLMServicePurposeFactory.abstract.js.map +1 -0
- package/dist/services/LLMSpeechToTextService.abstract.d.ts +8 -0
- package/dist/services/LLMSpeechToTextService.abstract.js +12 -0
- package/dist/services/LLMSpeechToTextService.abstract.js.map +1 -0
- package/dist/services/LLMTextToSpeechService.abstract.d.ts +8 -0
- package/dist/services/LLMTextToSpeechService.abstract.js +12 -0
- package/dist/services/LLMTextToSpeechService.abstract.js.map +1 -0
- package/dist/services/agentRounds/LLMAgentRounds.d.ts +32 -0
- package/dist/services/agentRounds/LLMAgentRounds.js +77 -0
- package/dist/services/agentRounds/LLMAgentRounds.js.map +1 -0
- package/dist/services/agentRounds/agentRounds.typedefs.d.ts +48 -0
- package/dist/services/agentRounds/agentRounds.typedefs.js +3 -0
- package/dist/services/agentRounds/agentRounds.typedefs.js.map +1 -0
- package/dist/services/agentRounds/index.d.ts +2 -0
- package/dist/services/agentRounds/index.js +19 -0
- package/dist/services/agentRounds/index.js.map +1 -0
- package/dist/services/chatState/CompletionsChatState.d.ts +35 -0
- package/dist/services/chatState/CompletionsChatState.js +118 -0
- package/dist/services/chatState/CompletionsChatState.js.map +1 -0
- package/dist/services/chatState/index.d.ts +1 -0
- package/dist/services/chatState/index.js +6 -0
- package/dist/services/chatState/index.js.map +1 -0
- package/dist/services/fileStorage/FileStorageToolExecutor.d.ts +15 -0
- package/dist/services/fileStorage/FileStorageToolExecutor.js +172 -0
- package/dist/services/fileStorage/FileStorageToolExecutor.js.map +1 -0
- package/dist/services/fileStorage/InMemoryFileStorage.d.ts +20 -0
- package/dist/services/fileStorage/InMemoryFileStorage.js +67 -0
- package/dist/services/fileStorage/InMemoryFileStorage.js.map +1 -0
- package/dist/services/fileStorage/fileStorageTools.d.ts +26 -0
- package/dist/services/fileStorage/fileStorageTools.js +68 -0
- package/dist/services/fileStorage/fileStorageTools.js.map +1 -0
- package/dist/services/fileStorage/index.d.ts +4 -0
- package/dist/services/fileStorage/index.js +11 -0
- package/dist/services/fileStorage/index.js.map +1 -0
- package/dist/services/index.d.ts +7 -0
- package/dist/services/index.js +24 -0
- package/dist/services/index.js.map +1 -0
- package/dist/utilities/calculateCosts.d.ts +4 -0
- package/dist/utilities/calculateCosts.js +56 -0
- package/dist/utilities/calculateCosts.js.map +1 -0
- package/dist/utilities/functional.utils.d.ts +1 -0
- package/dist/utilities/functional.utils.js +9 -0
- package/dist/utilities/functional.utils.js.map +1 -0
- package/dist/utilities/index.d.ts +9 -0
- package/dist/utilities/index.js +26 -0
- package/dist/utilities/index.js.map +1 -0
- package/dist/utilities/llmTracing/index.d.ts +3 -0
- package/dist/utilities/llmTracing/index.js +20 -0
- package/dist/utilities/llmTracing/index.js.map +1 -0
- package/dist/utilities/llmTracing/llmTracing.constants.d.ts +7 -0
- package/dist/utilities/llmTracing/llmTracing.constants.js +11 -0
- package/dist/utilities/llmTracing/llmTracing.constants.js.map +1 -0
- package/dist/utilities/llmTracing/llmTracing.typedefs.d.ts +126 -0
- package/dist/utilities/llmTracing/llmTracing.typedefs.js +3 -0
- package/dist/utilities/llmTracing/llmTracing.typedefs.js.map +1 -0
- package/dist/utilities/llmTracing/noopLLMTracing.d.ts +3 -0
- package/dist/utilities/llmTracing/noopLLMTracing.js +36 -0
- package/dist/utilities/llmTracing/noopLLMTracing.js.map +1 -0
- package/dist/utilities/logger/LLMLoggerInterface.d.ts +36 -0
- package/dist/utilities/logger/LLMLoggerInterface.js +3 -0
- package/dist/utilities/logger/LLMLoggerInterface.js.map +1 -0
- package/dist/utilities/logger/index.d.ts +1 -0
- package/dist/utilities/logger/index.js +18 -0
- package/dist/utilities/logger/index.js.map +1 -0
- package/dist/utilities/promptBuilder.d.ts +58 -0
- package/dist/utilities/promptBuilder.js +92 -0
- package/dist/utilities/promptBuilder.js.map +1 -0
- package/dist/utilities/reporter/LLMReporterInterface.d.ts +46 -0
- package/dist/utilities/reporter/LLMReporterInterface.js +3 -0
- package/dist/utilities/reporter/LLMReporterInterface.js.map +1 -0
- package/dist/utilities/reporter/index.d.ts +1 -0
- package/dist/utilities/reporter/index.js +18 -0
- package/dist/utilities/reporter/index.js.map +1 -0
- package/dist/utilities/schema/LLMSchema.d.ts +112 -0
- package/dist/utilities/schema/LLMSchema.js +223 -0
- package/dist/utilities/schema/LLMSchema.js.map +1 -0
- package/dist/utilities/schema/LLMSchema.typedefs.d.ts +55 -0
- package/dist/utilities/schema/LLMSchema.typedefs.js +3 -0
- package/dist/utilities/schema/LLMSchema.typedefs.js.map +1 -0
- package/dist/utilities/schema/SchemaAdapterRegistry.d.ts +26 -0
- package/dist/utilities/schema/SchemaAdapterRegistry.js +32 -0
- package/dist/utilities/schema/SchemaAdapterRegistry.js.map +1 -0
- package/dist/utilities/schema/index.d.ts +2 -0
- package/dist/utilities/schema/index.js +19 -0
- package/dist/utilities/schema/index.js.map +1 -0
- package/dist/utilities/serializeError.d.ts +9 -0
- package/dist/utilities/serializeError.js +69 -0
- package/dist/utilities/serializeError.js.map +1 -0
- package/dist/utilities/tokenizer.d.ts +4 -0
- package/dist/utilities/tokenizer.js +14 -0
- package/dist/utilities/tokenizer.js.map +1 -0
- package/dist/utilities/tools/LLMTool.d.ts +5 -0
- package/dist/utilities/tools/LLMTool.js +10 -0
- package/dist/utilities/tools/LLMTool.js.map +1 -0
- package/dist/utilities/tools/index.d.ts +2 -0
- package/dist/utilities/tools/index.js +8 -0
- package/dist/utilities/tools/index.js.map +1 -0
- package/dist/utilities/tools/normalizeToolResult.d.ts +15 -0
- package/dist/utilities/tools/normalizeToolResult.js +18 -0
- package/dist/utilities/tools/normalizeToolResult.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,392 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.LLMBaseService = void 0;
|
|
4
|
+
const crypto_1 = require("crypto");
|
|
5
|
+
const serializeError_1 = require("../utilities/serializeError");
|
|
6
|
+
const LLMService_constants_1 = require("../LLMService.constants");
|
|
7
|
+
const utilities_1 = require("../utilities");
|
|
8
|
+
const agentRounds_1 = require("./agentRounds");
|
|
9
|
+
class LLMBaseService {
|
|
10
|
+
provider;
|
|
11
|
+
serviceName;
|
|
12
|
+
purpose;
|
|
13
|
+
logger;
|
|
14
|
+
reporter;
|
|
15
|
+
options;
|
|
16
|
+
static sharedInstanceCache = new Map();
|
|
17
|
+
tracer = utilities_1.noopLLMGatewayTracer;
|
|
18
|
+
constructor(provider, serviceName, purpose, logger, reporter, options) {
|
|
19
|
+
this.provider = provider;
|
|
20
|
+
this.serviceName = serviceName;
|
|
21
|
+
this.purpose = purpose;
|
|
22
|
+
this.logger = logger;
|
|
23
|
+
this.reporter = reporter;
|
|
24
|
+
this.options = options;
|
|
25
|
+
this.injectMethodNames();
|
|
26
|
+
this.initLogger();
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Wires the tracer the service reports generations and tool calls to. Called
|
|
30
|
+
* by `LLMGateway` right after construction; services built through
|
|
31
|
+
* `LLMServiceFactory` keep the no-op tracer.
|
|
32
|
+
*/
|
|
33
|
+
initTracer(tracer) {
|
|
34
|
+
this.tracer = tracer;
|
|
35
|
+
}
|
|
36
|
+
getTracer() {
|
|
37
|
+
return this.tracer;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Available models for the current provider and purpose.
|
|
41
|
+
*/
|
|
42
|
+
get models() {
|
|
43
|
+
return LLMService_constants_1.LLM_SERVICE_MODELS[this.provider][this.purpose];
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Initialize the logger by creating a child logger with the provider and service name.
|
|
47
|
+
*/
|
|
48
|
+
initLogger() {
|
|
49
|
+
this.logger = this.logger?.child(`${this.provider}:${this.serviceName}`);
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Inject method names into class methods for better logging and reporting.
|
|
53
|
+
*/
|
|
54
|
+
injectMethodNames() {
|
|
55
|
+
let proto = Object.getPrototypeOf(this);
|
|
56
|
+
while (proto && proto !== Object.prototype) {
|
|
57
|
+
Object.getOwnPropertyNames(proto).forEach(name => {
|
|
58
|
+
const descriptor = Object.getOwnPropertyDescriptor(proto, name);
|
|
59
|
+
if (descriptor && typeof descriptor.value === 'function' && name !== 'constructor') {
|
|
60
|
+
descriptor.value.methodName = name;
|
|
61
|
+
}
|
|
62
|
+
});
|
|
63
|
+
proto = Object.getPrototypeOf(proto);
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Get the method name from a function.
|
|
68
|
+
* If the method name is not available, return 'unknown'.
|
|
69
|
+
*/
|
|
70
|
+
// eslint-disable-next-line @typescript-eslint/no-unsafe-function-type
|
|
71
|
+
getMethodName(func) {
|
|
72
|
+
return func.methodName || 'unknown';
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Generate a cache key from credentials/options.
|
|
76
|
+
* Includes provider to ensure cache isolation between different providers.
|
|
77
|
+
* Note: Different purposes (Completion, Assistance, etc.) for the same provider
|
|
78
|
+
* share the same underlying client instance.
|
|
79
|
+
*/
|
|
80
|
+
getCredentialsCacheKey(options) {
|
|
81
|
+
if (!options) {
|
|
82
|
+
return `${this.provider}:default`;
|
|
83
|
+
}
|
|
84
|
+
const serialized = JSON.stringify(options);
|
|
85
|
+
const hash = (0, crypto_1.createHash)('sha256').update(serialized).digest('hex');
|
|
86
|
+
return `${this.provider}:${hash}`;
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Get or create cached instance for current credentials.
|
|
90
|
+
* This method implements LRU caching to bound memory usage across all service types.
|
|
91
|
+
* @throws {Error} If options are not provided (required for instance creation)
|
|
92
|
+
*/
|
|
93
|
+
getOrCreateInstance(factory) {
|
|
94
|
+
if (!this.options) {
|
|
95
|
+
throw new Error(`Cannot create ${this.provider} instance: options are required`);
|
|
96
|
+
}
|
|
97
|
+
const cacheKey = this.getCredentialsCacheKey(this.options);
|
|
98
|
+
const cached = LLMBaseService.sharedInstanceCache.get(cacheKey);
|
|
99
|
+
if (cached) {
|
|
100
|
+
cached.lastUsed = Date.now();
|
|
101
|
+
return cached.instance;
|
|
102
|
+
}
|
|
103
|
+
if (LLMBaseService.sharedInstanceCache.size >= LLMService_constants_1.MAX_CACHED_INSTANCES) {
|
|
104
|
+
this.evictLeastRecentlyUsed();
|
|
105
|
+
}
|
|
106
|
+
const instance = factory();
|
|
107
|
+
LLMBaseService.sharedInstanceCache.set(cacheKey, {
|
|
108
|
+
instance,
|
|
109
|
+
lastUsed: Date.now(),
|
|
110
|
+
});
|
|
111
|
+
return instance;
|
|
112
|
+
}
|
|
113
|
+
/**
|
|
114
|
+
* Evict least recently used instance from the shared cache.
|
|
115
|
+
*/
|
|
116
|
+
evictLeastRecentlyUsed() {
|
|
117
|
+
let oldestKey = null;
|
|
118
|
+
let oldestTime = Infinity;
|
|
119
|
+
for (const [key, value] of LLMBaseService.sharedInstanceCache.entries()) {
|
|
120
|
+
if (value.lastUsed < oldestTime) {
|
|
121
|
+
oldestTime = value.lastUsed;
|
|
122
|
+
oldestKey = key;
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
if (oldestKey) {
|
|
126
|
+
LLMBaseService.sharedInstanceCache.delete(oldestKey);
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
/**
|
|
130
|
+
* Set new options for the LLM service instance.
|
|
131
|
+
* The instance will be lazily recreated with new credentials on next access.
|
|
132
|
+
*/
|
|
133
|
+
setOptions(options) {
|
|
134
|
+
this.options = options;
|
|
135
|
+
}
|
|
136
|
+
/**
|
|
137
|
+
* Get the current options for the LLM service instance.
|
|
138
|
+
*/
|
|
139
|
+
getOptions() {
|
|
140
|
+
return this.options;
|
|
141
|
+
}
|
|
142
|
+
/**
|
|
143
|
+
* Clear all cached instances from the shared cache.
|
|
144
|
+
* Useful for testing and manual resource cleanup.
|
|
145
|
+
*/
|
|
146
|
+
clearInstanceCache() {
|
|
147
|
+
LLMBaseService.sharedInstanceCache.clear();
|
|
148
|
+
}
|
|
149
|
+
getDefaultTraceName(method) {
|
|
150
|
+
return `${this.serviceName}/${method}`;
|
|
151
|
+
}
|
|
152
|
+
/**
|
|
153
|
+
* Builds the per-call generation trace from the standard method options.
|
|
154
|
+
* Returns `undefined` when tracing is disabled, so providers skip the work.
|
|
155
|
+
*/
|
|
156
|
+
buildGenerationTrace(params) {
|
|
157
|
+
if (!this.tracer.isEnabled) {
|
|
158
|
+
return undefined;
|
|
159
|
+
}
|
|
160
|
+
const { method, traceContext, input, output, modelParameters, startedAt, } = params;
|
|
161
|
+
return {
|
|
162
|
+
name: traceContext?.name
|
|
163
|
+
?? traceContext?.prompt?.name
|
|
164
|
+
?? traceContext?.promptName
|
|
165
|
+
?? this.getDefaultTraceName(method),
|
|
166
|
+
prompt: traceContext?.prompt,
|
|
167
|
+
input,
|
|
168
|
+
output,
|
|
169
|
+
modelParameters,
|
|
170
|
+
metadata: traceContext?.metadata,
|
|
171
|
+
userId: traceContext?.userId,
|
|
172
|
+
sessionId: traceContext?.sessionId,
|
|
173
|
+
tags: traceContext?.tags,
|
|
174
|
+
startedAt,
|
|
175
|
+
};
|
|
176
|
+
}
|
|
177
|
+
/**
|
|
178
|
+
* Opens the per-round generation stream of an agent tool loop. Every model
|
|
179
|
+
* round the loop runs is traced through the returned recorder, so the run
|
|
180
|
+
* renders as one role-labelled transcript per round instead of a single
|
|
181
|
+
* generation covering the whole loop. The run's aggregate metrics point is
|
|
182
|
+
* written separately by `writeSuccessMetrics` and is unaffected.
|
|
183
|
+
*/
|
|
184
|
+
openAgentRounds(params) {
|
|
185
|
+
const { method, model, traceContext, modelParameters, } = params;
|
|
186
|
+
return new agentRounds_1.LLMAgentRounds((round) => {
|
|
187
|
+
const generationTrace = this.buildGenerationTrace({
|
|
188
|
+
method,
|
|
189
|
+
traceContext,
|
|
190
|
+
input: round.input,
|
|
191
|
+
output: round.isError
|
|
192
|
+
? this.describeError(round.error)
|
|
193
|
+
: round.output,
|
|
194
|
+
modelParameters,
|
|
195
|
+
startedAt: round.startedAt,
|
|
196
|
+
});
|
|
197
|
+
if (round.isError) {
|
|
198
|
+
this.recordGenerationTrace({
|
|
199
|
+
method,
|
|
200
|
+
model,
|
|
201
|
+
generationTrace,
|
|
202
|
+
isError: true,
|
|
203
|
+
});
|
|
204
|
+
return;
|
|
205
|
+
}
|
|
206
|
+
const { tokens, costs } = this.buildGenerationAccounting({
|
|
207
|
+
model,
|
|
208
|
+
usage: round.usage ?? {},
|
|
209
|
+
});
|
|
210
|
+
this.recordGenerationTrace({
|
|
211
|
+
method,
|
|
212
|
+
model,
|
|
213
|
+
generationTrace,
|
|
214
|
+
usageDetails: tokens,
|
|
215
|
+
costDetails: {
|
|
216
|
+
input: costs.input,
|
|
217
|
+
output: costs.output,
|
|
218
|
+
total: costs.total,
|
|
219
|
+
},
|
|
220
|
+
});
|
|
221
|
+
});
|
|
222
|
+
}
|
|
223
|
+
/**
|
|
224
|
+
* The generation a failed agent run falls back to when it never reached its
|
|
225
|
+
* first model round: a run that throws while assembling the request would
|
|
226
|
+
* otherwise trace nothing at all. Once a round has been recorded the
|
|
227
|
+
* transcript is already there, and no second observation is emitted for it.
|
|
228
|
+
*/
|
|
229
|
+
buildUnstartedRunTrace(params) {
|
|
230
|
+
const { rounds, method, traceContext, input, modelParameters, startedAt, } = params;
|
|
231
|
+
if (rounds.hasRecordedRound) {
|
|
232
|
+
return undefined;
|
|
233
|
+
}
|
|
234
|
+
return this.buildGenerationTrace({
|
|
235
|
+
method,
|
|
236
|
+
traceContext,
|
|
237
|
+
input,
|
|
238
|
+
modelParameters,
|
|
239
|
+
startedAt,
|
|
240
|
+
});
|
|
241
|
+
}
|
|
242
|
+
/**
|
|
243
|
+
* Write success metrics for a specific method, and emit the matching
|
|
244
|
+
* generation observation when per-call trace context is provided.
|
|
245
|
+
*/
|
|
246
|
+
writeSuccessMetrics(params) {
|
|
247
|
+
const { method, model, usage, writeMetrics, generationTrace, } = params;
|
|
248
|
+
const { tokens, costs } = this.buildGenerationAccounting({ model, usage });
|
|
249
|
+
this.recordGenerationTrace({
|
|
250
|
+
method,
|
|
251
|
+
model,
|
|
252
|
+
generationTrace,
|
|
253
|
+
usageDetails: tokens,
|
|
254
|
+
costDetails: {
|
|
255
|
+
input: costs.input,
|
|
256
|
+
output: costs.output,
|
|
257
|
+
total: costs.total,
|
|
258
|
+
},
|
|
259
|
+
});
|
|
260
|
+
if (!writeMetrics) {
|
|
261
|
+
return Promise.resolve();
|
|
262
|
+
}
|
|
263
|
+
return writeMetrics({
|
|
264
|
+
provider: this.provider,
|
|
265
|
+
purpose: this.purpose,
|
|
266
|
+
model: model?.name || null,
|
|
267
|
+
modelConfig: model?.config || null,
|
|
268
|
+
method,
|
|
269
|
+
status: 'success',
|
|
270
|
+
tokens,
|
|
271
|
+
costs,
|
|
272
|
+
});
|
|
273
|
+
}
|
|
274
|
+
/**
|
|
275
|
+
* Token totals and costs of one accounted call, in the shape both the metrics
|
|
276
|
+
* writer and a generation observation take.
|
|
277
|
+
*/
|
|
278
|
+
buildGenerationAccounting(params) {
|
|
279
|
+
const { model, usage, } = params;
|
|
280
|
+
const { inputTextTokens = 0, outputTextTokens = 0, inputAudioTokens = 0, outputAudioTokens = 0, inputCachedTextTokens = 0, inputCachedAudioTokens = 0, } = usage;
|
|
281
|
+
const costs = (0, utilities_1.calculateCosts)(model, {
|
|
282
|
+
inputTextTokens,
|
|
283
|
+
outputTextTokens,
|
|
284
|
+
inputAudioTokens,
|
|
285
|
+
outputAudioTokens,
|
|
286
|
+
inputCachedTextTokens,
|
|
287
|
+
inputCachedAudioTokens,
|
|
288
|
+
});
|
|
289
|
+
const input = (inputTextTokens
|
|
290
|
+
+ inputAudioTokens
|
|
291
|
+
+ inputCachedTextTokens
|
|
292
|
+
+ inputCachedAudioTokens);
|
|
293
|
+
const output = outputTextTokens + outputAudioTokens;
|
|
294
|
+
return {
|
|
295
|
+
tokens: {
|
|
296
|
+
input,
|
|
297
|
+
output,
|
|
298
|
+
total: input + output,
|
|
299
|
+
},
|
|
300
|
+
costs,
|
|
301
|
+
};
|
|
302
|
+
}
|
|
303
|
+
/**
|
|
304
|
+
* Write error metrics for a specific method, and emit the matching generation
|
|
305
|
+
* observation (level ERROR) when per-call trace context is given.
|
|
306
|
+
*/
|
|
307
|
+
writeErrorMetrics(params) {
|
|
308
|
+
const { method, model, isAborted = false, writeMetrics, generationTrace, error, } = params;
|
|
309
|
+
const errorGenerationTrace = generationTrace
|
|
310
|
+
? {
|
|
311
|
+
...generationTrace,
|
|
312
|
+
output: generationTrace.output ?? this.describeError(error),
|
|
313
|
+
}
|
|
314
|
+
: undefined;
|
|
315
|
+
this.recordGenerationTrace({
|
|
316
|
+
method,
|
|
317
|
+
model,
|
|
318
|
+
generationTrace: errorGenerationTrace,
|
|
319
|
+
isError: true,
|
|
320
|
+
});
|
|
321
|
+
if (!writeMetrics) {
|
|
322
|
+
return Promise.resolve();
|
|
323
|
+
}
|
|
324
|
+
return writeMetrics({
|
|
325
|
+
provider: this.provider,
|
|
326
|
+
purpose: this.purpose,
|
|
327
|
+
model: model?.name || null,
|
|
328
|
+
modelConfig: model?.config || null,
|
|
329
|
+
method,
|
|
330
|
+
status: isAborted ? 'cancelled' : 'error',
|
|
331
|
+
tokens: {
|
|
332
|
+
input: 0,
|
|
333
|
+
output: 0,
|
|
334
|
+
total: 0,
|
|
335
|
+
},
|
|
336
|
+
costs: {
|
|
337
|
+
total: 0,
|
|
338
|
+
input: 0,
|
|
339
|
+
output: 0,
|
|
340
|
+
currency: 'USD',
|
|
341
|
+
},
|
|
342
|
+
});
|
|
343
|
+
}
|
|
344
|
+
/**
|
|
345
|
+
* Log a request failure at a severity matching whether it was an
|
|
346
|
+
* intentional cancellation (isAborted) or a genuine provider/network error.
|
|
347
|
+
* An aborted request is expected behaviour, not an operational failure, so
|
|
348
|
+
* it is logged as a warning rather than an error.
|
|
349
|
+
*/
|
|
350
|
+
logRequestFailure(params) {
|
|
351
|
+
const { method, message, error, isAborted = false, meta, } = params;
|
|
352
|
+
const logger = this.logger?.child(method);
|
|
353
|
+
const payload = { error: (0, serializeError_1.serializeError)(error), ...meta };
|
|
354
|
+
if (isAborted) {
|
|
355
|
+
logger?.warn(message, payload);
|
|
356
|
+
return;
|
|
357
|
+
}
|
|
358
|
+
logger?.error(message, payload);
|
|
359
|
+
}
|
|
360
|
+
recordGenerationTrace(params) {
|
|
361
|
+
const { method, model, generationTrace, usageDetails, costDetails, isError, } = params;
|
|
362
|
+
if (!generationTrace) {
|
|
363
|
+
return;
|
|
364
|
+
}
|
|
365
|
+
const generationTraceRecord = {
|
|
366
|
+
name: generationTrace.name ?? this.getDefaultTraceName(method),
|
|
367
|
+
prompt: generationTrace.prompt,
|
|
368
|
+
input: generationTrace.input,
|
|
369
|
+
output: generationTrace.output,
|
|
370
|
+
model: model?.name ?? null,
|
|
371
|
+
modelParameters: generationTrace.modelParameters,
|
|
372
|
+
metadata: generationTrace.metadata,
|
|
373
|
+
userId: generationTrace.userId,
|
|
374
|
+
sessionId: generationTrace.sessionId,
|
|
375
|
+
tags: generationTrace.tags,
|
|
376
|
+
usageDetails,
|
|
377
|
+
costDetails,
|
|
378
|
+
isError,
|
|
379
|
+
startedAt: generationTrace.startedAt,
|
|
380
|
+
endedAt: Date.now(),
|
|
381
|
+
};
|
|
382
|
+
this.tracer.recordGeneration(generationTraceRecord);
|
|
383
|
+
}
|
|
384
|
+
describeError(error) {
|
|
385
|
+
if (error === undefined) {
|
|
386
|
+
return undefined;
|
|
387
|
+
}
|
|
388
|
+
return error instanceof Error ? error.message : String(error);
|
|
389
|
+
}
|
|
390
|
+
}
|
|
391
|
+
exports.LLMBaseService = LLMBaseService;
|
|
392
|
+
//# sourceMappingURL=LLMBaseService.abstract.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LLMBaseService.abstract.js","sourceRoot":"","sources":["../../src/services/LLMBaseService.abstract.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { LLMPurposes, type LLMProviders, type LLMCompletionMessage, type LLMSendMessageOptions, type LLMCompletionResult, type LLMInstanceOptions, type LLMModel, type LLMStructuredResult } from '../LLMService.typedefs';
|
|
2
|
+
import { type LLMLoggerInterface } from '../utilities/logger';
|
|
3
|
+
import { type LLMReporterInterface } from '../utilities/reporter';
|
|
4
|
+
import { LLMBaseService } from '../services';
|
|
5
|
+
import { type LLMSchemaInterface, type InferSchema } from '../utilities/schema';
|
|
6
|
+
export declare abstract class LLMCompletionService<Provider extends LLMProviders, Reporter extends LLMReporterInterface<any> | undefined> extends LLMBaseService<LLMPurposes.Completion, Provider, Reporter> {
|
|
7
|
+
constructor(provider: Provider, logger: LLMLoggerInterface | undefined, reporter: Reporter, options?: LLMInstanceOptions[Provider]);
|
|
8
|
+
abstract sendMessage<Schema extends LLMSchemaInterface>(options: LLMSendMessageOptions<Provider, Reporter> & {
|
|
9
|
+
schema: Schema;
|
|
10
|
+
}): Promise<LLMStructuredResult<InferSchema<Schema>>>;
|
|
11
|
+
abstract sendMessage(options: LLMSendMessageOptions<Provider, Reporter>): Promise<LLMCompletionResult>;
|
|
12
|
+
abstract sendMessage(options: LLMSendMessageOptions<Provider, Reporter> & {
|
|
13
|
+
schema?: LLMSchemaInterface;
|
|
14
|
+
}): Promise<LLMCompletionResult | LLMStructuredResult>;
|
|
15
|
+
abstract countTokens(messages: LLMCompletionMessage[], model: LLMModel<Provider>): Promise<number>;
|
|
16
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.LLMCompletionService = void 0;
|
|
4
|
+
const LLMService_typedefs_1 = require("../LLMService.typedefs");
|
|
5
|
+
const services_1 = require("../services");
|
|
6
|
+
class LLMCompletionService extends services_1.LLMBaseService {
|
|
7
|
+
constructor(provider, logger, reporter, options) {
|
|
8
|
+
super(provider, 'CompletionService', LLMService_typedefs_1.LLMPurposes.Completion, logger, reporter, options);
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
exports.LLMCompletionService = LLMCompletionService;
|
|
12
|
+
//# sourceMappingURL=LLMCompletionService.abstract.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LLMCompletionService.abstract.js","sourceRoot":"","sources":["../../src/services/LLMCompletionService.abstract.ts"],"names":[],"mappings":";;;AAAA,+DAS+B;AAG/B,yCAA4C;AAG5C,MAAsB,oBAIpB,SAAQ,yBAA0D;IAClE,YACE,QAAkB,EAClB,MAAsC,EACtC,QAAkB,EAClB,OAAsC;QAEtC,KAAK,CACH,QAAQ,EACR,mBAAmB,EACnB,iCAAW,CAAC,UAAU,EACtB,MAAM,EACN,QAAQ,EACR,OAAO,CACR,CAAC;IACJ,CAAC;CAkBF;AArCD,oDAqCC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { type LLMInstanceOptions, type LLMProviders, type LLMPurposes, type LLMServiceByPurpose } from '../LLMService.typedefs';
|
|
2
|
+
import { type LLMLoggerInterface } from '../utilities/logger';
|
|
3
|
+
import { type LLMReporterInterface } from '../utilities/reporter';
|
|
4
|
+
export interface LLMCreateServiceOptions<Provider extends LLMProviders, Purpose extends LLMPurposes, Reporter extends LLMReporterInterface<any> | undefined> {
|
|
5
|
+
purpose: Purpose;
|
|
6
|
+
logger?: LLMLoggerInterface;
|
|
7
|
+
reporter?: Reporter;
|
|
8
|
+
options?: LLMInstanceOptions[Provider];
|
|
9
|
+
}
|
|
10
|
+
export declare abstract class LLMServicePurposeFactory<Provider extends LLMProviders> {
|
|
11
|
+
abstract createService<Purpose extends LLMPurposes, Reporter extends LLMReporterInterface<any> | undefined>(options: LLMCreateServiceOptions<Provider, Purpose, Reporter>): LLMServiceByPurpose<Provider, Reporter>[Purpose];
|
|
12
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.LLMServicePurposeFactory = void 0;
|
|
4
|
+
class LLMServicePurposeFactory {
|
|
5
|
+
}
|
|
6
|
+
exports.LLMServicePurposeFactory = LLMServicePurposeFactory;
|
|
7
|
+
//# sourceMappingURL=LLMServicePurposeFactory.abstract.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LLMServicePurposeFactory.abstract.js","sourceRoot":"","sources":["../../src/services/LLMServicePurposeFactory.abstract.ts"],"names":[],"mappings":";;;AAoBA,MAAsB,wBAAwB;CAO7C;AAPD,4DAOC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { LLMPurposes, type LLMProviders, type LLMTranscribeOptions, type LLMTranscribeResult, type LLMInstanceOptions } from '../LLMService.typedefs';
|
|
2
|
+
import { type LLMLoggerInterface } from '../utilities/logger';
|
|
3
|
+
import { type LLMReporterInterface } from '../utilities/reporter';
|
|
4
|
+
import { LLMBaseService } from '../services';
|
|
5
|
+
export declare abstract class LLMSpeechToTextService<Provider extends LLMProviders, Reporter extends LLMReporterInterface<any> | undefined> extends LLMBaseService<LLMPurposes.SpeechToText, Provider, Reporter> {
|
|
6
|
+
constructor(provider: Provider, logger: LLMLoggerInterface | undefined, reporter: Reporter, options?: LLMInstanceOptions[Provider]);
|
|
7
|
+
abstract transcribe(options: LLMTranscribeOptions<Provider, Reporter>): Promise<LLMTranscribeResult>;
|
|
8
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.LLMSpeechToTextService = void 0;
|
|
4
|
+
const LLMService_typedefs_1 = require("../LLMService.typedefs");
|
|
5
|
+
const services_1 = require("../services");
|
|
6
|
+
class LLMSpeechToTextService extends services_1.LLMBaseService {
|
|
7
|
+
constructor(provider, logger, reporter, options) {
|
|
8
|
+
super(provider, 'SpeechToTextService', LLMService_typedefs_1.LLMPurposes.SpeechToText, logger, reporter, options);
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
exports.LLMSpeechToTextService = LLMSpeechToTextService;
|
|
12
|
+
//# sourceMappingURL=LLMSpeechToTextService.abstract.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LLMSpeechToTextService.abstract.js","sourceRoot":"","sources":["../../src/services/LLMSpeechToTextService.abstract.ts"],"names":[],"mappings":";;;AAAA,+DAM+B;AAG/B,yCAA4C;AAE5C,MAAsB,sBAGpB,SAAQ,yBAA4D;IACpE,YACE,QAAkB,EAClB,MAAsC,EACtC,QAAkB,EAClB,OAAsC;QAEtC,KAAK,CACH,QAAQ,EACR,qBAAqB,EACrB,iCAAW,CAAC,YAAY,EACxB,MAAM,EACN,QAAQ,EACR,OAAO,CACR,CAAC;IACJ,CAAC;CAKF;AAvBD,wDAuBC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { LLMPurposes, type LLMProviders, type LLMCreateSpeechOptions, type LLMCreateSpeechResult, type LLMInstanceOptions } from '../LLMService.typedefs';
|
|
2
|
+
import { type LLMLoggerInterface } from '../utilities/logger';
|
|
3
|
+
import { type LLMReporterInterface } from '../utilities/reporter';
|
|
4
|
+
import { LLMBaseService } from '../services';
|
|
5
|
+
export declare abstract class LLMTextToSpeechService<Provider extends LLMProviders, Reporter extends LLMReporterInterface<any> | undefined> extends LLMBaseService<LLMPurposes.TextToSpeech, Provider, Reporter> {
|
|
6
|
+
constructor(provider: Provider, logger: LLMLoggerInterface | undefined, reporter: Reporter, options?: LLMInstanceOptions[Provider]);
|
|
7
|
+
abstract createSpeech(options: LLMCreateSpeechOptions<Provider, Reporter>): Promise<LLMCreateSpeechResult>;
|
|
8
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.LLMTextToSpeechService = void 0;
|
|
4
|
+
const LLMService_typedefs_1 = require("../LLMService.typedefs");
|
|
5
|
+
const services_1 = require("../services");
|
|
6
|
+
class LLMTextToSpeechService extends services_1.LLMBaseService {
|
|
7
|
+
constructor(provider, logger, reporter, options) {
|
|
8
|
+
super(provider, 'TextToSpeechService', LLMService_typedefs_1.LLMPurposes.TextToSpeech, logger, reporter, options);
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
exports.LLMTextToSpeechService = LLMTextToSpeechService;
|
|
12
|
+
//# sourceMappingURL=LLMTextToSpeechService.abstract.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LLMTextToSpeechService.abstract.js","sourceRoot":"","sources":["../../src/services/LLMTextToSpeechService.abstract.ts"],"names":[],"mappings":";;;AAAA,+DAM+B;AAG/B,yCAA4C;AAE5C,MAAsB,sBAGpB,SAAQ,yBAA4D;IACpE,YACE,QAAkB,EAClB,MAAsC,EACtC,QAAkB,EAClB,OAAsC;QAEtC,KAAK,CACH,QAAQ,EACR,qBAAqB,EACrB,iCAAW,CAAC,YAAY,EACxB,MAAM,EACN,QAAQ,EACR,OAAO,CACR,CAAC;IACJ,CAAC;CAKF;AAvBD,wDAuBC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { type LLMAgentRoundSpec, type LLMAgentRoundWriter } from './agentRounds.typedefs';
|
|
2
|
+
/**
|
|
3
|
+
* The per-round generation stream of a single agent run.
|
|
4
|
+
*
|
|
5
|
+
* A tool loop is a sequence of model rounds, and each of them is a generation
|
|
6
|
+
* in its own right: the conversation as it stood when the request went out, and
|
|
7
|
+
* what the model answered with. Providers put every provider call through
|
|
8
|
+
* `run`, which is what guarantees a round that throws is traced exactly like a
|
|
9
|
+
* round that succeeds, and that no round of the loop goes unrecorded.
|
|
10
|
+
*
|
|
11
|
+
* The recorder deliberately knows nothing about messages — the provider hands
|
|
12
|
+
* over its own native array as the round's input.
|
|
13
|
+
*/
|
|
14
|
+
export declare class LLMAgentRounds {
|
|
15
|
+
private readonly writeRound;
|
|
16
|
+
private didRecordRound;
|
|
17
|
+
constructor(writeRound: LLMAgentRoundWriter);
|
|
18
|
+
/**
|
|
19
|
+
* Whether any model round reached the tracer. A run that fails while still
|
|
20
|
+
* preparing its first request has no transcript to show, and its caller falls
|
|
21
|
+
* back to tracing the failure on its own.
|
|
22
|
+
*/
|
|
23
|
+
get hasRecordedRound(): boolean;
|
|
24
|
+
/**
|
|
25
|
+
* Runs one provider call as a traced round. The provider's response is
|
|
26
|
+
* returned untouched and its failure rethrown unchanged: tracing never alters
|
|
27
|
+
* what the loop, or the caller, sees.
|
|
28
|
+
*/
|
|
29
|
+
run<ProviderResponse>(round: LLMAgentRoundSpec<ProviderResponse>): Promise<ProviderResponse>;
|
|
30
|
+
private callProvider;
|
|
31
|
+
private recordSafely;
|
|
32
|
+
}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.LLMAgentRounds = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* The per-round generation stream of a single agent run.
|
|
6
|
+
*
|
|
7
|
+
* A tool loop is a sequence of model rounds, and each of them is a generation
|
|
8
|
+
* in its own right: the conversation as it stood when the request went out, and
|
|
9
|
+
* what the model answered with. Providers put every provider call through
|
|
10
|
+
* `run`, which is what guarantees a round that throws is traced exactly like a
|
|
11
|
+
* round that succeeds, and that no round of the loop goes unrecorded.
|
|
12
|
+
*
|
|
13
|
+
* The recorder deliberately knows nothing about messages — the provider hands
|
|
14
|
+
* over its own native array as the round's input.
|
|
15
|
+
*/
|
|
16
|
+
class LLMAgentRounds {
|
|
17
|
+
writeRound;
|
|
18
|
+
didRecordRound = false;
|
|
19
|
+
constructor(writeRound) {
|
|
20
|
+
this.writeRound = writeRound;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Whether any model round reached the tracer. A run that fails while still
|
|
24
|
+
* preparing its first request has no transcript to show, and its caller falls
|
|
25
|
+
* back to tracing the failure on its own.
|
|
26
|
+
*/
|
|
27
|
+
get hasRecordedRound() {
|
|
28
|
+
return this.didRecordRound;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Runs one provider call as a traced round. The provider's response is
|
|
32
|
+
* returned untouched and its failure rethrown unchanged: tracing never alters
|
|
33
|
+
* what the loop, or the caller, sees.
|
|
34
|
+
*/
|
|
35
|
+
async run(round) {
|
|
36
|
+
const startedAt = Date.now();
|
|
37
|
+
const response = await this.callProvider(round, startedAt);
|
|
38
|
+
try {
|
|
39
|
+
const { output, usage } = round.describeOutcome(response);
|
|
40
|
+
this.recordSafely({
|
|
41
|
+
input: round.input,
|
|
42
|
+
output,
|
|
43
|
+
usage,
|
|
44
|
+
startedAt,
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
catch {
|
|
48
|
+
return response;
|
|
49
|
+
}
|
|
50
|
+
return response;
|
|
51
|
+
}
|
|
52
|
+
async callProvider(round, startedAt) {
|
|
53
|
+
try {
|
|
54
|
+
return await round.call();
|
|
55
|
+
}
|
|
56
|
+
catch (error) {
|
|
57
|
+
this.recordSafely({
|
|
58
|
+
input: round.input,
|
|
59
|
+
startedAt,
|
|
60
|
+
error,
|
|
61
|
+
isError: true,
|
|
62
|
+
});
|
|
63
|
+
throw error;
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
recordSafely(round) {
|
|
67
|
+
try {
|
|
68
|
+
this.writeRound(round);
|
|
69
|
+
this.didRecordRound = true;
|
|
70
|
+
}
|
|
71
|
+
catch {
|
|
72
|
+
return;
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
exports.LLMAgentRounds = LLMAgentRounds;
|
|
77
|
+
//# sourceMappingURL=LLMAgentRounds.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LLMAgentRounds.js","sourceRoot":"","sources":["../../../src/services/agentRounds/LLMAgentRounds.ts"],"names":[],"mappings":";;;AAMA;;;;;;;;;;;GAWG;AACH,MAAa,cAAc;IAGI;IAFrB,cAAc,GAAG,KAAK,CAAC;IAE/B,YAA6B,UAA+B;QAA/B,eAAU,GAAV,UAAU,CAAqB;IAAG,CAAC;IAEhE;;;;OAIG;IACH,IAAI,gBAAgB;QAClB,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,GAAG,CACP,KAA0C;QAE1C,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;QAE3D,IAAI,CAAC;YACH,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;YAE1D,IAAI,CAAC,YAAY,CAAC;gBAChB,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,MAAM;gBACN,KAAK;gBACL,SAAS;aACV,CAAC,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEO,KAAK,CAAC,YAAY,CACxB,KAA0C,EAC1C,SAAiB;QAEjB,IAAI,CAAC;YACH,OAAO,MAAM,KAAK,CAAC,IAAI,EAAE,CAAC;QAC5B,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACxB,IAAI,CAAC,YAAY,CAAC;gBAChB,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,SAAS;gBACT,KAAK;gBACL,OAAO,EAAE,IAAI;aACd,CAAC,CAAC;YAEH,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAEO,YAAY,CAAC,KAAoB;QACvC,IAAI,CAAC;YACH,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;YACvB,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC7B,CAAC;QAAC,MAAM,CAAC;YACP,OAAO;QACT,CAAC;IACH,CAAC;CACF;AAnED,wCAmEC"}
|