Boxアプリケーションを作成して構成する
任意のBox Platform統合では、最初のステップとして、Boxアプリケーションを作成して構成します。
- Box開発者コンソールに移動します。
- このクイックスタートでは、アプリケーションの種類として
Client Credentials Grantを使用してアプリを作成します。 - アプリが作成されたら、以下のスコープを有効にします。
Boxに格納されているすべてのファイルとフォルダの読み取りBoxに格納されているすべてのファイルとフォルダへの書き込みAIを管理する
Boxメタデータテンプレートを作成する
Box AIを使用すると、いくつかの方法でドキュメントからデータを抽出できます。
このクイックスタートでは、ドキュメントから抽出するフィールドを定義するためのBoxメタデータテンプレートを作成します。Box管理コンソールでBoxメタデータテンプレートを作成する手順の詳細な説明については、メタデータテンプレートのカスタマイズを参照してください。
| 型 | 説明 | ユースケース |
|---|---|---|
| 抽出 (自由形式) | 文字列のプロンプトを使用できます。 | 自然言語のプロンプトを入力します。 |
| テンプレートを使用した抽出 (構造化) | Boxメタデータテンプレートキーを使用できます。 | フィールドとデータ型を1回定義します。そうすると、メタデータとしてBoxに戻す処理がシンプルになります。 |
| フィールドを使用した抽出 (構造化) | フィールドのJSON配列を使用できます。 | テンプレートを作成せず、1回限りの抽出を実行します。 |
| 抽出エージェント (強化) | 推論モデルを備えた専任エージェントを使用します。 | 複雑なドキュメントや、複雑かつ繊細な抽出に適しており、構造化されたテンプレートやフィールドで動作します。 |
-
テンプレートに名前を付けます (例:
Box AI extract quick start)。 -
以下のフィールドを作成します。
フィールド名 型 説明 クライアント名 テキスト 請求書を受け取るクライアントの名前 請求書の金額 数字 税および手数料徴収後の請求書の総額 製品 テキスト 請求書記載の納品された製品名 (コンマ区切りの文字列として返されます) - [保存] をクリックしてテンプレートを作成します。テンプレートキーは後で使用できるようにメモしておきます。
https://app.box.com/master/metadata/templates/boxAiExtractquick startこの場合、テンプレートキーはboxAiExtractquick startです。テストファイルをアップロードする
テンプレートを準備できたら、テストするファイルを選択します。このクイックスタートでは、こちらのサンプル請求書のドキュメントを使用します。
- テスト用ドキュメントをダウンロードして、Boxアカウントにドラッグアンドドロップします。
-
ファイルIDを確認するには、Boxでファイルを開いてURLを調べます。パスの最後の部分がファイルIDです。たとえば、次のようなURLがあるとします:
https://app.box.com/file/2064123286902この場合、ファイルIDは2064123286902です。
環境を設定する
抽出を実行するために、開発環境を設定します。このクイックスタートでは、PythonとBox Python SDKバージョン10を使用します。お使いのマシンにPython 3.11以上がインストールされていることを確認してください。
- プロジェクト用に新しいディレクトリを作成し、そのディレクトリに移動します。
- 仮想環境を作成します。
- Box Python SDKをインストールします。
.envファイルから環境変数を読み込むためにpython-dotenvパッケージをインストールします。- プロジェクトディレクトリのルートに
.envファイルを作成し、以下の環境変数を追加します。その際、プレースホルダの値を実際のBoxアプリの資格情報と前の手順で確認したIDに置き換えます。
- [開発者トークンを生成] をクリックして新しいトークンを作成します。
extract.pyファイルを作成する
開発環境の準備ができました。Box AIを使用してドキュメントからデータを抽出するPythonスクリプトを作成できます。
-
プロジェクトディレクトリのルートに
extract.pyという名前の新しいファイルを作成し、以下のコードを追加します。このコードは、環境変数を.envファイルから読み込み、Box SDKクライアントを初期化し、現在のユーザーのIDを出力して、クライアントが正しく動作していることを確認します。 -
ターミナルで次のコマンドを使用してスクリプトを実行します。
Box SDKクライアントが正しく設定されると、コンソールにはユーザーIDが表示されます。次に例を示します。
データを抽出する
Box SDKクライアントが動作を開始したら、Box AIを使用してドキュメントからデータを抽出するためのコードを追加できます。
-
get_box_client関数とmain関数の間に次の関数を追加します。この関数はBox AIのcreate_ai_extract_structuredメソッドを使用して、指定されたファイルからメタデータを抽出します。BoxClient、ファイルID、前の手順で作成したメタデータテンプレートキーが関数に送信され、抽出されたメタデータがディクショナリとして返されます。 -
main関数でメタデータを抽出する関数呼び出しを追加します。新しいmain関数に次のロジックが含まれていることを確認します。SDKはBox AIへのAPIコールを処理し、抽出されたメタデータをAiExtractStructuredResponseオブジェクトとして返します。このクイックスタートでは、このコードによって、このオブジェクトがディクショナリに変換され、抽出されたキー/値ペアを含むanswerフィールドが返されます。 -
ターミナルで次のコマンドを実行して、抽出されたメタデータをコンソールに出力し、抽出が成功したかどうかを確認します。
抽出が成功した場合、コンソールでは、ユーザーIDの後に請求書ドキュメントから抽出されたメタデータが表示されます。
ファイルにBoxメタデータを追加する
ドキュメントからメタデータを抽出できました。これで、データベースへのプッシュ、CRMとの統合、エージェントへの処理用フィード、自動化ワークフローの開始などの目的で、キー/値ペアを自分のアプリケーションで使用できるようになります。このクイックスタートでは、抽出されたデータをファイルのメタデータとしてBoxに戻す方法を説明します。Boxのメタデータ管理機能では、強力なフィルタ機能と検索機能をコンテンツ全体で使用できます。たとえば、過去30日間の500ドルを超える請求書を全件照会したり、Box Appsでダッシュボードを作成したり、ドキュメントの主なインサイトをBoxウェブアプリに直接表示したりできます。
-
次の関数を
extract_metadata関数とmain関数の間に追加して、抽出されたメタデータをBoxに戻します。この関数ではcreate_file_metadata_by_idメソッドを使用して、指定されたファイルにメタデータを追加し、BoxClient、ファイルID、メタデータディクショナリ、テンプレートキーを処理します。API自体はMetadataFullオブジェクトを返します。この関数によって、このオブジェクトがディクショナリに変換され、返されます。 -
main関数でメタデータをプッシュする関数呼び出しを追加します。更新されたmain関数に次のロジックが含まれていることを確認します。 -
ターミナルで次のコマンドを実行します。
スクリプトが成功すると、コンソールには、ユーザーID、抽出されたメタデータ、Boxから追加されたメタデータレスポンスが表示されます。次に例を示します。
