# yaml-language-server: $schema=https://promptfoo.dev/config-schema.json
description: Testing xAI Grok models

prompts:
  - What are the key differences between machine learning and deep learning?
  - file://./prompt.yaml

providers:
  # Grok 4.3 (recommended general-purpose model)
  - id: xai:grok-4.3
    config:
      temperature: 0.7
      max_completion_tokens: 4096

  # Grok 4.1 Fast Models (optimized for agentic tool calling)
  - id: xai:grok-4-1-fast-reasoning
    config:
      temperature: 0.7
      max_completion_tokens: 4096
      # Note: Does NOT support: presence_penalty, frequency_penalty, stop, reasoning_effort

  # Grok-4 Fast Models
  - id: xai:grok-4-fast-reasoning
    config:
      temperature: 0.7
      max_completion_tokens: 4096

  # Grok-4 Models
  - id: xai:grok-4
    config:
      temperature: 0.7
      max_completion_tokens: 4096

  # Grok-3 Models
  - xai:grok-3-fast
  - id: xai:grok-3-mini-fast
    config:
      reasoning_effort: high

  # Grok-2 Models
  - xai:grok-2
  - xai:grok-2-vision

defaultTest:
  assert:
    - type: javascript
      value: 'output.length >= 100'

tests:
  - vars:
      problem: 'A baker has 3 boxes of cookies. Each box contains 15 cookies. He sells 12 cookies. How many cookies does he have left?'
