Spaces:
Running
Running
Amir Mahla
commited on
Commit
·
ea28352
1
Parent(s):
7803f5c
CLEAN image resources
Browse files
cua2-core/src/cua2_core/services/agent_service.py
CHANGED
|
@@ -413,8 +413,9 @@ class AgentService:
|
|
| 413 |
|
| 414 |
step_filename = f"{message_id}-{memory_step.step_number + 1}"
|
| 415 |
screenshot_bytes = agent.desktop.screenshot()
|
| 416 |
-
|
| 417 |
-
image = compress_image_to_max_size(
|
|
|
|
| 418 |
|
| 419 |
for previous_memory_step in (
|
| 420 |
agent.memory.steps
|
|
|
|
| 413 |
|
| 414 |
step_filename = f"{message_id}-{memory_step.step_number + 1}"
|
| 415 |
screenshot_bytes = agent.desktop.screenshot()
|
| 416 |
+
original_image = Image.open(BytesIO(screenshot_bytes))
|
| 417 |
+
image = compress_image_to_max_size(original_image, max_size_kb=500)
|
| 418 |
+
del original_image
|
| 419 |
|
| 420 |
for previous_memory_step in (
|
| 421 |
agent.memory.steps
|
cua2-core/src/cua2_core/services/utils.py
CHANGED
|
@@ -27,7 +27,9 @@ def compress_image_to_max_size(
|
|
| 27 |
for compress_level in [3, 6, 9]:
|
| 28 |
buffered = BytesIO()
|
| 29 |
current_image.save(buffered, format="PNG", compress_level=compress_level)
|
| 30 |
-
|
|
|
|
|
|
|
| 31 |
if png_size <= max_size_bytes:
|
| 32 |
# Size is acceptable, return the image as-is (it's already in PNG format when saved)
|
| 33 |
return current_image
|
|
@@ -52,7 +54,9 @@ def compress_image_to_max_size(
|
|
| 52 |
# Check PNG size with best compression
|
| 53 |
buffered = BytesIO()
|
| 54 |
resized_image.save(buffered, format="PNG", compress_level=9)
|
| 55 |
-
|
|
|
|
|
|
|
| 56 |
|
| 57 |
if png_size <= max_size_bytes:
|
| 58 |
# Found acceptable size
|
|
|
|
| 27 |
for compress_level in [3, 6, 9]:
|
| 28 |
buffered = BytesIO()
|
| 29 |
current_image.save(buffered, format="PNG", compress_level=compress_level)
|
| 30 |
+
png_bytes = buffered.getvalue()
|
| 31 |
+
buffered.close()
|
| 32 |
+
png_size = len(png_bytes)
|
| 33 |
if png_size <= max_size_bytes:
|
| 34 |
# Size is acceptable, return the image as-is (it's already in PNG format when saved)
|
| 35 |
return current_image
|
|
|
|
| 54 |
# Check PNG size with best compression
|
| 55 |
buffered = BytesIO()
|
| 56 |
resized_image.save(buffered, format="PNG", compress_level=9)
|
| 57 |
+
png_bytes = buffered.getvalue()
|
| 58 |
+
buffered.close()
|
| 59 |
+
png_size = len(png_bytes)
|
| 60 |
|
| 61 |
if png_size <= max_size_bytes:
|
| 62 |
# Found acceptable size
|