Added a check to ensure the input text is a string before proceeding with parsing (#22809)

Co-authored-by: -LAN- <laipz8200@outlook.com>
This commit is contained in:
crazywoola
2025-07-23 13:53:27 +08:00
committed by GitHub
parent 82cc37bf51
commit 60c37fe492
4 changed files with 26 additions and 3 deletions

View File

@@ -156,6 +156,23 @@ class PromptMessage(ABC, BaseModel):
"""
return not self.content
def get_text_content(self) -> str:
"""
Get text content from prompt message.
:return: Text content as string, empty string if no text content
"""
if isinstance(self.content, str):
return self.content
elif isinstance(self.content, list):
text_parts = []
for item in self.content:
if isinstance(item, TextPromptMessageContent):
text_parts.append(item.data)
return "".join(text_parts)
else:
return ""
@field_validator("content", mode="before")
@classmethod
def validate_content(cls, v):