Siri AI теперь открыта для всех разработчиков. Вот что я бы сделал со своим приложением для Mac
Автор: Justinas Rolando, создатель MacPip
3 ноября Apple открыла предварительную версию Siri AI для разработчиков всем, в бета-версиях macOS 27.3, iOS 27.3, iPadOS 27.3 и visionOS 27.3. Ваше приложение подключается через App Intents: отметьте интент как @AppIntent(.tool), дайте ему понятные title и description, и Siri сможет его запускать. Пока это работает только в сборках для разработки и во внутреннем TestFlight. Отправка в App Store откроется весной.
Вчера, 3 ноября, Apple выложила короткую публикацию Siri AI теперь открыта для всех разработчиков. Она вышла в тот же день, что и первая бета-версия macOS 27.3, и это самое полезное в ней для таких, как я, кто делает небольшие приложения для Mac. Так что это утро я потратил на чтение новой документации вместо настоящей работы.
Вот что изменилось, что с этим можно и нельзя делать уже сейчас и что я собираюсь сделать в первую очередь.
Что изменилось
- Любое приложение теперь может общаться с Siri AI. До сих пор Siri в основном понимала действия, которые укладываются в фиксированные «схемы» Apple, например отправить сообщение или создать заметку. Новая предварительная версия Siri AI для разработчиков позволяет Siri находить ваш собственный контент и запускать ваши собственные действия, если вы открываете их через App Intents.
- Это в бета-версиях 27.3. iOS 27.3, iPadOS 27.3, macOS 27.3 и visionOS 27.3, на устройствах с поддержкой Apple Intelligence. Об остальном в бета-версии 1 рассказывают MacRumors и 9to5Mac.
- Ни нового entitlement, ни отдельной программы. Документация Apple говорит об этом прямо. Вы обновляете существующий код App Intents или пишете новый.
- Навыки. Для задач из нескольких шагов можно выпускать «навыки приложения»: файлы Markdown, которые объясняют Siri, как связаны ваши действия.
- Инструменты для тестирования. Siri Integration Advisor в Xcode даёт советы по вашим интентам, а новый фреймворк SiriEvaluations позволяет скриптами отправлять запросы Siri и проверять, как она с ними справляется.
- Для начала шесть языков. Английский, французский, японский, корейский, португальский и испанский, а традиционный китайский, норвежский, турецкий и вьетнамский появятся скоро.
Чего пока нельзя
Эта часть важнее, чем блестящая.
- Пользователям это пока недоступно. Предварительная версия работает в сборках, которые вы запускаете из Xcode с профилем разработки, и у внутренних тестировщиков в TestFlight. По словам Apple, она недоступна внешним тестировщикам TestFlight и в версиях из App Store. Отправка в App Store откроется весной.
- С прямыми загрузками пока неясно. Я не нашёл ни строчки о приложениях, которые продаются вне App Store с Developer ID. Пока Apple не скажет иначе, я исхожу из того, что они в том же положении: собирайте сейчас, выпускайте позже.
- Правил пока нет. Apple говорит, что условия и правила использования для решений с Siri AI опубликует позже.
- Ограничения. Siri AI недоступна людям младше возраста: 13. По заметке Apple, в ЕС она недоступна на iOS, iPadOS и watchOS (macOS в этом списке нет). У функций, которые используют серверные модели Apple, в том числе Siri AI, есть суточные лимиты, и Apple говорит, что расширенный доступ в будущем будет платным.
Так что никому не нужно спешить с обновлением на этой неделе. У вас есть несколько месяцев, чтобы сделать всё как следует, до того как пользователи вашего приложения смогут это попробовать.
Как это работает, простыми словами
Здесь три части, и первая составляет большую часть работы.
- Интенты-инструменты. Вы добавляете макрос
@AppIntent(.tool)к интенту приложения. Так он становится инструментом, который Siri может вызвать. Apple советует дать интенту и каждому его параметру настоящиеtitleиdescription, потому что Siri читает их, чтобы понять, какой инструмент подходит под сказанное человеком. Если ваш интент уже использует одну из схем Apple, поддерживающих Siri, макрос добавлять не нужно. - Контент, который Siri может найти. Siri находит только то, что вы сделали доступным. Документация советует добавить сущности приложения в Spotlight, и теперь Siri может показать любую сущность из семантического индекса Spotlight, а не только те, что подходят под схему.
- Навыки, только если они нужны. Вы добавляете один
Skills.skillsbundleв целевой модуль приложения. Внутри его папкиSkillsу каждого навыка своя папка с именем из строчных букв, цифр и дефисов, а в ней один файлSKILL.md. Apple ясно говорит, что навык это подсказка, а не скрипт: Siri не выполняет перечисленные вами шаги по порядку.
Apple уже делает это в своих приложениях, включая Finder, «Файлы», «Заметки», «Просмотр», «Напоминания», Safari и Shortcuts. Если у вас есть одна из привычек, которые Siri теперь умеет, например «архивировать файлы, которые я не открывал год», это неплохой ориентир, где проходит планка.
Что бы я сделал первым, по порядку
Это мои собственные мнения, а не список Apple.
- Запишите пять вещей, о которых попросил бы человек. Не функции, а запросы простыми словами. «Запусти сессию фокуса на 25 мин.» «Покажи клипы, которые я скопировал сегодня утром.» Если пять придумать не получается, возможно, вашему приложению это пока не нужно, и это нормально.
- Проверьте интенты, которые у вас уже есть. Многие приложения для Mac уже содержат App Intents для Shortcuts. Прочитайте их названия и описания так, как будто вы Siri. Интент «Run Action» без описания выбран не будет.
- Отметьте как инструменты два-три интента. Начните с действий из шага 1. Не отмечайте всё подряд: по словам документации, интент, который только настраивает виджет и ничего не делает в
perform(), инструментом быть не должен. - Добавьте свой контент в Spotlight. Если люди будут спрашивать о вещах из вашего приложения (заметки, клипы, проекты, таймеры), Siri сможет найти их только через Spotlight.
- Запустите проверки от Apple. Используйте Siri Integration Advisor в Xcode, затем опишите скриптами несколько из ваших пяти запросов в SiriEvaluations, чтобы заметить, если какое-то изменение ухудшит работу Siri.
- Пишите навык только для настоящей многошаговой задачи. Один понятный
SKILL.mdлучше пяти расплывчатых. - Пока не обещайте это пользователям. Не пишите «Works with Siri AI» на странице приложения и в заметках о выпуске, пока люди не смогут реально этим пользоваться в версии, которую можно скачать.
Если вы не можете запустить бета-версию 27.3, шаги 1, 2 и 3 всё равно подойдут: это в основном чтение собственного кода и написание более хороших описаний, что и сегодня помогает Shortcuts.
Поговорите с Apple, пока это недорого
Apple проводит Apple Intelligence Group Labs сегодня, 4 ноября, с 9 до 10 утра по тихоокеанскому времени, и завтра, 5 ноября, с 6 до 7 вечера по тихоокеанскому времени. Ссылки для записи есть в публикации Apple. Это предварительная версия, и Apple говорит, что API может измениться, так что сейчас как раз тот момент, когда отзыв ещё может что-то изменить.
Взгляд MacPip
На MacPip я публикую много приложений с ИИ и приложений для продуктивности, и большинство из них делают как раз такие небольшие понятные действия, которые теперь может запускать Siri. Мне кажется, у приложений, которые сделают это правильно к весне, появится новый способ быть найденными: люди будут просить Siri о задаче, а не искать название приложения. Я буду за этим следить.
Если вы пользуетесь кодирующим агентом, промпт подготовка к следующей macOS неплохо подходит, чтобы изучить проект перед бета-версией. Навыки он за вас не напишет, но подскажет, где живут ваши интенты. А если функции ИИ в вашем приложении стоят вам денег за каждый запрос, новый калькулятор подписки или разовой цены покажет, сколько остаётся после комиссий при каждой модели цены.
Когда это выйдет, напишите об этом в заметках о выпуске и обновите страницу приложения. Если вашего приложения ещё нет на MacPip, добавить его можно бесплатно.
Источники
- Apple Developer: Siri AI теперь открыта для всех разработчиков
- Apple Developer: предварительная версия Siri AI для разработчиков
- Apple Developer: пользовательские действия и контент для Siri
- Apple Developer: оркестрация сложных действий с помощью навыков приложения
- MacRumors: Apple выпустила первую бета-версию macOS Golden Gate 27.3
- 9to5Mac: бета-версия 1 macOS 27.3 Golden Gate уже доступна
Читайте дальше
- Mac с сенсорным экраном выходят 6 ноября. Вот что я бы проверил в своём приложении для MacПервые Mac с сенсорным экраном выходят 6 ноября. Что изменилось, что Apple советует разработчикам и короткий список того, что стоит проверить в собственном приложении для Mac.
- Знакомство с MacPipЧто такое MacPip, зачем я его создал, как работают карточки и день запуска, что на самом деле значит синяя галочка и реальные цифры за первые дни.
- Как запустить Mac-приложение: чек-лист на одну страницуЧто делать до, в день и после запуска Mac-приложения: подпись, ваша страница, каталоги, Product Hunt, Show HN и что измерять.
- Как написать однострочное описание, которое говорит, что делает ваше Mac-приложениеПростой способ написать строку под названием Mac-приложения: назовите задачу, уберите хайп и проверьте текст на человеке, который приложение ещё не видел.
- Подпись и нотаризация простыми словами для тех, кто делает первое Mac-приложениеЧто делают подпись кода, нотаризация и степлинг, в каком порядке, что видят пользователи без них и как проверить свою сборку.
- Чего на самом деле стоит dofollow-ссылка, по мнению сайта, который её предлагаетЧто означает dofollow, что Google говорит о ссылках, почему ссылка из нового каталога сегодня мало стоит и что делать вместо покупки ссылок.