Merge pull request #613 from SuanmoSuanyangTechnology/fix/message-file
fix(workflow): fix incorrect file message display in non-streaming calls
This commit is contained in:
@@ -636,30 +636,33 @@ class WorkflowService:
|
|||||||
final_messages = result.get("messages", [])[init_message_length:]
|
final_messages = result.get("messages", [])[init_message_length:]
|
||||||
human_message = ""
|
human_message = ""
|
||||||
assistant_message = ""
|
assistant_message = ""
|
||||||
|
human_meta = {
|
||||||
|
"files": []
|
||||||
|
}
|
||||||
for message in final_messages:
|
for message in final_messages:
|
||||||
if message["role"] == "user":
|
if message["role"] == "user":
|
||||||
if isinstance(message["content"], str):
|
if isinstance(message["content"], str):
|
||||||
human_message += message["content"]
|
human_message += message["content"]
|
||||||
elif isinstance(message["content"], list):
|
elif isinstance(message["content"], list):
|
||||||
for file in message["content"]:
|
for file in message["content"]:
|
||||||
if file.get("type") == FileType.IMAGE:
|
human_meta["files"].append({
|
||||||
human_message += f"})"
|
"type": file.get("type"),
|
||||||
else:
|
"url": file.get("url")
|
||||||
human_message += f"[{file.get('type')}]({file.get('url', '')})"
|
})
|
||||||
if message["role"] == "assistant":
|
if message["role"] == "assistant":
|
||||||
assistant_message = message["content"]
|
assistant_message = message["content"]
|
||||||
self.conversation_service.add_message(
|
self.conversation_service.add_message(
|
||||||
conversation_id=conversation_id_uuid,
|
conversation_id=conversation_id_uuid,
|
||||||
role="user",
|
role="user",
|
||||||
content=human_message,
|
content=human_message,
|
||||||
meta_data=None
|
meta_data=human_meta
|
||||||
)
|
)
|
||||||
self.conversation_service.add_message(
|
self.conversation_service.add_message(
|
||||||
message_id=message_id,
|
message_id=message_id,
|
||||||
conversation_id=conversation_id_uuid,
|
conversation_id=conversation_id_uuid,
|
||||||
role="assistant",
|
role="assistant",
|
||||||
content=assistant_message,
|
content=assistant_message,
|
||||||
meta_data={"usage": token_usage}
|
meta_data={"usage": token_usage, "audio_url": None}
|
||||||
)
|
)
|
||||||
self.update_execution_status(
|
self.update_execution_status(
|
||||||
execution.execution_id,
|
execution.execution_id,
|
||||||
|
|||||||
Reference in New Issue
Block a user