Query Decomposition

Task Decomposition breaks complex queries into smaller subqueries, helping AI chatbots deliver more accurate and focused answers.

Query Decomposition

Component description

How the Query Decomposition component works

Query Decomposition Component

Query Decomposition is a flow component designed to enhance the precision and effectiveness of AI-driven workflows by breaking down complex input queries into distinct, manageable sub-queries. This process helps ensure that each aspect of a user’s original question is addressed, leading to more thorough and accurate responses.

What Does This Component Do?

The primary function of the Query Decomposition component is to take an input text—typically a complex or multi-part question—and split it into several alternative or sub-queries. These sub-queries represent the individual pieces of information that need to be resolved in order to fully answer the original query. This approach is especially useful in scenarios where a question is broad, ambiguous, or composed of several intertwined elements.

Key Features and Inputs

Input NameTypeRequiredDescription
Input TextMessageYesThe main text or question that you want to split into multiple alternative queries.
Chat HistoryInMemoryChatMessageHistoryNoPrevious chat messages to provide context for generating more precise sub-queries.
LLM (Model)BaseChatModelNoThe language model used for generating alternative queries.
Include Original QueryBooleanNoOption to include the original query in the list of alternative queries.
System MessageStringNoAdditional system-level instruction that can be appended to the prompt for customizing behavior.
  • Input Text (required): The text to be analyzed and decomposed. This is the main user query.
  • Chat History: (optional) If available, the previous conversation context can be provided to improve the relevance and precision of the generated sub-queries.
  • LLM (Model): (optional) Specify which large language model (LLM) should be used for the decomposition process, allowing for flexible integration with various AI models.
  • Include Original Query: (advanced, optional) Control whether the output should also include the original query alongside the generated sub-queries.
  • System Message: (advanced, optional) Allows you to add a custom system message to help steer the output or provide additional instruction to the model.

Outputs

  • Message: The component outputs a message object containing the list of alternative queries or sub-questions. This can be used as input for downstream AI processing steps, such as separate answering, retrieval, or further analysis.

Why Is This Useful?

Query Decomposition is valuable in complex AI workflows where single queries may cover multiple topics or require multi-step reasoning. By breaking queries down, you can:

  • Ensure all parts of a complex question are addressed.
  • Facilitate more accurate search or retrieval of information.
  • Enable modular, step-by-step processing in AI pipelines.
  • Improve the transparency and explainability of AI-generated answers.

Example Use Cases

  • Customer Support: Decomposing a lengthy customer inquiry into individual issues for more targeted responses.
  • Research Assistance: Breaking down a broad research question into specific sub-topics for more focused literature searches.
  • Multi-Step Reasoning: Preparing questions for AI agents that require sequential problem-solving or planning.

Summary Table

FeatureDescription
InputComplex user query (text)
OutputList of alternative/sub-queries (as a message object)
Context SupportYes (via chat history)
Model SelectionYes (custom LLM can be specified)
Advanced OptionsInclude original query, custom system message

By integrating Query Decomposition into your AI workflow, you enable smarter, more granular handling of complex queries, leading to improved outcomes and a better user experience.

There are no examples of flow templates available at the moment using this component.

Frequently asked questions

What is the Query Decomposition component?

The Query Decomposition breaks complex and compound queries into simple subqueries that are easier to address. This way, it can provide more detailed and focused answers.

What happens if I don’t use the Query Decomposition?

Query Decomposition isn’t necessary for all Flows. Its primary use is for creating customer service bots and other uses where the input requires a step-by-step approach to complex input. Using Task Decomposition ensures detailed and highly-relevant answers. Without it, the bot may resort to vague answers.

What’s the difference between Query Expansion and Query Decomposition?

Both help the bot understand the query better. Query Decomposition takes complex or compound queries and breaks them down into smaller executable steps. On the other hand, Query Expansion appends incomplete or faulty queries, making them clear and complete.

Try Query Decomposition with FlowHunt

Start building smarter AI chatbots and automate complex queries with FlowHunt’s Query Decomposition component.

Learn more