GigaChat AI-ассистент для мобильных приложений: интеграция под РФ

Мобильные приложения в финансовой и медицинской сферах сталкиваются с жёсткими требованиями к хранению данных в РФ, что ограничивает выбор AI-решений. Мы интегрируем GigaChat AI-ассистента под ключ — с учётом юридических норм и последующей поддержкой, обеспечивая надёжное и масштабируемое решение.

Разработка и поддержка любых видов мобильных приложений:

Информационные и развлекательные мобильные приложения
Новостные приложения, игры, справочники, онлайн-каталоги, погодные, фитнес и здоровье, туристические, образовательные, социальные сети и мессенджеры, квиз, блоги и подкасты, форумы, агрегаторы
Мобильные приложения электронной коммерции
Интернет-магазины, B2B-приложения, маркетплейсы, онлайн-обменники, кэшбэк-сервисы, биржи, дропшиппинг-платформы, программы лояльности, доставка еды и товаров, платежные системы
Мобильные приложения для управления бизнес-процессами
CRM-системы, ERP-системы, управление проектами, инструменты для команды продаж, учет финансов, управление производством, логистика и доставка, управление персоналом, системы мониторинга данных
Мобильные приложения электронных услуг
Доски объявлений, онлайн-школы, онлайн-кинотеатры, платформы предоставления электронных услуг, платформы кешбека, видеохостинги, тематические порталы, платформы онлайн-бронирования и записи, платформы онлайн-торговли

Это лишь некоторые из типы мобильных приложений, с которыми мы работаем, и каждый из них может иметь свои специфические особенности и функциональность, а также быть адаптированным под конкретные потребности и цели клиента.

GigaChat AI-ассистент для мобильных приложений: интеграция под РФ

Искусственный интеллект и ML в мобильных приложениях (CoreML, TFLite, LLM)Средний~3-5 дней
Часто задаваемые вопросы

Разработка AI-ассистента в мобильном приложении на базе GigaChat (Сбер)

Мобильные приложения для финансового и медицинского секторов обязаны хранить данные в РФ. GigaChat — единственная крупная языковая модель с серверами в российском контуре. Мы интегрировали её в 15+ проектов: от банковских чат-ботов до аналитики документов. Процесс от подписания до деплоя занимает от двух до четырёх недель. Оцените свой сценарий — свяжитесь с нами для предварительного аудита.

Проблемы, которые решаем

  1. Юридическая изоляция данных. GigaChat размещается на серверах Сбера в РФ. Это единственный вариант для приложений, где 152-ФЗ требует локального хранения. YandexGPT тоже работает в РФ, но GigaChat имеет более гибкую B2B-адаптацию с корпоративными тарифами и выделенными ресурсами. Например, клиенты с большим объёмом запросов получают dedicated endpoint с гарантированной пропускной способностью.

  2. OAuth 2.0 с короткоживущими токенами. Access_token GigaChat живёт 30 минут. Прямое получение на мобильном устройстве небезопасно — client_id и client_secret должны оставаться только на сервере. Мы проектируем серверный прокси, который берёт на себя авторизацию и выдаёт токен клиенту. Это снижает риск утечки учётных данных.

  3. Нестандартные корневые сертификаты. Сбер использует собственные CA из реестра Минцифры. В production нужно явно добавить эти сертификаты в доверенные — иначе HTTPS-соединение упадёт. Мы уже настроили это под iOS (через ATS), Android (Network Security Config) и серверные платформы. Потери производительности нет — время установки соединения увеличивается не более чем на 5%.

Как авторизоваться в GigaChat API?

Протокол OAuth 2.0 с типом client_credentials. Запрос:

POST https://ngw.devices.sberbank.ru:9443/api/v2/oauth
Authorization: Basic {base64(client_id:client_secret)}
Content-Type: application/x-www-form-urlencoded
scope=GIGACHAT_API_CORP

Токен возвращается в JSON с полями access_token и expires_at. На мобильном клиенте мы не храним секреты — все запросы идут через наш серверный прокси, который получает токен и передаёт его клиенту по защищённому каналу. Пример серверного кода (Python):

# Серверная сторона (Python) — получение токена
import httpx, base64, time

class GigaChatAuth:
    def __init__(self, client_id: str, client_secret: str):
        self._credentials = base64.b64encode(
            f"{client_id}:{client_secret}".encode()
        ).decode()
        self._token = None
        self._expires_at = 0

    async def get_token(self) -> str:
        if time.time() < self._expires_at - 60:
            return self._token

        async with httpx.AsyncClient(verify=False) as client:
            resp = await client.post(
                "https://ngw.devices.sberbank.ru:9443/api/v2/oauth",
                headers={"Authorization": f"Basic {self._credentials}"},
                data={"scope": "GIGACHAT_API_CORP"}
            )
            data = resp.json()
            self._token = data["access_token"]
            self._expires_at = data["expires_at"] / 1000
            return self._token

