---
title: "init(model:tools:instructions:)"
framework: foundationmodels
role: symbol
role_heading: Initializer
path: "foundationmodels/languagemodelsession/init(model:tools:instructions:)"
---

# init(model:tools:instructions:)

Start a new session in blank slate state with instructions builder.

## Declaration

```swift
convenience init(model: SystemLanguageModel = .default, tools: [any Tool] = [], @InstructionsBuilder instructions: () throws -> Instructions) rethrows
```

## Mentioned in

Adding server-side intelligence with Private Cloud Compute

## Discussion

Discussion Parameters model: The language model to use for this session. tools: Tools to make available to the model for this session. instructions: Instructions that control the model’s behavior.

## See Also

### Creating a session

- [init(model:tools:transcript:)](foundationmodels/languagemodelsession/init(model:tools:transcript:).md)
