fix(anthropic_llm): Ignore non-text parts in the system prompt. (#11107)
This commit is contained in:
parent
cbb4e95928
commit
1db14793fa
1 changed files with 9 additions and 1 deletions
|
|
@ -461,7 +461,15 @@ class AnthropicLargeLanguageModel(LargeLanguageModel):
|
||||||
first_loop = True
|
first_loop = True
|
||||||
for message in prompt_messages:
|
for message in prompt_messages:
|
||||||
if isinstance(message, SystemPromptMessage):
|
if isinstance(message, SystemPromptMessage):
|
||||||
message.content = message.content.strip()
|
if isinstance(message.content, str):
|
||||||
|
message.content = message.content.strip()
|
||||||
|
elif isinstance(message.content, list):
|
||||||
|
# System prompt only support text
|
||||||
|
message.content = "".join(
|
||||||
|
c.data.strip() for c in message.content if isinstance(c, TextPromptMessageContent)
|
||||||
|
)
|
||||||
|
else:
|
||||||
|
raise ValueError(f"Unknown system prompt message content type {type(message.content)}")
|
||||||
if first_loop:
|
if first_loop:
|
||||||
system = message.content
|
system = message.content
|
||||||
first_loop = False
|
first_loop = False
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue