From dce5502c07b79147b0870507b0a8e6fea50e2496 Mon Sep 17 00:00:00 2001 From: garylin2099 Date: Tue, 13 Aug 2024 20:03:46 +0800 Subject: [PATCH] check image path before encoding --- metagpt/roles/di/role_zero.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/metagpt/roles/di/role_zero.py b/metagpt/roles/di/role_zero.py index 424c7bffb..f1339ef32 100644 --- a/metagpt/roles/di/role_zero.py +++ b/metagpt/roles/di/role_zero.py @@ -2,6 +2,7 @@ from __future__ import annotations import inspect import json +import os import re import traceback from typing import Annotated, Callable, Dict, List, Literal, Optional, Tuple @@ -222,7 +223,10 @@ class RoleZero(Role): return memory for i, msg in enumerate(memory): if msg.role == "user" and isinstance(msg.content, str) and extract_image_paths(msg.content): - images = [encode_image(path) for path in extract_image_paths(msg.content)] + images = [] + for path in extract_image_paths(msg.content): + if os.path.exists(path): + images.append(encode_image(path)) memory[i] = self.llm._user_msg_with_imgs(msg.content, images=images) return memory