<!--
{
  "availability" : [
    "iOS: 27.0.0 -",
    "iPadOS: 27.0.0 -",
    "macCatalyst: 27.0.0 -",
    "macOS: 27.0.0 -",
    "visionOS: 27.0.0 -",
    "watchOS: 27.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "FoundationModels",
  "identifier" : "/documentation/FoundationModels/LanguageModelExecutorGenerationRequest",
  "metadataVersion" : "0.1.0",
  "role" : "Structure",
  "symbol" : {
    "kind" : "Structure",
    "modules" : [
      "Foundation Models"
    ],
    "preciseIdentifier" : "s:16FoundationModels38LanguageModelExecutorGenerationRequestV"
  },
  "title" : "LanguageModelExecutorGenerationRequest"
}
-->

# LanguageModelExecutorGenerationRequest

A type that contains the details for a generation request.

```
struct LanguageModelExecutorGenerationRequest
```

## Overview

A generation request is the input payload that
[`respond(to:model:streamingInto:)`](/documentation/FoundationModels/LanguageModelExecutor/respond(to:model:streamingInto:)) handles. It bundles
everything the executor needs to translate a framework call into a backend request,
like the conversation so far, what tools are available, and so on.

## Topics

### Creating a generation request

[`init(id: UUID, transcript: Transcript, enabledTools: [Transcript.ToolDefinition], schema: GenerationSchema?, generationOptions: GenerationOptions, contextOptions: ContextOptions, metadata: [String : any ConvertibleToGeneratedContent])`](/documentation/FoundationModels/LanguageModelExecutorGenerationRequest/init(id:transcript:enabledTools:schema:generationOptions:contextOptions:metadata:))

Creates a generation request.

### Configuring a generation request

[`var id: UUID`](/documentation/FoundationModels/LanguageModelExecutorGenerationRequest/id)

A request id for logging and tracing purposes.

[`var metadata: [String : GeneratedContent]`](/documentation/FoundationModels/LanguageModelExecutorGenerationRequest/metadata)

Metadata to attach to the request.

[`var contextOptions: ContextOptions`](/documentation/FoundationModels/LanguageModelExecutorGenerationRequest/contextOptions)

Settings that configure how the model is prompted.

[`var enabledToolDefinitions: [Transcript.ToolDefinition]`](/documentation/FoundationModels/LanguageModelExecutorGenerationRequest/enabledToolDefinitions)

The subset of tool definitions that the model is allowed to call.

[`var generationOptions: GenerationOptions`](/documentation/FoundationModels/LanguageModelExecutorGenerationRequest/generationOptions)

Generation options that control sampling behavior.

[`var schema: GenerationSchema?`](/documentation/FoundationModels/LanguageModelExecutorGenerationRequest/schema)

An optional schema dictating the required output format.

[`var transcript: Transcript`](/documentation/FoundationModels/LanguageModelExecutorGenerationRequest/transcript)

A transcript to generate the next entry for.

## Relationships

### Conforms To

[`SendableMetatype`](/documentation/Swift/SendableMetatype)

[`Sendable`](/documentation/Swift/Sendable)

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)