GenAI Lesson 49 – Agents | Dataplexa

Agents: Building Autonomous, Tool-Using AI Systems

Until now, most GenAI systems we discussed respond once to a prompt.

Agents go a step further.

They can reason, decide, act, observe results, and repeat — without human intervention at every step.

Why Agents Exist

Real-world problems are not single-step.

Tasks like booking flights, analyzing logs, debugging systems, or answering multi-part questions require multiple actions.

Agents exist to handle these workflows autonomously.

How to Think Like an Engineer Before Building an Agent

Before writing any code, ask:

  • What is the agent’s goal?
  • What tools can it use?
  • When should it stop?

An agent without boundaries is dangerous.

Core Agent Loop

Almost every agent follows this cycle:

  • Receive goal
  • Reason about next step
  • Call a tool or model
  • Observe result
  • Decide whether to continue

This loop continues until the goal is satisfied.

Minimal Agent Skeleton

This is the simplest conceptual agent loop.


while not goal_completed:
    thought = llm(reasoning_prompt)
    action = decide_action(thought)
    result = run_tool(action)
    observe(result)
  

This structure separates reasoning from action.

Why Separation of Reasoning and Tools Matters

LLMs are good at reasoning.

They are not reliable at executing real-world operations.

Agents use LLMs for decisions and external tools for execution.

Example: Tool-Using Agent

Here, the model decides *what* to do, but the system decides *how* it happens.


def agent_step(state):
    response = llm(state["context"])
    
    if "search" in response:
        result = web_search(state["query"])
    elif "calculate" in response:
        result = calculator(state["expression"])
    else:
        result = response
    
    state["context"] += str(result)
    return state
  

The agent updates its own context after each action.

What Actually Happens During Execution

Step by step:

  • The LLM generates a plan
  • The system parses intent
  • A tool executes safely
  • The result feeds back into the agent

This prevents hallucinated execution.

Stopping Conditions

Agents must know when to stop.

Common stopping rules include:

  • Goal achieved
  • Maximum steps reached
  • Error threshold exceeded

Why Infinite Agents Are Dangerous

Without limits, agents can:

  • Loop endlessly
  • Consume excessive tokens
  • Trigger unintended actions

Production agents always have guards.

Agents in RAG Systems

Agents often orchestrate RAG pipelines:

  • Decide whether retrieval is needed
  • Choose data sources
  • Refine queries iteratively

This makes retrieval dynamic instead of static.

How Learners Should Practice Agents

Effective practice involves:

  • Building agents with one tool only
  • Logging every step
  • Manually inspecting decisions

Understanding failures is more important than success.

Practice

What makes agents different from chatbots?



What do agents use to execute real actions?



What structure drives agent behavior?



Quick Quiz

What is the LLM mainly responsible for in agents?





Why are stopping conditions required?





Agents in RAG systems mainly provide:





Recap: Agents transform LLMs into autonomous systems capable of reasoning, acting, and iterating toward goals.

Next up: Memory — enabling agents to retain and use past context effectively.