---
title: "Profiles and several sessions"
lesson_id: "02"
---

# Profiles and several sessions

- **Lesson ID:** 02
- **Goal:** Explain Dynamic Profiles as one active seat, and several LanguageModelSession values as the path for parallel votes.
- **Human lesson:** [02-profiles-and-sessions.html](02-profiles-and-sessions.html)

## Prerequisites

Lesson 01.

## Inputs, outputs, and artifacts

- **Inputs:** DynamicProfile, Profile, and LanguageModelSession.
- **Outputs:** A clear split between switching hats and voting in parallel.
- **Artifacts:** A ReviewProfile sketch and progressive .flow diagrams.

## Agent build steps

1. Show a DynamicProfile switch with one active Profile.
2. Name baton-pass and phone-a-friend as Apple's patterns, then explain them literally.
3. Say parallel votes need several sessions.
4. Link [Pause and resume long AI jobs](../on-device-durable-workflows/), [Stop prompt attacks and leaks](../on-device-guardrails/), and [Talk to tools with MCP](../on-device-mcp-server-client/).

## Constraints

iOS 27 or later, or macOS 27 or later, and Xcode 27. Plain spoken English. No metaphor, quizzes, Mermaid, or em dashes. Do not claim Dynamic Profiles run several agents in parallel inside one session. Parallel votes need several LanguageModelSession values. Confirm Dynamic Profile names in the installed SDK docs.

## Key concepts

- A Dynamic Profile picks one active `Profile` each time the model is prompted.
- Baton-pass changes which profile is active on one session.
- Phone-a-friend is a short child session whose reply returns as tool output.
- Weighted voting needs several independent sessions.

## Takeaways

- Dynamic Profiles switch one active seat, not parallel votes.
- Use several parent sessions to vote together.
- Do not expect one Profile body to produce three concurrent votes.

## Acceptance checks

- The page says only one profile is active at a time.
- Several sessions are required for parallel votes.
- Sibling links, progressive .flow diagrams, and the Agent brief link are present.
- [ ] Proceed to [lesson brief](03-weighted-voting.llms.md).
