mirror of
https://github.com/hwchase17/langchain.git
synced 2025-09-22 11:00:37 +00:00
core(patch):fix partial_variables not working with SystemMessagePromptTemplate (#20711)
- **Issue:** close #17560 - @baskaryan, @eyurtsev
This commit is contained in:
@@ -407,6 +407,8 @@ class _StringImageMessagePromptTemplate(BaseMessagePromptTemplate):
|
||||
cls: Type[_StringImageMessagePromptTemplateT],
|
||||
template: Union[str, List[Union[str, _TextTemplateParam, _ImageTemplateParam]]],
|
||||
template_format: str = "f-string",
|
||||
*,
|
||||
partial_variables: Optional[Dict[str, Any]] = None,
|
||||
**kwargs: Any,
|
||||
) -> _StringImageMessagePromptTemplateT:
|
||||
"""Create a class from a string template.
|
||||
@@ -414,6 +416,7 @@ class _StringImageMessagePromptTemplate(BaseMessagePromptTemplate):
|
||||
Args:
|
||||
template: a template.
|
||||
template_format: format of the template.
|
||||
partial_variables: A dictionary of variables that can be used too partially.
|
||||
**kwargs: keyword arguments to pass to the constructor.
|
||||
|
||||
Returns:
|
||||
@@ -421,10 +424,16 @@ class _StringImageMessagePromptTemplate(BaseMessagePromptTemplate):
|
||||
"""
|
||||
if isinstance(template, str):
|
||||
prompt: Union[StringPromptTemplate, List] = PromptTemplate.from_template(
|
||||
template, template_format=template_format
|
||||
template,
|
||||
template_format=template_format,
|
||||
partial_variables=partial_variables,
|
||||
)
|
||||
return cls(prompt=prompt, **kwargs)
|
||||
elif isinstance(template, list):
|
||||
if (partial_variables is not None) and len(partial_variables) > 0:
|
||||
raise ValueError(
|
||||
"Partial variables are not supported for list of templates."
|
||||
)
|
||||
prompt = []
|
||||
for tmpl in template:
|
||||
if isinstance(tmpl, str) or isinstance(tmpl, dict) and "text" in tmpl:
|
||||
|
Reference in New Issue
Block a user