haive.agents.rag.query_decomposition.agent ========================================== .. py:module:: haive.agents.rag.query_decomposition.agent .. autoapi-nested-parse:: Query Decomposition Agents. Modular agents for breaking down complex queries into manageable sub-queries. Can be plugged into any workflow with compatible I/O schemas. Classes ------- .. autoapisummary:: haive.agents.rag.query_decomposition.agent.AdaptiveQueryDecomposerAgent haive.agents.rag.query_decomposition.agent.ContextualDecomposition haive.agents.rag.query_decomposition.agent.ContextualQueryDecomposerAgent haive.agents.rag.query_decomposition.agent.HierarchicalDecomposition haive.agents.rag.query_decomposition.agent.HierarchicalQueryDecomposerAgent haive.agents.rag.query_decomposition.agent.QueryDecomposerAgent haive.agents.rag.query_decomposition.agent.QueryDecomposition haive.agents.rag.query_decomposition.agent.QueryType haive.agents.rag.query_decomposition.agent.SubQuery Functions --------- .. autoapisummary:: haive.agents.rag.query_decomposition.agent.create_query_decomposer haive.agents.rag.query_decomposition.agent.get_query_decomposer_io_schema Module Contents --------------- .. py:class:: AdaptiveQueryDecomposerAgent Bases: :py:obj:`haive.agents.base.agent.Agent` Adaptive query decomposition that selects best strategy. .. py:method:: build_graph() Build adaptive decomposition graph. .. py:class:: ContextualDecomposition(/, **data) Bases: :py:obj:`pydantic.BaseModel` Context-aware query decomposition. Create a new model by parsing and validating input data from keyword arguments. Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model. `self` is explicitly positional-only to allow `self` as a field name. .. py:class:: ContextualQueryDecomposerAgent Bases: :py:obj:`haive.agents.base.agent.Agent` Context-aware query decomposition agent. .. py:method:: build_graph() Build contextual decomposition graph. .. py:class:: HierarchicalDecomposition(/, **data) Bases: :py:obj:`pydantic.BaseModel` Hierarchical query decomposition with levels. Create a new model by parsing and validating input data from keyword arguments. Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model. `self` is explicitly positional-only to allow `self` as a field name. .. py:class:: HierarchicalQueryDecomposerAgent Bases: :py:obj:`haive.agents.base.agent.Agent` Hierarchical query decomposition agent. .. py:method:: build_graph() Build hierarchical decomposition graph. .. py:class:: QueryDecomposerAgent Bases: :py:obj:`haive.agents.base.agent.Agent` Basic query decomposition agent. .. py:method:: build_graph() Build query decomposition graph. .. py:class:: QueryDecomposition(/, **data) Bases: :py:obj:`pydantic.BaseModel` Complete query decomposition result. Create a new model by parsing and validating input data from keyword arguments. Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model. `self` is explicitly positional-only to allow `self` as a field name. .. py:class:: QueryType Bases: :py:obj:`str`, :py:obj:`enum.Enum` Types of queries for decomposition strategy. Initialize self. See help(type(self)) for accurate signature. .. py:class:: SubQuery(/, **data) Bases: :py:obj:`pydantic.BaseModel` Individual sub-query in decomposition. Create a new model by parsing and validating input data from keyword arguments. Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model. `self` is explicitly positional-only to allow `self` as a field name. .. py:function:: create_query_decomposer(decomposer_type = 'basic', llm_config = None, **kwargs) Create a query decomposer agent. :param decomposer_type: Type of decomposer to create :param llm_config: LLM configuration :param \*\*kwargs: Additional arguments :returns: Configured query decomposer agent .. py:function:: get_query_decomposer_io_schema() Get I/O schema for query decomposers for compatibility checking.