ait_sdk.common.files package

Submodules

ait_sdk.common.files.ait_input module

class ait_sdk.common.files.ait_input.AITInput(ait_manifest: AITManifest)

Bases: object

AITの入力ファイル「ait.input.json」を管理するクラスです。

This class manages the AIT input file “ait.input.json”.

get_inventories() Dict[str, str]

inventoriesを取得します。

Get inventories.

Returns:

inventories

get_inventory_path(name: str)

inventory_pathを取得します。

Get inventory_path.

Parameters:

name (str) –

inventoryのnameを指定します。

Specify the name of the inventory.

Returns:

inventory_path (str or list)

get_job_id() int

job_idを取得します。

Get job_id.

Returns:

job_id

get_method_param_value(name: str) object

method_param_valueを取得します。

Get method_param_value.

Parameters:

name (str) –

method_param_valueのnameを指定します。

Specify the name of the method_param_value.

Returns:

method_param_value

get_method_params() Dict[str, str]

method_paramsを取得します。

Get method_params.

Returns:

method_params

get_mount_dir_path() Path

mount_dir_pathを取得します。

Get mount_dir_path.

Returns:

mount_dir_path

get_run_id() int

run_idを取得します。

Get run_id.

Returns:

run_id

read_json(input_json_path: str) None

ait.input.jsonを読み込みます。

Load ait.input.json.

Parameters:

input_json_path (str) –

jsonファイルパスを指定します。

Specify the json file path.

ait_sdk.common.files.ait_input_generator module

class ait_sdk.common.files.ait_input_generator.AITInputGenerator(manifest_path: str)

Bases: object

ait.input.jsonを出力するためのクラス。 set関数で各項目を入力し、write関数でjsonを出力する。 あらかじめait.manifest.jsonを生成しておく必要がある。

Class for outputting ait.input.json. You input each item with the set function and output json with the write function. You must generate ait.manifest.json beforehand.

add_ait_inventories(name: str, value: str) None

Inventories項目を設定する。

Set the Inventories item.

