已弃用

请使用 ToolNode 代替。

继承关系

  • RunnableBinding<ToolExecutorInputType, ToolExecutorOutputType>
    • ToolExecutor

构造函数

  • 参数

    返回 ToolExecutor

属性

bound: Runnable<any, any, RunnableConfig<Record<string, any>>>
config: RunnableConfig<Record<string, any>>
configFactories?: ((config) => RunnableConfig<Record<string, any>> | Promise<RunnableConfig<Record<string, any>>>)[]

类型声明

    • (config): RunnableConfig<Record<string, any>> | Promise<RunnableConfig<Record<string, any>>>
    • 参数

      • config: RunnableConfig<Record<string, any>>

      返回 RunnableConfig<Record<string, any>> | Promise<RunnableConfig<Record<string, any>>>

invalidToolMsgTemplate: string
kwargs?: Partial<RunnableConfig<Record<string, any>>>
lc_graph_name: string
lc_kwargs: SerializedFields
lc_namespace: string[]
lc_runnable: boolean
lc_serializable: boolean
name?: string
toolMap: Record<string, RunnableToolLike<ZodType<any, ZodTypeDef, any>, unknown> | StructuredToolInterface<ZodObjectAny>>
tools: (RunnableToolLike<ZodType<any, ZodTypeDef, any>, unknown> | StructuredToolInterface<ZodObjectAny>)[]

访问器

  • get lc_aliases(): undefined | {
        [key: string]: string;
    }
  • 构造函数参数别名映射。键是属性名称,例如“foo”。值是在序列化中将替换键的别名。这用于例如使参数名称与 Python 匹配。

    Returns undefined | {
        [key: string]: string;
    }

  • get lc_attributes(): undefined | SerializedFields
  • 要与构造函数参数合并的附加属性映射。键是属性名称,例如“foo”。值是将要序列化的属性值。这些属性需要被构造函数接受为参数。

    Returns undefined | SerializedFields

  • get lc_id(): string[]
  • 模块的最终序列化标识符。

    Returns string[]

  • get lc_secrets(): undefined | {
        [key: string]: string;
    }
  • 密钥映射,将从序列化中省略。键是构造函数参数中密钥的路径,例如“foo.bar.baz”。值是密钥 ID,将在反序列化时使用。

    Returns undefined | {
        [key: string]: string;
    }

  • get lc_serializable_keys(): undefined | string[]
  • 应序列化的键的手动列表。如果未覆盖,则传递给构造函数的所有字段都将被序列化。

    Returns undefined | string[]

