Google AI SDK for Swift を試す
先日発表された Gemini API 等のGoogleの生成AIモデルをSwiftから使えるようにするSDKが公開されている。
iOS / macOSだけでなく、visionOSやwatchOSもサポートしているようだ。
Gemini Proモデルであれば日本語もサポートしている。
また、冒頭に
と書いた通り、Gemini Pro以外のモデルも使える。
サンプルを試す最小手順
READMEに書かれているそのまんまですが…
git clone する
API keyを取得する(ここからサクッと2クリックぐらいで取得できる)
Examples配下にあるGenerativeAISampleプロジェクトをXcodeで開く
一度ビルドする → スクリプトが走り、GenerativeAI-Info.plist 等が生成される
`GenerativeAI-Info.plist` の `API_KEY` の値に2で取得したAPI keyをペースト
アプリをRun
ちなみにこのプロジェクトひとつで4つぐらいのサンプルアプリが入っている。
ChatSampleはこんな感じ。前述の通り、日本語もバッチリ。
他のサンプル
マルチモーダル・サンプル
GenerativeAIMultimodalSample は画像について質問できるサンプル。
要約サンプル
GenerativeAITextSample は、入力したテキストを要約してくれるサンプルのようだ。
統合サンプル
GenerativeAISample ターゲットをビルドすると、上の3つのサンプルを統合したアプリが起動した。
Gemini nanoのiOS向けオンデバイスモデルは今後提供されるのか?
・・・ということを、Gemini Proに聞いてみました。Gemini nanoモデルのCore ML版なんてのが今後出てくるのかなと。
回答
LLMの回答であってGoogleの公式回答ではないのであくまで話半分で聞くべきですが、しかしGemini nanoのプロダクトコンセプト・構想と照らし合わせても(iOS向けオンデバイスモデルの提供が)あくまで的はずれな期待をしているわけでもなさそうです。
自分のプロジェクトに追加する
このOSSは、GenerativeAIUIComponents というSwift Packageとして利用できるようになっている。
というわけでSPMを用いて `generative-ai-swift` を自分のXcodeプロジェクトに追加すればOK。
使えるモデル
`GenerativeModel` クラスのイニシャライザの `name` 引数にモデル名を渡すことで、使用するモデルを指定できる。
let model = GenerativeModel(name: "gemini-pro-vision", apiKey: "YOUR_API_KEY")
サンプルでは、"gemini-pro" モデルと、"gemini-pro-vision" を利用している。
model = GenerativeModel(name: "gemini-pro", apiKey: APIKey.default)
model = GenerativeModel(name: "gemini-pro-vision", apiKey: APIKey.default)
前者はテキスト用、後者は画像+テキスト(マルチモーダル)用だろう。
その他の利用可能なモデルはここのREADMEには記載されておらず、探してみると下記ページに一覧があった。
最後まで読んでいただきありがとうございます!もし参考になる部分があれば、スキを押していただけると励みになります。 Twitterもフォローしていただけたら嬉しいです。 https://twitter.com/shu223/