# `Nous.Tools.Summarize`
[🔗](https://github.com/nyo16/nous/blob/v0.17.1/lib/nous/tools/summarize.ex#L1)

Tool for summarizing long text using an LLM call.

Uses nous's own `Nous.Agent.run/3` with a lightweight model to
summarize content focused on a specific research question.

## Usage

    agent = Agent.new("openai:gpt-4",
      tools: [&Summarize.summarize/2],
      deps: %{summary_model: "openai:gpt-4o-mini"}
    )

# `summarize`

```elixir
@spec summarize(Nous.RunContext.t(), map()) :: map()
```

Summarize a long text into key points.

## Arguments

- text: The text to summarize (required)
- focus: Optional focus query to guide summarization
- max_points: Maximum number of key points (default: 5)

## Returns

A map with summary, key_points list, and relevance_score.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