Parameters:
  • name (str) –

    Inventoriesの名称。ait.manifest.jsonのInventoriesの名称と同じにする必要がある。

    The name of Inventories, which should be the same as the name of Inventories in ait.manifest.json.

  • value (str) –

    Inventoriesの格納場所。{AIT_ROOT}/local_qai/inventory/以下のフォルダ/ファイル名の情報。 (例){AIT_ROOT}/local_qai/inventory/input/test.jpgなら「input/test.jpg」

    The location of Inventories. Information on the folders/file names under {AIT_ROOT}/local_qai/inventory/. (e.g., “input/test.jpg” for {AIT_ROOT}/local_qai/inventory/input/test.jpg

add_ait_inventories_with_multipaths(name: str, path_list: List[str]) None

Inventories項目を設定する。(複数パスが設定可能)

Set the Inventories item.(with multi paths)

Parameters:

name (str) –

Inventoriesの名称。ait.manifest.jsonのInventoriesの名称と同じにする必要がある。

The name of Inventories, which should be the same as the name of Inventories in ait.manifest.json.

path_list: List[str] :

Inventoriesの格納場所のリスト。 各値は{AIT_ROOT}/local_qai/inventory/以下のフォルダ/ファイル名の情報。 (例){AIT_ROOT}/local_qai/inventory/input/test.jpgなら「input/test.jpg」

The location list of Inventories. Each value is information on the folders/file names under {AIT_ROOT}/local_qai/inventory/. (e.g., “input/test.jpg” for {AIT_ROOT}/local_qai/inventory/input/test.jpg

set_ait_params(name: str, value: str) None

parameters項目を設定する。

Set the parameters item.

Parameters:
  • name (str) –

    parametersの名称。ait.manifest.jsonのparametersの名称と同じにする必要がある。

    The name of the parameters, which must be the same as the name of the parameters in ait.manifest.json.

  • value (str) –

    parametersの値。

    The value of parameters.

write() str

設定した各項目をjsonファイルに出力する。

出力先ファイルパスは以下となる。 /usr/local/qai/mnt/ip/job_args/[job_id]/[run_id]/ait.input.json

Output each set item to a json file.

The output file path is as follows. /usr/local/qai/mnt/ip/job_args/[job_id]/[run_id]/ait.input.json

Returns:

出力先ファイルパス Output file path

ait_sdk.common.files.ait_manifest module

class ait_sdk.common.files.ait_manifest.AITManifest

Bases: object

AITを定義するファイル「ait.manifest.json」を管理するクラスです。

This class manages the file “ait.manifest.json”, which defines AIT.

get_ait_downloads() List[Dict[str, str]]

downloadsを取得します。

Get downloads.

Returns:

downloads

get_ait_measures() List[Dict[str, str]]

measuresを取得します。

Get measures.

Returns:

measures

get_ait_parameter_default_value(name: str, is_raise_key_error: bool = True) str

parameter_default_valueを取得します。

Get parameter_default_value.

Parameters:
  • name (str) –

    parameterのnameを指定します。

    Specify the name of the parameter.

  • is_raise_key_error (bool) –

    parameterのnameが存在しない場合にkey_errorを発生させるかどうかを指定します。

    Specifies whether key_error is raised if the parameter name does not exist.

Returns:

parameter_default_value

get_ait_parameter_type(name: str) str

parameter_typeを取得します。

Get parameter_type.

Parameters:

name (str) –

parameterのnameを指定します。

Specify the name of the parameter.

Returns:

parameter_type

get_ait_resources() List[Dict[str, str]]

resourcesを取得します。

Get resources.

Returns:

resources

get_name() str

nameを取得します。

Get name.

Returns:

name

get_version() str

versionを取得します。

Get version.

Returns:

version

read_json(manifest_json_path: str) None

ait.manifest.jsonを読み込みます。

Load ait.manifest.json.

Parameters:

manifest_json_path (str) –

jsonファイルパスを指定します。

Specify the json file path.

ait_sdk.common.files.ait_manifest_generator module

class ait_sdk.common.files.ait_manifest_generator.AITManifestGenerator(base_dir: str)

Bases: object

ait.manifest.jsonを出力するためのクラス。 set関数で各項目を入力し、write関数でjsonを出力する。

Class for outputting ait.manifest.json. Input each item with the set function and output json with the write function.

add_ait_downloads(name: str, description: str) None

downloads項目を設定する。

Set the downloads item.

Parameters:
  • name (str) –

  • description (str) –

add_ait_inventories(name: str, type_: str, description: str, requirement: str, depends_on_parameter: str = '') None

inventories項目を設定する。 format_ait_inventory_requirementメソッドでrequirementの事前設定が必要。

Set the inventories item. requirement must be preset with format_ait_inventory_requirement method.

Parameters:
  • name (str) –

  • type (str) –

    以下いずれかの値である必要があります。

    It should be one of the following values

    dataset executable_model model attribute set

  • description (str) –

  • requirement (str) –

    アセットが従うべき要件

    Requirements for assets

    format_ (List) compatible_packages (List) additional_info (str) min (str) max (str)

  • depends_on_parameter (str) –

    本項目を有効化する依存パラメータ名を設定します。(任意) 依存パラメータが未設定の場合、本項目は無効となります。 未設定の場合、常に有効となります。

    Set the name of the dependent parameter to enable this item. (Optional) If the dependent parameter is not set, this item is disabled. If not set, this item is always enabled.

add_ait_keywords(keyword: str) None

keywords項目を設定する。

Set the keywords item.

Parameters:

keyword (str) –

add_ait_licenses(license: str) None

licenses項目を設定する。

Set the licenses item.

Parameters:

license (str) –

add_ait_measures(name: str, type_: str, description: str, structure: str, min: str = '', max: str = '') None

measures項目を設定する。

Set the measures item.

Parameters:
  • name (str) –

  • type (str) –

    以下いずれかの値である必要があります。

    It should be one of the following values

    int float bool str

  • description (str) –

  • structure (str) –

    以下いずれかの値である必要があります。

    It should be one of the following values

    single sequence

  • min (str) –

    最小値を設定します。(任意)

    Set the minimum value. (optional)

  • max (str) –

    最大値を設定します。(任意)

    Set the maximum value. (optional)

add_ait_parameters(name: str, type_: str, description: str, default_val: str = '', min_value: str = '', max_value: str = '', depends_on_parameter: str = '') None

parameters項目を設定する。

Set the parameters item.

Parameters:
  • name (str) –

  • type (str) –

    以下いずれかの値である必要があります。

    It should be one of the following values

    int float bool str

  • description (str) –

  • default_val (str) –

    任意

    Optional

  • min_value (str) –

    最小値を設定します。(任意)

    Set the minimum value. (optional)

  • max_value (str) –

    最大値を設定します。(任意)

    Set the maximum value. (optional)

  • depends_on_parameter (str) –

    本項目を有効化する依存パラメータ名を設定します。(任意) 依存パラメータが未設定の場合、本項目は無効となります。 未設定の場合、常に有効となります。

    Set the name of the dependent parameter to enable this item. (Optional) If the dependent parameter is not set, this item is disabled. If not set, this item is always enabled.

add_ait_references(bib_info: str, additional_info: str = '', url: str = '') None

references項目を設定する。 AITの根拠となる論文参照を記載します。

Establish a references item. Describe the paper references as the basis for the AIT.

Parameters:
  • bib_info (str) –

  • additional_info (str) –

  • url (str) –

add_ait_resources(name: str, type_: str, description: str) None

resources項目を設定する。

Set the resources item.

Parameters:
  • name (str) –

  • type (str) –

    以下いずれかの値である必要があります。

    It should be one of the following values

    text picture table

  • description (str) –

create_inv_req_additional_info(key: str, value)

inventoryのrequirementのadditional_info項目を設定する。

Set the inventory requirement additional_info item.

Parameters:
  • key (str) –

    keyのサンプル

    ・functionality : モデルが持つべき機能 ・tasks : モデルの想定タスク ・component_type : モデル構成要素の種別 ・serialization_type : モデルのシリアライズ形式 ・input_formats : モデルの入力データのフォーマットに関する情報 ・output_shape : モデルの出力テンソル形状を記載する,サイズ不定の場合はNone, 次元数不定の場合はMultiDimと記載する ・output_description : output_shapeで指定したshapeの各次元について捕捉説明を行う

    sample of key

    ・functionality : functions that the model should have ・tasks : task of the model ・component_type : component type of the model ・serialization_type : serialization type of the model ・input_formats : information about the format of the model’s input data ・output_shape : describe the shape of the output tensor of the model

    if the size is unknown, write None if the number of dimensions is unknown, write MultiDim

    ・output_description : provide a capture explanation for each dimension of the shape specified by output_shape

  • value (String or array) –

    valueのサンプル sample of value

    ・functionalityenum
    • inference

    • training

    • other

    ・tasks : [‘Image Classification’, ‘Object Detection’] ・component_type : enum

    • architecture

    • weights

    • hyperparameters

    • preprocessor

    ・serialization_typeenum:
    • serialized

    • compiled

    • transpiled

    • source

    ・input_formats : [‘image’, ‘video’, ‘tabular’, ‘structured’] ・output_shape : [‘None’, ‘320’, ‘240’, ‘MultiDim’, ‘1’] ・output_description : [‘batch_size’, ‘x-axis’, ‘y-axis’, ‘class_probability(multi-hot encoding)’, ‘confidence’]

create_inv_req_compatible_packages(name: str, version: str = '', additional_info: str = '')

inventoryのrequirementのcompatible_packages項目を設定する。

Set the inventory requirement compatible_packages item.

Parameters:
  • name (str) –

  • version (str) –

  • additional_info (str) –

format_ait_inventory_requirement(format_: list, compatible_packages: list = [], additional_info: list = [], min: str = '', max: str = '')

inventoryのrequirement項目を設定する。 create_inv_req_compatible_packagesメソッドでcompatible_packagesのitemを追加およびフォーマット。 create_inv_req_additional_infoメソッドでadditional_infoのitemを追加およびフォーマット。

Set the inventory requirement item. Add and format compatible_packages item with the create_inv_req_compatible_packages method. Add and format additional_info item with the create_inv_req_additional_info method.

Parameters:
  • format (List) –

  • compatible_packages (List) –

    アセットの準備・生成に必要とする/依存するソフトウェアの一覧。(任意)

    List of software required or dependent for asset preparation or generation. (Optional)

    name (str) version (str) additional_info (str)

  • additional_info (list) –

    任意

    Optional

  • min (str) –

    inventoryのファイル数の最小値を設定します。(任意)

    Set the minimum value. (optional)

  • max (str) –

    inventoryのファイル数の最大値を設定します。(任意)

    Set the maximum value. (optional)

set_ait_description(description: str) None

description項目を設定する。

AIT利用者にとって選択の一助となるように、AITの算出する指標値について、 導出式を記載することを推奨します。

Set a description item.

In order to help AIT users make a choice, the index values calculated by AIT should be It is recommended that the derivation formula be stated.

Parameters:

description (str) –

set_ait_name(name: str) None

name項目を設定する。

名称自由に決めていただいて結構ですが、一意制約があるため以下の命名規則に沿って定義することを推奨します。

Set the name item.

You can use any name you want, but it is recommended to define it according to the following naming conventions because of the unique restriction.

  • {prefix}_{target}_{task}_{format}_{measure}
    • [必須]prefix: AITのタイプを表します。いくつかの予約されたタイプがあります。
      • eval : 品質評価

      • alyz : 分析

      • misc : その他

      • generate : AITに入力するデータを生成するAITに使います。

    • [必須]target: AITの評価対象によって”dataset”か”model”のいずれかを選択します。

    • [任意]task: AITの評価対象によって”dataset”か”model”のいずれかを選択します。

    • [任意]format: AITが取り扱うデータの形式

    • [任意]measure: AITで取り扱う品質特性

  • 制限
    • 名称は50文字以下にする必要があります

    • 利用可能な文字は、半角英数字 と _ です

Parameters:

name (str) –

set_ait_quality(quality: str) None

quality項目を設定する。 QualityはURLで表現されます。

Set the quality item. Quality is expressed as a URL.

Parameters:

quality (str) –

set_ait_source_repository(source_repository: str) None

source_repository項目を設定する。

Set the source_repository item.

Parameters:

source_repository (str) –

set_ait_version(version: str) None

version項目を設定する。

バージョンはメジャーバージョンとマイナーバージョンの組み合わせを推奨しますが、数値である必要はなく、 それぞれが管理可能な体系としてください。

Set the version item.

Versions should be a combination of major and minor versions, but they do not have to be numeric. Each should be a manageable system.

  • {major_version}_{minor_version}

Parameters:

version (str) –

write() str

設定した各項目をjsonファイルに出力する。 書き込む前に必須チェック、フォーマットチェックを実施する。

Output each set item to a json file. Before writing, perform the required checks and format checks.

Raises:

ValueError – 必須項目が存在しないときに発生する This occurs when a required field does not exist

Returns:

出力先ファイルパス

Output file path

ait_sdk.common.files.ait_output module

class ait_sdk.common.files.ait_output.AITOutput(ait_manifest: AITManifest)

Bases: object

AITが出力するファイル「ait.output.json」を管理するクラスです。

This class manages the file “ait.output.json”, which is output by AIT.

add_downloads(name: str, path: str) None

downloadsを追加します。

Add downloads.

Parameters:
  • name (str) –

    名前を指定します。

    Specify a name.

  • path (str) –

    パスを指定します。

    Specify a path.

add_measure(name: str, value: str) None

measureを追加します。

Add measure.

Parameters:
  • name (str) –

    名前を指定します。

    Specify a name.

  • value (str) –

    値を指定します。

    Specify a value.

add_resource(name: str, path: str) None

resourceを追加します。

Add resource.

Parameters:
  • name (str) –

    名前を指定します。

    Specify a name.

  • path (str) –

    パスを指定します。

    Specify a path.

write_output(output_file_path: str, start_dt: datetime, stop_dt: datetime, ex: Exception = None, error_detail: str = None) None

ait.output.jsonを出力します。

Output ait.output.json.

Parameters:
  • output_file_path (str) –

    出力先パスを指定します。

    Specify the output path.

  • start_dt (datetime) –

    処理開始日時を指定します。

    Specify the date and time to start processing.

  • stop_dt (datetime) –

    処理終了日時を指定します。

    Specify the date and time when the process ends.

  • ex (exception) –

    例外を指定します。

    Specify an exception.

  • error_detail (str) –

    エラー詳細情報を指定します。

    Specify detailed error information.

ait_sdk.common.files.ait_requirements_generator module

class ait_sdk.common.files.ait_requirements_generator.AITRequirementsGenerator

Bases: object

requirements.txtを出力するためのクラス。

Class for outputting requirements.txt.

add_package(package_name: str, package_ver: str = '') None

パッケージ情報のリストを作成する。

Create a list of package information.

Parameters:
  • package_name (str) –

    インストールするパッケージ名

    Package name to be installed

  • package_ver (str) –

    インストールするパッケージのバージョン(任意)

    Version of the package to be installed (optional)

create_requirements(base_dir: str) str

pip install パッケージ情報のリストをrequirementsファイルに出力する。

pip install Output the list of package information to the requirements file.

Parameters:

base_dir (str) –

requirements.txtの保存ディレクトリ

Requirements.txt storage directory

Returns:

requirementsファイル保存先フルパス

full path to the requirements file

Module contents