annotation change_label#

Description#

アノテーションのラベルを一括で変更します。 ただし、作業中状態のタスクに含まれるアノテーションは変更できません。

対象タスクは --task_id または --all_tasks で指定してください。指定方法は --all_tasks を参照してください。 --all_tasks で取得したタスク数が10,000件の取得上限に達した場合、一覧が打ち切られている可能性があるため、変更前に処理を中断します。 その場合は --task_id で対象タスクを絞り込んでください。

警告

変更後のラベルに存在しない属性は削除されます。

Examples#

基本的な使い方#

--annotation_query には、変更対象のアノテーションを検索する条件をJSON形式で指定してください。 --annotation_query のサンプルは、 コマンドラインオプション を参照してください。

変更後のラベルは、 --label_name または --label_id のいずれかで指定してください。 ただし、変更前のラベルと同じ種類である必要があります。

以下のコマンドは、ラベル名(英語)が car であるアノテーションを、ラベル名(英語)が bus であるラベルに変更します。

$ annofabcli annotation change_label --project_id prj1 --all_tasks \
--annotation_query '{"label": "car"}' \
--label_name bus \
--backup backup_dir/

--backup にディレクトリを指定すると、変更対象のタスクのアノテーション情報を、バックアップとしてディレクトリに保存します。 アノテーション情報の復元は、 annotation restore コマンドで実現できます。

注釈

間違えてアノテーションラベルを変更したときに復元できるようにするため、 --backup を指定することを推奨します。

デフォルトでは完了状態のタスクのアノテーションは変更できません。 完了状態のタスクのアノテーションも変更する場合は、 --include_complete_task を指定してください。 ただし、オーナーロールであるユーザーで実行する必要があります。

保留中のタスクは、--include_on_hold_task を指定した場合のみ変更します。 詳細は --include_on_hold_task を参照してください。

Usage Details#

アノテーションのラベルを一括で変更します。ただし、作業中状態のタスクに含まれるアノテーションは変更できません。完了状態のタスクに含まれるアノテーションは、デフォルトでは変更できません。間違えてアノテーションラベルを変更したときに復元できるようにするため、 --backup でバックアップ用のディレクトリを指定することを推奨します。

usage: annofabcli annotation change_label [-h] [--yes]
                                          [--endpoint_url ENDPOINT_URL]
                                          [--annofab_user_id ANNOFAB_USER_ID]
                                          [--annofab_password ANNOFAB_PASSWORD]
                                          [--annofab_pat ANNOFAB_PAT]
                                          [--logdir LOGDIR] [--disable_log]
                                          [--debug] -p PROJECT_ID
                                          (-t TASK_ID [TASK_ID ...] | --all_tasks)
                                          -aq ANNOTATION_QUERY
                                          (--label_name LABEL_NAME | --label_id LABEL_ID)
                                          [--include_on_hold_task]
                                          [--include_complete_task]
                                          [--backup BACKUP]
                                          [--parallelism {2,3,4}]

Named Arguments#

-p, --project_id

対象のプロジェクトのproject_idを指定します。

-t, --task_id

対象のタスクのtask_idを指定します。 file:// を先頭に付けると、task_idの一覧が記載されたファイルを指定できます。 --all_tasks とは同時に指定できません。 ファイルを読み込む場合は、ファイル指定を1個だけ渡してください。直接指定する値や別のファイル指定とは併用できません。

--all_tasks

プロジェクト内の全タスクを対象にします。タスクの状態などによるスキップ条件は適用されます。 --task_id とは同時に指定できません。

-aq, --annotation_query

変更対象のアノテーションを検索する条件をJSON形式で指定します。file:// を先頭に付けると、JSON形式のファイルを指定できます。(ex): {"label": "car"}

--label_name

変更後のラベル名(英語)を指定します。変更前のラベルと同じ種類である必要があります。

--label_id

変更後のラベルIDを指定します。変更前のラベルと同じ種類である必要があります。

--include_on_hold_task

保留中状態のタスクも変更します。未指定の場合は保留中のタスクをスキップします。作業中のタスクは変更しません。

--include_complete_task

完了状態のタスクのアノテーションラベルも変更します。ただし、オーナーロールを持つユーザーでしか実行できません。

--backup

アノテーションのバックアップを保存するディレクトリを指定してください。アノテーションの復元は annotation restore コマンドで実現できます。

--parallelism

Possible choices: 2, 3, 4

並列度。指定しない場合は、逐次的に処理します。指定した場合は、--yes も指定してください。

common options (after the subcommand)#

--yes

処理中に現れる問い合わせに対して、常に yes と回答します。

--endpoint_url

Annofab WebAPIのエンドポイントを指定します。

--annofab_user_id

Annofabにログインする際のユーザーID

--annofab_password

Annofabにログインする際のパスワード

--annofab_pat

Annofabにログインする際のパーソナルアクセストークン

--logdir

ログファイルを保存するディレクトリを指定します。

Default: .log

--disable_log

ログを無効にします。

--debug

HTTPリクエストの内容やレスポンスのステータスコードなど、デバッグ用のログが出力されます。

オーナロールまたはチェッカーロールを持つユーザで実行してください。

終了コード#

終了コードと処理継続の仕様は ラベル・属性の一括変更の終了コード を参照してください。