見出し画像

Gemini 1.5 Proに備えてGoogle AI Studioを調べておいた。時代は「インラインRAG」時代へ?

こんにちは!
ノリトです。ChatGPT使ってますか?

2月16日にGemini Pro 1.5の発表がありました。
プロンプトに100万トークン使え、料金もGemini 1.0と同じならChatGPT 4の240分の1で、性能はChatGPT 4以上というのが売り文句です。
Gemini 1.0については、残念ながら使うのは時期尚早と思っています。
しかし、Googleが自信満々で出してくる以上、構えは必要です。

リリースに備えて、Google AI Studioについて調べましたので、共有いたします。

この記事は、大阪のIT専門学校「清風情報工科学院」の校長・平岡憲人(ノリト)がお送りします。
ノリトについては、こちらの記事を。


1.Gemini 1.5 Proとは

Googleによれば、Gemini 1.5 Proは次のような生成AIサービスです。

  • 巨大な処理能力: 最大100万トークン(実験では1000万トークン)入力可能。GPT-4を大幅に超える処理能力で、70万文字の長文や1時間の動画、11時間の音声などを処理できる。

  • 精緻な知識と論理: 高精度な情報検索と論理的な文章生成を実現。長文の理解、要約、翻訳、質問応答などを正確に実行。

  • 高度なクリエイティブ性: 小説、脚本、音楽作品、絵画、コンピュータ・プログラムなど様々な形式の創作物を理解し、生み出せる。

  • 専門知識の取り込み: MoE技術により医療、法律、金融など多くの分野の専門知識を取り込み、高度なタスクを実行可能。

  • コンテキスト内学習: 追加のファインチューニングをしなくても、長いプロンプトで与えられた情報からAIが能動的に新しいスキルを学習。

これが能書き通りであるなら、ありがたいことですね。

値段はまだ発表されていません。
もし、Gemini 1.0と同程度だとすれば格安です。

Gemini 1.0の価格

OpenAIのGPT-4 Turboが、$0.01 / 1K tokens。
GPT-3.5 Turboが、$0.0005 / 1K tokensです。
OpenAIは1000トークン単位で、Googleは1000文字単位なので単純には比較できないが、仮に1000トークン=1000文字なら、Geminiの価格はGPT-4の240分の1ということになります。

実力の程度は、リリースされてみないとわかりませんね。
使いたいなら、利用のリクエストはここからできます。

Gemini 1.5 Proのウェイティングリスト

チェックボックスに適当にチェックを入れ、「Join with my Google account」をクリック。

ウェイティングリストに入ったとの表示

利用できるようになれば、メールがGmailに届くらしいです。
気長に待ちましょう。

使えるようになると、Gemini APIおよびGoogle AI Studioで使えるとあります。

Gemini APIエンジニア用のサービス
Google AI Studio一般人も利用可能な開発用のサービスです。
このGoogle AI Studioはブラウザで利用でき、プログラム不要です。
なので、Google AI Studioはどんなものか見ておきましょう。

2.Google AI Studioの利用開始

Google AI Studioは、Google DocumentGoogle SpreadSheetなどのGoogleアプリの一つです。
Gmailのアカウントがあれば利用可能です。
アクセスは次のアドレスから。

https://aistudio.google.com/

アクセスすれば、このような画面になります。

Google AI Studio

最初にアクセスした際は、利用契約書が表示されます。
赤字の部分に大事なことが書いてあります。

利用契約書

機密情報、秘密情報、個人情報を Gemini API 未払い層や Google AI Studio に送信しないでください。品質、安全性、および Google 製品の向上のために、人間のレビュアーが入出力を読み取り、注釈を付け、処理することがあります。Google では、このプロセスの一環として、レビュアーが閲覧したり注釈を付けたりする前に、このデータをお客様の Google アカウントまたは API キーから切り離すなど、お客様のプライバシーを保護するための措置を講じています。

利用契約書の注書き

