Apple тестирует делегирование моделей для Siri? 14 сентября 2026 года компания Apple официально выпустила iOS 27 и представила новое поколение ИИ Siri. Параллельно с этим, благодаря данным обратной инженерии, стало известно о внутренней архитектуре кода, позволяющей ОС делегировать функции разговорного анализа сторонним моделям, включая Claude от Anthropic и ChatGPT от OpenAI. Для мобильных архитекторов и инженеров платформ появление делегирования моделей Siri в закрытых фреймворках знаменует сдвиг в сторону модульной оркестрации ассистентов. Несмотря на то что нормативная база в рамках Закона о цифровых рынках (DMA) Европейского союза создает институциональный фон для интероперабельности на уровне системы, внешнее делегирование моделей вносит эксплуатационную вариативность в выполнение намерений (intents) в мобильных приложениях. Вместо того чтобы полагаться на одну базовую модель с предсказуемым поведением, команды мобильной разработки должны рассматривать App Intents как защищенные доменные границы, обеспечивая строгую валидацию схем, надежную дезамбигуацию сущностей и явную безопасность побочных эффектов.
Архитектура iOS 27 и механизм делегирования моделей во внутренних фреймворках
Официальный релиз iOS 27 внедряет инфраструктуру раздельного исполнения для Apple Intelligence. ИИ Siri опирается на семейство собственных моделей Apple (локальных и серверных), включая модель AFM Core Advanced для поддержки системной диктовки и выразительных голосов, а также серверные модели, работающие через кластеры Private Cloud Compute. В данной рабочей среде ИИ Siri выступает оркестратором для нативных приложений, используя личный контекст из «Почты», «Сообщений» и «Фото», возможности экранного восприятия через аннотации представлений, а также семантические индексы Spotlight.
Краткий обзор
- Внутреннее делегирование: Данные из сборок iOS 27 и macOS 27 указывают на наличие внутренних механизмов — в частности, «Делегирование модели» и протокол «Предоставление вывода» (Inference Providing) в рамках служб управления моделями — спроектированных для перенаправления запросов сторонним моделям вроде Claude и ChatGPT.
- Непубличные системные права: Эти возможности мультимодельного делегирования остаются ограниченными закрытыми системными фреймворками; Apple не предоставила сторонним разработчикам или конечным пользователям доступ к правам на внешнее делегирование.
- App Intents как подтвержденный контракт: Независимо от того, анализируется ли входящий запрос базовыми моделями Apple или внешним ИИ-агентом, App Intents остаются задокументированным программным интерфейсом Apple для предоставления доступа к действиям сторонних приложений в системе.

