vision-agent 0.2.137__py3-none-any.whl → 0.2.139__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.
@@ -218,6 +218,7 @@ class VisionAgent(Agent):
218
218
  ) as code_interpreter:
219
219
  orig_chat = copy.deepcopy(chat)
220
220
  int_chat = copy.deepcopy(chat)
221
+ last_user_message_content = chat[-1].get("content")
221
222
  media_list = []
222
223
  for chat_i in int_chat:
223
224
  if "media" in chat_i:
@@ -266,6 +267,32 @@ class VisionAgent(Agent):
266
267
  orig_chat.append({"role": "observation", "content": artifacts_loaded})
267
268
  self.streaming_message({"role": "observation", "content": artifacts_loaded})
268
269
 
270
+ if isinstance(last_user_message_content, str):
271
+ user_code_action = parse_execution(last_user_message_content, False)
272
+ if user_code_action is not None:
273
+ user_result, user_obs = run_code_action(
274
+ user_code_action, code_interpreter, str(remote_artifacts_path)
275
+ )
276
+ if self.verbosity >= 1:
277
+ _LOGGER.info(user_obs)
278
+ int_chat.append({"role": "observation", "content": user_obs})
279
+ orig_chat.append(
280
+ {
281
+ "role": "observation",
282
+ "content": user_obs,
283
+ "execution": user_result,
284
+ }
285
+ )
286
+ self.streaming_message(
287
+ {
288
+ "role": "observation",
289
+ "content": user_obs,
290
+ "execution": user_result,
291
+ "finished": True,
292
+ }
293
+ )
294
+ finished = True
295
+
269
296
  while not finished and iterations < self.max_iterations:
270
297
  response = run_conversation(self.agent, int_chat)
271
298
  if self.verbosity >= 1:
@@ -276,8 +303,11 @@ class VisionAgent(Agent):
276
303
  # sometimes it gets stuck in a loop, so we force it to exit
277
304
  if last_response == response:
278
305
  response["let_user_respond"] = True
279
-
280
- self.streaming_message({"role": "assistant", "content": response})
306
+ self.streaming_message(
307
+ {"role": "assistant", "error": "Stuck in loop"}
308
+ )
309
+ else:
310
+ self.streaming_message({"role": "assistant", "content": response})
281
311
 
282
312
  if response["let_user_respond"]:
283
313
  break
