ジョブの操作

ジョブの問い合わせ

ジョブサマリーのリストをプログラムで取得するには、get_job_summaries() を使用します。

import qai_hub as hub

job_summaries = hub.get_job_summaries(limit=10)
print(job_summaries)

UIから特定のジョブID( j で始まるID、例:jvgdwk7z5) を指定すると、get_job() を使用してプログラムでジョブをクエリできます。

job = hub.get_job("jvgdwk7z5")
print(job)

プロファイルジョブ

プロファイルジョブの結果は、次のように ProfileJob を使用してプログラムで取得できます:

profile = job.download_profile()
print(profile)

印刷された辞書の出力は次のようになります:

{
    'estimated_inference_time': 2997,
    'estimated_inference_peak_memory': 69177344,
    'first_load_time': 2162619,
    'first_load_peak_memory': 83742720,
    'warm_load_time': 123904,
    'warm_load_peak_memory': 73179136,
    'compile_time': 0,
    'compile_peak_memory': 0,
    'compile_memory_increase_range': None,
    'compile_memory_peak_range': None,
    'first_load_memory_increase_range': (0, 0),
    'first_load_memory_peak_range': (26226688, 31730736),
    'warm_load_memory_increase_range': (0, 10580480),
    'warm_load_memory_peak_range': (12865536, 37318656),
    'inference_memory_increase_range': (0, 12160),
    'inference_memory_peak_range': (12288, 21276192),
    'all_compile_times': [],
    'all_first_load_times': [2162619],
    'all_warm_load_times': [123904],
    'all_inference_times': [9130, .... ]
}

メモリはバイト単位で、時間はマイクロ秒単位で表されます。レイテンシをミリ秒で取得するには:

latency_ms = profile["execution_summary"]["execution_time"] / 1000

ジョブの共有

デフォルトでは、すべてのジョブはジョブを作成したユーザーのみがアクセスできます。ジョブは次の方法で特定のアカウントとプログラムで共有することもできます:

job.modify_sharing(add_emails=['name@company.com'])

特定のアカウントからの権限を取り消すこともできます:

job.modify_sharing(delete_emails=['name@company.com'])