@@ -215,7 +215,7 @@ def _message_to_part(self, message: ChatMessage) -> Part:
215
215
return p
216
216
elif message .is_from (ChatRole .SYSTEM ) or message .is_from (ChatRole .ASSISTANT ):
217
217
return Part .from_text (message .text )
218
- elif message .is_from (ChatRole .FUNCTION ):
218
+ elif "FUNCTION" in ChatRole . _member_names_ and message .is_from (ChatRole .FUNCTION ):
219
219
return Part .from_function_response (name = message .name , response = message .text )
220
220
elif message .is_from (ChatRole .USER ):
221
221
return self ._convert_part (message .text )
@@ -227,14 +227,15 @@ def _message_to_content(self, message: ChatMessage) -> Content:
227
227
part .function_call .args [k ] = v
228
228
elif message .is_from (ChatRole .SYSTEM ) or message .is_from (ChatRole .ASSISTANT ):
229
229
part = Part .from_text (message .text )
230
- elif message .is_from (ChatRole .FUNCTION ):
230
+ elif "FUNCTION" in ChatRole . _member_names_ and message .is_from (ChatRole .FUNCTION ):
231
231
part = Part .from_function_response (name = message .name , response = message .text )
232
232
elif message .is_from (ChatRole .USER ):
233
233
part = self ._convert_part (message .text )
234
234
else :
235
235
msg = f"Unsupported message role { message .role } "
236
236
raise ValueError (msg )
237
- role = "user" if message .is_from (ChatRole .USER ) or message .is_from (ChatRole .FUNCTION ) else "model"
237
+
238
+ role = "model" if message .is_from (ChatRole .ASSISTANT ) or message .is_from (ChatRole .SYSTEM ) else "user"
238
239
return Content (parts = [part ], role = role )
239
240
240
241
@component .output_types (replies = List [ChatMessage ])
0 commit comments