mcpField
J
jinko-output-set

jinko-output-set

github.com/novainsilicoデータ・データベース4161 回インストール1 週間前に更新
リポジトリ

jinko-output-set について

jinko-output-setは、Jinkō SDKでシンプルおよび高度な出力セットを作成、検証、確認、編集するスキルです。SDKの手順とCLIスクリプトを備えますが、試験やキャリブレーションへの関連付けは行いません。

主な機能

  1. 01シンプル・高度な出力セットの作成
  2. 02数式と設計診断の確認
  3. 03制約・スカラー・目的の段階的編集
  4. 04CLIスクリプトによる確認と変更

活用シーン

  1. 01モデルの出力IDからシンプルな出力セットを作成
  2. 02高度なスコアリング数式の作成と検証
  3. 03既存の出力セットと診断情報の確認

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/novainsilico/jinko-skills --skill jinko-output-set

インストール後、Claude Code で/jinko-output-setを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

agents/
openai.yaml
assets/
advanced_output_set_example.json
evals/
evals.json
references/
advanced-output-set.md
formula-language.md
simple-output-set.md

詳細

Jinkō 出力セット SDK ワークフロー

このスキルは、SDK を通じた出力セットの操作(シンプルおよびアドバンスド出力セットの作成、検証、確認、段階的な編集)に使用します。 トライアルのアタッチメントは jinko-trial に、キャリブレーションのアタッチメントは jinko-calibration-cmaes に、データテーブルは jinko-data-table に保持してください。

前提条件: このスキルには、初期化済みの jinko-sdk 接続と、metadata.requires_sdk の範囲を満たす SDK が必要です。jinko-sdk-setup スキル(../jinko-sdk-setup/SKILL.md)を実行し、チェックに合格してから進めてください。セッションコードは一度しか交換できないため、このスキル独自の SDK プロセスを開始する前に、再度 get_session_code を呼び出してください。そのスキルが見つからない場合は、novainsilico/jinko-skills からインストールしてください。

コアコンセプト

Jinkō では、UI、API、SDK で同じオブジェクトに異なる名称が使われています。

UI の表記API のプロジェクトアイテム型SDK のエントリーポイント
シンプル出力セットMeasureDesignclient.create_simple_output_set(...)、SimpleOutputSet
アドバンスド出力セットScoringDesignclient.create_advanced_output_set(...)、AdvancedOutputSet

アドバンスド出力セットは、3 種類のコンポーネントをまとめます。制約(患者ごとの適格性を表すブール式)、スカラー(シミュレーション出力から導出される数値式)、目的関数(重み付きの範囲ベースのスコアリングルール)です。 スカラーは、生の JSON キー components.measures の下にシリアライズされます。シンプル出力セットの「measures」と混同しないでください。

出力 ID の確認

出力 ID を決して推測しないでください。 シンプル出力セットを作成する前に、jinko-trial と同様に model.time_dependent_ids() を呼び出して、モデルで有効な出力 ID を確認してください。 アドバンスド出力セットの式では、出力 ID または他のスカラー ID を名前で参照します。 スコアリング式の時間値は、モデルの時間単位にかかわらず常に秒です。式では時間単位を指定できないため、科学的な時間は明示的に変換してください。そのため、int(X) と auc(X) には秒の時間要素があるので、スカラーの単位には *s を指定してください。 式の構文が現在もサポートされているか不明な場合は、古い例がそのまま使えると決めつけず、client.validate_scoring_formula(...) で検証してください。 制約、スカラー、目的関数の式、またはコンポーネントフィルターを作成する前に、references/formula-language.md を読んでください。実際の文法(時間集約関数、時間インデックス、アーム参照)と、検証メッセージが記載されています。

シンプル出力セットのワークフロー

model = client.get_model("cm-...")
output_set = client.create_simple_output_set(model, model.time_dependent_ids())
# Equivalently: model.create_simple_output_set([...])

Measures には出力 ID 文字列({"timeseriesId": id} の省略形)、またはカスタム名、起点、時点関数/期間関数を指定する辞書を使用できます。 .content()、.measures、.replace_all_measures()、.add_measures()、.remove_measures()、.update_measure() で編集します。 スキーマ全体については references/simple-output-set.md を参照してください。

アドバンスド出力セットのワークフロー

scoring_design = client.create_advanced_output_set(
    constraints=[{"id": "adults", "constraint": "age >= 18"}],
    scalars=[{"id": "auc", "formula": "auc(Drug)", "unit": "mg/L*s"}],
    objectives=[
        {
            "id": "obj_auc",
            "formula": {
                "target": "auc(Drug)",
                "range": {
                    "narrowRangeLowBound": 8.0,
                    "narrowRangeHighBound": 12.0,
                    "wideRangeLowBound": 5.0,
                    "wideRangeHighBound": 15.0,
                },
            },
            "weight": 1.0,
        }
    ],
    name="PK scoring",
)

