ποΈ πΈ BaseNode Module
The BaseNode module provides an abstract base class for nodes in a graph-based workflow, designed to perform specific actions when executed.
ποΈ π· ConditionalNode Module
The ConditionalNode module implements a node that determines the next step in the graph's execution flow based on the presence and content of a specified key in the graph's state. It extends the BaseNode class by adding condition-based logic to the execution process.
ποΈ DescriptionNode
Overview
ποΈ π¦ FetchNode Module
The FetchNode module implements a node responsible for fetching the HTML content of a specified URL or loading various types of documents (such as JSON, XML, CSV, or PDF) and updating the graph's state with this content. It uses ChromiumLoader to fetch content from web pages asynchronously, ensuring proxy protection.
ποΈ FetchNodeLevelK
Overview
ποΈ πΌ GenerateAnswerNodeCSV Module
The GenerateAnswerCSVNode module implements a node responsible for generating an answer using a language model (LLM) based on the user's input and the content extracted from a webpage. It constructs a prompt from the user's input and the scraped content, feeds it to the LLM, and parses the LLM's response to produce an answer.
ποΈ π GenerateAnswerNode Module
The GenerateAnswerNode module implements a node responsible for generating an answer using a large language model (LLM) based on the user's input and the content extracted from a webpage. It constructs a prompt from the user's input and the scraped content, feeds it to the LLM, and parses the LLM's response to produce an answer.
ποΈ GenerateAnswerNodeKLevel
Overview
ποΈ π― GenerateAnswerOmniNode Module
The GenerateAnswerOmniNode module implements a node responsible for generating an answer using a large language model (LLM) based on the user's input and the content extracted from a webpage. It constructs a prompt from the user's input and the scraped content, feeds it to the LLM, and parses the LLM's response to produce an answer.
ποΈ π€ GenerateCodeNode Module
The GenerateCodeNode module dynamically generates Python code for a function named extract_data(html: str) -> dict() that extracts specific data from HTML content, adhering to a predefined output schema. It utilizes a sophisticated reasoning loop that iteratively refines the code until it successfully extracts the desired data, ensuring both syntactic correctness and semantic alignment with the user's intent.
ποΈ π GenerateScraperNode Module
The GenerateScraperNode module implements a node responsible for generating a Python script for scraping a website using the specified library. It takes the user's prompt and the scraped content as input and generates a Python script that extracts the information requested by the user.
ποΈ π¦ GetProbableTagsNode Module
The GetProbableTagsNode module implements a node responsible for utilizing a language model to identify probable HTML tags within a document that are likely to contain the information relevant to a user's query. This node generates a prompt describing the task, submits it to the language model, and processes the output to produce a list of probable tags.
ποΈ π HtmlAnalyzerNode Module
The HtmlAnalyzerNode module analyzes HTML code based on the desired information to be extracted and returns a reduced version of the HTML content. The output of this node is primarily intended to enhance the reasoning capabilities of the GenerateCodeNode, enabling it to generate more accurate and context-aware code.
ποΈ π ImageToTextNode Module
The ImageToTextNode module implements a node responsible for retrieving images from a list of URLs and returning a description of the images using an image-to-text model.
ποΈ π¦MergeAnswersNode Module
The MergeAnswersNode module implements a node responsible for merging the answers from multiple graph instances into a single answer.
ποΈ π ParseNode Module
The ParseNode module implements a node responsible for parsing HTML content from a document and splitting it into chunks for further processing.
ποΈ π PromptRefinerNode Module
The PromptRefinerNode module refines the user's initial prompt using the output schema and any additional provided context. It aims to create a more precise prompt that establishes explicit links between elements in the user's original input and their corresponding representations in the JSON schema.
ποΈ π RAGNode Module
The RAGNode module implements a node responsible for compressing input tokens and storing the document in a vector database for retrieval. Relevant chunks are stored in the state.
ποΈ π¦ RobotsNode Module
The RobotsNode module implements a node responsible for checking if a website is scrapeable or not based on the robots.txt file. It uses a language model to determine if the website allows scraping of the provided path.
ποΈ π¦ SearchInternetNode Module
The SearchInternetNode module implements a node that generates a search query based on the user's input and searches the internet for relevant information. The node constructs a prompt for the language model, submits it, and processes the output to generate a search query. It then uses the search query to find relevant information on the internet and updates the state with the generated answer.
ποΈ π¦ SearchLinkNode Module
The SearchLinkNode module implements a node that can filter out the relevant links in the webpage content for the user prompt. It expects already scraped links on the webpage, making it ideal to use after the FetchNode.
ποΈ π¦ TextToSpeechNode Module
The TextToSpeechNode module converts text to speech using the specified text-to-speech model.