Головна / Статті / ARTEMIS від Google: автоматизація справжніх Android-телефонів природною мовою

ARTEMIS від Google: автоматизація справжніх Android-телефонів природною мовою

Google відкрила вихідний код ARTEMIS — агента, який перетворює інструкції звичайною мовою на дії на справжніх Android-пристроях, показує 99%+ на AndroidWorld і планує моделі на пристрої.

2010 слів

На тлі злету ШІ-агентів телефони лишалися осторонь. На десктопі чи в браузері агенти дедалі частіше самі проклацують інтерфейси, керують застосунками, пишуть код, читають файли й виконують інструкції звичайною мовою майже без нагляду. На смартфоні картина значно скромніша. Традиційні тестові фреймворки зазвичай крихкі, сильно залежать від фіксованих ідентифікаторів елементів і ламаються, щойно змінюється верстка. Гірше того, жоден із них не проєктували для агента, якому можна просто назвати мету, а кроки він вигадає сам.

Цей розрив впадає в око, бо саме в смартфоні більшість людей проводить більшу частину цифрового часу. Софт, який добре дає раду комп'ютерам і браузерам, досі насилу працює зі справжнім телефоном.

ARTEMIS, проєкт, вихідний код якого Google щойно відкрила, підходить до задачі інакше. Розробникам не треба заздалегідь описувати кожен екран, віджет і взаємодію. ШІ-агент отримує інструкцію природною мовою й виконує її на справжньому Android-пристрої або в емуляторі. За даними проєкту, він виконує понад 99 відсотків задач у складному багатокроковому бенчмарку й підключається до coding-агентів, якими розробники вже користуються, серед них Codex, Claude Code та Antigravity.

Ще цікавіший напрямок у дорожній карті: повністю локальне виконання на пристрої з легкими моделями зору, щоб не кожна взаємодія йшла до хмарного сервісу. Якщо це вдасться, мобільна автоматизація може перейти від крихкої купи скриптів до агентних інтерфейсів, уже звичних на десктопах і в браузерах, — до чогось, що розуміє, що треба зробити, і керує пристроєм, щоб це зробити.

Скрипти проти агента, який дивиться

Класична мобільна автоматизація вимагає від автора тесту вказати кожен елемент, якого торкається скрипт, зазвичай через ідентифікатор, скомпільований у застосунок, і заздалегідь розписати жорстку послідовність дій. Це прийнятно працює на стабільному екрані в застосунку, будову якого автор бачить і контролює. І руйнується, щойно щось зсувається. Перероблена кнопка, перейменований ідентифікатор або незнайомий, вручну намальований інтерфейс сучасного UI-тулкіта можуть тихо зламати скрипт, який місяцями працював надійно, а щоб зрозуміти чому, людині зазвичай доводиться вручну проходити збій заново.

Підхід на основі ШІ перевертає цю модель. Замість відтворювати жорстко задані кроки, прив'язані до ідентифікаторів, агент дивиться, що зараз на екрані, розуміє зміст інструкції й обирає наступну дію на ходу, приблизно як людина, що вперше відкрила незнайомий застосунок. Якщо кнопка переїхала, змінила підпис або була повністю перероблена, агент підлаштовується під те, що бачить, а не падає на посиланні на те, чого вже немає.

Одне речення замість скрипту

Вигоду найпростіше побачити, коли одна інструкція замінює те, що інакше було б довгим тестом, написаним вручну. Замість перелічувати натискання, свайпи й пошук елементів, задачу можна сформулювати так, як її пояснили б колезі:

Open Settings, find Battery and tell me current level

Отримавши такий запит, агент рухається інтерфейсом справжнього телефона. Він знаходить потрібний екран, поєднуючи знання про будову застосунку з візуальним читанням того, що відображається, витягує запитане значення й повідомляє його. Ніхто не написав жодного рядка традиційного коду автоматизації, націленого на конкретні елементи екрана.

Той самий підхід масштабується на складніші сценарії, що охоплюють кілька застосунків. Одна інструкція може описувати послідовність, яка перестрибує між не пов'язаними застосунками, тоді як звичайному скрипту для цього, як правило, потрібно кілька окремих, ретельно узгоджених частин. Саме міркування про намір, а не виконання фіксованого скрипту, робить таку гнучкість між застосунками реальною без величезної попередньої інженерії під кожен сценарій.

