The LLM to use
OptionalmemoryThe retriever to use for retrieving stored thoughts and insights.
This method processes a chat history to generate insights about the user.
The input values for the chain. It should contain a key for chat history.
OptionalrunManager: anyOptional callback manager for the chain run.
A promise that resolves to a list of insights about the user.
If the chat history key is not found in the input values or if the chat history is not an array of BaseMessages.
The method performs the following steps:
Return the string type key uniquely identifying this class of chain.
Protected_This method breaks down the chat history into chunks of messages. Each chunk consists of a sequence of messages ending with an AI message and the subsequent user response, if any.
The chat history to be chunked.
An array of message chunks. Each chunk includes a sequence of messages and the subsequent user response.
The method iterates over the chat history and pushes each message into a temporary array. When it encounters an AI message, it checks for a subsequent user message. If a user message is found, it is considered as the user response to the AI message. If no user message is found after the AI message, the user response is undefined. The method then pushes the chunk (sequence of messages and user response) into the result array. This process continues until all messages in the chat history have been processed.
Invoke the chain with the provided input and returns the output.
Input values for the chain run.
Optionaloptions: anyPromise that resolves with the output of the chain run.
Return a json-like object representing this chain.
StaticdeserializeLoad a chain from a json-like object describing it.
StaticfromStatic method that creates a ViolationOfExpectationsChain instance from a ChatOpenAI and retriever. It also accepts optional options to customize the chain.
The ChatOpenAI instance.
The retriever used for similarity search.
Optionaloptions: Partial<Omit<ViolationOfExpectationsChainInput, "llm" | "retriever">>Optional options to customize the chain.
A new instance of ViolationOfExpectationsChain.
Staticlc_
Chain that generates key insights/facts of a user based on a a chat conversation with an AI.