跳到内容

SDK (JS/TS)

@langchain/langgraph-sdk


@langchain/langgraph-sdk

接口

函数

@langchain/langgraph-sdk


@langchain/langgraph-sdk / AssistantsClient

类: AssistantsClient

定义在: client.ts:270

继承自

  • BaseClient

构造函数

new AssistantsClient()

new AssistantsClient(config?): AssistantsClient

定义在: client.ts:85

参数
config?

ClientConfig

返回值

AssistantsClient

继承自

BaseClient.constructor

方法

create()

create(payload): Promise\<Assistant>

定义在: client.ts:335

创建一个新的助手。

参数
payload

用于创建助手的有效负载。

# assistantId?

string

# config?

配置

# graphId

string

# ifExists?

OnConflictBehavior

# metadata?

Metadata

# name?

string

返回值

Promise\<Assistant>

创建的助手。


delete()

delete(assistantId): Promise\<void>

定义在: client.ts:387

删除一个助手。

参数
assistantId

string

助手的 ID。

返回值

Promise\<void>


get()

get(assistantId): Promise\<Assistant>

定义在: client.ts:277

通过 ID 获取助手。

参数
assistantId

string

助手的 ID。

返回值

Promise\<Assistant>

Assistant


getGraph()

getGraph(assistantId, options?): Promise\<AssistantGraph>

定义在: client.ts:287

获取分配给可运行对象的图的 JSON 表示

参数
assistantId

string

助手的 ID。

options?
# xray?

number | boolean

是否在序列化的图表示中包含子图。如果提供整数值,则仅包含深度小于或等于该值的子图。

返回值

Promise\<AssistantGraph>

序列化的图


getSchemas()

getSchemas(assistantId): Promise\<GraphSchema>

定义在: client.ts:301

获取分配给可运行对象的图的状态和配置模式

参数
assistantId

string

助手的 ID。

返回值

Promise\<GraphSchema>

图模式


getSubgraphs()

getSubgraphs(assistantId, options?): Promise\<Subgraphs>

定义在: client.ts:312

通过 ID 获取助手的模式。

参数
assistantId

string

要获取模式的助手的 ID。

options?

用于获取子图的其他选项,例如命名空间或递归提取。

# namespace?

string

# recurse?

boolean

返回值

Promise\<Subgraphs>

助手的子图。


getVersions()

getVersions(assistantId, payload?): Promise\<AssistantVersion[]>

定义在: client.ts:421

列出助手的所有版本。

参数
assistantId

string

助手的 ID。

payload?
# limit?

number

# metadata?

Metadata

# offset?

number

返回值

Promise\<AssistantVersion[]>

助手版本列表。


search(query?): Promise\<Assistant[]>

定义在: client.ts:398

列出助手。

参数
query?

查询选项。

# graphId?

string

# limit?

number

# metadata?

Metadata

# offset?

number

返回值

Promise\<Assistant[]>

助手列表。


setLatest()

setLatest(assistantId, version): Promise\<Assistant>

定义在: client.ts:449

更改助手的版本。

参数
assistantId

string

助手的 ID。

version

number

要更改到的版本。

返回值

Promise\<Assistant>

更新后的助手。


update()

update(assistantId, payload): Promise\<Assistant>

定义在: client.ts:362

更新一个助手。

参数
assistantId

string

助手的 ID。

payload

用于更新助手的有效负载。

# config?

配置

# graphId?

string

# metadata?

Metadata

# name?

string

返回值

Promise\<Assistant>

更新后的助手。

@langchain/langgraph-sdk


@langchain/langgraph-sdk / Client

类: Client\<TStateType, TUpdateType, TCustomEventType>

定义在: client.ts:1370

类型参数

TStateType = DefaultValues

TUpdateType = TStateType

TCustomEventType = unknown

构造函数

new Client()

new Client\<TStateType, TUpdateType, TCustomEventType>(config?): Client\<TStateType, TUpdateType, TCustomEventType>

定义在: client.ts:1406

参数
config?

ClientConfig

返回值

Client\<TStateType, TUpdateType, TCustomEventType>

属性

~ui

~ui: UiClient

定义在: client.ts:1404

内部

用于与 UI 交互的客户端。供 LoadExternalComponent 使用,API 未来可能会更改。


assistants

assistants: AssistantsClient

定义在: client.ts:1378

用于与助手交互的客户端。


crons

crons: CronsClient

定义在: client.ts:1393

用于与定时任务运行交互的客户端。


runs

runs: RunsClient\<TStateType, TUpdateType, TCustomEventType>

