跳转到主要内容

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.

Promptfoo 是一个用于 Prompt 评估、回归测试和 AI 红队测试的框架。Promptfoo 包含一个 cometapi provider,可通过兼容 OpenAI 的端点调用 CometAPI。

前置条件

配置集成

1

设置你的 CometAPI API key

在运行评估之前,先设置 COMETAPI_KEY
read -rsp "CometAPI API key: " COMETAPI_KEY
printf '\n'
export COMETAPI_KEY
2

选择 provider 格式

Promptfoo 对 CometAPI 使用以下 provider ID 格式:
providers:
  - cometapi:<type>:<model>
可使用以下 provider 类型:
TypeUse case
chat聊天补全、视觉和多模态(Multimodal)Prompt
completion文本补全模型
embedding文本嵌入评估
image图像生成评估
你也可以使用 cometapi:your-model-id 作为默认聊天模式。
3

运行 CLI 评估

以下命令会运行一个单 Prompt 的聊天评估:
npx promptfoo@latest eval \
  --prompts "Write a concise release note for {{feature}}" \
  --vars feature="a unified API dashboard" \
  -r cometapi:chat:your-model-id
4

创建 Promptfoo 配置文件

以下 promptfooconfig.yaml 会针对一个 CometAPI 模型评估同一个 Prompt:
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
使用 Promptfoo 运行该配置文件:
npx promptfoo@latest eval -c promptfooconfig.yaml

Provider 示例

使用与你想评估的模型行为相匹配的 provider 类型:
providers:
  - cometapi:chat:your-model-id
  - cometapi:completion:your-model-id
  - cometapi:embedding:your-model-id
  - cometapi:image:your-model-id
对于多模态测试,请保持使用 chat provider 类型,并通过 Promptfoo 测试变量传递图像变量。

故障排查

确认在运行 promptfoo eval 的同一个 shell 会话中已导出 COMETAPI_KEY
对话式和多模态模型使用 chat,嵌入模型使用 embedding,图像生成模型使用 image
your-model-id 替换为来自 CometAPI Models page 的精确 model ID。

相关资源