diff --git a/module_2/README.md b/module_2/README.md index 1f5d823..374794f 100644 --- a/module_2/README.md +++ b/module_2/README.md @@ -36,7 +36,7 @@ Full setup with Slack and Gmail (reads credentials from your shell environment): ```bash docker run -it --rm \ -p 8501:8501 -p 8502:8502 \ - -e ANTHROPIC_API_KEY=$ANTHROPIC_API_KEY \ + -e OPENROUTER_API_KEY=$OPENROUTER_API_KEY \ -e SLACK_BOT_TOKEN=$SLACK_BOT_TOKEN \ -e SLACK_TEAM_ID=$SLACK_TEAM_ID \ -v "$PWD":/workspace \ diff --git a/module_3/README.md b/module_3/README.md index 0ce8a20..8d5660d 100644 --- a/module_3/README.md +++ b/module_3/README.md @@ -46,7 +46,7 @@ docker run -it --rm \ -p 8501:8501 -p 8502:8502 \ -p 6274:6274 -p 3000:3000 \ -p 8001:8001 -p 8002:8002 \ - -e ANTHROPIC_API_KEY=$ANTHROPIC_API_KEY \ + -e OPENROUTER_API_KEY=$OPENROUTER_API_KEY \ -e SLACK_BOT_TOKEN=$SLACK_BOT_TOKEN \ -e SLACK_TEAM_ID=$SLACK_TEAM_ID \ -v "$PWD":/workspace \ diff --git a/module_3/eval/orchestrator.py b/module_3/eval/orchestrator.py index d46e558..3124786 100644 --- a/module_3/eval/orchestrator.py +++ b/module_3/eval/orchestrator.py @@ -2,8 +2,9 @@ """ Real LLM orchestrator for Module 3 eval harness. -Runs a multi-agent pipeline with actual Claude API calls and writes the -transcript JSON + audit log that test_deterministic.py expects. +Runs a multi-agent pipeline with actual LLM calls (Claude models served via +OpenRouter's Anthropic-compatible endpoint) and writes the transcript JSON + +audit log that test_deterministic.py expects. Usage (from module_3/): python3 eval/orchestrator.py [options] @@ -46,7 +47,7 @@ # ── model ──────────────────────────────────────────────────────────────────── -MODEL = "claude-sonnet-4-6" +MODEL = "anthropic/claude-sonnet-4.6" # ── tool grant map (mirrors docs/routing-and-tool-grant-map.json) ───────────── @@ -508,7 +509,10 @@ def run_orchestrator( out_path: str, canary: str | None, ) -> None: - client = anthropic.Anthropic() + client = anthropic.Anthropic( + base_url="https://openrouter.ai/api", + auth_token=os.environ.get("OPENROUTER_API_KEY"), + ) transcript_events: list[dict] = [] audit_entries: list[dict] = []