はつねの日記

Kinect, Windows 10 UWP, Windows Azure, IoT, 電子工作

富士通のAIをThunkableから使ってみた(前編)

最近、日本ではWaffleさんが担当しているTechnovation Girlsのテクニカルメンターを担当しています。
www.technovation.waffle-waffle.org

このコンテストの日本の参加者向けに「Technical Sponsor」である富士通さんがWebAPIで使えるAIを提供してくれました。
そこで、参加者向けに事前調査をしていたので、その使い勝手をお伝えしたいと思います。
Fujitsu クラウドサービス Generative AI Platform
pr.fujitsu.com

富士通のAIについて

今回、提供いただいたAIは「Fujitsu クラウドサービス Generative AI Platform」という生成AIのPaaSです。
利用者認証には、Entra IDを使用し、GPUやLLMは共有リソースですが、チャット履歴やリトリーバーデータは専有リソースという特徴があります。

特徴的な機能(使い勝手)

このようなことから生成AIを使うためのWebAPIというだけではなく次のような特徴があります。

  1. チャットルームでAIとやりとりする機能がWebAPIとして提供されている
  2. リトリーバーデータを作成しRAGとしてAIからの回答を最適化する機能がWebAPIとして提供されている

もちろん、通常の生成AIを使う手軽さで利用できるWebAPIエンドポイントも用意されています。

料金体系

また、自治体など官公庁に強い富士通だからか、料金体制も月額固定となっているため、トークン課金と異なり、利用者が増えて予算を早々と消化してしまって利用継続に苦慮するということも避けられるような考慮がされていました。

使い方の公開情報

Fujitsu クラウドサービス Generative AI Platform」のWebAPIの使い方は、利用者マニュアルというドキュメントに「やりたいこと」視点でAPIごとのリクエストエンドポイント、リクエストボディ、レスポンスデータが記載されています。
難しそうなところには、pythonC#のコード例も付記されていて、Microsoft Learn上のAzure AI Servicesのリファレンスに近い使い勝手になっていて便利です。
更に、富士通製品では珍しいと思うのですが、公式GitHubで、PythonC#のサンプルコードも提供されていて、非常に学習コストが低いサービスだと思いました。
github.com

まずは使ってみる

GitHubのサンプルコードをみると、まずは、ADB2C認証を行ってトークンを取得して、そのトークンをAuthenticatoinヘッダに指定して呼びだすという流れであることが書かれています。

curl.exeを使ってRESTで実行してみる

トークンの取得

トークンを取得する方法は、公式GitHubリポジトリにサンプルコードがあるのでそのまま使ってみましょう。
github.com
上記を実行すると「$idToken」変数にトークンが格納されます。

AIに質問する

取得したトークンをWebAPIのヘッダに指定してAIに質問してみましょう。
チャットルームを作って、そこで会話の履歴もPaaS側に任せてしまうこともできますが、まずは1問1答のシンプルな(会話履歴もPaaS側で管理しない)SimpleChat-APIを使ってみましょう。
質問内容としては「TechnovationGirlsに協力してくれるの?」という主語もないし、若干あやふやな内容です。
gist.github.com

結果は次の通り。

かなり日本語の理解度は高そうです。

なぜ、日本語の理解度が高いのか

Fujitsu クラウドサービス Generative AI Platform」に搭載されているLLMは、富士通が販売している「Takane」というLLMが使われています。
このTakaneというLLMが、カナダのCohere社が開発したLLMに富士通が日本語特化の学習をさせたLLMとのことです。
pr.fujitsu.com

企業向けとして契約書や社内文書などでの表現にも強いということなので、その効果(性能)が発揮されたのだと思います。

終わりに

次回は、WebAPIを C#Python、Thunlable(TechnovationGirlsで採用しているビジュアル言語)を使って動作させる例をバイブコーディングで紹介します。