Ссылка: GigaChat API Specification (текущая версия). Важно: verify=False допустим только для тестирования. В production подключайте сертификаты Минцифры (например, через файл cacert.pem).

Почему серверный прокси обязателен?

Прямое использование GigaChat API с мобильного устройства — грубейшая ошибка безопасности. client_secret — это ключ к вашему аккаунту. Если он скомпрометирован, злоумышленник может генерировать токены за ваш счёт. Прокси решает эту проблему: он хранит секрет, а мобильное приложение получает только временный токен. Дополнительно прокси позволяет:

  • Кэшировать токены и уменьшать число запросов к GigaChat (экономия до 40% на лимитах).
  • Логировать все запросы для аудита.
  • Добавить собственную бизнес-логику (например, модерацию контента или A/B-тестирование).

Какая модель GigaChat подходит для вашего приложения?

Модель Скорость Качество Изображения Best for
GigaChat ✅ Быстро ⭐⭐⭐ Среднее ❌ Нет Простые чат-боты, FAQ
GigaChat-Plus ✅✅ Очень быстро ⭐⭐⭐⭐ Хорошее ❌ Нет Быстрые ответы, поддержка
GigaChat-Pro ⬇️ Немедленнее ⭐⭐⭐⭐⭐ Отличное ✅ Да Анализ документов, изображений

GigaChat-Pro в 2-3 раза точнее базовой модели на задачах извлечения данных и финансового анализа. Если ваш ассистент должен работать с отчётами и графиками, выбирайте Pro. В наших проектах точность извлечения данных из отчётов достигает 95%.

Как Function Calling упрощает интеграцию с бэкендом?

GigaChat поддерживает вызов функций через параметр functions. Синтаксис отличается от OpenAI: поле называется functions (не tools), а вызов приходит в function_call (не tool_calls). Это первое, что ломается при миграции. Пример запроса:

{
  "functions": [
    {
      "name": "get_account_balance",
      "description": "Получить баланс счёта клиента",
      "parameters": {
        "type": "object",
        "properties": {
          "account_id": {"type": "string"}
        },
        "required": ["account_id"]
      }
    }
  ],
  "function_call": "auto"
}

Мы реализовали такой паттерн в нескольких проектах — ассистент сам решает, когда вызвать функцию, и возвращает структурированные данные. Это позволяет интегрироваться с любым REST API без ручного парсинга.

Работа с изображениями

GigaChat Pro позволяет загружать изображения через файловый API. Шаги:

  1. Загрузить файл POST /api/v1/files с purpose: general. Максимальный размер — 20 МБ.
  2. Получить file_id.
  3. Передать его в сообщении как image_url: https://gigachat.ru/files/{file_id}/content.

Файл удаляется через 24 часа — это важно учитывать при проектировании. Для критичных данных рекомендуем выгружать сразу.

Что входит в работу

  • Серверный прокси с OAuth 2.0 (Python/Go/Node.js).
  • Мобильный SDK для iOS/Android/Flutter с обработкой токенов и стриминга (SSE).
  • Настройка российских корневых сертификатов для production.
  • Реализация function calling под вашу бизнес-логику.
  • Интеграция с файловым API (если нужны изображения).
  • Документация по развёртыванию и поддержке.

Процесс работы

Этап Описание Срок
Аналитика Обсуждаем сценарии использования, требования к безопасности 1-3 дня
Проектирование Архитектура прокси, схемы авторизации, модель данных 2-5 дней
Реализация Пишем код, настраиваем сертификаты, тестируем 5-15 дней
Интеграция Подключаем к вашему мобильному приложению 2-5 дней
Деплой Разворачиваем на вашем сервере или в облаке, передаём доступы 1-2 дня

Для настройки сертификатов: на iOS используем ATS, на Android — Network Security Config. На сервере обновляем CA bundle. Мы подготовили пошаговые инструкции для каждой платформы.

Сроки ориентировочно

  • Базовый текстовый ассистент (прокси + чат-интерфейс): от 1,5 до 2 недель.
  • С function calling и изображениями: от 3 до 4 недель.

Стоимость рассчитывается индивидуально. Для точной оценки свяжитесь с нами — мы подготовим предложение под ваш проект.

Наши компетенции:

Последние работы

  • Разработка мобильного приложения для компании FEEDME
    Разработка мобильного приложения для компании FEEDME
    1010
  • Разработка мобильного приложения для компании XOOMER
    Разработка мобильного приложения для компании XOOMER
    903
  • Разработка мобильного приложения для компании RHL
    Разработка мобильного приложения для компании RHL
    1332
  • Разработка мобильного приложения для компании ZIPPY
    Разработка мобильного приложения для компании ZIPPY
    1180
  • Разработка мобильного приложения для компании Affhome
    Разработка мобильного приложения для компании Affhome
    1107
  • Разработка мобильного приложения для компании FLAVORS
    Разработка мобильного приложения для компании FLAVORS
    714