こんにちは、LayerX AI・LLM事業部テックリードの須藤です。
今回は、AI・LLM事業部が提供する「Ai Workforce」のインフラ構成について紹介します。
先日、Ai Workforceの紹介サイトがついに公開されました!
また、プロダクト開発チームも以下の記事で紹介されていますのでこちらも合わせてご覧ください。
Microsoft Azureを選定した理由
Ai Workforceのクラウド基盤にはMicrosoft Azureを採用しています。その主な理由は以下の2点です。
- Azure OpenAIとのシームレスな連携
- Ai WorkforceではAzure OpenAIを活用しており、同じAzure環境内でデータのやり取りができるため、セキュリティの向上とパフォーマンスの最適化が見込めます。かつ、マルチクラウドを避けることで管理コストも低減することができます。
- お客様環境との互換性
- お客様がクラウド基盤としてAzureを利用していることが多く、弊社でもAzure上で構築することで、お客様側のAzure環境にAi Workforceを導入しやすくなったり、スムーズな運用支援が可能になっています。
また、日本マイクロソフト様と連携し開発を進めています。
インフラアーキテクチャ概要
運用負荷を減らすために、Azureのマネージドサービスを積極的に採用しつつインフラ構成はできるだけシンプルになるように保っています。
Azureのリソースグループという単位で以下のように必要なリソースをまとめています。IaCとして、Terraformで管理しています。
ワークロード
ワークロードの技術スタックは、以下を採用していてそれぞれがAzure Container Apps上で稼働しています。
- フロントエンド: Next.js
- バックエンド: Python
- APIサーバー: FastAPI、Strawberry
- ORM: SQLAlchemy
- 非同期タスク: Celery
ちなみに、Pythonの選定背景としてはLLM処理で利用する実装・サーバーサイドでデータを扱う処理・R&D的に試行錯誤する実装などの親和性の高さから、APIサーバー含めてPythonで統一的に実装されています。
Azureではさまざまなコンテナアプリケーション実行環境が提供されていて、それぞれ管理の柔軟性・マネージド度合いを含めグラデーションがあります。
その中でも、インフラ管理を小さく始めつつスケーラビリティや管理のしやすさの観点から、現状Ai WorkforceではContainer Appsを採用しています。
https://learn.microsoft.com/ja-jp/azure/container-apps/compare-options
ネットワーク
Azureの仮想ネットワーク内でのInboundとOutboundを制限するネットワークセキュリティグループはサブネットに紐づくため、サブネットの分割単位もInbound/Outboundの制御が必要な単位に分けています。
また、仮想ネットワークに紐づかないサービス(上図におけるAzure Cosmos DBやAzure Open AIなど)はそのままアクセスするとインターネットアクセスになってしまいます。ネットワークレイヤでのセキュリティ向上のため、Ai Workforceではサービス間の通信は原則プライベート通信にするようにしており、Private Endpointを介しています。
これにより、インターネットへの通信を避けることができます。一方、Azureポータルからのアクセスも制限されるなど運用上の手間も生じてしまうため、機密性の高いデータを扱わない開発環境ではパブリックアクセスも可能にしておくなどの考慮をしています。
さらに、Azure外部とのInbound/OutboundはAzure Web Application Firewall (WAF)とAzure Firewallにより、異常なトラフィックの検知・ブロックや通信の制限などを適用しています。
LLM処理系
Ai Workforceの中核となるLLM処理の部分は、Azure Open AIを利用し、他にもOCRのためにAzure AI Document Intelligenceや検索のためにAzure AI Searchなどを利用しています。この辺りの処理系はまた別途記事で紹介していきます。
まとめ
Ai WorkforceのインフラはAzure上で構築されており、シンプルな設計を心がけつつセキュリティ面に関しては最大限考慮しながら運用をしています。
とはいえ、監視・可用性・スケーラビリティ・セキュリティ向上施策などなどまだまだ課題が多く存在します。
そして、LLMをプロダクトネイティブに組み込んでいる、お客様の多くがエンタープライズ企業、プロダクト立ち上げフェーズ、Azure利用、などの特徴がありチャレンジングな環境です。
AI・LLM事業部ではSREとして一緒に働ける方を大募集しています!
また、11/19にプロダクト紹介イベントを開催予定です。ご都合の合う方はぜひご参加ください!
ポジション別応募ページ