Схема вище, взята з репозиторію проєкту, показує автономний процес тестування, у якому Antigravity працює разом з ARTEMIS.

Результат бенчмарку, який можна перевірити

Гучні заяви про автоматизацію трапляються всюди, а заяви, виміряні за визнаною незалежною міркою, — значно рідше. ARTEMIS повідомляє про виконання понад 99 відсотків задач бенчмарку, створеного спеціально для оцінювання мобільних агентів на багатьох справжніх застосунках і багатокрокових сценаріях, а не на невеликому вручну відібраному наборі простих прикладів.

Графік узято зі сторінки проєкту, він показує частку виконання понад 99 відсотків на AndroidWorld — бенчмарку Google Research, що охоплює понад 20 застосунків і понад 100 багатокрокових задач.

Бенчмарк із такою кількістю застосунків і задач створено, щоб навантажувати саме те, з чим погано дає раду жорстко закодована автоматизація: незнайомі макети, задачі, де треба правильно зв'язати кілька дій, та інтерфейси, які ніхто не будував із розрахунком на автоматизацію. Пройти його краще ніж на 99 відсотків — це інший рівень надійності порівняно з попередніми інструментами на основі ШІ, які історично спотикалися на відкритій багатокроковій роботі в справжніх, незмінених застосунках.

Підключення через MCP

ARTEMIS — не окремий інструмент зі своїм ізольованим процесом. Він підключається до coding-агентів, якими вже користуються щодня, зокрема Codex, Claude Code та Antigravity, через Model Context Protocol, або MCP. Це відкритий стандарт, що дає ШІ-агенту змогу однаково знаходити й викликати зовнішні інструменти, хоч би який інструмент чи модель керували процесом.

Оскільки зв'язок спирається на відкритий протокол, а не на разове підключення до одного продукту, будь-який coding-агент, що розмовляє MCP, може керувати справжнім телефоном як ще одним інструментом у своєму наборі, поруч з умінням читати код, запускати команди чи переглядати веб. Налаштування зазвичай зводиться до реєстрації сервера автоматизації у власній конфігурації coding-агента, приблизно так само, як додається будь-який інший зовнішній інструмент:

{
  "mcpServers": {
    "mobile-automation": {
      "command": "/path/to/tool/.venv/bin/python",
      "args": ["-m", "mcp_server"],
      "cwd": "/path/to/tool"
    }
  }
}

Після цього розробник може описати задачу мобільного тестування звичайною мовою просто в чаті coding-агента, так само як описав би зміну коду, і агент напряму керує підключеним пристроєм. Перемикатися в окремий застосунок для тестування не потрібно.

Повні цикли розробки на пристрої

Користь виходить далеко за межі швидких разових перевірок на кшталт читання налаштування. Coding-агент, підключений до справжнього пристрою, може сам виконувати значно більші процеси розробки:

  • зібрати найновішу версію застосунку
  • встановити свіжу збірку на підключений фізичний пристрій
  • пройти конкретний користувацький сценарій, наприклад вхід із тестовим акаунтом
  • шукати неочікувану поведінку, наприклад спливне вікно, якого не має бути після входу
  • повернути скриншоти як візуальні докази того, що відбувалося на кожному етапі

Скриншот вище показує живе демо проєкту: планування автомобільних маршрутів і підрахунок їхньої сумарної тривалості в Google Maps, а потім відкриття YouTube.

Такий наскрізний процес — збирання, встановлення, навігація й перевірка — повторює те, що робить QA-інженер, перевіряючи зміну перед релізом, тільки замість людини, що натискає на фізичний пристрій, інструкції природною мовою виконує ШІ-агент. Команди, які вже спираються на агентів у більшій частині розробки, тепер можуть перенести цей агентний підхід на справжнє залізо й прибрати один із найупертіше ручних кроків у конвеєрі, який в усьому іншому дедалі більше автоматизований.

Розуміти, чому запуск упав

Керувати пристроєм — лише половина корисного інструмента тестування. Коли щось ламається, зрозуміти причину так само важливо, як викликати взаємодію. Окрім дій на екрані, ARTEMIS збирає діагностику з пристрою під час виконання сценарію, зокрема системні логи й скриншоти екрана в значущі моменти.

