> ## Documentation Index
> Fetch the complete documentation index at: https://docs.open-politics.org/llms.txt
> Use this file to discover all available pages before exploring further.

# Running Analysis

> Apply schemas to your documents and extract structured data

Once you have a schema and some assets, you can run analysis. Each document gets processed by your chosen model, and results are stored as structured annotations.

## The Process

<Steps>
  <Step title="Select content">
    Pick individual assets or entire bundles
  </Step>

  <Step title="Choose schema">
    Select which schema to apply
  </Step>

  <Step title="Pick model">
    OpenAI, Anthropic, Google, or local via Ollama
  </Step>

  <Step title="Run">
    Each document gets processed, results stored as structured JSON
  </Step>
</Steps>

<Frame className="block dark:hidden">
  <video classNamecontrols width="100%">
    <source src="https://mintcdn.com/openpolitics/t41QB2OrwOAQ0Q9W/images/analysis-light.mp4?fit=max&auto=format&n=t41QB2OrwOAQ0Q9W&q=85&s=9566d5c0c74671b3aee57656a5e6a636" type="video/mp4" data-path="images/analysis-light.mp4" />
  </video>
</Frame>

<Frame className="hidden dark:block">
  <video controls width="100%">
    <source src="https://mintcdn.com/openpolitics/t41QB2OrwOAQ0Q9W/images/analysis-dark.mp4?fit=max&auto=format&n=t41QB2OrwOAQ0Q9W&q=85&s=86f292c1702b13f434fef3508db39b7a" type="video/mp4" data-path="images/analysis-dark.mp4" />
  </video>
</Frame>

## Choosing a Model

Different models have different strengths:

| Provider      | Best for                            | Notes                        |
| ------------- | ----------------------------------- | ---------------------------- |
| **OpenAI**    | General extraction, high throughput | Reliable, fast, good default |
| **Anthropic** | Nuanced analysis, long documents    | Better at complex reasoning  |
| **Google**    | Large context windows               | Good for lengthy documents   |
| **Ollama**    | Privacy, local processing           | No data leaves your machine  |

For more recent references check: [https://artificialanalysis.ai/models](https://artificialanalysis.ai/models)

<Note> When analysing large collections </Note>

1. **Start small** - Test on 2-3 documents first
2. **Check outputs** - Do they match expectations?
3. **Refine instructions** - Tighten schema if needed
4. **Scale up** - Run on full collection

<video controls width="100%">
  <source src="https://mintcdn.com/openpolitics/t41QB2OrwOAQ0Q9W/images/analysis-dark.mp4?fit=max&auto=format&n=t41QB2OrwOAQ0Q9W&q=85&s=86f292c1702b13f434fef3508db39b7a" type="video/mp4" data-path="images/analysis-dark.mp4" />
</video>

## Results

After analysis completes, results appear as **annotations** on your assets. Each annotation contains the structured data your schema extracted.

View results:

* **On the asset** - See all annotations for a specific document
* **Fragments** - If curated from a table (see [curation](/pages/concepts/curating-fragments)), you can see the persistent fragments on the asset detail view
* **In dashboards** - Aggregate and visualise across the entire run
* **Via export** - Download as CSV or JSON for external analysis

***

## Related

<CardGroup cols={2}>
  <Card title="Schemas" icon="microscope" href="/pages/app/schemas">
    Define what to extract from documents
  </Card>

  <Card title="Curating Fragments" icon="star" href="/pages/concepts/curating-fragments">
    Promote good extractions to persistent metadata
  </Card>

  <Card title="Dashboards" icon="chart-line" href="/pages/app/dashboards">
    Visualise results with charts and tables
  </Card>

  <Card title="App Setup" icon="gear" href="/pages/app/app-setup">
    Configure API keys and providers
  </Card>
</CardGroup>
