mcpField
E
experiment

experiment

github.com/allenaiデータ・データベース4355 回インストール今日更新
リポジトリ

experiment について

Asta の実験スキルは、計算研究の課題に応じたソフトウェアを作成・実行し、結果を報告します。実験データを受け取り、分析レポートを作成することもできます。

主な機能

  1. 01ソフトウェア実験の実行
  2. 02提供された実験データの分析
  3. 03研究レポートの生成
  4. 04環境変数によるモデル設定

活用シーン

  1. 01ソフトウェアで研究課題を検証
  2. 02外部実験のデータを分析
  3. 03タスクにおけるモデルの挙動を比較

インストール

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

$npx skills add https://github.com/allenai/asta-plugins --skill experiment

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

詳細

実験の実行

計算実験を実行します。ソフトウェアを使って回答できる研究上の問いを受け取ると、このスキルは必要なソフトウェアを作成して実行し、結果のレポートを生成します。

実験自体を Asta が実行していない場合でも、このスキルを使って実験データを分析し、研究レポートを生成できます。その場合、ユーザーは実験データを入力ファイルとして渡すことができ、Asta がそれを分析してレポートを生成します。

環境変数

asta experiment(Panda)は、モデルの選択と認証情報を環境変数から読み取ります。これらは CLI フラグとして公開されていないため、デフォルトを上書きする場合は、スキルを実行する前に設定してください。

モデルの選択:

  • PANDA_LLM — 使用する LLM を選択します(例:Claude または GPT のモデル名)。設定されていない場合は、panda_agent/config.py で定義されているデフォルトが使われます。

プロバイダーの認証情報(PANDA_LLM で選択したモデルに対応するものを設定してください):

  • OPENAI_API_KEY — GPT モデルに必要です。Panda のデフォルト設定でも必要です。
  • ANTHROPIC_API_KEY — Claude モデルの使用に必要です。
  • TOGETHER_API_KEY — Mistral または Llama モデルの使用に必要です。
  • INFERD_TOKEN — OLMo モデルの使用に必要です。

例 — Claude で実験を実行:

export PANDA_LLM="claude-3-5-sonnet-latest"
export ANTHROPIC_API_KEY="..."
asta experiment --task "..." --outputs_dir "$OUTPUTS_DIR" --result_file "$OUTPUTS_DIR/result.json"

サポート対象のモデルと追加の変数については、正式な一覧を asta experiment --help と Panda README で確認してください。

ワークフロー

ユーザーは次のいずれかを行います。

  1. 研究タスク(TASK)と、任意で背景知識(BACKGROUND_KNOWLEDGE)を説明する または
  2. 次の内容を含むファイルのパスを指定する a. タスク(TASK_FILE) b. 背景知識(BACKGROUND_KNOWLEDGE_FILE、任意)
デフォルトの出力先

重要:実験を整理しやすくするため、出力先は必ず .asta/experiment/ 内に指定してください。

  • OUTPUTS_DIR:.asta/experiment/<YYYY-MM-DD-slug>/。ここで:
    • YYYY-MM-DD は現在の日付です
    • slug はタスクから作成する短い説明的な名前です(例:「french-translation」、「gpt4-eval」)
  • RESULT_FILE:<OUTPUTS_DIR>/result.json

ディレクトリ構成の例:

.asta/experiment/
├── 2024-01-15-french-translation/
│   ├── result.json
│   └── [experiment outputs]
└── 2024-01-16-model-comparison/
    ├── result.json
    └── [experiment outputs]

ユーザーは、次のいずれかを指定して出力先を任意で上書きできます。 3. 実験出力用のカスタムディレクトリ(OUTPUTS_DIR) 4. 結果の要約 JSON 用のカスタムパス(RESULT_FILE)

タスクと背景知識

ユーザーがタスクを説明し、背景知識を任意で提供した場合は、次のように実行します。

デフォルトの出力先を使用する場合(推奨):

# Create output directory with date and slug
OUTPUTS_DIR=".asta/experiment/$(date +%Y-%m-%d)-<task-slug>"
mkdir -p "$OUTPUTS_DIR"

asta experiment \
  --task "TASK" \
  --background_knowledge "BACKGROUND_KNOWLEDGE" \
  --force_report \
  --outputs_dir "$OUTPUTS_DIR" \
  --result_file "$OUTPUTS_DIR/result.json"

例:

# Task: Assess GPT-4 translation quality
OUTPUTS_DIR=".asta/experiment/$(date +%Y-%m-%d)-gpt4-french-translation"
mkdir -p "$OUTPUTS_DIR"

asta experiment \
  --task "Perform an experiment to assess how good gpt-4o is at translating into French. Use just 5 test examples." \
  --force_report \
  --outputs_dir "$OUTPUTS_DIR" \
  --result_file "$OUTPUTS_DIR/result.json"

カスタム出力先を使用する場合(ユーザーが指定したとき):

asta experiment \
  --task "TASK" \
  --background_knowledge "BACKGROUND_KNOWLEDGE" \
  --force_report \
  --outputs_dir "/custom/path/experiments/" \
  --result_file "/custom/path/result.json"
タスクと背景知識のファイル

ユーザーがタスクと背景知識を含むファイルを渡した場合:

デフォルトの出力先を使用する場合(推奨):

# Create output directory with date and slug (derived from task filename or content)
OUTPUTS_DIR=".asta/experiment/$(date +%Y-%m-%d)-<task-slug>"
mkdir -p "$OUTPUTS_DIR"

asta experiment \
  --task_file "TASK_FILE" \
  --background_knowledge_file "BACKGROUND_KNOWLEDGE_FILE" \
  --force_report \
  --outputs_dir "$OUTPUTS_DIR" \
  --result_file "$OUTPUTS_DIR/result.json"

例:

# Files: my_project/task.txt, my_project/background_knowledge.txt
OUTPUTS_DIR=".asta/experiment/$(date +%Y-%m-%d)-custom-experiment"
mkdir -p "$OUTPUTS_DIR"

asta experiment \
  --task_file "my_project/task.txt" \
  --background_knowledge_file "my_project/background_knowledge.txt" \
  --force_report \
  --outputs_dir "$OUTPUTS_DIR" \
  --result_file "$OUTPUTS_DIR/result.json"

カスタム出力先を使用する場合(ユーザーが明示的にパスを指定したとき):

asta experiment \
  --task_file "my_project/task.txt" \
  --background_knowledge_file "my_project/background_knowledge.txt" \
  --force_report \
  --outputs_dir "my_project/experiments/" \
  --result_file "my_project/result.json"
注意事項
  • 出力ディレクトリ:実験を実行する前に、mkdir -p を使って .asta/experiment/<YYYY-MM-DD-slug>/ ディレクトリを必ず作成してください。
  • タスクのスラッグ:タスクから短く説明的なスラッグを作成してください(例:「gpt4-translation」、「model-comparison」)。小文字を使い、ハイフンで区切ってください。
  • 結果ファイル:一貫性を保つため、必ず <OUTPUTS_DIR>/result.json に保存してください。
  • 背景知識:任意です。ユーザーから提供されていない場合は省略できます。
  • カスタムパス:ユーザーがカスタム出力先を明示的に指定した場合は、デフォルトの代わりにそのパスを使用してください。
  • 結果は必ずユーザーに返し、出力を保存した場所を伝えてください。

コメント