diff --git a/ldp/alg/optimizer/ape.py b/ldp/alg/optimizer/ape.py index 110eb7b4..72c43efc 100644 --- a/ldp/alg/optimizer/ape.py +++ b/ldp/alg/optimizer/ape.py @@ -194,7 +194,9 @@ def aggregate_trajectory(self, trajectory: Trajectory) -> None: continue # (x: first prompt's user message's content, y: AI response's content) x = next( - cast(str, m.content) for m in result.prompt if m.role == "user" + cast(str, m.content) + for m in result.prompt + if (isinstance(m, Message) and m.role == "user") ) y = cast(str, result.messages[0].content)