昨今のAI技術の進歩に伴い、多くの企業が革新的なAIサービスを開発しています。例えば、OpenAIが開発した対話型AIの「GPT-4o」はテキストだけでなく、音声や画像の処理にも迅速に対応できるようになりました。
生成AIサービスを開発するためには、インフラ環境を整備することが重要です。本記事では、AI・LLM開発に必要なインフラ環境について詳しく解説します。
AIサービスが普及した中でよく聞かれるようになったワードが「生成AI」と「LLM(Large Language Models=大規模言語モデル)」の二つです。先述したGPT-4oのような生成AIサービスで活用されている技術が、LLMです。
はじめに、混同しやすい生成AIとLLMの違いについて解説します。
生成AI(Generative AI)とは、入力データに基づいて新しいデータを生成する人工知能の技術のことを指します。生成AIに該当するのが、ChatGPTやGeminiなどのサービスです。
生成AIは、さまざまなタイプのデータ(テキストや画像、音声など)を生成するために使われます。例えば、下記のようなことが可能です。
LLMとは、大量のテキストデータを学習し、学習した内容からテキストを生成するモデルのことです。生成AIの基盤となる技術の一つであり、テキストの生成に特化しています。画像や動画、音声などは生成できません。
LLMは、インターネット上のWebページや論文、記事などから大量のデータを収集します。大量のテキストデータを用いてトレーニングすることで、ユーザーが質問したことに対して迅速に回答できるようになります。
生成AI とLLMの違いは、データの応用範囲です。生成AIがテキストや画像、音声など多様なデータ形式に対応しているのに対し、LLMはテキストベースでの対話や文章生成、翻訳、要約などテキスト生成や自然言語処理に特化しています。 生成AIは幅広い分野でコンテンツを生成でき、LLMはその中でも言語を扱う技術となります。
AIサービスを開発する際には、特に下記三つの観点でインフラ環境を構築することが重要です
それぞれの内容を詳しく解説します。
AI開発で重要な役割を担うのがGPU(Graphics Processing Unit)です。GPUとは、画像や映像の処理を迅速に実施する装置のことを指します。AI開発では、膨大な演算処理が求められます。特にディープラーニングの開発では大量のデータをインプットしなければなりません。このインプットの過程においてGPUが大きく寄与するのです。
GPUを活用することで大量のデータを迅速に処理でき、AI開発を効率的に進められます。GPUはAI開発だけでなく、ゲームやブロックチェーン、高度なシミュレーションアプリ(天気予報や天体物理学など)を作る際にも活用されています。
AI開発でよく活用されているフレームワークが、TensorFlowとPyTorch、Kerasの三つです。TensorFlowは、Googleが開発したオープンソースのディープラーニングライブラリであり、AIモデルの定義からデプロイまで一貫して行うことができます。
PyTorchは、Meta社のAI研究部門が開発した、オープンソースのディープラーニングフレームワークです。動的計算グラフを採用しており、プロトタイピングや研究などで活用できます。
Kerasは、Googleのエンジニアが開発した、Pythonで記述されたニューラルネットワークAPIです。初心者でも使いやすく、プロトタイピングや教育などで活用されています。
AI開発をオンプレミスとクラウドのどちらの環境で行うべきか迷う方もいるでしょう。開発環境は、開発の規模や目的などを考慮した上で選択しましょう。それぞれどのようなケースが適しているかをまとめましたので、参考にしてください。
【オンプレミスが適しているケース】
【クラウドが適しているケース】
AI開発に必要なリソースを提供しているクラウドサービスが、AWSやGCP、Azureなどです。これらのクラウドサービスは、開発に必要なリソースを柔軟にスケールアップ・スケールダウンできます。それぞれ下記の機械学習プラットフォームを提供しています。
AI開発は下記の流れで進めるのが一般的です。
それぞれのステップについて解説します。
はじめに、自社で抱えている課題を整理しましょう。抱えている課題を明確にしたら、課題解決のためにどのようなAIを開発するか、どのような作業を改善するのかなどを構想します。
ここでは、AI開発の目標を設定することがポイントです。併せて、プロジェクトチームのメンバーやスケジュール、予算なども策定します。AIエンジニアを採用する際は、下記のスキルセットを持っていることを必ず確認しましょう。
続いて、策定したプロジェクトが技術的な面で実現できるのかを検証します。このフェーズは「PoC(Proof of Concept)検証」と呼ばれています。仮モデルとなるモックアップを開発し、必要なデータ量を確保できるか、処理スピードが十分か、精度が問題ないかなどを検証します。
続いて、PoCで得た知見をもとにAIサービスの開発に着手しましょう。データ収集やユーザーインターフェースの最適化、AIモデルの精度や効率の向上、オペレーションの確認などを実施します。
AI開発では、データ管理とバックアップも重要です。クラウドやオンプレミスのストレージを使用して、データの冗長性を確保します。特に個人データを扱うAIサービスを開発する場合は、データのセキュリティとプライバシーを確保する対策が必須です。暗号化やアクセス制御といった基本的なセキュリティ機能を実装していきます。
AIサービスの開発が完了したら、運用フェーズに入ります。ここでは、開発したAIサービスが正常に稼働するかを継続的に監視することがポイントです。操作の不具合などが発生したら、迅速に対処しましょう。AIサービスを改善しながら精度を向上させていきます。メンテナンス計画を策定することで、長期に渡って安定して運用できます。
今回は、AI・LLM開発に必要なインフラ環境について詳しく解説しました。AIサービスを開発するインフラ環境を構築する際は、下記の技術がよく使われています。
AI開発では、データ管理とバックアップも重要です。特に個人データを扱うAIサービスを開発する場合は、データのセキュリティとプライバシーを確保する対策が求められます。