scoring_design.components.add_constraint(...)、.add_scalar(...)、.add_objective(...) でコンポーネントを段階的に追加します。各呼び出しで、新しいバージョン付きスナップショットが作成されます。まとめて追加する場合は、最初の呼び出しの前に各コンポーネントを検証し、すべての ID に競合がないことを確認してください。後続のリクエストが失敗した場合は、すでに適用された ID を報告してください。 完全なスキーマ、コンポーネントサービス、生の JSON を使用する方法については references/advanced-output-set.md を参照してください。

検証と診断

制約式と数式は、create() および components.add_*() 内で自動的に検証されます。 検証に失敗すると、常に ValidationError が発生します。show_validation はレポートを出力するかどうかを制御するだけで、例外の発生を抑制するものではありません。

if scoring_design.diagnostics.errors():
    print(scoring_design.diagnostics.errors().explain())

sd.diagnostics はチェーン可能です:.for_kind(...)、.with_severity(...)、.with_code(...)、.for_component(...)、.errors()、.warnings()、.has_errors()、.by_component()、.by_kind()、.by_severity()、.explain()。 過去のスナップショットには sd.diagnostics_at(revision) を使用してください。

検証される内容と、されない内容。 client.validate_scoring_formula(...)/validate_scoring_condition(...) および sd.diagnostics が確認するのは、スコアリング設計を単独で評価した場合のみです。数式の構文、参照された ID が何らかの対象に解決されること、制約/目的関数の形式を確認します。 具体的な試験については把握しません。ここでのすべてのチェックに合格した数式でも、詳細出力セットを試験に紐付けると失敗する場合があります(例:このモデルには存在するものの、試験の単純出力セットにはない測定値を参照している場合や、試験のプロトコルとの単位/時間ウィンドウの不一致がある場合)。単独での検証への合格は試験との互換性に必要ですが、十分ではありません。このスキルのチェックだけを根拠に、詳細出力セットを「試験で使用可能」と報告しないでください。出力セットを具体的な試験に紐付けた後、jinko-trial の試験サニティチェック手順(trial.sanity())を使用してください。

試験/キャリブレーションへの紐付け

このスキルでできるのは出力セットの作成、確認、編集のみです。出力セットの紐付けや実行は行わず、試験との互換性も確認できません(上記を参照)。 試験には jinko-trial を使用します:model.create_trial(simple_output_set=..., advanced_output_set=..., ...) を実行し、起動前に trial.sanity() を実行してください。詳細は jinko-trial の起動前チェックを参照してください。 キャリブレーションの SDK 呼び出しには jinko-calibration-cmaes を使用します(model.create_calibration(simple_output_set=..., advanced_output_set=..., ...))。 キャリブレーションには、少なくとも 1 つの適応度関数のソースが必要です:validForFitnessFunction: True を持つデータテーブル(jinko-data-table を参照)、および/または目的関数を持つ詳細出力セットです。

SDK スクリプト

SDK のインストール後、これらはコンソールスクリプトとして PATH 上で使用でき、以下のように python -m でも実行できます。

  • jinko.cli.create_simple_output_set:デフォルトではドライランを実行し、--apply を指定すると単純出力セットを作成します。
  • jinko.cli.create_advanced_output_set:デフォルトではドライランを実行し、--apply を指定すると詳細出力セットを作成します。
  • jinko.cli.inspect_output_set:既存の単純または詳細出力セットを確認します。
  • jinko.cli.edit_advanced_output_set:既存の詳細出力セットに制約/スカラー/目的関数を追加します。
python -m jinko.cli.create_simple_output_set --model-sid cm-... --output-id Drug
python -m jinko.cli.create_simple_output_set --model-sid cm-... --output-id Drug --folder 2026-07-07-output-sets --create-folder --apply
python -m jinko.cli.create_advanced_output_set --constraint "adults:age >= 18" --scalar "auc:auc(Drug)" --name "PK scoring"
python -m jinko.cli.create_advanced_output_set --from-json skills/jinko-output-set/assets/advanced_output_set_example.json --apply
python -m jinko.cli.inspect_output_set --kind advanced --sid sc-... --diagnostics
python -m jinko.cli.edit_advanced_output_set --sid sc-... --add-objective "obj_auc:auc(Drug):8:12:5:15:1.0" --show-diagnostics --apply

リファレンスの案内

  • 測定値の辞書形式と編集方法については、references/simple-output-set.md を参照してください。
  • 制約/スカラー/目的関数の形式、検証、診断、タグについては、references/advanced-output-set.md を参照してください。
  • 制約/スカラー/目的関数の数式文法(関数、時間インデックス、アーム参照)とその注意点については、references/formula-language.md を参照してください。

コメント