方法

  • 处理 runnable 的批处理和配置的内部方法。它接受一个函数、输入值和可选配置,并返回一个解析为输出值的 Promise。

    类型参数

    • T extends any

    参数

    • func: ((inputs, options?, runManagers?, batchOptions?) => Promise<any[]>)

      要为每个输入值执行的函数。

        • (inputs, options?, runManagers?, batchOptions?): Promise<any[]>
        • 参数

          • inputs: T[]
          • 可选 options: Partial<RunnableConfig<Record<string, any>>>[]
          • 可选 runManagers: (undefined | CallbackManagerForChainRun)[]
          • 可选 batchOptions: RunnableBatchOptions

          Returns Promise<any[]>

    • inputs: T[]
    • 可选 options: Partial<RunnableConfig<Record<string, any>> & {
          runType?: string;
      }> | Partial<RunnableConfig<Record<string, any>> & {
          runType?: string;
      }>[]
    • 可选 batchOptions: RunnableBatchOptions

    Returns Promise<any[]>

    一个解析为输出值的 Promise。

  • 类型参数

    • T extends any

    参数

    • func: ((input) => Promise<any>) | ((input, config?, runManager?) => Promise<any>)
    • input: T
    • 可选 options: Partial<RunnableConfig<Record<string, any>>> & {
          runType?: string;
      }

    Returns Promise<any>

  • 执行工具调用

    参数

    • toolInvocation: ToolInvocationInterface

      要调用的工具以及要传递给它的输入。

    • 可选 config: RunnableConfig<Record<string, any>>

      调用工具时要传递的可选配置。

    Returns Promise<any>

    工具调用的结果(stringToolMessage,由 ToolOutput 泛型设置)或字符串错误消息。

  • 类型参数

    • O extends RunnableConfig<Record<string, any>, O> & {
          runType?: string;
      }

    参数

    • options: Partial<O> | Partial<O>[]
    • 可选 length: number

    Returns Partial<O>[]

  • 参数

    • Rest ...options: (undefined | RunnableConfig<Record<string, any>> | Partial<RunnableConfig<Record<string, any>>>)[]

    Returns Promise<Partial<RunnableConfig<Record<string, any>>>>

  • 参数

    • 可选 options: Partial<RunnableConfig<Record<string, any>>>

    Returns [RunnableConfig<Record<string, any>>, Omit<Partial<RunnableConfig<Record<string, any>>>, keyof RunnableConfig<Record<string, any>>>]

  • 参数

    • input: any
    • 可选 options: Partial<RunnableConfig<Record<string, any>>>

    Returns AsyncGenerator<any, void, unknown>

  • 参数

    • input: any
    • logStreamCallbackHandler: LogStreamCallbackHandler
    • config: Partial<RunnableConfig<Record<string, any>>>

    Returns AsyncGenerator<RunLogPatch, any, unknown>

  • Helper method to transform an Iterator of Input values into an Iterator of Output values, with callbacks. Use this to implement stream() or transform() in Runnable subclasses.

    类型参数

    • I extends any
    • O extends any

    参数

    • inputGenerator: AsyncGenerator<I, any, unknown>
    • transformer: ((generator, runManager?, options?) => AsyncGenerator<O, any, unknown>)
        • (generator, runManager?, options?): AsyncGenerator<O, any, unknown>
        • 参数

          • generator: AsyncGenerator<I, any, unknown>
          • 可选 runManager: CallbackManagerForChainRun
          • 可选 options: Partial<RunnableConfig<Record<string, any>>>

          Returns AsyncGenerator<O, any, unknown>

    • 可选 options: Partial<RunnableConfig<Record<string, any>>> & {
          runType?: string;
      }

    Returns AsyncGenerator<O, any, unknown>

  • Convert a runnable to a tool. Return a new instance of RunnableToolLike which contains the runnable, name, description and schema.

    类型参数

    • T extends any = any

    参数

    • fields: {
          description?: string;
          name?: string;
          schema: ZodType<T, ZodTypeDef, T>;
      }
      • 可选 description?: string

        The description of the tool. Falls back to the description on the Zod schema if not provided, or undefined if neither are provided.

      • 可选 name?: string

        The name of the tool. If not provided, it will default to the name of the runnable.

      • schema: ZodType<T, ZodTypeDef, T>

        The Zod schema for the input of the tool. Infers the Zod type from the input type of the runnable.

    Returns RunnableToolLike<ZodType<ToolCall | T, ZodTypeDef, ToolCall | T>, any>

    An instance of RunnableToolLike which is a runnable that can be used as a tool.

  • Assigns new fields to the dict output of this runnable. Returns a new runnable.

    参数

    • mapping: RunnableMapLike<Record<string, unknown>, Record<string, unknown>>

    Returns Runnable<any, any, RunnableConfig<Record<string, any>>>

  • 参数

    • inputs: any[]
    • 可选 options: Partial<RunnableConfig<Record<string, any>>> | Partial<RunnableConfig<Record<string, any>>>[]
    • 可选 batchOptions: RunnableBatchOptions & {
          returnExceptions?: false;
      }

    Returns Promise<any[]>

  • 参数

    • inputs: any[]
    • 可选 options: Partial<RunnableConfig<Record<string, any>>> | Partial<RunnableConfig<Record<string, any>>>[]
    • 可选 batchOptions: RunnableBatchOptions & {
          returnExceptions: true;
      }

    Returns Promise<any[]>

  • 参数

    • inputs: any[]
    • 可选 options: Partial<RunnableConfig<Record<string, any>>> | Partial<RunnableConfig<Record<string, any>>>[]
    • 可选 batchOptions: RunnableBatchOptions

    Returns Promise<any[]>

  • 参数

    • kwargs: Partial<RunnableConfig<Record<string, any>>>

    Returns RunnableBinding<any, any, RunnableConfig<Record<string, any>>>

  • 参数

    • 可选 _: RunnableConfig<Record<string, any>>

    Returns Graph

  • 参数

    • 可选 suffix: string

    Returns string

  • 参数

    • input: any
    • 可选 options: Partial<RunnableConfig<Record<string, any>>>

    Returns Promise<any>

  • Return a new Runnable that maps a list of inputs to a list of outputs, by calling invoke() with each input.

    Returns Runnable<any[], any[], RunnableConfig<Record<string, any>>>

  • Pick keys from the dict output of this runnable. Returns a new runnable.

    参数

    • keys: string | string[]

    Returns Runnable<any, any, RunnableConfig<Record<string, any>>>

  • Create a new runnable sequence that runs each individual runnable in series, piping the output of one runnable into another runnable or runnable-like.

    类型参数

    • NewRunOutput

    参数

    • coerceable: RunnableLike<any, NewRunOutput, RunnableConfig<Record<string, any>>>

      A runnable, function, or object whose values are functions or runnables.

    Returns Runnable<any, Exclude<NewRunOutput, Error>, RunnableConfig<Record<string, any>>>

    A new runnable sequence.

  • 参数

    • input: any
    • 可选 options: Partial<RunnableConfig<Record<string, any>>>

    返回 Promise<IterableReadableStream<any>>

  • 参数

    • input: any
    • options: Partial<RunnableConfig<Record<string, any>>> & {
          version: "v1" | "v2";
      }
    • Optional streamOptions: Omit<LogStreamCallbackHandlerInput, "autoClose">

    返回 IterableReadableStream<StreamEvent>

  • 参数

    • input: any
    • options: Partial<RunnableConfig<Record<string, any>>> & {
          encoding: "text/event-stream";
          version: "v1" | "v2";
      }
    • Optional streamOptions: Omit<LogStreamCallbackHandlerInput, "autoClose">

    返回 IterableReadableStream<Uint8Array>

  • 从 runnable 对象流式传输所有输出,正如回调系统报告的那样。这包括 LLM、Retriever、Tool 等所有内部运行。输出以 Log 对象的形式流式传输,其中包括 jsonpatch 操作列表,这些操作描述了运行的每个步骤中状态是如何变化的,以及运行的最终状态。可以按顺序应用 jsonpatch 操作来构建状态。

    参数

    • input: any
    • 可选 options: Partial<RunnableConfig<Record<string, any>>>
    • Optional streamOptions: Omit<LogStreamCallbackHandlerInput, "autoClose">

    Returns AsyncGenerator<RunLogPatch, any, unknown>

  • 返回 Serialized

  • 返回 SerializedNotImplemented

  • 参数

    • generator: AsyncGenerator<any, any, unknown>
    • 可选 options: Partial<RunnableConfig<Record<string, any>>>

    返回 AsyncGenerator<any, any, unknown>

  • 参数

    • config: RunnableConfig<Record<string, any>>

    Returns Runnable<any, any, RunnableConfig<Record<string, any>>>

  • 从当前的 runnable 对象创建一个新的 runnable 对象,如果初始调用失败,它将尝试调用其他传递的后备 runnable 对象。

    参数

    • fields: Runnable<any, any, RunnableConfig<Record<string, any>>>[] | {
          fallbacks: Runnable<any, any, RunnableConfig<Record<string, any>>>[];
      }

    返回 RunnableWithFallbacks<any, any>

    一个新的 RunnableWithFallbacks。

  • 将生命周期监听器绑定到 Runnable 对象,返回一个新的 Runnable 对象。Run 对象包含关于运行的信息,包括其 id、类型、输入、输出、错误、startTime、endTime,以及添加到运行中的任何标签或元数据。

    参数

    • params: {
          onEnd?: ((run, config?) => void | Promise<void>);
          onError?: ((run, config?) => void | Promise<void>);
          onStart?: ((run, config?) => void | Promise<void>);
      }

      包含回调函数的对象。

      • Optional onEnd?: ((run, config?) => void | Promise<void>)

        在 runnable 对象完成运行后调用,带有 Run 对象。

          • (run, config?): void | Promise<void>
          • 参数

            • run: Run
            • 可选 config: RunnableConfig<Record<string, any>>

            返回 void | Promise<void>

      • Optional onError?: ((run, config?) => void | Promise<void>)

        如果 runnable 对象抛出错误,则调用此函数,带有 Run 对象。

          • (run, config?): void | Promise<void>
          • 参数

            • run: Run
            • 可选 config: RunnableConfig<Record<string, any>>

            返回 void | Promise<void>

      • Optional onStart?: ((run, config?) => void | Promise<void>)

        在 runnable 对象开始运行之前调用,带有 Run 对象。

          • (run, config?): void | Promise<void>
          • 参数

            • run: Run
            • 可选 config: RunnableConfig<Record<string, any>>

            返回 void | Promise<void>

    Returns Runnable<any, any, RunnableConfig<Record<string, any>>>

  • 参数

    • Optional fields: {
          onFailedAttempt?: RunnableRetryFailedAttemptHandler;
          stopAfterAttempt?: number;
      }
      • Optional onFailedAttempt?: RunnableRetryFailedAttemptHandler
      • Optional stopAfterAttempt?: number

    返回 RunnableRetry<any, any, RunnableConfig<Record<string, any>>>

  • 参数

    • thing: any

    返回 thing is Runnable<any, any, RunnableConfig<Record<string, any>>>

  • 参数

    • thing: any

    返回 thing is RunnableBinding<any, any, any>

  • Returns string