> ## 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.

# Connecter votre application

> Envoyez votre première requête vérifiée via le proxy Model Distillation.

La plupart des applications basées sur la complétion de chat n’ont besoin que d’une nouvelle URL de base, d’une nouvelle clé API et d’un nouveau nom de modèle. La gestion des requêtes et des réponses reste inchangée.

<h2 id="before-you-begin">
  Avant de commencer
</h2>

Vous avez besoin d’une clé API W\&B, d’un projet auquel l’acheminement a été appliqué, ainsi que de l’entity W\&B du projet.

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

    from openai import OpenAI

    client = OpenAI(
        base_url="https://proxy.training.wandb.ai/v1",
        api_key=os.environ["WANDB_API_KEY"],
    )

    response = client.chat.completions.create(
        model="ticket-classifier",
        messages=[
            {"role": "user", "content": "My package arrived damaged. What should I do?"}
        ],
        extra_body={
            "metadata": {
                "wandb.entity": "your-team",
                "wandb.thread_id": "customer-4827",
            }
        },
    )

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

  <Tab title="JavaScript">
    ```javascript theme={"system"}
    import OpenAI from "openai";

    const client = new OpenAI({
      baseURL: "https://proxy.training.wandb.ai/v1",
      apiKey: process.env.WANDB_API_KEY,
    });

    const response = await client.chat.completions.create({
      model: "ticket-classifier",
      messages: [
        { role: "user", content: "My package arrived damaged. What should I do?" },
      ],
      metadata: {
        "wandb.entity": "your-team",
        "wandb.thread_id": "customer-4827",
      },
    });

    console.log(response.choices[0].message.content);
    ```
  </Tab>

  <Tab title="cURL">
    ```bash theme={"system"}
    curl https://proxy.training.wandb.ai/v1/chat/completions \
      -H "Authorization: Bearer $WANDB_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{
        "model": "ticket-classifier",
        "messages": [
          {"role": "user", "content": "My package arrived damaged. What should I do?"}
        ],
        "metadata": {
          "wandb.entity": "your-team",
          "wandb.thread_id": "customer-4827"
        }
      }'
    ```
  </Tab>
</Tabs>

N’omettez `wandb.entity` que si le projet appartient à l’entity par défaut de la clé API.

<h2 id="verify-the-integration">
  Vérifier l’intégration
</h2>

Après avoir envoyé une requête, revenez à l’aperçu du projet. Vérifiez que :

* le nombre de requêtes a augmenté ;
* la requête a bien été traitée par le modèle attendu ;
* l’entrée et la réponse enregistrées semblent correctes.

Si le proxy indique que le projet n’existe pas dans un entity personnel, ajoutez le nom de l’équipe dans `metadata["wandb.entity"]`.

<h2 id="preserve-conversation-identity">
  Préserver l’identité de la conversation
</h2>

Utilisez le même `wandb.thread_id` pour toutes les requêtes d’une même conversation. Ainsi, une conversation reste associée au même modèle pendant un déploiement progressif, et les exemples associés restent regroupés lors de la préparation des données.

<Card title="Détails sur les complétions de chat" href="/fr/model-distillation/proxy/chat-completions" arrow="true">
  En savoir plus sur le streaming, les outils, les sorties structurées, les paramètres du fournisseur et l’ordre de priorité des requêtes.
</Card>
