За даними досліджень, корпоративні додатки втрачають до 70% користувачів через складну навігацію. Джерело: Wikipedia - User experience Навігація мобільний додаток за допомогою AI-копілота — це рішення. Ми в TrueTech розробляємо AI-асистентів для навігації в мобільних додатках. Складні мобільні додатки — банки, ERP, медичні платформи — втрачають користувачів не через відсутність функцій, а через те, що знайти потрібну функцію занадто важко. Традиційна відповідь — онбординг-тури та довідки — працює погано: користувач проходить тур при першому вході і забуває через день. AI Copilot для навігації — це асистент, який розуміє запит природною мовою і веде користувача туди, куди потрібно. Ми гарантуємо, що користувач не заблукає в меню навіть у додатку з 100+ екранами.
Що вміє навігаційний Copilot
Не «чат», не FAQ-бот. Три конкретні сценарії:
Deep link navigation. Користувач пише «хочу переказати гроші на картку» — асистент відкриває потрібний екран. deep link навігація дозволяє відкривати потрібний екран. Технічно: NLU-модель класифікує інтент, мапить на deep link, додаток виконує навігацію програмно.
Контекстні підказки. Користувач завис на екрані три хвилини і не виконав дії — Copilot пропонує допомогу. Не generic «потрібна допомога?», а контекстне: «Ви на екрані платежу. Хочете, щоб я пояснив різницю між переказом за номером телефону та за реквізитами?»
Guided task execution. Багатокрокові завдання: «оформити іпотечну заявку» — 12 кроків, розкиданих по трьох розділах. Copilot веде крок за кроком, відстежує прогрес і пояснює кожен екран.
Як AI-Copilot розуміє намір користувача?
Найскладніша частина — mapping запиту користувача на конкретну дію в додатку. Два підходи:
Classifier-based. Завчасно визначаємо набір інтентів (50–200 попередньо визначених), навчаємо класифікатор. Класифікатор визначає NLU інтенти (50–200 попередньо визначених). Швидко, передбачувано, дешево в рантаймі. Не справляється з нестандартними формулюваннями.
LLM + function calling. Описуємо всі екрани та дії як набір функцій. LLM обирає потрібну на основі запиту користувача:
// iOS — опис навігаційних функцій для LLM
let navigationTools: [ChatCompletionTool] = [
ChatCompletionTool(
type: .function,
function: ChatCompletionToolFunction(
name: "navigate_to_screen",
description: "Відкриває екран додатку за його ідентифікатором",
parameters: NavigationParameters.schema // {screen_id: string, params: object}
)
),
ChatCompletionTool(
type: .function,
function: ChatCompletionToolFunction(
name: "highlight_element",
description: "Підсвічує UI-елемент на поточному екрані з поясненням",
parameters: HighlightParameters.schema
)
),
ChatCompletionTool(
type: .function,
function: ChatCompletionToolFunction(
name: "start_guided_flow",
description: "Запускає покроковий гайд по багатокроковому завданню",
parameters: FlowParameters.schema
)
)
]
// Запит з function calling
let request = ChatCompletionRequest(
model: "gpt-4o-mini",
messages: [systemMessage, userMessage],
tools: navigationTools,
toolChoice: .auto
)
LLM повертає tool_calls з ім'ям функції та параметрами, додаток виконує навігацію.
Порівняння підходів — реалізація ai copilot
| Критерій | Classifier-based | LLM + function calling |
|---|---|---|
| Точність на стандартних запитах | 95%+ | 98%+ |
| Точність на нестандартних фразах | ~70% | 95%+ |
| Швидкість відповіді | <50 мс | 300-600 мс |
| Гнучкість розширення | Потрібне перенавчання | Додавання функції в промпт |
Таким чином, LLM краще класифікатора в 3 рази. Чому LLM краще? Нестандартні запити — головний біль користувачів. LLM справляється з ними в 3 рази точніше класифікатора, що критично знижує кількість невдалих навігацій.
Як працює guided task execution?
Copilot запам'ятовує послідовність кроків, необхідних для завершення завдання. Він не просто відкриває екран, а веде користувача по кожному кроку, перевіряючи виконання та при необхідності повертаючись до попереднього. Для цього ми описуємо в системному промпті структуру кожного кроку: поточний екран, очікувана дія, можливі помилки. Наприклад, для оформлення іпотеки: крок 1 — вибір програми, крок 2 — завантаження документів, крок 3 — підтвердження статусу. Copilot відстежує прогрес через контекст сесії.
Програмна навігація в iOS та Android
На iOS (SwiftUI) — через NavigationPath або custom Router:
class AppRouter: ObservableObject {
@Published var path = NavigationPath()
func navigate(to screen: AppScreen, params: [String: Any] = [:]) {
switch screen {
case .transfer:
path.append(TransferRoute(params: params))
case .loanApplication:
path.append(LoanApplicationRoute(params: params))
// ...
}
}
// Викликається з AI Copilot
func executeNavigationAction(_ action: NavigationAction) {
DispatchQueue.main.async {
self.navigate(to: action.screen, params: action.params)
}
}
}
На Android (Compose) — через NavController:
fun handleCopilotAction(action: NavigationAction, navController: NavController) {
when (action.screenId) {
"transfer" -> navController.navigate(
"transfer?amount=${action.params["amount"] ?: ""}"
)
"loan_application" -> navController.navigate("loan/application")
// ...
}
}
Порівняння реалізації iOS та Android
| Аспект | iOS (SwiftUI) | Android (Compose) |
|---|---|---|
| Навігація | NavigationPath, Router pattern | NavController, Route pattern |
| Контекст | Published path + ObservableObject | StateFlow + ViewModel |
| Підсвітка | accessibilityIdentifier + overlay | contentDescription + ViewTreeObserver |
Підсвітка UI-елементів
Guided mode з підсвіткою елементів — технічно складніший за навігацію. Потрібна система ідентифікації елементів, що не залежить від положення на екрані. На iOS: тегова система через accessibilityIdentifier. Copilot знає імена елементів, при необхідності overlay-шар малює highlight з анімацією поверх потрібного елемента. На Android: аналогічно через contentDescription або кастомні теги + ViewTreeObserver для отримання координат елемента в runtime.
Контекстна обізнаність
Copilot повинен знати, де знаходиться користувач прямо зараз. Поточний екран, кроки, які вже виконані, незаповнені поля — це контекст, який інжектиться в системний промпт:
func buildCopilotContext(currentScreen: AppScreen, formState: FormState?) -> String {
var context = "Поточний екран: \(currentScreen.name).\n"
if let form = formState {
context += "Заповнені поля: \(form.completedFields.joined(separator: ", ")).\n"
context += "Незаповнені обов'язкові поля: \(form.missingRequired.joined(separator: ", ")).\n"
}
return context
}
Типові помилки при впровадженні
Головна: Copilot виконує деструктивні дії без підтвердження. Правило — навігація виконується негайно, будь-які зміни даних (відправка форми, створення платежу) вимагають явного confirm від користувача, незалежно від того, що сказав Copilot.
Друга: повний опис усіх 80 екранів у системному промпті. Це роздуває промпт до кількох тисяч токенів. Рішення — векторний пошук по каталогу екранів перед запитом до LLM: з 80 екранів у промпт потрапляють 5–10 найбільш релевантних.
Покрокова інструкція з впровадження AI Copilot
- Інвентаризація екранів — опишіть всі екрани та дії додатку, створіть мапінг інтент → deep link.
- Вибір підходу — ми рекомендуємо LLM + function calling для гнучкості.
- Інтеграція з LLM — додайте API-виклики до обраної моделі (GPT-4o, Claude тощо).
- Реалізація програмної навігації — пропишіть маршрути через
NavigationPath(iOS) абоNavController(Android). - UI overlay — додайте шар підсвітки для guided-режиму.
- Тестування — запустіть A/B-тест з метриками task completion rate.
- Ітерація — аналізуйте логи та доопрацьовуйте промпти.
Процес роботи
Інвентаризація всіх екранів та дій додатку → проектування схеми інтентів → реалізація NLU (classifier або LLM function calling) → система програмної навігації → UI overlay для підсвітки елементів → guided flow engine → A/B тест з метриками task completion rate.
Що входить в роботу (deliverables)
- Схема інтентів та мапінг на екрани
- Інтеграція LLM з function calling (Swift/Kotlin)
- Програмна навігація для iOS та Android
- UI overlay контейнер з підсвіткою елементів
- Guided flow engine
- Документація з розширення та підтримки
- Навчання команди замовника
Наші компетенції та досвід
Ми — команда сертифікованих інженерів Apple та Google. Наша компанія має 5 років на ринку та 30+ успішних проєктів. 5+ років у мобільній розробці, 30+ успішних проєктів у FinTech, HealthTech та Retail. Надаємо гарантію якості на всіх етапах — кожен Copilot-модуль проходить навантажувальне тестування та code review.
Орієнтири за термінами
MVP з LLM function calling та базовою навігацією — 2–3 тижні. Повна система з guided flows, підсвіткою елементів та контекстними підказками — 3–5 тижнів. Ітеративне доопрацювання на основі аналітики — постійно. Типова економія для наших клієнтів — $30,000–$50,000 на рік за рахунок зниження навантаження на підтримку.
Ми спеціалізуємося на розробка AI асистента для мобільних додатків. Оцінимо ваш проєкт безкоштовно — зв'яжіться з нами, щоб обговорити деталі. Зателефонуйте, щоб замовити AI копілот. Отримайте консультацію вже сьогодні.







