Skip to content

Commit 9551b7e

Browse files
committed
Add pdl__model_input field to model blocks and trace fix
1 parent af4e501 commit 9551b7e

File tree

3 files changed

+6
-6
lines changed

3 files changed

+6
-6
lines changed

src/pdl/pdl_ast.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -410,6 +410,7 @@ class ModelBlock(LeafBlock):
410410
pdl__usage: Optional[PdlUsage] = None
411411
"""Tokens consumed during model call
412412
"""
413+
pdl__model_input: Optional[ModelInput] = None
413414

414415

415416
class LitellmModelBlock(ModelBlock):

src/pdl/pdl_ast_utils.py

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -43,8 +43,7 @@ def iter_block_children(f: Callable[[BlockType], None], block: BlockType) -> Non
4343
if block.pdl__trace is not None:
4444
f(block.pdl__trace)
4545
case ModelBlock():
46-
if block.input is not None:
47-
f(block.input)
46+
f(block.input)
4847
case CodeBlock():
4948
f(block.code)
5049
case GetBlock():
@@ -133,12 +132,10 @@ def map_block_children(f: MappedFunctions, block: BlockType) -> BlockType:
133132
block.pdl__trace = f.f_block(block.pdl__trace)
134133
case LitellmModelBlock():
135134
block.model = f.f_expr(block.model)
136-
if block.input is not None:
137-
block.input = f.f_block(block.input)
135+
block.input = f.f_block(block.input)
138136
case GraniteioModelBlock():
139137
block.model = f.f_expr(block.model)
140-
if block.input is not None:
141-
block.input = f.f_block(block.input)
138+
block.input = f.f_block(block.input)
142139
if block.parameters is not None:
143140
block.parameters = f.f_expr(block.parameters)
144141
case CodeBlock():

src/pdl/pdl_dumper.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -127,6 +127,8 @@ def block_to_dict( # noqa: C901
127127
d["modelResponse"] = block.modelResponse
128128
if block.pdl__usage is not None:
129129
d["pdl__usage"] = usage_to_dict(block.pdl__usage)
130+
if block.pdl__model_input is not None:
131+
d["pdl__model_input"] = block.pdl__model_input
130132
case GraniteioModelBlock():
131133
d["model"] = expr_to_dict(block.model, json_compatible)
132134
d["platform"] = str(block.platform)

0 commit comments

Comments
 (0)