SDK (JS/TS)
@langchain/langgraph-sdk¶
类¶
接口¶
函数¶
@langchain/langgraph-sdk / AssistantsClient
类: AssistantsClient¶
定义在: client.ts:270
继承自¶
BaseClient
构造函数¶
new AssistantsClient()¶
new AssistantsClient(
config
?):AssistantsClient
定义在: client.ts:85
参数¶
config?¶
返回值¶
继承自¶
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()¶
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 / 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?¶
返回值¶
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 / CronsClient
类: CronsClient¶
定义在: client.ts:175
继承自¶
BaseClient
构造函数¶
new CronsClient()¶
new CronsClient(
config
?):CronsClient
定义在: client.ts:85
参数¶
config?¶
返回值¶
继承自¶
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 / 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?¶
返回值¶
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"
取消运行时要执行的操作。可能的值是 interrupt
或 rollback
。默认为 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 / StoreClient
类: StoreClient¶
定义于: client.ts:1097
继承自¶
BaseClient
构造器¶
new StoreClient()¶
new StoreClient(
config
?):StoreClient
定义在: client.ts:85
参数¶
config?¶
返回值¶
继承自¶
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 / 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?¶
返回值¶
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 / 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 / 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/react¶
类型别名¶
函数¶
@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 / 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。