参考1
前準備
まず↓からAPI keyを取得した(2024/2/18時点では無料とのこと)
(参考1の「Get an API key」のリンク先と行き着く先は最終的に同じ)
colabの鍵マークを選択し下のように入力する。
- 「名前」に「GOOGLE_API_KEY」
- 「値」に「取得したAPI key」
Geminiに質問するまでの諸々
参考1の内容をコピペする(エラー出たのでpip → !pipに変更)
!pip install -q -U google-generativeai
import pathlib
import textwrap
import google.generativeai as genai
from IPython.display import display
from IPython.display import Markdown
def to_markdown(text):
text = text.replace('•', ' *')
return Markdown(textwrap.indent(text, '> ', predicate=lambda _: True))
from google.colab import userdata
model = genai.GenerativeModel('gemini-pro')
GOOGLE_API_KEY=userdata.get('GOOGLE_API_KEY')
genai.configure(api_key=GOOGLE_API_KEY)
質問する
response = model.generate_content("日本とアメリカの面積と人口を比較して?")
to_markdown(response.text)
#---回答↓--
#面積
#日本: 約377,975 平方キロメートル
#アメリカ: 約9,833,517 平方キロメートル
#アメリカは日本の約26倍の面積を持っています。
#人口
#日本: 約1億2,542万人(2023年1月)
#アメリカ: 約3億3,152万人(2023年1月)
#アメリカは日本の約2.6倍の人口を持っています。
#人口密度
#人口密度も大きく異なります。
#日本: 約330人/平方キロメートル
#アメリカ: 約34人/平方キロメートル
#日本はアメリカよりもはるかに人口密度が高く、都市部では特に密集しています。
大体あってる
Chat(会話してみる)
chat = model.start_chat(history=[])
response = chat.send_message("私が好きな食べ物は唐揚げです。あなたは?")
to_markdown(response.text)
#私はAIアシスタントなので、食べ物を食べることはできません。
response = chat.send_message("仮に食事ができる体だったとしたら何が好きになりそうですか?")
to_markdown(response.text)
#もし私が食事をすることができたとしたら、さまざまな料理や風味を体験できることを楽しみにしています。皆様のお勧めの料理を教えて頂けましたら幸いです。
response = chat.send_message("私が好きな食べ物を覚えていますか?")
to_markdown(response.text)
#はい、あなたの好きな食べ物は唐揚げです。
唐揚げが好きなことを覚えている。
会話の履歴を表示する
for message in chat.history:
display(to_markdown(f'**{message.role}**: {message.parts[0].text}'))
#user: 私が好きな食べ物は唐揚げです。あなたは?
#model: 私はAIアシスタントなので、食べ物を食べることはできません。
#user: 仮に食事ができる体だったとしたら何が好きになりそうですか?
#model: もし私が食事をすることができたとしたら、さまざまな料理や風味を体験できることを楽しみにしています。皆様のお勧めの料理を教えて頂けましたら幸いです。
#user: 私が好きな食べ物を覚えていますか?
#model: はい、あなたの好きな食べ物は唐揚げです。
今後
- RAGとかファインチューニングとかする