UNPKG

@langchain/core

Version:
1 lines 10.6 kB
{"version":3,"file":"chat_models.d.ts","names":["CallbackManagerForLLMRun","BaseChatModel","BaseChatModelCallOptions","BaseChatModelParams","BaseLLMParams","BaseMessage","AIMessage","AIMessageChunk","ChatResult","ChatGenerationChunk","Runnable","StructuredTool","StructuredOutputMethodParams","BaseLanguageModelInput","StructuredOutputMethodOptions","InteropZodType","ToolSpec","Record","FakeStreamingChatModelCallOptions","FakeStreamingChatModelFields","FakeChatModel","Promise","FakeStreamingChatModel","sleep","responses","chunks","toolStyle","thrownErrorString","______messages_message_js0","MessageToolSet","MessageStructure","AsyncGenerator","FakeChatInput","FakeListChatModelCallOptions","FakeListChatModel","RunOutput"],"sources":["../../../src/utils/testing/chat_models.d.ts"],"sourcesContent":["import { CallbackManagerForLLMRun } from \"../../callbacks/manager.js\";\nimport { BaseChatModel, BaseChatModelCallOptions, BaseChatModelParams } from \"../../language_models/chat_models.js\";\nimport { BaseLLMParams } from \"../../language_models/llms.js\";\nimport { BaseMessage, AIMessage, AIMessageChunk } from \"../../messages/index.js\";\nimport { type ChatResult, ChatGenerationChunk } from \"../../outputs.js\";\nimport { Runnable } from \"../../runnables/base.js\";\nimport { StructuredTool } from \"../../tools/index.js\";\nimport { StructuredOutputMethodParams, BaseLanguageModelInput, StructuredOutputMethodOptions } from \"../../language_models/base.js\";\nimport { InteropZodType } from \"../types/zod.js\";\n/** Minimal shape actually needed by `bindTools` */\nexport interface ToolSpec {\n name: string;\n description?: string;\n schema: InteropZodType | Record<string, unknown>;\n}\n/**\n * Interface specific to the Fake Streaming Chat model.\n */\nexport interface FakeStreamingChatModelCallOptions extends BaseChatModelCallOptions {\n}\n/**\n * Interface for the Constructor-field specific to the Fake Streaming Chat model (all optional because we fill in defaults).\n */\nexport interface FakeStreamingChatModelFields extends BaseChatModelParams {\n /** Milliseconds to pause between fallback char-by-char chunks */\n sleep?: number;\n /** Full AI messages to fall back to when no `chunks` supplied */\n responses?: BaseMessage[];\n /** Exact chunks to emit (can include tool-call deltas) */\n chunks?: AIMessageChunk[];\n /** How tool specs are formatted in `bindTools` */\n toolStyle?: \"openai\" | \"anthropic\" | \"bedrock\" | \"google\";\n /** Throw this error instead of streaming (useful in tests) */\n thrownErrorString?: string;\n}\nexport declare class FakeChatModel extends BaseChatModel {\n _combineLLMOutput(): never[];\n _llmType(): string;\n _generate(messages: BaseMessage[], options?: this[\"ParsedCallOptions\"], runManager?: CallbackManagerForLLMRun): Promise<ChatResult>;\n}\nexport declare class FakeStreamingChatModel extends BaseChatModel<FakeStreamingChatModelCallOptions> {\n sleep: number;\n responses: BaseMessage[];\n chunks: AIMessageChunk[];\n toolStyle: \"openai\" | \"anthropic\" | \"bedrock\" | \"google\";\n thrownErrorString?: string;\n private tools;\n constructor({ sleep, responses, chunks, toolStyle, thrownErrorString, ...rest }: FakeStreamingChatModelFields & BaseLLMParams);\n _llmType(): string;\n bindTools(tools: (StructuredTool | ToolSpec)[]): Runnable<BaseLanguageModelInput, AIMessageChunk<import(\"../../messages/message.js\").MessageStructure<import(\"../../messages/message.js\").MessageToolSet>>, FakeStreamingChatModelCallOptions>;\n _generate(messages: BaseMessage[], _options: this[\"ParsedCallOptions\"], _runManager?: CallbackManagerForLLMRun): Promise<ChatResult>;\n _streamResponseChunks(_messages: BaseMessage[], options: this[\"ParsedCallOptions\"], runManager?: CallbackManagerForLLMRun): AsyncGenerator<ChatGenerationChunk>;\n}\n/**\n * Interface for the input parameters specific to the Fake List Chat model.\n */\nexport interface FakeChatInput extends BaseChatModelParams {\n /** Responses to return */\n responses: string[];\n /** Time to sleep in milliseconds between responses */\n sleep?: number;\n emitCustomEvent?: boolean;\n /**\n * Generation info to include on the last chunk during streaming.\n * This gets merged into response_metadata by the base chat model.\n * Useful for testing response_metadata propagation (e.g., finish_reason).\n */\n generationInfo?: Record<string, unknown>;\n}\nexport interface FakeListChatModelCallOptions extends BaseChatModelCallOptions {\n thrownErrorString?: string;\n}\n/**\n * A fake Chat Model that returns a predefined list of responses. It can be used\n * for testing purposes.\n * @example\n * ```typescript\n * const chat = new FakeListChatModel({\n * responses: [\"I'll callback later.\", \"You 'console' them!\"]\n * });\n *\n * const firstMessage = new HumanMessage(\"You want to hear a JavaScript joke?\");\n * const secondMessage = new HumanMessage(\"How do you cheer up a JavaScript developer?\");\n *\n * // Call the chat model with a message and log the response\n * const firstResponse = await chat.call([firstMessage]);\n * console.log({ firstResponse });\n *\n * const secondResponse = await chat.call([secondMessage]);\n * console.log({ secondResponse });\n * ```\n */\nexport declare class FakeListChatModel extends BaseChatModel<FakeListChatModelCallOptions> {\n static lc_name(): string;\n lc_serializable: boolean;\n responses: string[];\n i: number;\n sleep?: number;\n emitCustomEvent: boolean;\n generationInfo?: Record<string, unknown>;\n private tools;\n toolStyle: \"openai\" | \"anthropic\" | \"bedrock\" | \"google\";\n constructor(params: FakeChatInput);\n _combineLLMOutput(): never[];\n _llmType(): string;\n _generate(_messages: BaseMessage[], options?: this[\"ParsedCallOptions\"], runManager?: CallbackManagerForLLMRun): Promise<ChatResult>;\n _formatGeneration(text: string): {\n message: AIMessage<import(\"../../messages/message.js\").MessageStructure<import(\"../../messages/message.js\").MessageToolSet>>;\n text: string;\n };\n _streamResponseChunks(_messages: BaseMessage[], options: this[\"ParsedCallOptions\"], runManager?: CallbackManagerForLLMRun): AsyncGenerator<ChatGenerationChunk>;\n _sleepIfRequested(): Promise<void>;\n _sleep(): Promise<void>;\n _createResponseChunk(text: string, generationInfo?: Record<string, any>): ChatGenerationChunk;\n _currentResponse(): string;\n _incrementResponse(): void;\n bindTools(tools: (StructuredTool | ToolSpec)[]): Runnable<BaseLanguageModelInput, AIMessageChunk<import(\"../../messages/message.js\").MessageStructure<import(\"../../messages/message.js\").MessageToolSet>>, FakeListChatModelCallOptions>;\n withStructuredOutput<RunOutput extends Record<string, any> = Record<string, any>>(_params: StructuredOutputMethodParams<RunOutput, false> | InteropZodType<RunOutput> | Record<string, any>, config?: StructuredOutputMethodOptions<false>): Runnable<BaseLanguageModelInput, RunOutput>;\n withStructuredOutput<RunOutput extends Record<string, any> = Record<string, any>>(_params: StructuredOutputMethodParams<RunOutput, true> | InteropZodType<RunOutput> | Record<string, any>, config?: StructuredOutputMethodOptions<true>): Runnable<BaseLanguageModelInput, {\n raw: BaseMessage;\n parsed: RunOutput;\n }>;\n}\n//# sourceMappingURL=chat_models.d.ts.map"],"mappings":"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"}