类 ThreadsClient<TStateType, TUpdateType>

类型参数

继承关系

  • BaseClient
    • ThreadsClient

构造函数

属性

apiUrl: string
asyncCaller: AsyncCaller
defaultHeaders: Record<string, HeaderValue>
onRequest?: RequestHook
timeoutMs: undefined | number

方法

  • 复制现有线程

    参数

    • threadId: string

      要复制的线程 ID

    返回 Promise<Thread<TStateType>>

    新复制的线程

  • 创建新会话。

    参数

    • 可选的 payload: {
          graphId?: string;
          ifExists?: OnConflictBehavior;
          metadata?: Metadata;
          supersteps?: {
              updates: {
                  asNode: string;
                  command?: Command;
                  values: unknown;
              }[];
          }[];
          threadId?: string;
      }

      用于创建线程的负载。

      • 可选的 graphId?: string

        要与线程关联的图 ID。

      • 可选的 ifExists?: OnConflictBehavior

        如何处理重复创建。

        默认值

        "raise"
        
      • 可选的 metadata?: Metadata

        线程的元数据。

      • 可选的 supersteps?: {
            updates: {
                asNode: string;
                command?: Command;
                values: unknown;
            }[];
        }[]

        创建线程时应用超步骤列表,每个超步骤包含一系列更新。

        用于在部署之间复制线程。

      • 可选的 threadId?: string

        要创建的线程 ID。

        如果未提供,将生成一个随机 UUID。

    返回 Promise<Thread<TStateType>>

    创建的会话。

  • 删除会话。

    参数

    • threadId: string

      线程 ID。

    返回 Promise<void>

  • 类型参数

    • T

    参数

    • path: string
    • options: RequestInit & {
          json?: unknown;
          params?: Record<string, unknown>;
          signal?: AbortSignal;
          timeoutMs?: null | number;
          withResponse: true;
      }

    返回 Promise<[T, Response]>

  • 类型参数

    • T

    参数

    • path: string
    • 可选 options: RequestInit & {
          json?: unknown;
          params?: Record<string, unknown>;
          signal?: AbortSignal;
          timeoutMs?: null | number;
          withResponse?: false;
      }

    返回 Promise<T>

  • 获取线程的所有历史状态。

    类型参数

    参数

    • threadId: string

      线程 ID。

    • 可选 options: {
          before?: Config;
          checkpoint?: Partial<Omit<Checkpoint, "thread_id">>;
          limit?: number;
          metadata?: Metadata;
      }

      附加选项。

      • 可选的 before?: Config
      • 可选的 checkpoint?: Partial<Omit<Checkpoint, "thread_id">>
      • 可选 limit?: number
      • 可选的 metadata?: Metadata

    返回 Promise<ThreadState<ValuesType>[]>

    线程状态列表。

  • 获取线程状态。

    类型参数

    参数

    • threadId: string

      线程 ID。

    • 可选的 checkpoint: string | Checkpoint
    • 可选 options: {
          subgraphs?: boolean;
      }
      • 可选的 subgraphs?: boolean

    返回 Promise<ThreadState<ValuesType>>

    线程状态。

  • 修补线程的元数据。

    参数

    • threadIdOrConfig: string | Config

      要修补状态的线程 ID 或配置。

    • metadata: Metadata

      用于修补状态的元数据。

    返回 Promise<void>

  • 参数

    • path: string
    • 可选 options: RequestInit & {
          json?: unknown;
          params?: Record<string, unknown>;
          timeoutMs?: null | number;
          withResponse?: boolean;
      }

    返回 [url: URL, init: RequestInit]

  • 列出线程

    类型参数

    参数

    • 可选的 query: {
          limit?: number;
          metadata?: Metadata;
          offset?: number;
          sortBy?: ThreadSortBy;
          sortOrder?: SortOrder;
          status?: ThreadStatus;
      }

      查询选项

      • 可选 limit?: number

        要返回的最大线程数。默认为 10

      • 可选的 metadata?: Metadata

        用于过滤线程的元数据。

      • 可选 offset?: number

        起始偏移量。

      • 可选的 sortBy?: ThreadSortBy

        排序方式。

      • 可选的 sortOrder?: SortOrder

        排序顺序。必须是 'asc' 或 'desc' 之一。

      • 可选的 status?: ThreadStatus

        要筛选的线程状态。

    返回 Promise<Thread<ValuesType>[]>

    线程列表

  • 更新会话。

    参数

    • threadId: string

      线程 ID。

    • 可选的 payload: {
          metadata?: Metadata;
      }

      用于更新线程的负载。

      • 可选的 metadata?: Metadata

        线程的元数据。

    返回 Promise<Thread<DefaultValues>>

    更新后的线程。

  • 向线程添加状态。

    类型参数

    参数

    • threadId: string

      线程的 ID。

    • options: {
          asNode?: string;
          checkpoint?: Checkpoint;
          checkpointId?: string;
          values: ValuesType;
      }
      • 可选的 asNode?: string
      • 可选的 checkpoint?: Checkpoint
      • 可选的 checkpointId?: string
      • values: ValuesType

    返回 Promise<Pick<Config, "configurable">>