Data Agents

Data Agents, empowered by LLMs are knowledge workers within Llamalndex, designed to interact with various types of data. These agents can handle both unstructured and structured data, significantly enhancing the capabilities beyond traditional query engines.

Data Agents High Level Overview


Data Agents can autonomously conduct searches and retrieve information across unstructured, semi-structured, and structured data. They are not limited to just reading data; they can also write, modify, and store information by integrating with external service APls.

Dynamic Interaction

Unlike static query engines, Data Agents can dynamically interact with data sources. They can ingest new data and adapt based on the information they process, offering a more flexible and responsive approach to data management.

Data Agents Dynamic Interaction

Core Components

  1. Reasoning Loop: At the heart of a Data Agent is the reasoning loop, a decision-making process that determines how the agent interacts with various data tools.
  2. Tool Abstractions: Data Agents are equipped with a set of APls or tools. They leverage these tools to either fetch data or alter it, making informed decisions based on the task at hand.
Core Components of Data Agents

Reasoning Loop

The reasoning loop is a pivotal component in the architecture of Data Agents in Llamalndex. This loop is instrumental in determining how agents interact with data and tools, enabling them to make informed decisions based on the context and the task at hand. We have support for the following agents:

  1. ReACT Agent – Works across any chat/text completion LLM endpoint.
  2. FunctionCallingAgent – a unified abstraction that uses function calling capabilities of different LLMs.
  3. LLMCompiler Agent – Enables an efficient and effective orchestration of parallel function calling with LLMs.

Tool Abstractions

At their core, tool abstractions allow for a structured way to define how Data Agents can interact with data or services. Unlike typical APIs designed for human users, these tools are optimized for automated interactions, enabling agents to execute tasks with precision and efficiency.

Types of Tools:

  1. FunctionTool – A function tool allows users to easily convert any user-defined function into a Tool. It can also auto-infer the function schema.
  2. QueryEngineTool – A tool that wraps an existing query engine.

Access Agents at

Read related articles: