langchain_core.messages.tool.ToolCallChunk¶

class langchain_core.messages.tool.ToolCallChunk[source]¶

A chunk of a tool call (e.g., as part of a stream).

When merging ToolCallChunks (e.g., via AIMessageChunk.__add__), all string attributes are concatenated. Chunks are only merged if their values of index are equal and not None.

Example:

left_chunks = [ToolCallChunk(name="foo", args='{"a":', index=0)]
right_chunks = [ToolCallChunk(name=None, args='1}', index=0)]
(
    AIMessageChunk(content="", tool_call_chunks=left_chunks)
    + AIMessageChunk(content="", tool_call_chunks=right_chunks)
).tool_call_chunks == [ToolCallChunk(name='foo', args='{"a":1}', index=0)]
name¶

(str) if provided, a substring of the name of the tool to be called

Type

Optional[str]

args¶

(str) if provided, a JSON substring of the arguments to the tool call

Type

Optional[str]

id¶

(str) if provided, a substring of an identifier for the tool call

Type

Optional[str]

index¶

(int) if provided, the index of the tool call in a sequence

Type

Optional[int]

Attributes

name

args

id

index

Methods

__init__(*args, **kwargs)

clear()

copy()

fromkeys([value])

Create a new dictionary with keys from iterable and values set to value.

get(key[, default])

Return the value for key if key is in the dictionary, else default.

items()

keys()

pop(k[,d])

If the key is not found, return the default if given; otherwise, raise a KeyError.

popitem()

Remove and return a (key, value) pair as a 2-tuple.

setdefault(key[, default])

Insert key with a value of default if key is not in the dictionary.

update([E, ]**F)

If E is present and has a .keys() method, then does: for k in E: D[k] = E[k] If E is present and lacks a .keys() method, then does: for k, v in E: D[k] = v In either case, this is followed by: for k in F: D[k] = F[k]

values()

__init__(*args, **kwargs)¶
clear() None.  Remove all items from D.¶
copy() a shallow copy of D¶
fromkeys(value=None, /)¶

Create a new dictionary with keys from iterable and values set to value.

get(key, default=None, /)¶

Return the value for key if key is in the dictionary, else default.

items() a set-like object providing a view on D's items¶
keys() a set-like object providing a view on D's keys¶
pop(k[, d]) v, remove specified key and return the corresponding value.¶

If the key is not found, return the default if given; otherwise, raise a KeyError.

popitem()¶

Remove and return a (key, value) pair as a 2-tuple.

Pairs are returned in LIFO (last-in, first-out) order. Raises KeyError if the dict is empty.

setdefault(key, default=None, /)¶

Insert key with a value of default if key is not in the dictionary.

Return the value for key if key is in the dictionary, else default.

update([E, ]**F) None.  Update D from dict/iterable E and F.¶

If E is present and has a .keys() method, then does: for k in E: D[k] = E[k] If E is present and lacks a .keys() method, then does: for k, v in E: D[k] = v In either case, this is followed by: for k in F: D[k] = F[k]

values() an object providing a view on D's values¶