Технический анализ, опубликованный MacRumors, показывает, что разработчики, изучающие закрытые фреймворки, обнаружили два отдельных архитектурных уровня. Первый — это механизм делегирования, позволяющий сторонним моделям, таким как Claude, работать в качестве интегрированного расширения ассистента. В ходе технических демонстраций модель Claude интерпретирует естественный язык запроса и извлекает цель пользователя, но когда задача требует доступа к системным данным или локальному выполнению в приложении, внешняя модель делегирует структурированное действие обратно в Siri. Второй, более глубокий механизм включает протокол «Предоставление вывода» в службах управления моделями ОС, содержащий пути кода, способные подменять серверный движок рассуждений Apple на альтернативную базовую модель.
Регуляторная среда в Европе создает важный институциональный контекст для этих изменений. Согласно статье 6(7) Закона о цифровых рынках (DMA) ЕС, ОС, классифицируемые как «привратники», обязаны обеспечивать интероперабельность, требующую равного доступа к основным функциям платформы. Хотя Apple временно ограничила доступ к функциям ИИ Siri на территории Евросоюза до урегулирования вопросов безопасности и конфиденциальности данных, наличие хуков для оркестрации, не зависящих от модели, в системных бинарных файлах свидетельствует о том, что инженеры Apple тестируют техническую модульность, которая может оказаться полезной в случае введения требований о кросс-модельной интероперабельности.
Примечание по инженерному охвату: Публичные данные подтверждают наличие механизмов делегирования моделей и, отдельно, статус App Intents как поддерживаемого Apple интерфейса для экспорта действий сторонних приложений. Apple не опубликовала документацию по внутреннему мосту, связывающему эти два уровня. Представленная ниже топология является иллюстративной моделью границ.
+-------------------------------------------------------------------------+ | ЭТАЛОННАЯ МОДЕЛЬ: ГРАНИЦА APP INTENTS ВОКРУГ ЧАСТНОГО ДЕЛЕГИРОВАНИЯ | +-------------------------------------------------------------------------+ | | | [ Ввод естественного языка (Голос / Dynamic Island / Type to Siri) ] | | | | | v | | [ Системный оркестратор: Контекст и семантический индекс Spotlight ] | | | | | +----------------------+----------------------+ | | | | | | v v | | [ Основной интеллект системы ] [ Путь частного делегирования] | | - Локальные модели AFM Core - Путь делегирования моделей | | - Private Cloud Compute - Службы управления моделями | | | (Пути Claude / GPT) | | | | | | +----------------------+----------------------+ | | | | | v | | [ Недокументированный внутренний мост действий ] | | | | | v | | [ Публичная граница App Intents: AppIntent и EntityQuery приложения ] | | | | | +----------------------+----------------------+ | | | | | | v v | | [ Нативная валидация типов ] [ Дезамбигуация параметров ] | | (Проверка границ, изоляция акторов) (Диалог и выбор пользователя) | | | +-------------------------------------------------------------------------+
Анализ уровня делегирования моделей: системная оркестрация и контракты App Intent
Архитектурное различие между анализом естественного языка и выполнением действий приложения является ключевым для понимания того, как iOS обрабатывает рабочие процессы ассистента. В традиционных реализациях мобильных помощников обработка речи и вызов функций координировались через статические доменные классы SiriKit. В последних версиях Apple перевела этот интерфейс на декларативный фреймворк App Intents.
В этой современной парадигме нативные приложения не занимаются разбором аудиопотоков или хранением словарей фонем. Вместо этого приложение предоставляет системе два основных артефакта:
- Объявления
AppEntity: Типизированные представления внутренних бизнес-моделей (таких как запись заказа, профиль аккаунта или ссылка на документ). Приложения могут дополнительно предоставлять сущности для поиска в Spotlight или механизмов осознания экрана через API индексации и аннотации представлений. - Спецификации
AppIntent: Исполняемые подпрограммы, содержащие строго типизированные параметры, локализованные резюме подсказок и контракты возвращаемых значений.