要するに、学習に使うので、使われたくない情報は送るな、ということです。
無料のアプリはデータをくれ、というのがバーターですね。
なので、性能確認に使ったり、一般的な使い方にして下さい。
このことを踏まえて、チェックを3個所に入れて「Continue」をクリック。

3個所にチェックを入れて「Continue」をクリック

すると、基本画面が現れます。

Google AI Studioの基本画面

なお、各社の生成AIが自分のデータを学習に使うかどうかは、この記事がわかりやすいです。

Geminiの利用で、自分のデータを学習に使われないようにするには、現時点では、Vertex AIを使う以外にはありません。
この後で紹介する、Google AI Studio、Gemini APIを使う限り、データはGoogleに筒抜けと考えて下さい。
もちろん、GeminiサービスGemini Advancedサービスでのチャットもすべて筒抜けです。

3.Google AI Studioの機能

Google AI Studioについては、公式クイックスタートガイドが出ています。
一通り目を通しておくのがよいと思います。

ここでは詳しく使い方を書くよりは、主に何ができるのか、何ができないのかを説明します。

Google AI Studioの基本画面

Google AI Studioの主な機能は次の5つです。

・3種類のプロンプトが作れる
  ・チャット・プロンプト
  ・フリーフォーム・プロンプト
  ・構造化プロンプト
・プロンプトを試し打ちできる
・プロンプトを保存できる
・プロンプトのプログラムコードを生成できる
・APIキーを生成できる

前3つがプロンプトの開発用、後ろ2つはシステム開発者用の機能です。

これ以外に、
・プロンプトのトークン数を数える機能
・言語モデルのパラメータを操作する機能
・各種ドキュメントやサンプルへのリンク
などがあります。

3種類のプロンプトの違いは次の通りです。

(1)チャット・プロンプト

ChatGPTのような、ユーザーとシステムが対話するプロンプト

チャット・プロンプト(開発途上)

Google 1.5 Proが登場した際、とりあえずこの画面でいろいろやり取りして性能を検証することになると思います。

クイックスタートには、カスタムチャットbotが作れると書いてあります。
特定のトーンやスタイルで会話する chatbot になるよう指示できるはずです。
しかし、現時点ではそのような機能はなく、単なるチャットの画面です。
いずれ、カスタムチャットが作れるように機能更新されると予想します。

チャットには、ファイルの添付が可能です。
ローカルファイルまたはGoogle Driveからアップするようになっています。
フォルダー内のファイル全部、という渡し方もできるようです。
但し、ファイルの中身はすべてトークン換算されます。
OpenAIのKnowlede機能のように、RAG機能の外部知識としてプロンプト外のデータベース扱いということではありません。

(2)フリーフォーム・プロンプト

画像とテキストを組み合わせたプロンプトを開発できます。

フリーフォーム・プロンプト

自由にプロンプトを書いて、システムに指示します。
絵を与えて、その絵に対する説明を求めたりすることも可能です。
また、プロンプトに置換可能な変数を追加できます。
プロンプトの一部を変数に置き換えることで、動的に変化するプロンプトを開発可能です。
この機能は、プロンプトのプログラムを作る時や、つくったプログラムをAPI化する時に必要になります。

チャットには、ファイルの添付が可能です。
ファイルについては、チャット・プロンプトと同様です。

(3)構造化プロンプト

命令だけでなく、多数の例を与えて回答を生成させるプロンプトを開発できます。

構造化プロンプト

3種類のプロンプトの組み合わせになっています。
・基本指示を書くプロンプト
・例を列挙するプロンプト
・システムとやりとりするプロンプト
「基本指示」+「例」が本体で、そのシステムにいろんなプロンプトを与えて反応をチェックする、という開発方法がとれます。
「例」は、1入力1出力だけでなく、入力・出力は別々に数を追加可能です。
「例」は、ファイルからのインポートが可能です。

チャットプロンプトや構造化プロンプトと異なり、ファイルの添付はできません。
ファイルは、例にファイルからインポートできるだけです。

(4)ない機能

Google AI Studioにない機能についても整理しておきましょう。

