Boxに蓄えられた膨大な自社コンテンツを使ってLLMをファインチューニングする(ために文字情報を取り出す) その2
はじめに
突然ですが、Boxに保存した膨大な自社コンテンツを利用してLLMをファインチューニングしたいと思ったことはないですか?自社・自組織の業務用語や業務ナレッジが満載のドキュメントを使ってLLMをファインチューニングすれば、更に生成AIの業務活用が進むのに…と妄想したことはありませんか?
そんな妄想を叶えるべく書き始めた「Box内のコンテンツのテキスト情報をスクリプトで取得する」方法ご説明の第2回です。第1回はこちらです。
第2回の今回は「JWT認証でPythonからBox APIを実行できるようになる」です。
1.Box Python SDKをインストールする
2.第1回の手順で作成したJSONファイルを準備する
3.Current User情報を返すPythonスクリプトを作成して実行する
前提として、BoxでJWT認証を行うためにはBox Platformというライセンスが必要になります。JWT認証ではBoxのユーザーアカウントとしてアプリケーションユーザーというタイプのユーザーアカウントで認証しますが、このアプリケーションユーザーはBox Platformに含まれます。Box Platform契約がなくてもJWT認証アプリは作成でき、アプリケーションユーザーが作成されますが、使用するためにはBox Platformが必要になります。
1. Box Python SDKをインストールする
次のサイトを参照して、Box Python SDKをインストールします。JWT認証を使用するので、「JWTアプリケーション」のインストールも行います。
2. 第1回の手順で作成したJSONファイルを準備する
第1回の手順4.で準備したJSONファイルのパスを確認してください。
3. Current User情報を返すPythonスクリプトを作成して実行する
Box Python SDKをインストールしたPython仮想環境で、以下を実行してみてください。JSONファイルのパスのところには、上記2.で確認したJSONファイルへのパスを記載してください。
from boxsdk import JWTAuth
from boxsdk import Client
auth = JWTAuth.from_settings_file("JSONファイルのパス")
client = Client(auth)
current_user = client.user().get()
print(current_user)
すべて正しく設定できていると、最後のprint文は、User IDである数値と、第1回で作成したアプリの名前を返します。
これで、PythonスクリプトからJWT認証を通してBoxにアクセスする方法が確認できました。ちなみにこの結果でわかるように、JSONファイルがあればBox環境にアクセスできることになるため保存には十分注意してください。
次回は、いよいよファインチューニングのためのデータを収集するため、Boxからファイルの文字情報を取得するAPIを実行するスクリプト作成をやってみます。
ご覧頂きましてありがとうございました。