Когда внутренние фреймворки направляют речь пользователя через внешнюю модель рассуждений, уровень делегирования отделяет понимание запроса от выполнения действия. В продемонстрированных рабочих процессах внешняя модель выступает в роли интерпретатора семантики и может возвращать команды в Siri. Для сторонних приложений документированный фреймворк App Intents отдельно определяет типизированные контракты, через которые действия предоставляются системе.
УПРОЩЕННОЕ СРАВНЕНИЕ: ЭВОЛЮЦИЯ АССИСТЕНТА
Классическая диспетчеризация (сопоставление шаблонов):
Ввод пользователя -> Грамматические правила домена -> Заполнение слотов -> Вызов обработчика
Мультимодельный конвейер оркестрации:
Ввод пользователя -> Активная модель (AFM / Claude / GPT)
-> Синтез семантических параметров
-> Формальный контракт Swift AppIntent
-> Валидация и разрешение сущностей
-> Бизнес-логика домена
Это структурное разделение выявляет важную инженерную реальность: модели рассуждений на естественном языке вносят семантическую вариативность. Apple определяет App Intents как типизированный контракт для доступа Siri к действиям. Разные модели могут по-разному интерпретировать эквивалентный запрос пользователя до того, как он дойдет до этого контракта, создавая нюансы в токенизации и семантические допущения. В гипотетических мультимодельных архитектурах одна модель может синтезировать точный буквенно-цифровой код, а другая — косвенную описательную строку или частичное название сущности.
Следовательно, разработчики мобильных приложений не могут предполагать, что передача данных от внешней модели гарантирует валидные входные данные. Фреймворк App Intents предоставляет структурный интерфейс, но ответственность за проверку того, соответствуют ли входящие аргументы реальным операционным инвариантам, остается полностью на стороне кода нативного приложения.
Стандарты защитной разработки для Swift AppIntents
Адаптация приложений iOS к среде, где намерения могут исходить от различных моделей, требует методов защитного программирования. Вместо того чтобы рассматривать вызовы интентов как заранее валидированные системные события, инженерные команды должны проектировать обработчики интентов с той же строгостью, которая применяется к внешним контроллерам REST API или публичным RPC-эндпоинтам.
App Intents могут выполняться в фоновом или активном режиме в зависимости от конфигурации исполнения. Поэтому разработчикам следует избегать предположений о наличии активной иерархии окон или отображения синхронных UI-контроллеров, если только интенту явно не требуется контекст переднего плана. Для интентов, изменяющих состояние (локальное или удаленное), изоляция доменной логики за асинхронными, потокобезопасными акторами является надежным паттерном.
| Инженерное измерение | Минимальный паттерн | Защитный паттерн App Intent |
|---|---|---|
| Получение параметров | Предполагает совпадение строк или типов | Валидирует наборы символов, длину и инварианты |
| Разрешение сущностей | Прямой поиск ключа через EntityQuery |
Использует EntityStringQuery для поиска по тексту |
| Дезамбигуация | Выдает системную ошибку при сбое | Различает пропуски (needsValueError) и неоднозначность (needsDisambiguationError) |
| Управление эффектами | Выполняет мутации состояния сразу | Включает requestConfirmation() для критических действий |
| Конкурентность | Неограниченная асинхронная задача | Изолированный актор, предотвращающий гонки данных |
Для поддержания операционной целостности при обработке входных данных из разных моделей архитектуры должны включать четыре защитных паттерна:
- Разрешение сущностей по ID и строкам: Внедрите
EntityStringQueryдля поддержки как поиска по идентификатору, так и текстового поиска. Когда внешняя модель предоставляет описательную метку вместо ключа, нормализованное строковое сопоставление позволяет корректно обрабатывать частичные фразы. - Интерактивное уточнение параметров: Если требуемый параметр пропущен, обработчики должны вызывать интерактивные запросы значения (
needsValueError). При совпадении с несколькими сущностями система должна вызывать дезамбигуацию (needsDisambiguationError). - Идемпотентность мутаций: Поскольку разговорные ассистенты могут повторно отправлять запросы при сетевых сбоях, транзакционные интенты должны принимать или генерировать токены операций для предотвращения дублирования побочных эффектов.
- Явное подтверждение для критических операций: Для действий, связанных с финансовыми обязательствами, изменением настроек аккаунта или удалением данных, используйте
requestConfirmation()для получения согласия пользователя.
// Примечание: Данный пример на Swift является эталонной архитектурой,
// иллюстрирующей защитную валидацию AppIntent, разрешение сущностей и
// идемпотентное выполнение. Это не проприетарная реализация Apple.
import Foundation
import AppIntents
// MARK: - Семантическое представление сущности
public struct BookingEntity: AppEntity {
public static var defaultQuery = BookingQuery()
public static var typeDisplayRepresentation: TypeDisplayRepresentation = "Бронирование услуги"
public var id: String
public var serviceName: String
public var referenceCode: String
public var displayRepresentation: DisplayRepresentation {
DisplayRepresentation(
title: "\(serviceName)",
subtitle: "Код: \(referenceCode)"
)
}
}
// MARK: - Защищенный резолвер запросов (ID и поиск по строкам)
public struct BookingQuery: EntityStringQuery {
public init() {}
public func entities(for identifiers: [String]) async throws -> [BookingEntity] {
var resolvedEntities: [BookingEntity] = []
for id in identifiers {
if let entity = await BookingDataSource.shared.fetchBooking(byId: id) {
resolvedEntities.append(entity)
}
}
return resolvedEntities
}
public func entities(matching string: String) async throws -> [BookingEntity] {
return await BookingDataSource.shared.searchBookings(matching: string)
}
public func suggestedEntities() async throws -> [BookingEntity] {
return await BookingDataSource.shared.fetchAllActiveBookings()
}
}
// MARK: - Эталонный защитный паттерн AppIntent
public struct ConfirmBookingIntent: AppIntent {
public static var title: LocalizedStringResource = "Подтвердить бронирование"
public static var description = IntentDescription(
"Подтверждает активную встречу или бронирование.",
categoryName: "Бронирования"
)
@Parameter(
title: "Целевое бронирование",
description: "Конкретная сущность бронирования для подтверждения."
)
public var targetBooking: BookingEntity?
@Parameter(
title: "Токен мутации клиента",
description: "Токен для обеспечения идемпотентности при повторах."
)
public var mutationToken: String?
public init() {}
public func perform() async throws -> some IntentResult & ReturnsValue & ProvidesDialog {
guard let booking = targetBooking else {
throw $targetBooking.needsValueError(
"Какое бронирование подтвердить? Укажите код или название услуги."
)
}
guard !booking.id.trimmingCharacters(in: .whitespacesAndNewlines).isEmpty else {
throw BookingDomainError.invalidIdentifier
}
if let token = mutationToken {
let alreadyProcessed = await BookingStateManager.shared.isTokenProcessed(token)
if alreadyProcessed {
return .result(
value: true,
dialog: "Бронирование уже подтверждено."
)
}
}
do {
let confirmationSuccess = try await BookingExecutionService.shared.executeConfirmation(
bookingId: booking.id
)
if let token = mutationToken, confirmationSuccess {
await BookingStateManager.shared.recordToken(token)
}
return .result(
value: confirmationSuccess,
dialog: "Бронирование услуги \(booking.serviceName) успешно подтверждено."
)
} catch let domainError as BookingDomainError {
throw domainError
}
}
}
// Остальной код инфраструктуры (BookingDomainError, Actors и т.д.)
Системные границы действий и дезамбигуация
Фундаментальная сложность мультимодельной оркестрации заключается в управлении неоднозначностью. Когда ассистент делегирует интерпретацию сторонней модели, риск семантического расхождения возрастает: запрос «подтверди мою встречу» может привести к получению параметров в виде относительной даты, названия компании или неформального описания.
В архитектуре App Intents системный оркестратор обрабатывает разрешение параметров через цикл обратной связи между схемами приложения и интерфейсом ассистента. Без подходящих хуков уточнения система может не справиться с разрешением сущности.