Gemini Advancedサービスには次のような機能があります。
-リアルタイムウェブ検索
-Googleサービスとの連携のためのプラグイン
-Google検索を使って情報の信ぴょう性を確かめる機能
これらはGoogle AI Studioから利用したりコントロールすることはできません。

OpenAIのMyGPTsおよびAssitant APIには次のような機能があります。
-RAGに使うファイルのアップロードとText Embedding機能
-RAGに使うWEB検索機能
-RAGに使う外部APIを呼び出す機能
これらはGoogle AI Studioにはありません。

そのかわり、Gemini 1.5 Proは、巨大なトークンを処理できます。
処理コストも安くなっています。
ですから、プロンプト内に学習させたいファイルなどを添付し「インラインRAG」として利用するよう予定されている可能性が高いです。

なお、RAGについてはこれらの記事をご覧ください。
私はたまたまプログラムを書かずにRAGを理解・実行しようとして、プロンプト内にJSONデータを入れるという裏技を見出して紹介しました。
今後この「インラインRAG」が主流になるとしたら、びっくりです。

(5)まとめ

Google AI Studioでは、3種類のプロンプトの開発が可能です。
慣れた人は、フリーフォーム・プロンプトで、段階的に組み立てたい人は構造化プロンプトでということになると思います。
現時点では、プラグイン機能の利用・コントロールはできません
OpenAIのMyGPTsやAssistants APIのようなRAG機能は内蔵されていません。
トークン数が大きいので、従来であればRAGとして別データとしていた情報をプロンプト内に展開し、「インラインRAG」として扱うことが想定されているようです。

4.Gemini API

Google AI Studioの特徴の一つは、作成したプロンプトを呼び出すプログラムを自動生成できることです。
画面の右上に「<>Get code」というボタンがあり、クリックするとGemini APIとやりとりするプログラムが生成されます。

生成されるコード

言語は、次の5つ

  • cURL

  • JavaScript

  • Python

  • Android(Kotlin)

  • Swift

に対応しています。

プログラム内では、google.generativeaiというモジュールを利用しています。
実際にこのプログラムを利用する場合は、事前にモジュールのインストールが必要です。
Geminiを呼び出す部分は次の部分です。

Geminiの呼び出し

残念ながら、LangChainは使われていません。
これじゃ拡張するのに、いろいろ書き直さないといけないので面倒くさいですね。

外部からGemini APIを呼び出すには、API keyが必要になります。
その生成機能が用意されています。

API Keyの生成機能

「Create API key in new project」をクリックすれば、呪文のようなAPI Keyが生成されます。
これは、外部からプログラムを通じてGeminiを利用するときに必要になるパスワードのようなものです。
Google Cloudのプロジェクト内の既存のAPI Keyを使うこともできるようになっています。

なお、Geminiの利用で、自分のデータを学習に使われないようにするには、現時点では、Vertex AIを使う以外にはありません。
Google AI Studio、Gemini APIを使う限り、データはGoogleに筒抜けと考えて下さい。
Vertex AIのAPIを利用すれば、学習対象外です。
これがAPIが2種類ある理由ですね。

5.まとめ

Gemini 1.5 Proのリリースに備えて、Google AI Studioの解説をしました。
使いやすそうな機能を備えたアプリで、プロンプト開発に利用できます。
単純なChatプログラムとしても利用可能です。
残念ながらRAG機能はありません
代わりに巨大なトークンを使って、プロジェクト内に「インラインRAG」を展開することが想定されています。
作ったプロンプトをPythonなどのプログラムに落とし、外部からAPIを使ってGeminiを利用することが想定されています。
但し、Google AI StudioとGemini APIのデータはGoogleに筒抜けです。
データを守りたい場合は、Vertex AIとVertex AIのAPIを使って下さい。
カスタムチャット機能はまだ未完成です。

清風情報工科学院では、情報処理系の講師を急募しております。
ご興味のある方はこちらの記事を御覧ください。


この記事が参加している募集

AIとやってみた

仕事について話そう

よろしければサポートお願いします! いただいたサポートはクリエイターとしての活動費に使わせていただきます! (