grasp_agents 0.5.1__py3-none-any.whl → 0.5.3__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
grasp_agents/printer.py CHANGED
@@ -197,11 +197,11 @@ async def print_event_stream(
197
197
  closing_text += "\n</tool call>\n"
198
198
 
199
199
  if _thinking_open:
200
- closing_text += "</thinking>\n"
200
+ closing_text += "\n</thinking>\n"
201
201
  _thinking_open = False
202
202
 
203
203
  if _response_open:
204
- closing_text += "</response>\n"
204
+ closing_text += "\n</response>\n"
205
205
  _response_open = False
206
206
 
207
207
  if closing_text:
@@ -151,36 +151,37 @@ class LoopedWorkflow(
151
151
  num_iterations = 0
152
152
  exit_packet: Packet[OutT_co] | None = None
153
153
 
154
- for subproc in self.subprocs:
155
- async for event in subproc.run_stream(
156
- chat_inputs=chat_inputs,
157
- in_packet=packet,
158
- in_args=in_args,
159
- forgetful=forgetful,
160
- call_id=f"{call_id}/{subproc.name}",
161
- ctx=ctx,
162
- ):
163
- if isinstance(event, ProcPacketOutputEvent):
164
- packet = event.data
165
- yield event
166
-
167
- if subproc is self._end_proc:
168
- num_iterations += 1
169
- exit_packet = cast("Packet[OutT_co]", packet)
170
- if self._exit_workflow_loop(exit_packet, ctx=ctx):
171
- yield WorkflowResultEvent(
172
- data=exit_packet, proc_name=self.name, call_id=call_id
173
- )
174
- return
175
- if num_iterations >= self._max_iterations:
176
- logger.info(
177
- f"Max iterations reached ({self._max_iterations}). "
178
- "Exiting loop."
179
- )
180
- yield WorkflowResultEvent(
181
- data=exit_packet, proc_name=self.name, call_id=call_id
182
- )
183
- return
184
-
185
- chat_inputs = None
186
- in_args = None
154
+ while True:
155
+ for subproc in self.subprocs:
156
+ async for event in subproc.run_stream(
157
+ chat_inputs=chat_inputs,
158
+ in_packet=packet,
159
+ in_args=in_args,
160
+ forgetful=forgetful,
161
+ call_id=f"{call_id}/{subproc.name}",
162
+ ctx=ctx,
163
+ ):
164
+ if isinstance(event, ProcPacketOutputEvent):
165
+ packet = event.data
166
+ yield event
167
+
168
+ if subproc is self._end_proc:
169
+ num_iterations += 1
170
+ exit_packet = cast("Packet[OutT_co]", packet)
171
+ if self._exit_workflow_loop(exit_packet, ctx=ctx):
172
+ yield WorkflowResultEvent(
173
+ data=exit_packet, proc_name=self.name, call_id=call_id
174
+ )
175
+ return
176
+ if num_iterations >= self._max_iterations:
177
+ logger.info(
178
+ f"Max iterations reached ({self._max_iterations}). "
179
+ "Exiting loop."
180
+ )
181
+ yield WorkflowResultEvent(
182
+ data=exit_packet, proc_name=self.name, call_id=call_id
183
+ )
184
+ return
185
+
186
+ chat_inputs = None
187
+ in_args = None
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: grasp_agents
3
- Version: 0.5.1
3
+ Version: 0.5.3
4
4
  Summary: Grasp Agents Library
5
5
  License-File: LICENSE.md
6
6
  Requires-Python: <4,>=3.11.4
@@ -13,7 +13,7 @@ grasp_agents/llm_policy_executor.py,sha256=aWxXS2-7Twzaz8U07wslzR8zR9byl2bDha1AC
13
13
  grasp_agents/memory.py,sha256=keHuNEZNSxHT9FKpMohHOCNi7UAz_oRIc91IQEuzaWE,1162
14
14
  grasp_agents/packet.py,sha256=neJ139jgLKgZjLyXAwSe0lH08BftveYOsLFyri9MZ0w,785
15
15
  grasp_agents/packet_pool.py,sha256=doG7UpTO7cqJi4YT0UP_vfOnOebqiwzBUHfoxy1TkPY,3282
16
- grasp_agents/printer.py,sha256=Yp4aPFBZOHy6PHRlJIDj44UimYLdnTx-hcyebJQKMX8,10819
16
+ grasp_agents/printer.py,sha256=by7-wW0y1rCEqhGLuK8Jq-wsJfbZZO-0u8hS41-XJJU,10823
17
17
  grasp_agents/processor.py,sha256=jel12KXWR8oA241NKt-sy0eWGbsfuBPwwdmj6Ecqg5s,15826
18
18
  grasp_agents/prompt_builder.py,sha256=3Ua-f-lRdoE2LomFWDiZILpKpfuQxAM-aHcY69hvv1U,7978
19
19
  grasp_agents/run_context.py,sha256=dUxwx1yM3gSk2KqMIAeDVVftysdk7v_1Ht0EcLk9jJI,1242
@@ -48,10 +48,10 @@ grasp_agents/typing/io.py,sha256=RtBnxOiEJkfCPz7bEu1T1JXU7o71MhHK3RkeedzWwX0,237
48
48
  grasp_agents/typing/message.py,sha256=o7bN84AgrC5Fm3Wx20gqL9ArAMcEtYvnHnXbb04ngCs,3224
49
49
  grasp_agents/typing/tool.py,sha256=4N-k_GvHVPAFyVyEq7z_LYKkA24iQlGoVYiWCzGTgT4,1786
50
50
  grasp_agents/workflow/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
51
- grasp_agents/workflow/looped_workflow.py,sha256=eA2V4ftAjXth1OqQS_jTNS3D5_hzLGGyWfn4Ju47FQ0,6338
51
+ grasp_agents/workflow/looped_workflow.py,sha256=vBz65QmXpjqI87mA4OxYJyve7jbQ30CkVE4pPWoZ4m8,6482
52
52
  grasp_agents/workflow/sequential_workflow.py,sha256=wKlF6PvzLXkKDGlfvd8h-WI3AGNo6qyS2gkROzdPvWM,3421
53
53
  grasp_agents/workflow/workflow_processor.py,sha256=I0sTMfWGeTcx0y0oYssz8B85_PFhbatHXrSJ31woI6Q,3015
54
- grasp_agents-0.5.1.dist-info/METADATA,sha256=Llv8pchnnXoW-ndbZj1lU8wNGOFnpcRV_vS-4vZM0hk,6865
55
- grasp_agents-0.5.1.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
56
- grasp_agents-0.5.1.dist-info/licenses/LICENSE.md,sha256=-nNNdWqGB8gJ2O-peFQ2Irshv5tW5pHKyTcYkwvH7CE,1201
57
- grasp_agents-0.5.1.dist-info/RECORD,,
54
+ grasp_agents-0.5.3.dist-info/METADATA,sha256=D4oOvJSGbY5ArAKnZK4dRm9JG3pP7eOlSvKTnkzIpYw,6865
55
+ grasp_agents-0.5.3.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
56
+ grasp_agents-0.5.3.dist-info/licenses/LICENSE.md,sha256=-nNNdWqGB8gJ2O-peFQ2Irshv5tW5pHKyTcYkwvH7CE,1201
57
+ grasp_agents-0.5.3.dist-info/RECORD,,