定义在: client.ts:1388

用于与运行交互的客户端。


store

store: StoreClient

定义在: client.ts:1398

用于与 KV 存储交互的客户端。


threads

threads: ThreadsClient\<TStateType, TUpdateType>

定义在: client.ts:1383

用于与线程交互的客户端。

@langchain/langgraph-sdk


@langchain/langgraph-sdk / CronsClient

类: CronsClient

定义在: client.ts:175

继承自

  • BaseClient

构造函数

new CronsClient()

new CronsClient(config?): CronsClient

定义在: client.ts:85

参数
config?

ClientConfig

返回值

CronsClient

继承自

BaseClient.constructor

方法

create()

create(assistantId, payload?): Promise\<CronCreateResponse>

定义在: client.ts:215

参数
assistantId

string

用于此定时任务的助手 ID。

payload?

CronsCreatePayload

用于创建定时任务的有效负载。

返回值

Promise\<CronCreateResponse>


createForThread()

createForThread(threadId, assistantId, payload?): Promise\<CronCreateForThreadResponse>

定义在: client.ts:183

参数
threadId

string

线程 ID。

assistantId

string

用于此定时任务的助手 ID。

payload?

CronsCreatePayload

用于创建定时任务的有效负载。

返回值

Promise\<CronCreateForThreadResponse>

创建的后台运行。


delete()

delete(cronId): Promise\<void>

定义在: client.ts:241

参数
cronId

string

要删除的定时任务的 Cron ID。

返回值

Promise\<void>


search()

search(query?): Promise\<Cron[]>

定义在: client.ts:252

参数
query?

查询选项。

# assistantId?

string

# limit?

number

# offset?

number

# threadId?

string

返回值

Promise\<Cron[]>

定时任务列表。

@langchain/langgraph-sdk


@langchain/langgraph-sdk / RunsClient

类: RunsClient\<TStateType, TUpdateType, TCustomEventType>

定义在: client.ts:701

继承自

  • BaseClient

类型参数

TStateType = DefaultValues

TUpdateType = TStateType

TCustomEventType = unknown

构造函数

new RunsClient()

new RunsClient\<TStateType, TUpdateType, TCustomEventType>(config?): RunsClient\<TStateType, TUpdateType, TCustomEventType>

定义在: client.ts:85

参数
config?

ClientConfig

返回值

RunsClient\<TStateType, TUpdateType, TCustomEventType>

继承自

BaseClient.constructor

方法

cancel()

cancel(threadId, runId, wait, action): Promise\<void>

定义在: client.ts:985

取消运行。

参数
threadId

string

线程 ID。

runId

string

运行的 ID。

wait

boolean = false

取消时是否阻塞

action

CancelAction = "interrupt"

取消运行时要执行的操作。可能的值是 interruptrollback。默认为 interrupt

返回值

Promise\<void>


create()

create(threadId, assistantId, payload?): Promise\<Run>

定义在: client.ts:809

创建运行。

参数
threadId

string

线程 ID。

assistantId

string

用于此运行的助手 ID。

payload?

RunsCreatePayload

用于创建运行的有效负载。

返回值

Promise\<Run>

创建的运行。


createBatch()

createBatch(payloads): Promise\<Run[]>

定义在: client.ts:844

创建一批无状态后台运行。

参数
payloads

RunsCreatePayload & object[]

用于创建运行的有效负载数组。

返回值

Promise\<Run[]>

创建的运行数组。


delete()

delete(threadId, runId): Promise\<void>

定义在: client.ts:1079

删除运行。

参数
threadId

string

线程 ID。

runId

string

运行的 ID。

返回值

Promise\<void>


get()

get(threadId, runId): Promise\<Run>

定义在: client.ts:972

通过 ID 获取运行。

参数
threadId

string

线程 ID。

runId

string

运行的 ID。

返回值

Promise\<Run>

运行。


join()

join(threadId, runId, options?): Promise\<void>

定义在: client.ts:1007

阻塞直到运行完成。

参数
threadId

string

线程 ID。

runId

string

运行的 ID。

options?
# signal?

AbortSignal

返回值

Promise\<void>


joinStream()

joinStream(threadId, runId, options?): AsyncGenerator\<{ data: any; event: StreamEvent; }>

定义在: client.ts:1033

实时流式传输运行的输出,直到运行完成。输出不缓冲,因此在此调用之前产生的任何输出都不会在此处接收。

参数
threadId

string

线程 ID。

runId

string

运行的 ID。

options?

