Skip to content

Commit a3c0674

Browse files
authored
Sync updates from stainless branch: ashwinb/dev (#94)
Client SDK changes for multimodal + toolcall delta changes
1 parent 9e280e3 commit a3c0674

File tree

9 files changed

+70
-34
lines changed

9 files changed

+70
-34
lines changed

src/llama_stack_client/lib/agents/event_logger.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -95,10 +95,10 @@ def _get_log_event(self, chunk, previous_event_type=None, previous_step_type=Non
9595
yield LogEvent(role=step_type, content="", end="", color="yellow")
9696
elif event_type == "step_progress":
9797
if event.payload.delta.type == "tool_call":
98-
if isinstance(event.payload.delta.content, str):
98+
if isinstance(event.payload.delta.tool_call, str):
9999
yield LogEvent(
100100
role=None,
101-
content=event.payload.delta.content,
101+
content=event.payload.delta.tool_call,
102102
end="",
103103
color="cyan",
104104
)
@@ -125,7 +125,7 @@ def _get_log_event(self, chunk, previous_event_type=None, previous_step_type=Non
125125
)
126126

127127
for r in details.tool_responses:
128-
if r.tool_name == "query_memory":
128+
if r.tool_name == "query_from_memory":
129129
inserted_context = interleaved_content_as_str(r.content)
130130
content = f"fetched {len(inserted_context)} bytes from memory"
131131

src/llama_stack_client/types/agents/turn.py

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222
"OutputAttachment",
2323
"OutputAttachmentContent",
2424
"OutputAttachmentContentImageContentItem",
25+
"OutputAttachmentContentImageContentItemImage",
2526
"OutputAttachmentContentTextContentItem",
2627
"OutputMessage",
2728
"Step",
@@ -30,14 +31,18 @@
3031
InputMessage: TypeAlias = Union[UserMessage, ToolResponseMessage]
3132

3233

33-
class OutputAttachmentContentImageContentItem(BaseModel):
34-
type: Literal["image"]
35-
34+
class OutputAttachmentContentImageContentItemImage(BaseModel):
3635
data: Optional[str] = None
3736

3837
url: Optional[URL] = None
3938

4039

40+
class OutputAttachmentContentImageContentItem(BaseModel):
41+
image: OutputAttachmentContentImageContentItemImage
42+
43+
type: Literal["image"]
44+
45+
4146
class OutputAttachmentContentTextContentItem(BaseModel):
4247
text: str
4348

src/llama_stack_client/types/agents/turn_create_params.py

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
"Document",
1818
"DocumentContent",
1919
"DocumentContentImageContentItem",
20+
"DocumentContentImageContentItemImage",
2021
"DocumentContentTextContentItem",
2122
"Toolgroup",
2223
"ToolgroupUnionMember1",
@@ -42,14 +43,18 @@ class TurnCreateParamsBase(TypedDict, total=False):
4243
Message: TypeAlias = Union[UserMessage, ToolResponseMessage]
4344

4445

45-
class DocumentContentImageContentItem(TypedDict, total=False):
46-
type: Required[Literal["image"]]
47-
46+
class DocumentContentImageContentItemImage(TypedDict, total=False):
4847
data: str
4948

5049
url: URL
5150

5251

52+
class DocumentContentImageContentItem(TypedDict, total=False):
53+
image: Required[DocumentContentImageContentItemImage]
54+
55+
type: Required[Literal["image"]]
56+
57+
5358
class DocumentContentTextContentItem(TypedDict, total=False):
5459
text: Required[str]
5560

src/llama_stack_client/types/shared/content_delta.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
from ..._models import BaseModel
77
from .tool_call import ToolCall
88

9-
__all__ = ["ContentDelta", "TextDelta", "ImageDelta", "ToolCallDelta", "ToolCallDeltaContent"]
9+
__all__ = ["ContentDelta", "TextDelta", "ImageDelta", "ToolCallDelta", "ToolCallDeltaToolCall"]
1010

1111

1212
class TextDelta(BaseModel):
@@ -16,19 +16,19 @@ class TextDelta(BaseModel):
1616

1717

1818
class ImageDelta(BaseModel):
19-
data: str
19+
image: str
2020

2121
type: Literal["image"]
2222

2323

24-
ToolCallDeltaContent: TypeAlias = Union[str, ToolCall]
24+
ToolCallDeltaToolCall: TypeAlias = Union[str, ToolCall]
2525

2626

2727
class ToolCallDelta(BaseModel):
28-
content: ToolCallDeltaContent
29-
3028
parse_status: Literal["started", "in_progress", "failed", "succeeded"]
3129

30+
tool_call: ToolCallDeltaToolCall
31+
3232
type: Literal["tool_call"]
3333

3434

src/llama_stack_client/types/shared/interleaved_content.py

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,17 +7,21 @@
77
from ..._models import BaseModel
88
from .interleaved_content_item import InterleavedContentItem
99

10-
__all__ = ["InterleavedContent", "ImageContentItem", "TextContentItem"]
10+
__all__ = ["InterleavedContent", "ImageContentItem", "ImageContentItemImage", "TextContentItem"]
1111

1212

13-
class ImageContentItem(BaseModel):
14-
type: Literal["image"]
15-
13+
class ImageContentItemImage(BaseModel):
1614
data: Optional[str] = None
1715

1816
url: Optional[URL] = None
1917

2018

19+
class ImageContentItem(BaseModel):
20+
image: ImageContentItemImage
21+
22+
type: Literal["image"]
23+
24+
2125
class TextContentItem(BaseModel):
2226
text: str
2327

src/llama_stack_client/types/shared/interleaved_content_item.py

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,17 +6,21 @@
66
from .url import URL
77
from ..._models import BaseModel
88

9-
__all__ = ["InterleavedContentItem", "ImageContentItem", "TextContentItem"]
9+
__all__ = ["InterleavedContentItem", "ImageContentItem", "ImageContentItemImage", "TextContentItem"]
1010

1111

12-
class ImageContentItem(BaseModel):
13-
type: Literal["image"]
14-
12+
class ImageContentItemImage(BaseModel):
1513
data: Optional[str] = None
1614

1715
url: Optional[URL] = None
1816

1917

18+
class ImageContentItem(BaseModel):
19+
image: ImageContentItemImage
20+
21+
type: Literal["image"]
22+
23+
2024
class TextContentItem(BaseModel):
2125
text: str
2226

src/llama_stack_client/types/shared_params/interleaved_content.py

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,17 +8,21 @@
88
from .url import URL
99
from .interleaved_content_item import InterleavedContentItem
1010

11-
__all__ = ["InterleavedContent", "ImageContentItem", "TextContentItem"]
11+
__all__ = ["InterleavedContent", "ImageContentItem", "ImageContentItemImage", "TextContentItem"]
1212

1313

14-
class ImageContentItem(TypedDict, total=False):
15-
type: Required[Literal["image"]]
16-
14+
class ImageContentItemImage(TypedDict, total=False):
1715
data: str
1816

1917
url: URL
2018

2119

20+
class ImageContentItem(TypedDict, total=False):
21+
image: Required[ImageContentItemImage]
22+
23+
type: Required[Literal["image"]]
24+
25+
2226
class TextContentItem(TypedDict, total=False):
2327
text: Required[str]
2428

src/llama_stack_client/types/shared_params/interleaved_content_item.py

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,17 +7,21 @@
77

88
from .url import URL
99

10-
__all__ = ["InterleavedContentItem", "ImageContentItem", "TextContentItem"]
10+
__all__ = ["InterleavedContentItem", "ImageContentItem", "ImageContentItemImage", "TextContentItem"]
1111

1212

13-
class ImageContentItem(TypedDict, total=False):
14-
type: Required[Literal["image"]]
15-
13+
class ImageContentItemImage(TypedDict, total=False):
1614
data: str
1715

1816
url: URL
1917

2018

19+
class ImageContentItem(TypedDict, total=False):
20+
image: Required[ImageContentItemImage]
21+
22+
type: Required[Literal["image"]]
23+
24+
2125
class TextContentItem(TypedDict, total=False):
2226
text: Required[str]
2327

src/llama_stack_client/types/tool_runtime/document_param.py

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,17 +8,27 @@
88
from ..shared_params.url import URL
99
from ..shared_params.interleaved_content_item import InterleavedContentItem
1010

11-
__all__ = ["DocumentParam", "Content", "ContentImageContentItem", "ContentTextContentItem"]
11+
__all__ = [
12+
"DocumentParam",
13+
"Content",
14+
"ContentImageContentItem",
15+
"ContentImageContentItemImage",
16+
"ContentTextContentItem",
17+
]
1218

1319

14-
class ContentImageContentItem(TypedDict, total=False):
15-
type: Required[Literal["image"]]
16-
20+
class ContentImageContentItemImage(TypedDict, total=False):
1721
data: str
1822

1923
url: URL
2024

2125

26+
class ContentImageContentItem(TypedDict, total=False):
27+
image: Required[ContentImageContentItemImage]
28+
29+
type: Required[Literal["image"]]
30+
31+
2232
class ContentTextContentItem(TypedDict, total=False):
2333
text: Required[str]
2434

0 commit comments

Comments
 (0)