LOAD_ONNX_MODEL_CLOUD

このプロシージャを使用すると、ONNXモデルをオブジェクト・ストレージからデータベースにロードできます。

構文

DBMS_VECTOR.LOAD_ONNX_MODEL_CLOUD (
     model_name  IN  VARCHAR2,
     credential  IN  VARCHAR2,
     uri         IN  VARCHAR2,
     metadata    IN  JSON DEFAULT JSON('{"function" : "embedding", '|| 
                          '"embeddingOutput" : "embedding", "input": {"input":["DATA"]}}')
);

パラメータ

表12-8 LOAD_ONNX_MODEL_CLOUDプロシージャのパラメータ

パラメータ 説明

model_name

[schema_name.]model_nameという形式のモデル名。スキーマを指定しない場合は、ユーザー独自のスキーマが使用されます。

credential

オブジェクト・ストアへのアクセスに使用される資格証明の名前。

uri

ONNXモデルのURI。

metadata

モデルを記述するメタデータのJSONによる記述。このメタデータには、モデルでサポートされている機械学習関数を少なくとも記述する必要があります。モデルのメタデータ・パラメータの詳細は、「ONNXモデルのJSONメタデータ・パラメータ」を参照してください。

次の例は、DBMS_VECTOR.LOAD_ONNX_MODEL_CLOUDプロシージャを使用するコード・スニペットを示しています。

EXECUTE DBMS_VECTOR.LOAD_ONNX_MODEL_CLOUD(
    model_name => 'database',
    credential => 'MYCRED', 
    uri => 'https://objectstorage.us-phoenix-1.oraclecloud.com/n/namespace-string/b/bucketname/o/all-MiniLM-L6-v2.onnx',
    metadata => JSON('{"function" : "embedding", "embeddingOutput" : "embedding" , "input": {"input": ["DATA"]}}')
);

使用上の注意

モデルの名前は、次のような他の機械学習モデルで使用されるものと同じ制限に従います。

  • スキーマ名を指定する場合は、128文字に制限されます。
  • モデル名は123文字に制限されており、引用符なしの識別子のルールに従う必要があります。名前に使用できるのは、英数字、アンダースコア(_)、ドル記号($)およびシャープ記号(#)のみです。最初の文字は、英字にする必要があります。
  • モデルのサイズは1GBに制限されます。
  • モデルは外部イニシャライザに依存しないようにします。イニシャライザおよびその他のONNXの概念の詳細は、https://onnx.ai/onnx/intro/concepts.htmlを参照してください。
  • Pythonユーティリティによって準備されるモデルの入出力属性には、デフォルトの入力名および出力名があります。これらのモデルは、JSONパラメータなしでロードできます。次に例を示します。

    EXECUTE DBMS_VECTOR.LOAD_ONNX_MODEL_CLOUD(
        'database', 
        'MYCRED',
        'https://objectstorage.us-phoenix-1.oraclecloud.com/n/namespace-string/b/bucketname/o/all-MiniLM-L6-v2.onnx'
    );

関連項目:

機械学習タスクにONNXモデルを使用する例については、『Oracle Machine Learning for SQLユーザーズ・ガイド』を参照してください