用于控制流行为的其他选项: - signal: 可用于取消流请求的 AbortSignal - cancelOnDisconnect: 如果客户端与流断开连接,则自动取消运行 - streamMode: 控制要从流接收的事件类型(可以是单个模式或模式数组)必须是创建运行时传递的流模式的子集。后台运行默认为启用所有流模式的并集。

AbortSignal | { cancelOnDisconnect: boolean; signal: AbortSignal; streamMode: StreamMode | StreamMode[]; }

返回值

AsyncGenerator\<{ data: any; event: StreamEvent; }>

一个异步生成器,产生流部分。


list()

list(threadId, options?): Promise\<Run[]>

定义在: client.ts:935

列出线程的所有运行。

参数
threadId

string

线程 ID。

options?

过滤和分页选项。

# limit?

number

要返回的最大运行数。默认为 10

# offset?

number

开始的偏移量。默认为 0。

# status?

RunStatus

要过滤的运行状态。

返回值

Promise\<Run[]>

运行列表。


stream()

创建运行并流式传输结果。

Param

线程 ID。

Param

用于此运行的助手 ID。

Param

用于创建运行的有效负载。

Call Signature

stream\<TStreamMode, TSubgraphs>(threadId, assistantId, payload?): TypedAsyncGenerator\<TStreamMode, TSubgraphs, TStateType, TUpdateType, TCustomEventType>

定义在: client.ts:706

类型参数

TStreamMode extends StreamMode | StreamMode[] = StreamMode

TSubgraphs extends boolean = false

参数
# threadId

null

# assistantId

string

# payload?

Omit\<RunsStreamPayload\<TStreamMode, TSubgraphs>, "multitaskStrategy" | "onCompletion">

返回值

TypedAsyncGenerator\<TStreamMode, TSubgraphs, TStateType, TUpdateType, TCustomEventType>

调用签名

stream\<TStreamMode, TSubgraphs>(threadId, assistantId, payload?): TypedAsyncGenerator\<TStreamMode, TSubgraphs, TStateType, TUpdateType, TCustomEventType>

定义于: client.ts:724

类型参数

TStreamMode extends StreamMode | StreamMode[] = StreamMode

TSubgraphs extends boolean = false

参数
# threadId

string

# assistantId

string

# payload?

RunsStreamPayload\<TStreamMode, TSubgraphs>

返回值

TypedAsyncGenerator\<TStreamMode, TSubgraphs, TStateType, TUpdateType, TCustomEventType>


wait()

创建并等待运行完成。

参数

线程 ID。

参数

用于此运行的助手 ID。

参数

用于创建运行的有效负载。

调用签名

wait(threadId, assistantId, payload?): Promise\<DefaultValues>

定义于: client.ts:861

参数
# threadId

null

# assistantId

string

# payload?

Omit\<RunsWaitPayload, "multitaskStrategy" | "onCompletion">

返回值

Promise\<DefaultValues>

调用签名

wait(threadId, assistantId, payload?): Promise\<DefaultValues>

定义于: client.ts:867

参数
# threadId

string

# assistantId

string

# payload?

RunsWaitPayload

返回值

Promise\<DefaultValues>

@langchain/langgraph-sdk


@langchain/langgraph-sdk / StoreClient

类: StoreClient

定义于: client.ts:1097

继承自

  • BaseClient

构造器

new StoreClient()

new StoreClient(config?): StoreClient

定义在: client.ts:85

参数
config?

ClientConfig

返回值

StoreClient

继承自

BaseClient.constructor

方法

deleteItem()

deleteItem(namespace, key): Promise\<void>

定义于: client.ts:1218

删除一个条目。

参数
namespace

string[]

代表命名空间路径的字符串列表。

key

string

条目的唯一标识符。

返回值

Promise\<void>

Promise


getItem()

getItem(namespace, key, options?): Promise\<null | Item>

定义于: client.ts:1174

检索单个条目。

参数
namespace

string[]

代表命名空间路径的字符串列表。

key

string

条目的唯一标识符。

options?
# refreshTtl?

null | boolean

是否在此读取操作中刷新 TTL。如果为 null,则使用存储的默认行为。

返回值

Promise\<null | Item>

Promise

示例
const item = await client.store.getItem(
  ["documents", "user123"],
  "item456",
  { refreshTtl: true }
);
console.log(item);
// {
//   namespace: ["documents", "user123"],
//   key: "item456",
//   value: { title: "My Document", content: "Hello World" },
//   createdAt: "2024-07-30T12:00:00Z",
//   updatedAt: "2024-07-30T12:00:00Z"
// }

