task create#

Description#

タスクを作成します。

Examples#

CSVファイルを指定する場合#

タスクに含まれる入力データを記載したCSVを指定して、タスクを作成することができます。

CSVのフォーマットは以下の通りです。

  • カンマ区切り

  • ヘッダ行あり

  • 必須列: task_id, input_data_id

以下はCSVのサンプルです。

task.csv#
task_id,input_data_id
task_1,input_data_1
task_1,input_data_2
task_2,input_data_3
task_2,input_data_4
$ annofabcli task create --project_id prj1 --csv task.csv

JSON文字列を指定する場合#

タスクと入力データの関係を表したJSONを指定して、タスクを作成することができます。 JSONのフォーマットは task list --format json の出力と同じです。 ただし、 task create が参照するキーは task_id , input_data_id_list , metadata , user_id のみです。その他のキーは無視されます。

以下は、JSONのサンプルです。

task.json#
[
    {
        "task_id": "task1",
        "input_data_id_list": ["input1", "input2"],
        "metadata": {
            "priority": 1,
            "category": "foo"
        },
        "user_id": "alice"
    },
    {
        "task_id": "task2",
        "input_data_id_list": ["input3", "input4"],
        "metadata": {
            "priority": 2,
            "category": "bar"
        },
        "user_id": "bob"
    }
]

user_id を指定すると、タスクの作成直後に担当者が割り当てられます。

$ annofabcli task create --project_id prj1 \
 --json '[{"task_id":"task1","input_data_id_list":["input1","input2"],"metadata":{"priority":1}}]'

全タスクに共通のメタデータを付与する#

--metadata を指定すると、作成するすべてのタスクに共通のメタデータを付与できます。

$ annofabcli task create --project_id prj1 --csv task.csv \
 --metadata '{"category":"foo","required":true}'

--json の各タスクに metadata を指定した場合、 --metadata と各タスクの metadata がマージされます。 同じキーが存在するときは、各タスクの metadata が優先されます。

全タスクに共通の担当者を割り当てる#

--user_id を指定すると、作成するすべてのタスクに共通の担当者を割り当てることができます。

$ annofabcli task create --project_id prj1 --csv task.csv \
 --user_id alice

--json の各タスクに user_id を指定した場合、 --user_id より各タスクの user_id が優先されます。

Usage Details#

タスクを作成します。

usage: annofabcli task create [-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
                              (--csv CSV | --input_data_id_as_task_id INPUT_DATA_ID_AS_TASK_ID [INPUT_DATA_ID_AS_TASK_ID ...] | --json JSON)
                              [--metadata METADATA] [--user_id USER_ID]
                              [--parallelism {2,3,4}]

Named Arguments#

-p, --project_id

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

--csv

タスクに割り当てる入力データが記載されたCSVファイルのパスを指定してください。CSVのフォーマットは、以下の通りです。

  • ヘッダ行あり, カンマ区切り

  • 必須列: task_id, input_data_id

--input_data_id_as_task_id

タスクを作成する対象のinput_data_idを指定してください。 指定したinput_data_idと同じtask_idのタスクを作成し、各タスクには1件の入力データだけを紐づけます。 file:// を先頭に付けると、input_data_idの一覧が記載されたファイルを指定できます。

--json

タスクに割り当てる入力データをJSON形式で指定してください。 task list --format json と同じ形式です。 task_idinput_data_id_listmetadatauser_id キーを参照し、それ以外のキーは無視します。 (ex) [{"task_id":"task1","input_data_id_list":["input1","input2"]}] file:// を先頭に付けるとjsonファイルを指定できます。

--metadata

タスクに設定する共通の metadata をJSON形式で指定してください。メタデータの値には文字列、数値、真偽値のいずれかを指定してください。 file:// を先頭に付けると、JSON形式のファイルを指定できます。 --json に指定したタスクの metadata と同じキーがある場合は、タスクの metadata が優先されます。

--user_id

作成するタスクの担当者のuser_idを指定してください。--json に指定したタスクの user_id が優先されます。

--parallelism

Possible choices: 2, 3, 4

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

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リクエストの内容やレスポンスのステータスコードなど、デバッグ用のログが出力されます。

オーナロールを持つユーザで実行してください。