+-------------------------------------------------------------------------+ | ПОСЛЕДОВАТЕЛЬНОСТЬ ЗАЩИТНОЙ ДЕЗАМБИГУАЦИИ | +-------------------------------------------------------------------------+ | [ Модель синтезирует параметры ] | | | | | [ EntityStringQuery проверяет ввод ] | | | | | +-----------------------+-----------------------+ | | | Точное совпадение | Неоднозначность / Несколько совпадений| | v v | | [ Валидация ] [ Вызов needsDisambiguationError() ] | | | | | [ Меню выбора в системе ] | | | | | [ Пользователь выбирает ] | | | | | +<----------------------+ | | | | | [ Исполнение действия с контекстом сущности ] | +-------------------------------------------------------------------------+
- Представление кандидатов:
EntityStringQuery.entities(matching:)должен возвращать массив экземпляровAppEntityс описательными заголовками. Если при выполнении остается несколько кандидатов, вызовneedsDisambiguationError(among:dialog:)заставляет систему отобразить нативное меню выбора. - Интеграция диалогов: Обработчики должны использовать
ProvidesDialogдля передачи контекста обратно оркестратору. - Распространение ошибок домена: Возврат типизированных ошибок Swift, соответствующих
LocalizedError, гарантирует, что ассистент выдаст локализованное объяснение, а не непонятный код ошибки.
Инвестируя в детализированное разрешение запросов, разработчики обеспечивают устойчивость приложений как при работе с моделями Apple, так и с делегированными сторонними ассистентами.
Часто задаваемые вопросы (FAQ)
В чем разница между делегированием моделей Siri и существующей интеграцией ChatGPT?
Обязывает ли Закон ЕС о цифровых рынках Apple позволить заменять Siri сторонними моделями ИИ?
Могут ли сторонние модели получать прямой доступ к частным данным приложений при обработке делегированного интента?
Стратегические рекомендации для команд разработки
Для подготовки кодовой базы к модульному интеллекту ОС инженерам следует выполнить следующие шаги:
Аудит и модернизация App Intent: Приоритезируйте современные схемы
AppIntentна Swift при экспорте новых возможностей и проведите аудит устаревших интеграций SiriKit.Реализация поиска сущностей по ID и строкам: Используйте
EntityStringQueryдля поддержки поиска по идентификаторам и произвольному тексту. Резолверы должны обрабатывать нормализованные строковые входные данные.Изоляция мутаций состояния: Перепишите методы выполнения бизнес-логики так, чтобы интенты работали с headless-сервисами. Исполнение интента не должно предполагать активного окна.
Двухфазная проверка мутаций: Для критических действий (финансы, удаление) используйте
requestConfirmation()для получения явного согласия пользователя.Создание комплексов тестирования интентов: Напишите автоматизированные тесты для проверки поведения
AppIntentпри пограничных входных данных.
Источники
- Apple. (2026). Siri AI, a profoundly more capable and personal assistant powered by the next generation of Apple Intelligence, is here. Apple Newsroom.
- Apple Developer Documentation. (2026). Integrating your app with Siri and Apple Intelligence using App Intents. Apple Developer.
- European Commission. (2022). Regulation (EU) 2022/1925 on contestable and fair markets in the digital sector (Digital Markets Act). Official Journal of the European Union.
- MacRumors. (2026). Apple’s Siri AI Can Be Swapped Out for Claude, ChatGPT, Code Shows.
Share this article



