見出し画像

グーグルの大規模言語モデルのPaLM APIとMakerSuiteの使い方

GoogleのPaLM APIは、GoogleのLLMを使うことができるAPIです。MakerSuiteは、開発者がプロトタイプとしてGenerativeAIアプリケーションを素早く簡単に構築できるようにするツールです。


waitlistに登録してからだいぶ時間が経過しましたが、招待メールが届いていました。


招待メール


Visit MakerSuiteをクリックしてみます。


MakerSuiteの初期画面

プロトタイプとして、Text Prompt、Data Prompt、Chat promptが用意されています。Text Promptは、ChatGPTのように、テキスト生成のプロトタイプとなります。Data Promptは、2つの関係性の一覧を参考に、入力したテキストと関係のあるテキストを生成するプロトタイプです。Chat Promptは、名前の通りChatのプロトタイプとなります。


Text Prompt

Text PromptのCreateをクリックします。


Text Promptのサンプル

サンプル用として、上にボタンが用意されていますので、今回は、Summarize a paragraphをクリックします。


RUNをクリックします。


紫色のところが要約されたテキストです。


日本語も大丈夫か試してみます。

夏目漱石の坊ちゃんの記載をwikipediaから持ってきてRUNをクリックしましたが、できませんでした。



Data Prompt

Data promptのCreateをクリックします。



ここも、サンプルを利用します。Oppositesをクリックします。


Oppositeをクリックすると、サンプルデータが挿入されます。StrongとWeak、ThickとThinのように反対のことを対としたデータとなっています。
それに対して、下の方でWrongとFastを入力として、この場合のOutputを求めます。

Run-2をクリックすると、Righ、SlowとWrong,Fastの反対の言葉が表示されます。



Chat prompt

Chat promptは、ChatGPTのようなインターフェースの画面となっております。

左で、I like an apple pieと入力すると、Modelが回答してくれます。

また、右上のGet codeをクリックすると、本プロトタイプのサンプルコードが表示されます。


サンプルコード


PaLM APIキーの作成

最初の画面に戻り、Create an API keyをクリックします。


下のCreate an API keyをクリックします。


Create API key in new projectをクリックします。


API Keyが作成されますので、Copyをクリックしてどこかに保存しておきましょう。


API Keyが作成されますと、API keyのリストが表示されます。



さて、ここで取得したPaLM API KeyをGoogle Colabで実行し使ってみます。Your-API-Keyには、先ほど取得したPaLM API Keyを記載してください。

"""
At the command line, only need to run once to install the package via pip:
$ pip install google-generativeai
"""
!pip install google-generativeai
import google.generativeai as palm

palm.configure(api_key="Your-API-Key")

defaults = {
  'model': 'models/text-bison-001',
  'temperature': 0.7,
  'candidate_count': 1,
  'top_k': 40,
  'top_p': 0.95,
  'max_output_tokens': 1024,
  'stop_sequences': [],
  'safety_settings': [{"category":"HARM_CATEGORY_DEROGATORY","threshold":1},{"category":"HARM_CATEGORY_TOXICITY","threshold":1},{"category":"HARM_CATEGORY_VIOLENCE","threshold":2},{"category":"HARM_CATEGORY_SEXUAL","threshold":2},{"category":"HARM_CATEGORY_MEDICAL","threshold":2},{"category":"HARM_CATEGORY_DANGEROUS","threshold":2}],
}
prompt = """I am happy. """

response = palm.generate_text(
  **defaults,
  prompt=prompt
)
print(response.result)

I am happy.に続く文章の結果は、以下になりました。


I am happy because I have a loving family and friends.

ちなみに、I am happy.ではなく、私は幸せですと入力して実行してみたらエラーになりました。日本語は今後対応という感じなのでしょう。


今回、PaLM API KeyとMakerSuiteを紹介しました。所感としては、OpenAIのAPI Keyの使い方と似ているので学習コストは少なく済むと考えられます。また、詳しくは調べていませんが、safety_settingsという項目がモデル指定時にあるので、安心安全なテキスト生成をコントロールできるのではないかと考えられます。(API documentationは、まだ読んでいないです。)

少し気になったのは、Google BardとPaLM API Keyの関係性はどのようなものかです。時間がありましたら調べてみたいです。

この記事が気に入ったらサポートをしてみませんか?