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

# Usa Promptfoo con CometAPI

> Usa esta guía para configurar Promptfoo con CometAPI estableciendo la URL base, la clave API y las opciones de model o provider.

[Promptfoo](https://www.promptfoo.dev/) es un framework para la evaluación de prompt, las pruebas de regresión y el red teaming de IA. Promptfoo incluye un provider `cometapi` que llama a CometAPI a través de endpoints compatibles con OpenAI.

## Requisitos previos

* Node.js 18+
* Promptfoo instalado localmente o ejecutado mediante `npx`
* Una cuenta de CometAPI con una clave API activa — [obtén la tuya en el dashboard](https://www.cometapi.com/console/token)
* Un model ID de la [página de modelos de CometAPI](/es/overview/models)

## Configura la integración

<Steps>
  <Step title="Configura tu clave API de CometAPI">
    Configura `COMETAPI_KEY` antes de ejecutar evaluaciones:

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

  <Step title="Elige un formato de provider">
    Promptfoo usa el siguiente formato de ID de provider para CometAPI:

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

    Usa estos tipos de provider:

    | Type         | Use case                                        |
    | ------------ | ----------------------------------------------- |
    | `chat`       | Chat completions, visión y prompts multimodales |
    | `completion` | Modelos de finalización de texto                |
    | `embedding`  | Evaluaciones de embedding de texto              |
    | `image`      | Evaluaciones de generación de imágenes          |

    También puedes usar `cometapi:your-model-id` para el modo chat predeterminado.
  </Step>

  <Step title="Ejecuta una evaluación desde la CLI">
    El siguiente comando ejecuta una evaluación de chat de un solo 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="Crea un archivo de configuración de Promptfoo">
    El siguiente `promptfooconfig.yaml` evalúa el mismo prompt con un modelo de 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
    ```

    Ejecuta el archivo de configuración con Promptfoo:

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

## Ejemplos de provider

Usa un tipo de provider que coincida con el comportamiento del modelo que quieres evaluar:

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

Para pruebas multimodales, mantén el tipo de provider `chat` y pasa variables de imagen mediante las variables de prueba de Promptfoo.

## Solución de problemas

<AccordionGroup>
  <Accordion title="Promptfoo no puede encontrar la clave API">
    Confirma que `COMETAPI_KEY` esté exportada en la misma sesión de shell que ejecuta `promptfoo eval`.
  </Accordion>

  <Accordion title="El tipo de provider no coincide con el modelo">
    Usa `chat` para modelos conversacionales y multimodales, `embedding` para modelos de embedding, y `image` para modelos de generación de imágenes.
  </Accordion>

  <Accordion title="El model ID falla">
    Reemplaza `your-model-id` por un model ID exacto de la [página de modelos de CometAPI](/es/overview/models).
  </Accordion>
</AccordionGroup>

## Recursos relacionados

* [Proveedor de CometAPI para Promptfoo](https://www.promptfoo.dev/docs/providers/cometapi/)
* [Inicio rápido de CometAPI](/es/overview/quick-start)
* [Página de Models de CometAPI](/es/overview/models)

<script type="application/ld+json">
  {`
    {
    "@context": "https://schema.org",
    "@graph": [
      {
        "@type": "HowTo",
        "@id": "https://apidoc.cometapi.com/integrations/promptfoo#howto",
        "name": "Usar Promptfoo con CometAPI",
        "description": "Usa esta guía para configurar Promptfoo con CometAPI estableciendo la URL base, la clave API y las opciones de model o provider.",
        "step": [
          {
            "@type": "HowToStep",
            "@id": "https://apidoc.cometapi.com/integrations/promptfoo#step-1",
            "position": 1,
            "name": "Configura tu clave API de CometAPI",
            "text": "Guarda tu clave API de CometAPI en la variable de entorno o en el campo de configuración utilizado por la integración."
          },
          {
            "@type": "HowToStep",
            "@id": "https://apidoc.cometapi.com/integrations/promptfoo#step-2",
            "position": 2,
            "name": "Elige un formato de provider",
            "text": "Completa el paso Elige un formato de provider en la guía Usar Promptfoo con CometAPI."
          },
          {
            "@type": "HowToStep",
            "@id": "https://apidoc.cometapi.com/integrations/promptfoo#step-3",
            "position": 3,
            "name": "Ejecuta una evaluación de CLI",
            "text": "Completa el paso Ejecuta una evaluación de CLI en la guía Usar Promptfoo con CometAPI."
          },
          {
            "@type": "HowToStep",
            "@id": "https://apidoc.cometapi.com/integrations/promptfoo#step-4",
            "position": 4,
            "name": "Crea un archivo de configuración de Promptfoo",
            "text": "Completa el paso Crea un archivo de configuración de Promptfoo en la guía Usar Promptfoo con CometAPI."
          }
        ]
      },
      {
        "@type": "BreadcrumbList",
        "itemListElement": [
          {
            "@type": "ListItem",
            "position": 1,
            "name": "Documentación de CometAPI",
            "item": "https://apidoc.cometapi.com/"
          },
          {
            "@type": "ListItem",
            "position": 2,
            "name": "Integraciones",
            "item": "https://apidoc.cometapi.com/integrations"
          },
          {
            "@type": "ListItem",
            "position": 3,
            "name": "Usar Promptfoo con CometAPI",
            "item": "https://apidoc.cometapi.com/integrations/promptfoo"
          }
        ]
      }
    ]
    }
    `}
</script>
