hale-api / docs /model-selection-playbook.md
Raunak211006's picture
Deploy HALE API v3.1
cc38116 verified
|
Raw
History Blame Contribute Delete
3.37 kB

Model Selection Playbook

Guidance for choosing models by phase and task type.

No model is required. These are recommendations, not requirements.


Selection by Phase

Planning & Architecture

Recommended capabilities:

  • Extended reasoning / thinking mode
  • Large context window (analyze multiple files)
  • Strong at structured output (specs, plans)

Why: Planning requires understanding full system context and making architectural decisions.

Examples: Models with "thinking" or "reasoning" modes, larger context variants.


Code Implementation

Recommended capabilities:

  • Fast iteration speed
  • Good at code completion
  • Tool/function calling (for verification commands)

Why: Implementation involves many small changes with frequent verification cycles.

Examples: Speed-tier models, code-specialized variants.


Refactoring

Recommended capabilities:

  • Large context window (see before/after)
  • Pattern recognition
  • Consistent style application

Why: Refactoring requires maintaining consistency across large code changes.

Examples: Standard or long-context variants.


Debugging

Recommended capabilities:

  • Extended reasoning (hypothesis generation)
  • Good at reading stack traces
  • Context for error patterns

Why: Debugging requires hypothesis testing and pattern matching.

Examples: Reasoning-focused models.


Code Review

Recommended capabilities:

  • Large context (review full PR diff)
  • Security pattern knowledge
  • Style consistency checking

Why: Review requires seeing both code and context together.

Examples: Long-context variants.


Capability Tiers

Tier Characteristics Best For
Fast Quick responses, lower cost Implementation, iteration
Standard Balanced speed/quality Most tasks
Reasoning Extended thinking, slower Planning, debugging, architecture
Long-context >100k tokens Review, refactoring

Anti-Patterns

❌ Using reasoning models for simple edits β€” Overkill, slow, expensive

❌ Using fast models for architecture β€” Insufficient depth for complex decisions

❌ Ignoring context limits β€” Leads to quality degradation

❌ Forcing a specific model β€” Breaks model-agnosticism


Model Switching Mid-Session

When to switch:

  • Context is getting polluted (approaching 50%)
  • Task type changes significantly (planning β†’ implementation)
  • Current model struggling with task type

How to switch:

  1. Create state snapshot
  2. Update STATE.md with current position
  3. Start fresh session with appropriate model
  4. Load STATE.md to resume

GSD Model-Agnostic Principle

GSD works with any capable LLM. The methodology compensates for model differences through:

  1. Structured plans β€” Reduce ambiguity
  2. Explicit verification β€” Catch errors regardless of model
  3. State persistence β€” Enable model switching
  4. Fresh context β€” Prevent accumulation issues

Choose models based on task needs, not methodology requirements.


See PROJECT_RULES.md for canonical rules. See docs/runbook.md for operational procedures.