{
  "$schema": "https://modelparams.dev/api/v1/schema.json",
  "provider": "cohere",
  "authType": "api_key",
  "model": "command-r-08-2024",
  "params": [
    {
      "path": "max_tokens",
      "label": "Max tokens",
      "description": "Maximum number of output tokens the model may generate.",
      "group": "generation_length",
      "type": "integer",
      "range": {
        "min": 1
      }
    },
    {
      "path": "stop_sequences",
      "label": "Stop sequences",
      "description": "Stops generation when one of these sequences is detected; up to five are allowed.",
      "group": "generation_length",
      "type": "string"
    },
    {
      "path": "temperature",
      "label": "Temperature",
      "description": "Controls randomness. Lower values make outputs more focused; higher values make them more varied.",
      "group": "sampling",
      "type": "number",
      "default": 0.3,
      "range": {
        "min": 0,
        "step": 0.1
      }
    },
    {
      "path": "p",
      "label": "Top P",
      "description": "Controls nucleus sampling by limiting generation to tokens within the selected cumulative probability.",
      "group": "sampling",
      "type": "number",
      "default": 0.75,
      "range": {
        "min": 0.01,
        "max": 0.99,
        "step": 0.01
      }
    },
    {
      "path": "k",
      "label": "Top K",
      "description": "Limits sampling to the K most likely tokens; 0 disables top-k sampling.",
      "group": "sampling",
      "type": "integer",
      "default": 0,
      "range": {
        "min": 0,
        "max": 500
      }
    },
    {
      "path": "frequency_penalty",
      "label": "Frequency penalty",
      "description": "Penalizes tokens proportional to how often they have already appeared to reduce repetition.",
      "group": "sampling",
      "type": "number",
      "default": 0,
      "range": {
        "min": 0,
        "max": 1,
        "step": 0.1
      }
    },
    {
      "path": "presence_penalty",
      "label": "Presence penalty",
      "description": "Penalizes tokens that have already appeared to encourage a wider variety of content.",
      "group": "sampling",
      "type": "number",
      "default": 0,
      "range": {
        "min": 0,
        "max": 1,
        "step": 0.1
      }
    },
    {
      "path": "seed",
      "label": "Seed",
      "description": "Seed used for best-effort deterministic sampling when reproducible outputs are desired.",
      "group": "sampling",
      "type": "integer"
    },
    {
      "path": "response_format.type",
      "label": "Response format",
      "description": "Controls whether the model returns normal text or JSON object output.",
      "group": "output_format",
      "type": "enum",
      "default": "text",
      "values": [
        "text",
        "json_object"
      ]
    },
    {
      "path": "logprobs",
      "label": "Log probabilities",
      "description": "Controls whether the response includes log probabilities for the generated tokens.",
      "group": "observability",
      "type": "boolean",
      "default": false
    },
    {
      "path": "safety_mode",
      "label": "Safety mode",
      "description": "Controls Cohere's built-in safety instructions applied to the generation.",
      "group": "provider_metadata",
      "type": "enum",
      "default": "CONTEXTUAL",
      "values": [
        "CONTEXTUAL",
        "STRICT",
        "OFF"
      ]
    }
  ]
}