Ці знімки важливі для справжнього налагодження, а не лише для автоматизації щасливого шляху. Тест, що впав посеред довгої послідовності, значно корисніший, якщо повертає скриншот екрана в момент збою плюс вивід системного логу з того самого моменту, а не голий вердикт «пройшов» чи «не пройшов». Невдалий запуск стає практичною відправною точкою для розслідування, а не глухим кутом, через який увесь сценарій доводиться відтворювати вручну, просто щоб побачити, що сталося.

Дорожня карта: приватно й локально

Поточні можливості вже великий крок уперед порівняно з класичною мобільною автоматизацією, але опублікована дорожня карта вказує на щось, мабуть, значущіше в перспективі: виконання на самому пристрої на базі легких vision-language-моделей, що працюють локально, замість постійного підключення до хмарної моделі заради кожної дії.

Цей зсув дає два практичні виграші. Перший — затримка. Коли міркування й виконання відбуваються повністю на телефоні, без мережевого звернення до віддаленої моделі на кожному кроці, відповіді приходять значно швидше, а це важливо для автоматизації, якій треба встигати за інтерактивним інтерфейсом у реальному часі, а не завмирати перед кожною дією.

Другий, мабуть, вагоміший виграш — приватність. Автоматизація, яка ніколи не надсилає за межі пристрою скриншот чи будь-який інший запис того, що на екрані, значно краще підходить для чутливих матеріалів, чи то персональні дані, конфіденційна ділова інформація, чи будь-що інше, що людина або компанія воліли б тримати на власному залізі.

На тлі тренду, який уже повним ходом іде на десктопах і в браузерах і часто зветься computer use, дорожня карта переносить цю ідею в мобільний світ зі свідомим наголосом на приватності й локальності, а не на постійній залежності від хмари. Десктопні аналоги досі зазвичай пропускають розуміння екрана через хмарну модель, тож план, побудований довкола легких моделей зору на пристрої, намічає для телефонів самодостатніший шлях.

Що це змінює для мобільних команд

Разом керування телефоном природною мовою, перевірюваний результат бенчмарку з високою надійністю, інтеграція з популярними coding-агентами, вбудована діагностика й дорожня карта з прицілом на локальне виконання дають щось нове всім, хто створює чи тестує мобільні застосунки.

  • Дослідницьке тестування, для якого раніше потрібна була людина, що порпається в застосунку в пошуках сюрпризів, можна сформулювати однією інструкцією й запускати автоматично.
  • Регресійні перевірки, що вимагали ретельно підтримуваних крихких скриптів, прив'язаних до ідентифікаторів елементів, можна писати звичайною мовою, а агент підлаштовуватиметься в міру розвитку інтерфейсу.
  • Процеси розробки, які раніше закінчувалися зміною коду й лишали перевірку на пристрої людині, можуть пройти весь автоматичний цикл збирання, встановлення й перевірки силами того самого агента, що вже допомагає з рештою роботи.

Ніщо з цього не скасовує цінності судження досвідченого тестувальника, особливо в тонких, суб'єктивних питаннях якості, що виходять за межі того, чи технічно вдалася дія. Змінюється те, куди йде людська увага: значно менше на підтримку крихких жорстко закодованих скриптів під інтерфейс, що постійно змінюється, і значно більше на рішення, що важливо тестувати, а виконання доручається агенту, який міркує про намір.

Де це лишає мобільну автоматизацію

Роками мобільна автоматизація відставала від того, що агенти вже вміють на десктопах і в браузерах. ARTEMIS скорочує цей розрив, дозволяючи ШІ-агентам керувати справжнім пристроєм за інструкціями природною мовою. Заявлена частка виконання понад 99 відсотків на складному незалежному бенчмарку вражає, як і пряма інтеграція з coding-агентами, якими розробники вже користуються щодня.

Найцікавіше, можливо, попереду. Дорожня карта націлена на повністю локальне виконання на пристрої з легкими моделями зору. Якщо це станеться, мобільні агенти будуть не просто спроможними. Вони стануть приватними й самодостатніми й зможуть працювати, не надсилаючи жодної взаємодії на віддалений сервіс.

Ширше значення виходить за межі автоматизації натискань, свайпів чи окремих тест-кейсів. Воно натякає на майбутнє, де справжній смартфон — ще одне середовище, яке агент розуміє і яким керує, поряд із терміналом, файловою системою, браузером і кодовою базою. Для тих, хто створює, тестує й підтримує мобільні застосунки, це може суттєво змінити можливості ШІ-агента для програмування. Код лежить у публічному репозиторії ARTEMIS від Google на GitHub.