Does this model (mistralai/Ministral-3-14B-Reasoning-2512) support tool calls? I used the default system prompt provide and the answer looks weird

#6
by sookinoby - opened
{
  "model": "mistral",
  "messages": [
    {
      "role": "system",
      "content": "HOW YOU SHOULD THINK AND ANSWER: First draft your thinking process (inner monologue) until you arrive at a response. Format your response using Markdown. Your thinking process must follow the template below:[THINK]Your thoughts or draft, like working through an exercise on scratch paper. Be as casual and as long as you want until you are confident to generate the response to the user.[/THINK]Here, provide a self-contained response. When you need to search for information, use the retrieve tool."
    },
    {
      "role": "user",
      "content": "How to query variuos state of scheduler?"
    }
  ],
  "tools": [
    {
      "type": "function",
      "function": {
        "name": "retrieve",
        "description": "Search documentation for relevant information",
        "parameters": {
          "type": "object",
          "properties": {
            "search_query": {
              "type": "string",
              "description": "The search query"
            }
          },
          "required": ["search_query"]
        }
      }
    }
  ],
  "temperature": 0.7,
  "max_tokens": 4096,
  "stream": false
}

and response is

{
    "id": "chatcmpl-be6b5ec7e79167d3",
    "object": "chat.completion",
    "created": 1765852245,
    "model": "mistral",
    "choices": [
        {
            "index": 0,
            "message": {
                "role": "assistant",
                "content": null,
                "refusal": null,
                "annotations": null,
                "audio": null,
                "function_call": null,
                "tool_calls": [],
                "reasoning": "Okay, the user wants to know how to query various states of a scheduler. Since the term \"scheduler\" can refer to different things depending on the context (e.g., task schedulers, job schedulers, or system schedulers), I need to clarify what kind of scheduler they are referring to. However, since they didn't specify, I'll assume they're referring to a general-purpose or system-level scheduler, like those in operating systems or task management systems.\n\nBut, to be thorough, I should consider if they might be referring to a specific scheduler, such as one in a software framework or a cloud environment (e.g., Kubernetes, Apache Airflow, or similar). Since the question is a bit vague, I'll approach it by first thinking about a general scheduler and then see if I need to narrow it down.\n\n### General Scheduler States\nA scheduler typically manages tasks or jobs, and its states might include:\n1. **Running**: Tasks that are currently executing.\n2. **Pending**: Tasks that are waiting to be scheduled or executed.\n3. **Completed**: Tasks that have finished execution, whether successfully or with errors.\n4. **Failed**: Tasks that failed during execution.\n5. **Queued**: Tasks that are waiting in a queue to be processed.\n6. **Paused/Suspended**: Tasks that are temporarily stopped.\n7. **Cancelled**: Tasks that were manually cancelled before or during execution.\n\nBut to provide a concrete answer, I need to know:\n- Is this a system-level scheduler (like in an OS)?\n- Is it a job scheduler (like in a workflow management system)?\n- Is it a specific tool or platform (e.g., Kubernetes, Airflow, Jenkins)?\n\nSince the user didn't specify, I'll assume they're referring to a job or task scheduler, as these are more likely to be queried for their states. For example, in tools like Kubernetes, Airflow, or even cron jobs, querying the state of schedulers or tasks is a common operation.\n\n### Example: Kubernetes Scheduler\nIf they're referring to the Kubernetes scheduler, the states might include:\n- Pending pods, running pods, completed pods, etc.\n\n### Example: Apache Airflow\nIn Apache Airflow, the scheduler manages DAG (Directed Acyclic Graph) runs, and you can query tasks by their state (e.g., `running`, `success`, `failed`, `queued`).\n\n### Querying States\nThe way to query states depends on the system:\n1. **Command Line Tools**: Most schedulers provide CLI commands to query states. For example, in Kubernetes, you might use `kubectl get pods` to see the state of pods, which are managed by the scheduler.\n2. **APIs**: Many systems provide REST APIs to query scheduler states. For example, Airflow has a REST API to interact with tasks and DAGs.\n3. **UI/Dashboards**: Some systems have web interfaces where you can view the states of tasks or jobs.\n4. **Logs**: Scheduler states can also be queried from logs, especially for debugging purposes.\n\n### Next Steps\nSince the user's question is vague, I should ask for clarification. But if I were to provide a general answer, it might look something like this:\n\nTo query the various states of a scheduler, you typically use the tools or APIs provided by the scheduler system. For example:\n- In Kubernetes, you can use `kubectl` commands to see the state of pods or jobs.\n  Example:\n  ```bash\n  kubectl get pods\n  kubectl get jobs\n  ```\n  These commands will show you the state of pods (e.g., Pending, Running, Completed, Failed).\n\n- In Apache Airflow, you can use the Airflow CLI or the Airflow web UI to query task states. For example, to list running tasks:\n  ```bash\n  airflow tasks list --state running\n  ```\n\nIf you're referring to a specific scheduler, please let me know which one, and I can provide more tailored instructions.\n\nBut before I proceed, I should check if there's any documentation or common practices for querying scheduler states. Maybe the user is referring to a specific system, and I can retrieve relevant information.\n\nLet me think if I can retrieve some general documentation about querying scheduler states. I'll search for something like \"query scheduler states\" or \"how to check scheduler status in [common tools]\".\n\nI'll start by searching for documentation related to querying scheduler states in common systems like Kubernetes, Airflow, or Jenkins. If that doesn't yield enough results, I'll ask the user for clarification.\n\n### Searching for Documentation\nI'll use the retrieve tool to search for documentation about querying scheduler states. My search query will be something like \"query scheduler states documentation\" or \"how to check scheduler status in Kubernetes/Airflow/Jenkins\".\n\nLet me try a general search first:\n- \"how to query scheduler states\"\n\nBut to make it more specific, I can try:\n- \"query scheduler states in Kubernetes\"\n- \"query scheduler states in Apache Airflow\"\n- \"query scheduler states in Jenkins\"\n\nBut since I don't know which one they're referring to, I'll start with a general query and see what comes up.\n\nLet me try searching for \"query scheduler states documentation\". If that doesn't give enough results, I'll narrow it down.\n\nBut before I do that, I should ask the user for clarification to avoid providing irrelevant information. However, since the user might expect an immediate response, I can provide a general answer and then offer to refine it based on their feedback.\n\n### Drafting the Response\nHere's how I might structure the response:\n\n---\n\nTo query the various states of a scheduler, the approach depends on the specific scheduler or system you're using. Below are examples for some common scheduler systems:\n\n#### 1. Kubernetes Scheduler\nIn Kubernetes, the scheduler is responsible for assigning Pods to nodes. You can query the state of resources managed by the scheduler using `kubectl` commands. For example:\n- To see all pods and their states (e.g., Pending, Running, Completed, Failed):\n  ```bash\n  kubectl get pods\n  ```\n- To see jobs and their states:\n  ```bash\n  kubectl get jobs\n  ```\n- To check the state of a specific pod or job, you can use:\n  ```bash\n  kubectl describe pod <pod-name>\n  kubectl describe job <job-name>\n  ```\n\n#### 2. Apache Airflow\nIn Apache Airflow, the scheduler manages the execution of tasks in Directed Acyclic Graphs (DAGs). You can query task states using the Airflow CLI or the web UI:\n- To list tasks in a specific state (e.g., running, failed, success):\n  ```bash\n  airflow tasks list --state running\n  ```\n- To see the state of a specific DAG run:\n  ```bash\n  airflow dags list\n  airflow dag-runs list --dag-id <dag-id>\n  ```\n\n#### 3. Jenkins\nIn Jenkins, you can query the state of jobs or tasks using the web interface or the Jenkins CLI. For example:\n- To see the state of jobs (e.g., pending, in progress, completed, failed):\n  - Navigate to the Jenkins dashboard and check the job statuses.\n- Using the Jenkins CLI:\n  ```bash\n  java -jar jenkins-cli.jar -s <jenkins-url> list-jobs\n  java -jar jenkins-cli.jar -s <jenkins-url> get-job <job-name>\n  ```\n\n#### General Steps to Query Scheduler States\n1. **Identify the Scheduler System**: Determine if you're using a system like Kubernetes, Airflow, Jenkins, or another tool.\n2. **Use Provided Tools**:\n   - Command-line tools (e.g., `kubectl`, `airflow`, Jenkins CLI).\n   - APIs (REST APIs provided by the system).\n   - Web interfaces or dashboards.\n3. **Look for State Flags**: Commands or API calls often include flags or parameters to filter by state (e.g., `--state running` in Airflow).\n4. **Check Documentation**: Refer to the official documentation of the scheduler system for specific commands or APIs related to querying states.\n\nIf you're referring to a specific scheduler or system, please let me know, and I can provide more detailed instructions. Otherwise, the above examples should cover common use cases.\n\n---\n\nBut before finalizing this, I should check if there's any official or widely used documentation that explains how to query scheduler states in general. Maybe there's a standard way to do this that I'm missing.\n\nLet me try retrieving some documentation related to querying scheduler states.\n\nI'll use the retrieve tool with a search query like \"query scheduler states documentation\". If that doesn't yield enough results, I'll try more specific queries like \"query scheduler states in Kubernetes\" or \"query scheduler states in Airflow\".\n\nLet me proceed with the search.[TOOL_CALLS]retrieve{\"search_query\": \"query scheduler states documentation\"}",
                "reasoning_content": "Okay, the user wants to know how to query various states of a scheduler. Since the term \"scheduler\" can refer to different things depending on the context (e.g., task schedulers, job schedulers, or system schedulers), I need to clarify what kind of scheduler they are referring to. However, since they didn't specify, I'll assume they're referring to a general-purpose or system-level scheduler, like those in operating systems or task management systems.\n\nBut, to be thorough, I should consider if they might be referring to a specific scheduler, such as one in a software framework or a cloud environment (e.g., Kubernetes, Apache Airflow, or similar). Since the question is a bit vague, I'll approach it by first thinking about a general scheduler and then see if I need to narrow it down.\n\n### General Scheduler States\nA scheduler typically manages tasks or jobs, and its states might include:\n1. **Running**: Tasks that are currently executing.\n2. **Pending**: Tasks that are waiting to be scheduled or executed.\n3. **Completed**: Tasks that have finished execution, whether successfully or with errors.\n4. **Failed**: Tasks that failed during execution.\n5. **Queued**: Tasks that are waiting in a queue to be processed.\n6. **Paused/Suspended**: Tasks that are temporarily stopped.\n7. **Cancelled**: Tasks that were manually cancelled before or during execution.\n\nBut to provide a concrete answer, I need to know:\n- Is this a system-level scheduler (like in an OS)?\n- Is it a job scheduler (like in a workflow management system)?\n- Is it a specific tool or platform (e.g., Kubernetes, Airflow, Jenkins)?\n\nSince the user didn't specify, I'll assume they're referring to a job or task scheduler, as these are more likely to be queried for their states. For example, in tools like Kubernetes, Airflow, or even cron jobs, querying the state of schedulers or tasks is a common operation.\n\n### Example: Kubernetes Scheduler\nIf they're referring to the Kubernetes scheduler, the states might include:\n- Pending pods, running pods, completed pods, etc.\n\n### Example: Apache Airflow\nIn Apache Airflow, the scheduler manages DAG (Directed Acyclic Graph) runs, and you can query tasks by their state (e.g., `running`, `success`, `failed`, `queued`).\n\n### Querying States\nThe way to query states depends on the system:\n1. **Command Line Tools**: Most schedulers provide CLI commands to query states. For example, in Kubernetes, you might use `kubectl get pods` to see the state of pods, which are managed by the scheduler.\n2. **APIs**: Many systems provide REST APIs to query scheduler states. For example, Airflow has a REST API to interact with tasks and DAGs.\n3. **UI/Dashboards**: Some systems have web interfaces where you can view the states of tasks or jobs.\n4. **Logs**: Scheduler states can also be queried from logs, especially for debugging purposes.\n\n### Next Steps\nSince the user's question is vague, I should ask for clarification. But if I were to provide a general answer, it might look something like this:\n\nTo query the various states of a scheduler, you typically use the tools or APIs provided by the scheduler system. For example:\n- In Kubernetes, you can use `kubectl` commands to see the state of pods or jobs.\n  Example:\n  ```bash\n  kubectl get pods\n  kubectl get jobs\n  ```\n  These commands will show you the state of pods (e.g., Pending, Running, Completed, Failed).\n\n- In Apache Airflow, you can use the Airflow CLI or the Airflow web UI to query task states. For example, to list running tasks:\n  ```bash\n  airflow tasks list --state running\n  ```\n\nIf you're referring to a specific scheduler, please let me know which one, and I can provide more tailored instructions.\n\nBut before I proceed, I should check if there's any documentation or common practices for querying scheduler states. Maybe the user is referring to a specific system, and I can retrieve relevant information.\n\nLet me think if I can retrieve some general documentation about querying scheduler states. I'll search for something like \"query scheduler states\" or \"how to check scheduler status in [common tools]\".\n\nI'll start by searching for documentation related to querying scheduler states in common systems like Kubernetes, Airflow, or Jenkins. If that doesn't yield enough results, I'll ask the user for clarification.\n\n### Searching for Documentation\nI'll use the retrieve tool to search for documentation about querying scheduler states. My search query will be something like \"query scheduler states documentation\" or \"how to check scheduler status in Kubernetes/Airflow/Jenkins\".\n\nLet me try a general search first:\n- \"how to query scheduler states\"\n\nBut to make it more specific, I can try:\n- \"query scheduler states in Kubernetes\"\n- \"query scheduler states in Apache Airflow\"\n- \"query scheduler states in Jenkins\"\n\nBut since I don't know which one they're referring to, I'll start with a general query and see what comes up.\n\nLet me try searching for \"query scheduler states documentation\". If that doesn't give enough results, I'll narrow it down.\n\nBut before I do that, I should ask the user for clarification to avoid providing irrelevant information. However, since the user might expect an immediate response, I can provide a general answer and then offer to refine it based on their feedback.\n\n### Drafting the Response\nHere's how I might structure the response:\n\n---\n\nTo query the various states of a scheduler, the approach depends on the specific scheduler or system you're using. Below are examples for some common scheduler systems:\n\n#### 1. Kubernetes Scheduler\nIn Kubernetes, the scheduler is responsible for assigning Pods to nodes. You can query the state of resources managed by the scheduler using `kubectl` commands. For example:\n- To see all pods and their states (e.g., Pending, Running, Completed, Failed):\n  ```bash\n  kubectl get pods\n  ```\n- To see jobs and their states:\n  ```bash\n  kubectl get jobs\n  ```\n- To check the state of a specific pod or job, you can use:\n  ```bash\n  kubectl describe pod <pod-name>\n  kubectl describe job <job-name>\n  ```\n\n#### 2. Apache Airflow\nIn Apache Airflow, the scheduler manages the execution of tasks in Directed Acyclic Graphs (DAGs). You can query task states using the Airflow CLI or the web UI:\n- To list tasks in a specific state (e.g., running, failed, success):\n  ```bash\n  airflow tasks list --state running\n  ```\n- To see the state of a specific DAG run:\n  ```bash\n  airflow dags list\n  airflow dag-runs list --dag-id <dag-id>\n  ```\n\n#### 3. Jenkins\nIn Jenkins, you can query the state of jobs or tasks using the web interface or the Jenkins CLI. For example:\n- To see the state of jobs (e.g., pending, in progress, completed, failed):\n  - Navigate to the Jenkins dashboard and check the job statuses.\n- Using the Jenkins CLI:\n  ```bash\n  java -jar jenkins-cli.jar -s <jenkins-url> list-jobs\n  java -jar jenkins-cli.jar -s <jenkins-url> get-job <job-name>\n  ```\n\n#### General Steps to Query Scheduler States\n1. **Identify the Scheduler System**: Determine if you're using a system like Kubernetes, Airflow, Jenkins, or another tool.\n2. **Use Provided Tools**:\n   - Command-line tools (e.g., `kubectl`, `airflow`, Jenkins CLI).\n   - APIs (REST APIs provided by the system).\n   - Web interfaces or dashboards.\n3. **Look for State Flags**: Commands or API calls often include flags or parameters to filter by state (e.g., `--state running` in Airflow).\n4. **Check Documentation**: Refer to the official documentation of the scheduler system for specific commands or APIs related to querying states.\n\nIf you're referring to a specific scheduler or system, please let me know, and I can provide more detailed instructions. Otherwise, the above examples should cover common use cases.\n\n---\n\nBut before finalizing this, I should check if there's any official or widely used documentation that explains how to query scheduler states in general. Maybe there's a standard way to do this that I'm missing.\n\nLet me try retrieving some documentation related to querying scheduler states.\n\nI'll use the retrieve tool with a search query like \"query scheduler states documentation\". If that doesn't yield enough results, I'll try more specific queries like \"query scheduler states in Kubernetes\" or \"query scheduler states in Airflow\".\n\nLet me proceed with the search.[TOOL_CALLS]retrieve{\"search_query\": \"query scheduler states documentation\"}"
            },
            "logprobs": null,
            "finish_reason": "stop",
            "stop_reason": null,
            "token_ids": null
        }
    ],
    "service_tier": null,
    "system_fingerprint": null,
    "usage": {
        "prompt_tokens": 194,
        "total_tokens": 2060,
        "completion_tokens": 1866,
        "prompt_tokens_details": null
    },
    "prompt_logprobs": null,
    "prompt_token_ids": null,
    "kv_transfer_params": null
}

The tool call array is empty. Any reason why this is happening?

Mistral AI_ org

Hey, can you provide the code snippet you used to launch the server and the one to ping it please ?

@juliendenize , We have a system to deploy models, and it requires the this format.

  - python3
  - -m
  - vllm.entrypoints.openai.api_server
  - --model
  - mistralai/Ministral-3-14B-Reasoning-2512
  - --tensor-parallel-size
  - "2"
  - --served-model-name
  - mistral
  - --disable-log-requests
  - --max-model-len
  - "20000"
  - --port
  - "8080"
  - --tokenizer-mode
  - mistral
  - --load-format
  - mistral
  - --tool-call-parser
  - mistral
  - --enable-auto-tool-choice
  - --reasoning-parser
  - mistral
  - --trust-remote-code```

Sign up or log in to comment