Я использовал этот код с langchain 0.2.8, и он работал нормально. Мне нужно переместить код в новую среду, где я ограничен использованием langchain 0.1.12. Когда я запускал этот код в новой среде, я продолжал получать сообщение об ошибке:
__init__ takes 1 positional argument but 2 were provided.
В этой строке выдается ошибка -> propositioning_llm = self.llm.with_structured_output(Sentences).
system_string = """
[THIS CONTAINS INSTRUCTIONS ABOUT WHAT THE SYSTEM IS SUPPOSED TO DO]
"""
propositioning_prompt = ChatPromptTemplate([
("system", system_string),
("human", "Decompose the following: {input}"),
])
class Sentences(BaseModel):
sentences: list[str]
propositioning_llm = self.llm.with_structured_output(Sentences)
propositioning_chain = propositioning_prompt | propositioning_llm
if len(paragraph.lstrip()) > 5:
sentences = propositioning_chain.invoke(paragraph)
returned_list = sentences.sentences
return returned_list
РЕДАКТИРОВАТЬ: После того, как вчера вечером я попробовал массу альтернатив, мне пришло в голову, что, поскольку я использую корпоративную версию, возможно, я мог бы увеличить переменную OPEN_API_VERSION. Я сделал это, и теперь получаю следующую ошибку:
self, schema: Union[dict, type[BaseModel]], **kwargs: Any
) -> Runnable[LanguageModelInput, Union[dict, BaseModel]]:
"""Not implemented on this class."""
# Implement this on child class if there is a way of steering the model to
# generate responses that match a given schema.
raise NotImplementedError()```
Подробнее здесь: https://stackoverflow.com/questions/790 ... h-pydantic