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

# Utiliser Promptfoo avec CometAPI

> Utilisez ce guide pour configurer Promptfoo avec CometAPI en définissant l’URL de base, la clé API, ainsi que les options de modèle ou de fournisseur.

[Promptfoo](https://www.promptfoo.dev/) est un framework pour l’évaluation de prompt, les tests de régression et le red teaming IA. Promptfoo inclut un fournisseur `cometapi` qui appelle CometAPI via des endpoints compatibles OpenAI.

## Prérequis

* Node.js 18+
* Promptfoo installé localement ou exécuté via `npx`
* Un compte CometAPI avec une clé API active — [obtenez la vôtre dans le dashboard](https://www.cometapi.com/console/token)
* Un model ID depuis la [page des modèles CometAPI](/fr/overview/models)

## Configurer l’intégration

<Steps>
  <Step title="Définissez votre clé API CometAPI">
    Définissez `COMETAPI_KEY` avant d’exécuter les évaluations:

    ```bash theme={null}
    read -rsp "CometAPI API key: " COMETAPI_KEY
    printf '\n'
    export COMETAPI_KEY
    ```
  </Step>

  <Step title="Choisissez un format de fournisseur">
    Promptfoo utilise le format d’ID de fournisseur suivant pour CometAPI:

    ```yaml theme={null}
    providers:
      - cometapi:<type>:<model>
    ```

    Utilisez ces types de fournisseur:

    | Type         | Cas d’usage                                     |
    | ------------ | ----------------------------------------------- |
    | `chat`       | Chat completions, vision et prompts multimodaux |
    | `completion` | Modèles de complétion de texte                  |
    | `embedding`  | Évaluations d’embeddings de texte               |
    | `image`      | Évaluations de génération d’images              |

    Vous pouvez également utiliser `cometapi:your-model-id` pour le mode chat par défaut.
  </Step>

  <Step title="Exécutez une évaluation CLI">
    La commande suivante exécute une évaluation chat à un seul prompt:

    ```bash theme={null}
    npx promptfoo@latest eval \
      --prompts "Write a concise release note for {{feature}}" \
      --vars feature="a unified API dashboard" \
      -r cometapi:chat:your-model-id
    ```
  </Step>

  <Step title="Créez un fichier de configuration Promptfoo">
    Le fichier `promptfooconfig.yaml` suivant évalue le même prompt avec un modèle CometAPI:

    ```yaml theme={null}
    prompts:
      - "Classify this support request: {{message}}"

    providers:
      - id: cometapi:chat:your-model-id
        config:
          temperature: 0.2
          max_tokens: 256

    tests:
      - vars:
          message: "The API key works locally but fails in production."
        assert:
          - type: contains-any
            value:
              - authentication
              - configuration
    ```

    Exécutez le fichier de configuration avec Promptfoo:

    ```bash theme={null}
    npx promptfoo@latest eval -c promptfooconfig.yaml
    ```
  </Step>
</Steps>

## Exemples de fournisseur

Utilisez un type de fournisseur qui correspond au comportement du modèle que vous souhaitez évaluer:

```yaml theme={null}
providers:
  - cometapi:chat:your-model-id
  - cometapi:completion:your-model-id
  - cometapi:embedding:your-model-id
  - cometapi:image:your-model-id
```

Pour les tests multimodaux, conservez le type de fournisseur `chat` et transmettez les variables d’image via les variables de test Promptfoo.

## Dépannage

<AccordionGroup>
  <Accordion title="Promptfoo ne trouve pas la clé API">
    Vérifiez que `COMETAPI_KEY` est exportée dans la même session shell que celle qui exécute `promptfoo eval`.
  </Accordion>

  <Accordion title="Le type de fournisseur ne correspond pas au modèle">
    Utilisez `chat` pour les modèles conversationnels et multimodaux, `embedding` pour les modèles d’embedding, et `image` pour les modèles de génération d’images.
  </Accordion>

  <Accordion title="Le model ID échoue">
    Remplacez `your-model-id` par un model ID exact depuis la [page des modèles CometAPI](/fr/overview/models).
  </Accordion>
</AccordionGroup>

## Ressources associées

* [Provider Promptfoo CometAPI](https://www.promptfoo.dev/docs/providers/cometapi/)
* [Démarrage rapide de CometAPI](/fr/overview/quick-start)
* [Page des modèles CometAPI](/fr/overview/models)

<script type="application/ld+json">
  {`
    {
    "@context": "https://schema.org",
    "@graph": [
      {
        "@type": "HowTo",
        "@id": "https://apidoc.cometapi.com/integrations/promptfoo#howto",
        "name": "Utiliser Promptfoo avec CometAPI",
        "description": "Utilisez ce guide pour configurer Promptfoo avec CometAPI en définissant l'URL de base, la clé API et les options de modèle ou de fournisseur.",
        "step": [
          {
            "@type": "HowToStep",
            "@id": "https://apidoc.cometapi.com/integrations/promptfoo#step-1",
            "position": 1,
            "name": "Définir votre clé API CometAPI",
            "text": "Stockez votre clé API CometAPI dans la variable d'environnement ou le champ de paramètres utilisé par l'intégration."
          },
          {
            "@type": "HowToStep",
            "@id": "https://apidoc.cometapi.com/integrations/promptfoo#step-2",
            "position": 2,
            "name": "Choisir un format de fournisseur",
            "text": "Effectuez l'étape Choisir un format de fournisseur dans le guide Utiliser Promptfoo avec CometAPI."
          },
          {
            "@type": "HowToStep",
            "@id": "https://apidoc.cometapi.com/integrations/promptfoo#step-3",
            "position": 3,
            "name": "Exécuter une évaluation CLI",
            "text": "Effectuez l'étape Exécuter une évaluation CLI dans le guide Utiliser Promptfoo avec CometAPI."
          },
          {
            "@type": "HowToStep",
            "@id": "https://apidoc.cometapi.com/integrations/promptfoo#step-4",
            "position": 4,
            "name": "Créer un fichier de configuration Promptfoo",
            "text": "Effectuez l'étape Créer un fichier de configuration Promptfoo dans le guide Utiliser Promptfoo avec CometAPI."
          }
        ]
      },
      {
        "@type": "BreadcrumbList",
        "itemListElement": [
          {
            "@type": "ListItem",
            "position": 1,
            "name": "Documentation CometAPI",
            "item": "https://apidoc.cometapi.com/"
          },
          {
            "@type": "ListItem",
            "position": 2,
            "name": "Intégrations",
            "item": "https://apidoc.cometapi.com/integrations"
          },
          {
            "@type": "ListItem",
            "position": 3,
            "name": "Utiliser Promptfoo avec CometAPI",
            "item": "https://apidoc.cometapi.com/integrations/promptfoo"
          }
        ]
      }
    ]
    }
    `}
</script>
