# ModelResponse

> **Class** in `langchain`

📖 [View in docs](https://reference.langchain.com/python/langchain/agents/middleware/types/ModelResponse)

Response from model execution including messages and optional structured output.

The result will usually contain a single `AIMessage`, but may include an additional
`ToolMessage` if the model used a tool for structured output.

## Signature

```python
ModelResponse(
    self,
    result: list[BaseMessage],
    structured_response: ResponseT | None = None,
)
```

## Extends

- `Generic[ResponseT]`

## Constructors

```python
__init__(
    self,
    result: list[BaseMessage],
    structured_response: ResponseT | None = None,
) -> None
```

| Name | Type |
|------|------|
| `result` | `list[BaseMessage]` |
| `structured_response` | `ResponseT \| None` |


## Properties

- `result`
- `structured_response`

---

[View source on GitHub](https://github.com/langchain-ai/langchain/blob/ee95ad6907f5eab94644183393a20aa2a032bb19/libs/langchain_v1/langchain/agents/middleware/types.py#L271)