> ## Documentation Index
> Fetch the complete documentation index at: https://docs.coreweave.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Appeler des outils

> Utilisez l’appel de fonctions et d’outils avec Serverless Inference pour permettre aux modèles d’invoquer des outils et des API externes pendant la génération.

L’appel d’outils étend les capacités d’un modèle en lui permettant d’invoquer des outils dans le cadre de sa réponse. Le modèle peut ainsi récupérer des données en temps réel, déclencher des actions dans votre application ou, plus généralement, aller au-delà de ses données d’entraînement pour répondre à une requête. Serverless Inference prend uniquement en charge l’appel de fonctions.

Pour appeler des fonctions, déclarez-les avec leurs arguments dans votre requête au modèle. Le modèle détermine s’il doit exécuter une fonction pour répondre au prompt et, le cas échéant, fournit les valeurs des arguments.

L’exemple suivant définit une fonction `get_weather` et pose au modèle une question qui nécessite de l’invoquer.

<Tabs>
  <Tab title="Python">
    ```python theme={"system"}
    import openai

    client = openai.OpenAI(
        base_url='https://api.inference.wandb.ai/v1',
        api_key="[YOUR-API-KEY]",  # Créez une clé API sur https://forge.coreweave.com/settings
    )

    response = client.chat.completions.create(
        model="openai/gpt-oss-20b",
        messages=[
            {"role": "user", "content": "What is the weather like in San Francisco? Use Fahrenheit."},
        ],
        tool_choice="auto",
        tools=[
            {
                "type": "function",
                "function": {
                    "name": "get_weather",
                    "description": "Get the current weather in a given location",
                    "parameters": {
                        "type": "object",
                        "properties": {
                            "location": {"type": "string", "description": "City and state, e.g., 'San Francisco, CA'"},
                            "unit": {"type": "string", "enum": ["celsius", "fahrenheit"]},
                        },
                        "required": ["location", "unit"],
                    },
                },
            }
        ],
    )

    print(response.choices[0].message.tool_calls)
    ```
  </Tab>

  <Tab title="Bash">
    ```bash theme={"system"}
    curl https://api.inference.wandb.ai/v1/chat/completions \
      -H "Content-Type: application/json" \
      -H "Authorization: Bearer [YOUR-API-KEY]" \
      -d '{
        "model": "openai/gpt-oss-20b",
            "messages": [
                {"role": "user", "content": "What is the weather like in San Francisco? Use Fahrenheit."},
            ],
            "tool_choice": "auto",
            "tools": [
                {
                    "type": "function",
                    "function": {
                        "name": "get_weather",
                        "description": "Get the current weather in a given location",
                        "parameters": {
                            "type": "object",
                            "properties": {
                                "location": {"type": "string", "description": "City and state, e.g., 'San Francisco, CA'"},
                                "unit": {"type": "string", "enum": ["celsius", "fahrenheit"]},
                            },
                            "required": ["location", "unit"],
                        },
                    },
                }
            ],
      }'
    ```
  </Tab>
</Tabs>
