> This page is for version 2025-11-27 (default).
> For other versions, use one of these documentation indexes:
> - 2025-11-27 (default): https://docs.caesar.xyz/2025-11-27/llms.txt
> - 2025-08-08: https://docs.caesar.xyz/2025-08-08/llms.txt

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.caesar.xyz/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.caesar.xyz/_mcp/server.

## Renamed compute\_units to reasoning\_loops

The `compute_units` parameter has been renamed to `reasoning_loops` to better reflect what the parameter controls. This is a breaking change for request payloads.

**`Before (2025-08-08)`**

```json title="Before (2025-08-08)"
{
  "query": "What is the current price of Bitcoin?",
  "compute_units": 3
}
```

**`After (2025-11-27)`**

```json title="After (2025-11-27)"
{
  "query": "What is the current price of Bitcoin?",
  "reasoning_loops": 3
}
```

## New request parameters

Five new parameters give you finer control over research behavior:

| Parameter          | Type    | Default | Description                                                          |
| ------------------ | ------- | ------- | -------------------------------------------------------------------- |
| `collection_ids`   | array   | -       | IDs of collections to search across                                  |
| `source_timeout`   | integer | 60      | Maximum seconds to wait for each source                              |
| `reasoning_mode`   | boolean | true    | Enable multi-step reasoning                                          |
| `allow_early_exit` | boolean | true    | Allow completion before max loops if sufficient information gathered |
| `exclude_social`   | boolean | false   | Exclude social media sources from research                           |

## Collection-based research

You can now associate research requests with file collections using the `collection_ids` parameter. The research pipeline will search across all files within the specified collections.

```json
{
  "query": "Summarize the key findings from my research papers",
  "collection_ids": ["a1b2c3d4-5678-90ab-cdef-1234567890ab"],
  "reasoning_loops": 3
}
```

> **Tip**
>
> Combine `collection_ids` with `files` to include both collection-based and individual file sources in a single request.

## New response fields

Two new fields provide better visibility into job execution:

| Field                      | Type    | Description                     |
| -------------------------- | ------- | ------------------------------- |
| `reasoning_loops_consumed` | integer | Actual loops used               |
| `running_time`             | float   | Total execution time in seconds |

## Removed fields

The `score` field has been removed from result items. Source relevance is now determined internally and reflected in result ordering.

## Migration guide

1. Replace `compute_units` with `reasoning_loops` in all requests
2. Update response parsing to use `reasoning_loops_consumed` instead of `compute_units_consumed`
3. Remove any logic that depends on the `score` field in results