annotation_specs parse_label#

Description#

自然言語で書かれたアノテーションルールやアノテーション仕様の文章から、Annofabに追加するラベルを解析します。 出力されるJSONは、 annofabcli annotation_specs add_labels コマンドの --label_json 引数にそのまま指定できます。

このコマンドは、新規でアノテーション仕様を作成する場合に最初に実行します。

Examples#

基本的な使い方#

rule.md#
歩行者と自転車を矩形で囲ってください。
隠れている場合は、「隠れ」チェックボックスをONにしてください。
$ annofabcli-llm annotation_specs parse_label \
 --annotation_specs_json_file annotation_specs.json \
 --project_type image \
 --annotation_rule @rule.md

既存のannotation specsなしで解析する#

まだAnnofabプロジェクトを作成していない場合でも、ラベル候補のJSONを生成できます。

$ annofabcli-llm annotation_specs parse_label \
 --project_type image \
 --annotation_rule @rule.md
標準出力#
[
  {
    "label_name_en": "pedestrian",
    "label_name_ja": "歩行者",
    "annotation_type": "bounding_box",
    "color": "#FF0000"
  },
  {
    "label_name_en": "bicycle",
    "annotation_type": "bounding_box"
  }
]

Annofabへラベルを追加する#

$ annofabcli-llm annotation_specs parse_label \
 --project_id ${PROJECT_ID} \
 --project_type image \
 --annotation_rule @rule.md \
 --output labels.json

$ annofabcli annotation_specs add_labels \
 --project_id ${PROJECT_ID} \
 --label_json file://labels.json

注釈

解析結果の途中経過は $HOME/.cache/annofab-cli-llm/temp/parse_label_* に出力されます。

Usage Details#

自然言語から追加対象のラベルを解析します。

usage: annofabcli-llm annotation_specs parse_label [-h] [-m MODEL] [--verbose]
                                                   [--yes]
                                                   [--annofab_pat ANNOFAB_PAT]
                                                   [--annotation_specs_json_file ANNOTATION_SPECS_JSON_FILE |
                                                   -p PROJECT_ID]
                                                   --project_type {image,video,3d}
                                                   --annotation_rule ANNOTATION_RULE
                                                   [-o OUTPUT]
                                                   [--no_interactive]

Named Arguments#

--annotation_specs_json_file

annotation specs v3 のJSONファイルのパス

-p, --project_id

AnnofabのプロジェクトID

--project_type

Possible choices: image, video, 3d

プロジェクト種別。取り得る annotation_type を限定するために使用します。

  • image : 画像プロジェクト

  • video : 動画プロジェクト

  • 3d : 3次元プロジェクト

--annotation_rule

ラベル追加に関するアノテーションルールやアノテーション仕様の自然言語。先頭に`@`を指定すると、`@`以降をファイルパスとみなしてファイルの中身を読み込みます。

-o, --output

出力先のファイルパス。指定しない場合は、標準出力に出力されます。

--no_interactive

未解決テキストが存在しても、補足情報の入力を求めずに終了します。

global optional arguments#

-m, --model

使用するLLMのモデルです。使用できるモデルは https://docs.litellm.ai/docs/providers を参照してください。

Default: 'openai/gpt-5.4-mini'

--verbose

詳細なログを出力します。

--yes

確認メッセージに対して常に'yes'と回答したとみなします。確認メッセージが表示されません。

--annofab_pat

AnnofabのPersonal Access Token