UNPKG

@langchain/core

Version:
1 lines 10.1 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","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>; // Either a Zod schema *or* a plain JSON-Schema object\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>, 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}\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 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>;\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): ChatGenerationChunk;\n _currentResponse(): string;\n _incrementResponse(): void;\n withStructuredOutput<\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n RunOutput extends Record<string, any> = Record<string, any>>(_params: StructuredOutputMethodParams<RunOutput, false> | InteropZodType<RunOutput>\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n | Record<string, any>, config?: StructuredOutputMethodOptions<false>): Runnable<BaseLanguageModelInput, RunOutput>;\n withStructuredOutput<\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n RunOutput extends Record<string, any> = Record<string, any>>(_params: StructuredOutputMethodParams<RunOutput, true> | InteropZodType<RunOutput>\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n | Record<string, any>, config?: StructuredOutputMethodOptions<true>): Runnable<BaseLanguageModelInput, {\n raw: BaseMessage;\n parsed: RunOutput;\n }>;\n}\n"],"mappings":"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"}