已弃用

请改用 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 匹配。

    返回 undefined | {
        [key: string]: string;
    }

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

    返回 undefined | SerializedFields

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

    返回 string[]

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

    返回 undefined | {
        [key: string]: string;
    }

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

    返回 undefined | string[]

方法

  • 处理可运行对象的批量处理和配置的内部方法。它接受一个函数、输入值和可选配置,并返回一个解析为输出值的 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

          返回 Promise<any[]>

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

    返回 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;
      }

    返回 Promise<any>

  • 执行工具调用

    参数

    • toolInvocation: ToolInvocationInterface

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

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

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

    返回 Promise<any>

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

  • 类型参数

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

    参数

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

    返回 Partial<O>[]

  • 参数

    • 剩余参数 ...options: (undefined | RunnableConfig<Record<string, any>> | Partial<RunnableConfig<Record<string, any>>>)[]

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

  • 参数

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

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

  • 参数

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

    返回 AsyncGenerator<any, void, unknown>

  • 参数

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

    返回 AsyncGenerator<RunLogPatch, any, any>

  • 辅助方法,用于将输入值迭代器转换为输出值迭代器,并带有回调。使用此方法在 Runnable 子类中实现 stream()transform()

    类型参数

    • I extends any
    • O extends any

    参数

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

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

          返回 AsyncGenerator<O, any, any>

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

    返回 AsyncGenerator<O, any, any>

  • 将可运行对象转换为工具。返回一个包含可运行对象、名称、描述和模式的 RunnableToolLike 新实例。

    类型参数

    • T extends any = any

    参数

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

        工具的描述。如果未提供,则回退到 Zod 模式上的描述,如果两者都未提供,则为 undefined。

      • 可选 name?: string

        工具的名称。如果未提供,则默认为可运行对象的名称。

      • schema: ZodType<T, ZodTypeDef, T>

        工具输入的 Zod 模式。从可运行对象的输入类型推断 Zod 类型。

    返回 RunnableToolLike<ZodType<ToolCall | T, ZodTypeDef, ToolCall | T>, any>

    一个 RunnableToolLike 实例,它是一个可用作工具的可运行对象。

  • 为可运行对象的字典输出分配新字段。返回一个新的可运行对象。

    参数

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

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

  • 参数

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

    返回 Promise<any[]>

  • 参数

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

    返回 Promise<any[]>

  • 参数

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

    返回 Promise<any[]>

  • 参数

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

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

  • 参数

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

    返回 Graph

  • 参数

    • 可选 suffix: string

    返回 string

  • 参数

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

    返回 Promise<any>

  • 返回一个新的 Runnable,通过对每个输入调用 invoke(),将输入列表映射到输出列表。

    返回 Runnable<any[], any[], RunnableConfig<Record<string, any>>>

  • 从此 Runnable 的字典输出中选取键。返回一个新的 Runnable。

    参数

    • keys: string | string[]

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

  • 创建一个新的 Runnable 序列,它按顺序运行每个独立的 Runnable,将一个 Runnable 的输出传递给另一个 Runnable 或类似 Runnable 的对象。

    类型参数

    • NewRunOutput

    参数

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

      一个 Runnable、函数或其值为函数或 Runnable 的对象。

    返回 Runnable<any, Exclude<NewRunOutput, Error>, RunnableConfig<Record<string, any>>>

    一个新的 Runnable 序列。

  • 参数

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

    返回 Promise<IterableReadableStream<any>>

  • 参数

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

    返回 IterableReadableStream<StreamEvent>

  • 参数

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

    返回 IterableReadableStream<Uint8Array<ArrayBufferLike>>

  • 流式传输 Runnable 的所有输出,如同报告给回调系统一样。这包括 LLM、检索器、工具等所有内部运行。输出以日志对象形式流式传输,其中包括描述运行状态每一步变化的 jsonpatch 操作列表,以及运行的最终状态。jsonpatch 操作可以按顺序应用以构建状态。

    参数

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

    返回 AsyncGenerator<RunLogPatch, any, any>

  • 返回 Serialized

  • 返回 SerializedNotImplemented

  • 参数

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

    返回 AsyncGenerator<any, any, any>

  • 参数

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

    返回 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、类型、输入、输出、错误、开始时间、结束时间,以及添加到运行中的任何标签或元数据。

    参数

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

      包含回调函数的对象。

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

        Runnable 运行结束后,将使用 Run 对象调用此函数。

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

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

            返回 void | Promise<void>

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

        如果 Runnable 抛出错误,将使用 Run 对象调用此函数。

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

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

            返回 void | Promise<void>

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

        Runnable 开始运行前,将使用 Run 对象调用此函数。

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

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

            返回 void | Promise<void>

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

  • 参数

    • 可选 fields: {
          onFailedAttempt?: RunnableRetryFailedAttemptHandler;
          stopAfterAttempt?: number;
      }
      • 可选 onFailedAttempt?: RunnableRetryFailedAttemptHandler
      • 可选 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>

  • 返回 string