listNamespaces()

listNamespaces(options?): Promise\<ListNamespaceResponse>

定义于: client.ts:1314

列出命名空间,可选择匹配条件。

参数
options?
# limit?

number

要返回的最大命名空间数量(默认为 100)。

# maxDepth?

number

可选整数,指定要返回的命名空间的最大深度。

# offset?

number

在返回结果之前要跳过的命名空间数量(默认为 0)。

# prefix?

string[]

可选的字符串列表,代表用于过滤命名空间的前缀。

# suffix?

string[]

可选的字符串列表,代表用于过滤命名空间的后缀。

返回值

Promise\<ListNamespaceResponse>

Promise


putItem()

putItem(namespace, key, value, options?): Promise\<void>

定义于: client.ts:1118

存储或更新一个条目。

参数
namespace

string[]

代表命名空间路径的字符串列表。

key

string

命名空间内条目的唯一标识符。

value

Record\<string, any>

包含条目数据的字典。

options?
# index?

null | false | string[]

控制搜索索引 - null(使用默认值),false(禁用),或要索引的字段路径列表。

# ttl?

null | number

条目的可选生存时间(分钟),如果为 null 则表示永不过期。

返回值

Promise\<void>

Promise

示例
await client.store.putItem(
  ["documents", "user123"],
  "item456",
  { title: "My Document", content: "Hello World" },
  { ttl: 60 } // expires in 60 minutes
);

searchItems()

searchItems(namespacePrefix, options?): Promise\<SearchItemsResponse>

定义于: client.ts:1269

在命名空间前缀内搜索条目。

参数
namespacePrefix

string[]

代表命名空间前缀的字符串列表。

options?
# filter?

Record\<string, any>

可选的键值对字典,用于过滤结果。

# limit?

number

要返回的最大条目数量(默认为 10)。

# offset?

number

在返回结果之前要跳过的条目数量(默认为 0)。

# query?

string

可选的搜索查询。

# refreshTtl?

null | boolean

是否刷新此搜索返回的条目的 TTL。如果为 null,则使用存储的默认行为。

返回值

Promise\<SearchItemsResponse>

Promise

示例
const results = await client.store.searchItems(
  ["documents"],
  {
    filter: { author: "John Doe" },
    limit: 5,
    refreshTtl: true
  }
);
console.log(results);
// {
//   items: [
//     {
//       namespace: ["documents", "user123"],
//       key: "item789",
//       value: { title: "Another Document", author: "John Doe" },
//       createdAt: "2024-07-30T12:00:00Z",
//       updatedAt: "2024-07-30T12:00:00Z"
//     },
//     // ... additional items ...
//   ]
// }

@langchain/langgraph-sdk


@langchain/langgraph-sdk / ThreadsClient

类: ThreadsClient\<TStateType, TUpdateType>

定义于: client.ts:457

继承自

  • BaseClient

类型参数

TStateType = DefaultValues

TUpdateType = TStateType

构造器

new ThreadsClient()

new ThreadsClient\<TStateType, TUpdateType>(config?): ThreadsClient\<TStateType, TUpdateType>

定义在: client.ts:85

参数
config?

ClientConfig

返回值

ThreadsClient\<TStateType, TUpdateType>

继承自

BaseClient.constructor

方法

copy()

copy(threadId): Promise\<Thread\<TStateType>>

定义于: client.ts:502

复制现有线程

参数
threadId

string

要复制的线程 ID

返回值

Promise\<Thread\<TStateType>>

新复制的线程


create()

create(payload?): Promise\<Thread\<TStateType>>

定义于: client.ts:479

创建一个新线程。

参数
payload?

用于创建线程的载荷。

# ifExists?

OnConflictBehavior

# metadata?

Metadata

线程的元数据。

# threadId?

string

返回值

Promise\<Thread\<TStateType>>

创建的线程。


delete()

delete(threadId): Promise\<void>

定义于: client.ts:535

删除一个线程。

参数
threadId

string

线程的 ID。

返回值

Promise\<void>


get()

get\<ValuesType>(threadId): Promise\<Thread\<ValuesType>>

定义于: client.ts:467

通过 ID 获取线程。

类型参数

ValuesType = TStateType

参数
threadId

string

线程的 ID。

返回值

Promise\<Thread\<ValuesType>>

线程。


getHistory()

getHistory\<ValuesType>(threadId, options?): Promise\<ThreadState\<ValuesType>[]>

定义于: client.ts:677

获取线程的所有过去状态。

