メモ:生成AIの現状を踏まえ、社内活用と未来を考える
生成AIの社内活用に向けた、思考整理用のメモ。
NotebookLM
Googleが開発している、RAGのようなアプリ。
https://notebooklm.google/
NotebookLMの現状・トレンド
主な特徴は以下の通り。
- 予め指定したデータソースを参照させ、質問した内容についてチャットで回答してもらうことができる
- データソースにはPDFやウェブページなどが指定可能
- 回答の際には、根拠となるデータソースの箇所を明示してくれる
そして最近では以下のアップデートがあった。
- 指定可能なデータソースが最大20→50に拡張された
- Podcastのような対話形式の音声コンテンツが自動生成できるようになった(現在は英語のみ)
- 2024/9/18に正式版となり、Google Workspaceの一環として利用できるようになった https://workspaceupdates.googleblog.com/2024/09/notebooklm-now-available-as-additional-service.html
このアプリは、業務で活用可能な水準となったといってよい。Experimentの段階で既にNotebookLMの精度はかなり高いと感じられ、活用することでドキュメントなどを読み解くスピードは格段に向上した。
例えばAWSのドキュメントやRFCなどの資料を入れれば、これらの仕様について質問することができる。「〇〇のように理解しましたが、正しいでしょうか?」とか「つまり、〇〇ということですか?」といったことも聞けば、きちんと回答してもらえる。さらに英語版のドキュメントを参照させても、日本語で質問したら日本語で回答してもらえる。
NotebookLMの現状を踏まえた活用と未来
まずNotebookLMが活用可能な組織は、少しでも早く活用し始めるべき。
特にITのようなオープンな仕様や情報を活用する場合、それらをNotebookLMに読み込ませるリスクはない。
Google検索やGoogle翻訳を活用しているのであれば、同様にNotebookLMを活用することで学習や調査にかかる効率を大きく引き上げることができる。
体感的には 「数日かかっていた学習や調査が、半日~1日程度でできる」くらい効率化されたと感じている。
何らかの事情でNotebookLMが活用できない組織は、しばらく静観してもよいと思う。
NotebookLMが本当に有用であれば、きっとMicrosoft版NotebookLMがそのうちリリースされるだろう。
RAGの領域については、NotebookLMが汎用的なソリューションとして現実解の一つとなっている。 現在のNotebookLMはドキュメント検索を行ってくれるわけではないが、データソースの拡張も進んでおり、将来的にはドキュメント検索機能と統合される可能性もある。 (NotebookLMの有無に限らず)RAGは特定の業界や用途に依存せず市場規模も大きいため、社内向けに作りこんでも最終的に安価で汎用的なアプリに置き換わる可能性がある。 そのため社内向けの場合は作りこみすぎず、手軽に構築可能な構成で提供するのがよいだろう。
また最近はPodcastで見られる対話形式の音声コンテンツが生成可能になった。このようなコンテンツはSpotify, YouTube, Voicyなど至るところで配信されているが、これらのうち 「何らかの文献を元に分かりやすく伝えるような、学習や実益に特化したコンテンツ」はNotebookLMに置き換わる可能性がある。 置き換えられないようにするには、エンタメ性などで差別化していく必要があるだろう。
Amazon Bedrock Agent
AWSで提供されているAmazon Bedrockのうち、Agentの機能。
AWS上でお手軽にLangChainが使えるようにラップしたようなサービス。
Amazon Bedrock Agentの現状・トレンド
主な特徴は以下の通り。
- 特定のタスクに特化した、チャットが可能なAgentを作成できる
- エージェントは必要な処理を判断し、API呼び出しやKnowledge Baseの参照が可能
- 会話の記憶や、コードを生成・実行する機能も備えている
最近のアップデートでは、Bedrock AgentをSlackのawsアプリから簡単に呼び出せるようになっている。 https://qiita.com/moritalous/items/b63d976c2c40af1c39e5
BedrockのAgent, Knowledge Baseあたりはここ半年で多くのアップデートが行われており、AWSとしても力の入れ具合を感じられる。 また最新のterraform provider 5.68.0ではAgentに関する以下のリソースが定義できるようになっており、Bedrockの他機能よりも注目度は高いと推察される。
- aws_bedrockagent_agent
- aws_bedrockagent_agent_action_group
- aws_bedrockagent_agent_alias
- aws_bedrockagent_agent_knowledge_base_association
- aws_bedrockagent_data_source
- aws_bedrockagent_knowledge_base
Amazon Bedrock Agentの現状を踏まえた活用と未来
AgentはKnowledge Baseを参照できるようになっているため、RAG単体よりも高度な機能を提供できる可能性がある。 より具体的にはRAGは静的なデータしか参照することができないが、AgentはAPIを呼び出せるため動的なデータを参照したり、データの操作が可能となる。 例えば現在日時を参照したり、複雑な計算をAPIで実行したり、Googleカレンダーを自動的に予約する、といったことが可能になる。
Slackから簡単に呼び出せるようになったことを考えると、WebアプリではなくSlackアプリとしてAgentを提供していく未来が考えられる。 これまではWebアプリとして提供するケースが多かったが、社内向けのチャットアプリであればSlackなどのほうが相性がよく、フロントエンドの開発工数もかからない。 もしAgentの活用形態が普及して汎用的に用いられるようになった場合、Slackなどのアプリとして提供されることとなり、多くのアプリ・システムはAPIを備えることを要求されることになるだろう。 逆に言えばAPIを備えていないアプリやシステムはAIの恩恵を受けられないため、敬遠されることになる。
LLM
LLMの現状・トレンド
メジャーなLLMは以下の特徴がある。
Claude (Claude 3.5)
- Webアプリでは、対話的にAIと成果物を作成できるArtifact機能あり
- AWSとGCPでAPIが利用可能
GPT (GPT-4o, GPT-4o mini, GPT-4o LongOutput, o1)
- 出力可能なテキストは16K~64Kトークンで、他LLMよりも大きい
- トークンあたりの単価もClaudeやGeminiと比べて最安
- AzureでAPIが利用可能
Gemini (Gemini 1.5 Pro, Gemini 1.5 Flash)
- 入力可能なコンテキストサイズは100万~200万トークンで、他LLMよりも圧倒的に大きい
- GCPでAPIが利用可能
Gemma (Gemma 2)
- ローカルPCのCPUで実行可能なLLM
各種LLMの現状を踏まえた活用と未来
各LLMの優劣は頻繁に入れ替わっている。今後も性能は上がっていくであろうし、トークン単価も下がっていくことが予想される。 そのためどれかに決め打ちしすぎないほうがよいが、大差は付きづらいとも言える。 現状ではクラウドサービス毎に利用可能なLLMは限られているため、基本的にはメインのクラウドサービスで利用可能なものを利用し、それでは不十分な場合(例えばGeminiのようなコンテキストサイズが必要な場合)はクラウドサービスを跨いだ利用を検討すればよい。
LLMは性能向上・コモディティ化・利用料低下が進んでいるため、大半の企業はLLM開発に手を出そうとは思わないほうがよい。 またファインチューニングも学習データ・チューニング・テストなどにかかるコストが見合わないケースが多いと予想され、基本的にはLLMをそのまま利用しつつ性能向上を待つほうがよい。 プロンプトに関するノウハウも重要であるが、これらはLangChainやLLM自体に蓄積されていくものと予想されるため、プロンプトエンジニアリングに力を入れすぎないほうがよいと考える。 特にGPT-4やo1などでの進歩を見ると、これまではプロンプトでカバーしていたようなタスクがLLMで標準的に対応可能となっている印象がある。
ClaudeのArtifactのような機能は、プロトタイピングやデータ分析の用途では大きな効率化が期待できる。もし業務活用においてClaudeを導入するのにハードルが低い組織であれば、導入する価値は十分ある。 他のサービスでもいずれは同等の機能がリリースされたり、OSS実装が開発されていく可能性はある。
ローカルでLLMを実行可能な環境も整いつつあり、Gemma 2は従来のChatGPT 3.5などに比べても高い性能と推察される。 今後は機密性の高い情報や、組み込みなどの用途においても、LLMが用いられていくことが予想される。