@@ -250,6 +250,7 @@ def edit_code_artifact(
250
250
 
251
251
  total_lines = len(artifacts[name].splitlines())
252
252
  if start < 0 or end < 0 or start > end or end > total_lines:
253
+ print("[Invalid line range]")
253
254
  return "[Invalid line range]"
254
255
  if start == end:
255
256
  end += 1
@@ -104,7 +104,7 @@ class Result:
104
104
  latex: Optional[str] = None
105
105
  json: Optional[Dict[str, Any]] = None
106
106
  javascript: Optional[str] = None
107
- artifact_name: Optional[str] = None
107
+ artifact: Optional[str] = None
108
108
  extra: Optional[Dict[str, Any]] = None
109
109
  "Extra data that can be included. Not part of the standard types."
110
110
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: vision-agent
3
- Version: 0.2.137
3
+ Version: 0.2.139
4
4
  Summary: Toolset for Vision Agent
5
5
  Author: Landing AI
6
6
  Author-email: dev@landing.ai
@@ -13,6 +13,7 @@ Requires-Dist: anthropic (>=0.31.0,<0.32.0)
13
13
  Requires-Dist: av (>=11.0.0,<12.0.0)
14
14
  Requires-Dist: e2b (>=0.17.2a50,<0.18.0)
15
15
  Requires-Dist: e2b-code-interpreter (==0.0.11a37)
16
+ Requires-Dist: flake8 (>=7.0.0,<8.0.0)
16
17
  Requires-Dist: ipykernel (>=6.29.4,<7.0.0)
17
18
  Requires-Dist: langsmith (>=0.1.58,<0.2.0)
18
19
  Requires-Dist: nbclient (>=0.10.0,<0.11.0)
@@ -2,7 +2,7 @@ vision_agent/__init__.py,sha256=EAb4-f9iyuEYkBrX4ag1syM8Syx8118_t0R6_C34M9w,57
2
2
  vision_agent/agent/__init__.py,sha256=TddDT4e3JVc68Dt0zSk0B4OBORx_R2WhAGK71uqEe2w,204
3
3
  vision_agent/agent/agent.py,sha256=2cjIOxEuSJrqbfPXYoV0qER5ihXsPFCoEFJa4jpqan0,597
4
4
  vision_agent/agent/agent_utils.py,sha256=qOYQn-wJsa4j4YjFOBQ41xyklCg8Y94CIIGw9ZXmgIU,2053
5
- vision_agent/agent/vision_agent.py,sha256=fXip-WkQtRyWLBAH3SWlGsJr-zJRlN_e9C-5QDuNElk,12716
5
+ vision_agent/agent/vision_agent.py,sha256=Ed10_rWzHu-hejb5jF9lAF7xbmQ_qAGpCxDvByZw6M8,14100
6
6
  vision_agent/agent/vision_agent_coder.py,sha256=OI95goKTqVaEEPYwkn6bVsHsHZeifoBC8rjG9nD0Znc,36909
7
7
  vision_agent/agent/vision_agent_coder_prompts.py,sha256=a7P19QscKNiaweke0zHPCfi5GQImpG-ZGKv_kXz0seg,13452
8
8
  vision_agent/agent/vision_agent_prompts.py,sha256=-fXiIIb48duXVljWYcJ0Y4ZzfNnRFi3C5cKdF4SdDo8,10075
@@ -15,19 +15,19 @@ vision_agent/lmm/__init__.py,sha256=YuUZRsMHdn8cMOv6iBU8yUqlIOLrbZQqZl9KPnofsHQ,
15
15
  vision_agent/lmm/lmm.py,sha256=soWmEjtleQUSH2G3tYZWxOmteIqkgMVcmuZfx4mxszU,16838
16
16
  vision_agent/lmm/types.py,sha256=ZEXR_ptBL0ZwDMTDYkgxUCmSZFmBYPQd2jreNzr_8UY,221
17
17
  vision_agent/tools/__init__.py,sha256=nufZNzbcLTuXwxFmvZNj99qE8EO2qtEPT8wFsuI9vyE,2397
18
- vision_agent/tools/meta_tools.py,sha256=9ZxoLkFFknN9dqYAlHdDDQFKuSGprdL19Ok5Qs_m0zo,22525
18
+ vision_agent/tools/meta_tools.py,sha256=orYbEPWOENXwmKSmbg52_2eMAoYT9ZbV5GjudUd-f0o,22563
19
19
  vision_agent/tools/prompts.py,sha256=V1z4YJLXZuUl_iZ5rY0M5hHc_2tmMEUKr0WocXKGt4E,1430
20
20
  vision_agent/tools/tool_utils.py,sha256=ZYqzcw_e937reoNr7gJgyKjQ7Gudxz1ttfIyo7F65w8,7758
21
21
  vision_agent/tools/tools.py,sha256=WKeB99ED0o_ISS_vZc-ch_1Dc8_Fl2fhnGlfVNwNouc,70024
22
22
  vision_agent/tools/tools_types.py,sha256=rLpCUODPY0yI65SLOTJOxfHFfqWM3WjOq-AYX25Chjk,2356
23
23
  vision_agent/utils/__init__.py,sha256=7fMgbZiEwbNS0fBOS_hJI5PuEYBblw36zLi_UjUzvj4,244
24
24
  vision_agent/utils/exceptions.py,sha256=booSPSuoULF7OXRr_YbC4dtKt6gM_HyiFQHBuaW86C4,2052
25
- vision_agent/utils/execute.py,sha256=rusXshSZKQlN6Bav9rB8BtAWiYDT4M1REhvYIUPi9TE,27973
25
+ vision_agent/utils/execute.py,sha256=Lb78YX34v2Ydr-Md25a_gylsdRVXBFbE-_dc_z6oHvg,27968
26
26
  vision_agent/utils/image_utils.py,sha256=zTTOJFOieMzwIquTFnW7T6ssx9o6XfoZ0Unqyk7GJrg,10746
27
27
  vision_agent/utils/sim.py,sha256=ebE9Cs00pVEDI1HMjAzUBk88tQQmc2U-yAzIDinnekU,5572
28
28
  vision_agent/utils/type_defs.py,sha256=BE12s3JNQy36QvauXHjwyeffVh5enfcvd4vTzSwvEZI,1384
29
29
  vision_agent/utils/video.py,sha256=hOjfEOZNcddYdoa0CoviXA4Vo9kwURKuojIJgLLJdp0,4745
30
- vision_agent-0.2.137.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
31
- vision_agent-0.2.137.dist-info/METADATA,sha256=WAKh-TA7r4hYVD1W6FlJ-W6_1VdlU4WrWnDAo2phJHY,12252
32
- vision_agent-0.2.137.dist-info/WHEEL,sha256=7Z8_27uaHI_UZAc4Uox4PpBhQ9Y5_modZXWMxtUi4NU,88
33
- vision_agent-0.2.137.dist-info/RECORD,,
30
+ vision_agent-0.2.139.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
31
+ vision_agent-0.2.139.dist-info/METADATA,sha256=PPUZf8tFHXtunCds2pyy1f8y_g2vQ4nyMpL4krQhLyA,12291
32
+ vision_agent-0.2.139.dist-info/WHEEL,sha256=7Z8_27uaHI_UZAc4Uox4PpBhQ9Y5_modZXWMxtUi4NU,88
33
+ vision_agent-0.2.139.dist-info/RECORD,,