> ## Documentation Index
> Fetch the complete documentation index at: https://agno-v2-studio-tools-doc.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Agentic Chunking

Agentic chunking is an intelligent method of splitting documents into smaller chunks by using a model to determine natural breakpoints in the text. Rather than splitting text at fixed character counts, it analyzes the content to find semantically meaningful boundaries like paragraph breaks and topic transitions.

<Steps>
  <Step title="Create a Python file">
    ```python agentic_chunking.py theme={null}
    import asyncio
    from agno.agent import Agent
    from agno.knowledge.chunking.agentic import AgenticChunking
    from agno.knowledge.knowledge import Knowledge
    from agno.knowledge.reader.pdf_reader import PDFReader
    from agno.vectordb.pgvector import PgVector

    db_url = "postgresql+psycopg://ai:ai@localhost:5532/ai"

    knowledge = Knowledge(
        vector_db=PgVector(table_name="recipes_agentic_chunking", db_url=db_url),
    )

    asyncio.run(knowledge.ainsert(
        url="https://agno-public.s3.amazonaws.com/recipes/ThaiRecipes.pdf",
        reader=PDFReader(
            name="Agentic Chunking Reader",
            chunking_strategy=AgenticChunking(),
        ),
    ))

    agent = Agent(
        knowledge=knowledge,
        search_knowledge=True,
    )

    agent.print_response("How to make Thai curry?", markdown=True)
    ```
  </Step>

  <Snippet file="create-venv-step.mdx" />

  <Step title="Install dependencies">
    ```bash theme={null}
    uv pip install -U agno sqlalchemy psycopg pgvector
    ```
  </Step>

  <Snippet file="run-pgvector-step.mdx" />

  <Step title="Run the script">
    ```bash theme={null}
    python agentic_chunking.py
    ```
  </Step>
</Steps>

## Custom Prompts

```python theme={null}
AgenticChunking(
    custom_prompt="Split at major section boundaries. Keep complete clauses together.",
    max_chunk_size=3000,
)
```

<Info>
  Custom prompts override default chunking behavior and are prioritized over default instructions.
</Info>

<Tip>
  **Best Practices:**

  * Always set `max_chunk_size` when using `custom_prompt`.
  * Focus `custom_prompt` on chunking logic only.
  * The default instructions automatically handle the output format constraints.
</Tip>

See [Agentic Chunking with Custom Prompt](/examples/knowledge/chunking/agentic-chunking-custom-prompt) for a complete example.

## Agentic Chunking Params

<Snippet file="chunking-agentic.mdx" />
