Jump to content

Connect SuperML | Leeroopedia MCP: Equip your AI agents with best practices, code verification, and debugging knowledge. Powered by Leeroo — building Organizational Superintelligence. Contact us at founders@leeroo.com.

Principle:Googleapis Python genai Content Generation With Tools

From Leeroopedia
Knowledge Sources
Domains Function_Calling, Generative_AI
Last Updated 2026-02-15 00:00 GMT

Overview

An augmented generation pattern where the language model can invoke external functions during inference, incorporating their results into the final response.

Description

Content Generation With Tools extends standard generation by giving the model access to external functions. When the model determines it needs external data, it generates a structured function call instead of text. The SDK (or application) executes the function, and the result is fed back to the model for incorporation into the final response. This creates a multi-turn loop between the model and external tools, enabling grounded responses based on real-time data. The Automatic Function Calling (AFC) mechanism automates this loop, handling function invocation and result feeding transparently.

Usage

Use tool-augmented generation when the model needs access to information beyond its training data: real-time data (weather, stock prices), private data (databases, internal APIs), or computational tools (calculators, code executors). The AFC mechanism handles simple cases automatically; disable it for complex scenarios requiring custom orchestration, error handling, or user confirmation.

Theoretical Basis

Tool-augmented generation follows the ReAct (Reasoning + Acting) pattern:

  1. Reasoning: Model analyzes the prompt and available tools
  2. Acting: Model generates a structured function call with arguments
  3. Observation: Function result is appended to the conversation context
  4. Iteration: Steps 1-3 repeat until the model generates a text response
# AFC loop (pseudo-code)
contents = [user_query]
while True:
    response = model.generate(contents, tools=tool_list)
    if response.function_calls:
        for call in response.function_calls:
            result = execute(call.name, call.args)
            contents.append(function_response(call.name, result))
    else:
        return response.text  # Final answer

Related Pages

Implemented By

Uses Heuristic

Page Connections

Double-click a node to navigate. Hold to expand connections.
Principle
Implementation
Heuristic
Environment