INTEGRITY Документация

Композируемая архитектура ИИ

Введение

Рынок ИИ переживает быстрые перемены, вызванные высоким темпом технологического прогресса. Прорывы происходят часто, поэтому организациям, которые хотят оставаться конкурентоспособными, необходимо постоянно следить за новейшими разработками. Короткие циклы итераций и гибкость стали обязательным условием в этой сфере: они позволяют компаниям быстро внедрять и использовать последние достижения в области ИИ.

В этой динамичной среде такие понятия, как компонуемость, переносимость данных и стандартные API, становятся ключевыми факторами, которые помогают ориентироваться в сложной экосистеме ИИ:

Значение компонуемости, переносимости данных и стандартных API особенно проявляется в снижении зависимости от одного вендора и повышении гибкости. Следуя этим принципам, организации могут избежать зависимости от единственного вендора и вместо этого выбирать лучшие в своём классе решения, наиболее подходящие под их конкретные требования. В целом эти принципы формируют более гибкую, адаптируемую и устойчивую к будущим изменениям экосистему AI.

ИИ-платформа Cloudflare разработана с учетом этих принципов. Диаграмма архитектуры показывает, как можно создавать ИИ-приложения полностью на Cloudflare или интегрировать отдельные сервисы с внешней инфраструктурой и сервисами.

Композитная инфраструктура ИИ

Рисунок 1: композиционная архитектура ИИ
Рисунок 1: композиционная архитектура ИИ
  1. Вычисления: Вычислительный уровень служит ядром приложения. Здесь определяется вся бизнес-логика и использование других компонентов. Вычислительный уровень взаимодействует с другими сервисами, такими как сервисы инференса, векторный поиск, базы данных и хранилища данных. Serverless-решения, такие как Cloudflare Workers обеспечивают быструю итерацию и автоматическое масштабирование, что позволяет разработчикам сосредоточиться на сценарии использования, а не на управлении инфраструктурой. Для компонуемости важна поддержка стандартных интерфейсов, таких как HTTP или TCP, которые среда выполнения Workers поддерживает через fetch() API и connect() API соответственно.
  2. Инференс: AI-инференс обеспечивает AI-возможности приложения. Операционные модели различаются: от самостоятельного хостинга моделей до использования провайдеров Inference-as-a-service, таких как Workers AI. В последнем случае REST API упрощают взаимодействие со службами инференса из любого сервиса или клиента. Благодаря интеграциям для конкретных платформ, таким как Bindings для взаимодействия между Workers и другими сервисами упрощают разработку, поскольку такая сложность, как аутентификация, скрыта на уровне платформы.
  3. Векторный поиск: Некоторые сценарии использования, такие как RAG используют векторный поиск для сопоставления по сходству. Операционные модели различаются: от самостоятельного хостинга баз данных до использования специализированных провайдеров векторных database-as-a-service (DBaaS), таких как Vectorize. В последнем случае REST API упрощают взаимодействие с ним из любого сервиса или клиента. Благодаря интеграциям для конкретных платформ, таким как Bindings для взаимодействия между Workers и другими сервисами упрощают разработку, поскольку такая сложность, как аутентификация, скрыта на уровне платформы.
  4. Данные и хранилище: Базы данных и хранилища данных добавляют состояние AI-приложениям. Управление пользователями, хранение сессий и сохранение данных: типичные требования для AI-приложений. В зависимости от сценария использования нужны разные решения, например реляционные базы данных или объектное хранилище. Существует множество решений как для self-hosted, так и для управляемых сервисов. В Cloudflare это может быть, например, D1 и R2. REST API позволяют легко реализовать взаимодействие с сервисами инференса из любого сервиса или клиента. Использование специфичных для платформы интеграций, таких как Bindings, для взаимодействия Workers с данными и сервисами баз данных упрощает разработку, поскольку такие сложности, как аутентификация, скрыты от разработчика.