comment create_inspection#

Description#

検査コメントを作成します。

comment_id が一致するコメントが既に存在する場合はスキップします。既存コメントを変更する場合は、 comment update_inspection コマンドを使用してください。

注釈

タスクが教師付けフェーズのときは、検査コメントを作成できません。検査コメントを作成するには、タスクのフェーズを「検査」または「受入」にする必要があります。

Examples#

基本的な使い方#

--json に検査コメントの内容をJSON形式で指定すると、検査コメントを作成できます。

comment.json#
[
    {
        "task_id": "task1",
        "input_data_id": "input_data1",
        "comment": "type属性が間違っています。",
        "data": {
            "x": 10,
            "y": 20,
            "_type": "Point"
        }
    },
    {
        "task_id": "task1",
        "input_data_id": "input_data1",
        "comment": "枠がズレています。 #A1",
        "data": {
            "coordinates": [
                {"x": 20, "y": 20},
                {"x": 30, "y": 30}
            ],
            "_type": "Polyline"
        },
        "annotation_id": "foo",
        "phrases": ["A1"],
        "comment_id": "comment1"
    }
]
  • JSONの各要素は1件の検査コメントを表します。

  • 検査コメントのプロパティとして指定できるキーは以下の通りです。

    • task_id:タスクID。必須。

    • input_data_id:入力データID。必須。

    • comment:検査コメントの内容。必須。

    • data:検査コメントの位置や区間。 annotation_id が指定されていない場合は必須。 annotation_id が指定されている場合はオプショナル。省略した場合は、アノテーション情報から自動補完されます。

    • annotation_id:検査コメントに紐づくアノテーションのannotation_id。

    • phrases:参照する定型指摘のIDの配列。

    • comment_id:コメントID。省略した場合は自動的にUUIDv4が生成されます。

$ annofabcli comment create_inspection --project_id prj1 --json file://comment.json

CSV形式で指定する場合#

--csv にCSVファイルを指定すると、検査コメントを作成できます。

comment.csv#
task_id,input_data_id,comment,data,annotation_id,phrases,comment_id
task001,input001,type属性が間違っています。,"{""x"":10,""y"":20,""_type"":""Point""}",,,
task001,input002,枠がズレています。,"{""x"":20,""y"":20,""_type"":""Point""}",anno123,"[""A1""]",

CSVの列は、JSONの各キーに対応しています。

自身が担当者ではないタスクに検査コメントを作成する#

自身が担当者ではないタスクに検査コメントを作成する場合は、 --change_operator_to_me を指定してください。 このオプションを指定すると、タスクの担当者を一時的に自分自身へ変更して作業中状態にした後、検査コメントを作成します。処理後は元の担当者へ戻します。そのため、タスクの最終状態は未着手になります。

$ annofabcli comment create_inspection --project_id prj1 --json file://comment.json --change_operator_to_me

休憩中または保留中のタスクに検査コメントを作成する#

休憩中状態のタスクに検査コメントを作成する場合は、 --include_break_task を指定してください。

保留中状態のタスクに検査コメントを作成する場合は、 --include_on_hold_task を指定してください。コメント作成のためにタスクを作業中状態へ変更するため、処理後は保留中状態に戻りません。担当者を変更しない場合は休憩中状態になり、 --change_operator_to_me により担当者を元へ戻す場合は未着手状態になります。

$ annofabcli comment create_inspection --project_id prj1 --json file://comment.json \
--include_break_task --include_on_hold_task

完了状態のタスクに検査コメントを作成する#

完了状態のタスクに検査コメントを作成する場合は、 --include_complete_task を指定してください。このオプションはオーナーロールを持つユーザだけが指定できます。 受入フェーズが完了状態のタスクは、受入完了状態を取り消してから検査コメントを作成します。差し戻し前に検査コメントを作成する場合などに使用します。

$ annofabcli comment create_inspection --project_id prj1 --json file://comment.json --include_complete_task

並列処理#

以下のコマンドは、並列数4で実行します。

$ annofabcli comment create_inspection --project_id prj1 --json file://comment.json \
--parallelism 4 --yes

Usage Details#

検査コメントを作成します。comment_idがすでに存在する場合、デフォルトではスキップします。

usage: annofabcli comment create_inspection [-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
                                            (--json JSON | --csv CSV)
                                            [--parallelism {2,3,4}]
                                            [--include_break_task]
                                            [--include_on_hold_task]
                                            [--change_operator_to_me]
                                            [--include_complete_task]

Named Arguments#

-p, --project_id

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

--json

作成する検査コメントの内容をJSON形式で指定してください。file:// を先頭に付けると、JSON形式のファイルを指定できます。

各コメントには comment_id を指定することができます。省略した場合は自動的にUUIDv4が生成されます。

(ex) [{"task_id": "task1", "input_data_id": "input_data1", "comment": "type属性が間違っています。", "data": {"x": 10, "y": 20, "_type": "Point"}}]

--csv

作成する検査コメントの内容をCSV形式で指定してください。 CSVには以下の列が必要です:

  • task_id (必須): タスクID

  • input_data_id (必須): 入力データID

  • comment (必須): コメント本文

  • data (任意): コメント位置情報(JSON形式の文字列。例: ``'{"x":10,"y":20,"_type":"Point"}' `` )

  • annotation_id (任意): 紐付けるアノテーションID

  • phrases (任意): 定型指摘IDのリスト(JSON配列形式の文字列。例: ``'["ID1","ID2"]' `` )

  • comment_id (任意): コメントID(省略時はUUIDv4自動生成)

--parallelism

Possible choices: 2, 3, 4

使用するプロセス数(並列度)を指定してください。指定する場合は必ず --yes を指定してください。指定しない場合は、逐次的に処理します。

--include_break_task

休憩中状態のタスクに対しても検査コメントを作成します。未指定の場合は、休憩中状態のタスクはスキップされます。

--include_on_hold_task

保留中状態のタスクに対しても検査コメントを作成します。ただし、検査コメントの作成後は保留中状態でなくなります。未指定の場合は、保留中状態のタスクはスキップされます。

--change_operator_to_me

自身が担当者ではないタスクに検査コメントを作成する場合に指定してください。タスクの担当者を一時的に自分自身に変更し、検査コメントの作成完了後に元へ戻します。

--include_complete_task

オーナーロールで完了状態のタスクに対しても検査コメントを作成します。受入フェーズが完了状態のタスクは、受入を取り消してから検査コメントを作成します。

global optional arguments#

--yes

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

--endpoint_url

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

Default: 'https://annofab.com'

--annofab_user_id

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

--annofab_password

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

--annofab_pat

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

--logdir

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

Default: .log

--disable_log

ログを無効にします。

--debug

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

チェッカーロールまたはオーナロールを持つユーザで実行してください。--include_complete_task を指定した場合は、オーナロールを持つユーザで実行してください。