---
title: Built-in extractors | Letta Docs
description: Use built-in extractors for common patterns like JSON extraction, tool calls, and message content.
---

Letta Evals provides a set of built-in extractors that cover the most common extraction needs.

**What are extractors?** Extractors determine what part of an agent’s response gets evaluated. They take the full conversation trajectory and extract just the piece you want to grade.

## Common Extractors

### last\_assistant

Extracts the last assistant message content.

```
extractor: last_assistant # Most common - gets final response
```

### first\_assistant

Extracts the first assistant message content.

```
extractor: first_assistant
```

### all\_assistant

Concatenates all assistant messages with a separator.

```
extractor: all_assistant
extractor_config:
  separator: "\n\n" # Join messages with double newline
```

### pattern

Extracts content matching a regex pattern.

```
extractor: pattern
extractor_config:
  pattern: 'Result: (\d+)' # Regex pattern to match
  group: 1 # Extract capture group 1
```

### tool\_arguments

Extracts arguments from a specific tool call.

```
extractor: tool_arguments
extractor_config:
  tool_name: search # Which tool to extract from
```

### tool\_output

Extracts the return value from a specific tool call.

```
extractor: tool_output
extractor_config:
  tool_name: search
```

### memory\_block

Extracts content from a specific memory block.

```
extractor: memory_block
extractor_config:
  block_label: human # Which memory block to extract
```

**Important**: This extractor requires the agent’s final state, which adds overhead.

### after\_marker

Extracts content after a specific marker string.

```
extractor: after_marker
extractor_config:
  marker: "ANSWER:"
  include_marker: false
```

## Next Steps

- [Custom Extractors](/guides/evals/extractors/custom/index.md) - Write your own extractors
- [Extractors Concept](/guides/evals/concepts/extractors/index.md) - Understanding extractors
