1. はじめに
はじめまして、Sreake事業部インターン生の井上です。私はSreake事業部にてSRE技術の調査と研究を行う目的で2023年3月6日から長期インターン生として参加しています。
本記事では、社内チャットツール(Slack)で動作するh1-slack-bot(記事 ChatGPT × Slack = ChatOpsを実現する「h1-slack-bot」の紹介) をアップデートして、巷で話題のGemini Proも利用できるようになりました。
2. ChatOpsとh1-slack-bot
ChatOpsは、開発者と運用チームがコミュニケーションツール(この場合はSlack)を介して、作業を自動化し、効率化するアプローチです。h1-slack-botはこの分野で重要な役割を果たし、さまざまな言語モデル(LLM)を統合して、ユーザーがSlack上で直接インタラクションできるようにしています。現在、OpenAIのGPT-4、Google CloudのPaLM2(text-bison)、Amazon BedrockのAnthropic Claudeが利用できます。ここで、現在のh1-slack-botのアーキテクチャ図は以下のようになっています。
3. アップデート内容
この分野の最新の進展として、2023年12月14日にGoogle Cloudが、Gemini Proという新しい言語モデルをリリースしました。以下は公式の概要説明です。
概要
Gemini Pro は、言語を理解して生成する Gemini 大規模言語モデルの名前です。これは、要約、指示のフォロー、コンテンツ生成、センチメント分析、エンティティ抽出、分類などのさまざまな自然言語タスクで適切に実行される基礎モデルです。Gemini Pro が作成できるコンテンツの種類には、文書の要約、質問への回答、コンテンツを分類するラベルなど。
コードの理解と生成の場合でも、シングルターンのプロンプトと応答を使用して Gemini Pro と対話したり、複数ターンの継続的な会話でチャットしたりすることができます。
Gemini でマルチモーダルなエクスペリエンスを得るには、Gemini Pro Visionモデルを使用してください。
ユースケース
- 要約:元のテキストから関連情報を組み込んだ文書の短いバージョンを作成します。たとえば、教科書の章を要約したり、長いテキストから製品の説明を作成したりできます。
- 質問への回答:質問に対する回答をテキストで提供します。たとえば、ナレッジ ベースのコンテンツからよくある質問 (FAQ) ドキュメントの作成を自動化します。
- 分類:提供されたテキストを説明するラベルを割り当てます。たとえば、テキストのブロックが文法的に正しいかどうかを説明するラベルを適用します。
- 感情分析:これは、テキストの感情を識別する分類形式です。感情はテキストに適用されるラベルに変換されます。たとえば、テキストの感情は、肯定的または否定的などの極性である場合や、怒りまたは幸福などの感情である場合があります。
- エンティティ抽出:テキストから情報の一部を抽出します。たとえば、記事のテキストから映画の名前を抽出します。
- コンテンツ作成:一連の要件と背景を指定してテキストを生成します。たとえば、特定のトーンを使用して、特定のコンテキストの下で電子メールの下書きを作成します。
h1-slack-botが現在のLLMラインナップにgemini-proを組み込むことで、さらに高度な会話型AI機能をユーザーに提供できるようになります。公式側でサンプルコードも公開されているため、h1-slack-botへの組み込み自体は簡単です。
from vertexai.preview.generative_models import GenerativeModel
def get_chat_response(message):
model = GenerativeModel("gemini-pro")
chat = model.start_chat()
response = chat.send_message(message)
return response.text
print(get_chat_response("Hello"))
print(get_chat_response("What are all the colors in a rainbow?"))
print(get_chat_response("Why does it appear when it rains?"))
4. 実装結果
Gemini Pro公開当日(2023年12月14日)に、h1-slack-botからGemini-Proが利用できるようになりました。
5. 所感
以下はサクッと比較した物と私の感想です。 解答性能はGPT-4と比較しても同水準に見受けられます。 2023年12月時点かつ主観的な感想ですが、レスポンス測度はGemini-Proの方が速いです。
Gemini-Pro
GPT-4
コスト面について言えば、GPT-4より遥かに安価です。 また、Gemini-Proは現時点でVertex AIのPaLM2と同じ価格設定です。
- Gemini-Pro
入力 $0.0010 / 1K characters
出力 $0.0010 / 1K characters
※ 1 token = 4 characters と仮定
入力 $0.004 / 1K token
出力 $0.004 / 1K token - GPT-4
入力 $0.01 / 1K tokens
出力 $0.03 / 1K tokens
軽く使ってみた感じと、コスト面も考慮するとGemini-Pro良さそうです。
5. おわりに
h1-slack-botへのGoogle Cloudのgemini-proの統合は、ChatOpsの能力を大きく拡張すると期待できます。引き続きh1-slack-botの開発やLLMの検証を続けたいと思います。