类型参数

ValuesType = TStateType

参数
threadId

string

线程的 ID。

options?

附加选项。

# before?

配置

# checkpoint?

Partial\<Omit\<Checkpoint, "thread_id">>

# limit?

number

# metadata?

Metadata

返回值

Promise\<ThreadState\<ValuesType>[]>

线程状态列表。


getState()

getState\<ValuesType>(threadId, checkpoint?, options?): Promise\<ThreadState\<ValuesType>>

定义于: client.ts:584

获取线程的状态。

类型参数

ValuesType = TStateType

参数
threadId

string

线程的 ID。

checkpoint?

string | Checkpoint

options?
# subgraphs?

boolean

返回值

Promise\<ThreadState\<ValuesType>>

线程状态。


patchState()

patchState(threadIdOrConfig, metadata): Promise\<void>

定义于: client.ts:647

修补线程的元数据。

参数
threadIdOrConfig

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

string | Config

metadata

Metadata

用于修补状态的元数据。

返回值

Promise\<void>


search()

search\<ValuesType>(query?): Promise\<Thread\<ValuesType>[]>

定义于: client.ts:547

列出线程

类型参数

ValuesType = TStateType

参数
query?

查询选项

# limit?

number

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

# metadata?

Metadata

用于过滤线程的元数据。

# offset?

number

起始偏移量。

# status?

ThreadStatus

要过滤的线程状态。必须是 'idle'、'busy'、'interrupted' 或 'error' 之一。

返回值

Promise\<Thread\<ValuesType>[]>

线程列表


update()

update(threadId, payload?): Promise\<Thread\<DefaultValues>>

定义于: client.ts:515

更新一个线程。

参数
threadId

string

线程的 ID。

payload?

用于更新线程的载荷。

# metadata?

Metadata

线程的元数据。

返回值

Promise\<Thread\<DefaultValues>>

更新后的线程。


updateState()

updateState\<ValuesType>(threadId, options): Promise\<Pick\<Config, "configurable">>

定义于: client.ts:618

向线程添加状态。

类型参数

ValuesType = TUpdateType

参数
threadId

string

线程 ID。

options
# asNode?

string

# checkpoint?

检查点

# checkpointId?

string

# values

ValuesType

返回值

Promise\<Pick\<Config, "configurable">>

@langchain/langgraph-sdk


@langchain/langgraph-sdk / getApiKey

函数: getApiKey()

getApiKey(apiKey?): undefined | string

定义于: client.ts:50

从环境中获取 API 密钥。优先级:1. 显式参数 2. LANGGRAPH_API_KEY 3. LANGSMITH_API_KEY 4. LANGCHAIN_API_KEY

参数

apiKey?

string

作为参数提供的可选 API 密钥

返回值

undefined | string

如果找到 API 密钥,则返回 API 密钥,否则返回 undefined

@langchain/langgraph-sdk


@langchain/langgraph-sdk / ClientConfig

接口: ClientConfig

定义于: client.ts:68

属性

apiKey?

optional apiKey: string

定义于: client.ts:70


apiUrl?

optional apiUrl: string

定义于: client.ts:69


callerOptions?

optional callerOptions: AsyncCallerParams

定义于: client.ts:71


defaultHeaders?

optional defaultHeaders: Record\<string, undefined | null | string>

定义于: client.ts:73


timeoutMs?

optional timeoutMs: number

定义于: client.ts:72

langchain/langgraph-sdk


langchain/langgraph-sdk/react

类型别名

函数

@langchain/langgraph-sdk


@langchain/langgraph-sdk / useStream

函数: useStream()

useStream\<StateType, Bag>(options): UseStream\<StateType, Bag>

定义于: stream.tsx:601

类型参数

StateType extends Record\<string, unknown> = Record\<string, unknown>

Bag extends object = BagTemplate

参数

options

UseStreamOptions\<StateType, Bag>

返回值

UseStream\<StateType, Bag>

@langchain/langgraph-sdk


@langchain/langgraph-sdk / MessageMetadata

类型别名: MessageMetadata\<StateType>

MessageMetadata\<StateType>: object

定义于: stream.tsx:169

类型参数

StateType extends Record\<string, unknown>

类型声明

branch

branch: string | undefined

消息的分支。

branchOptions

branchOptions: string[] | undefined

此消息所属的分支列表。这对于显示分支控件很有用。

firstSeenState

firstSeenState: ThreadState\<StateType> | undefined

消息首次出现的线程状态。

messageId

messageId: string

使用的消息的 ID。

评论