Cloudflare Workers AI
该提供商支持由Cloudflare Workers AI提供的模型,这是一个无服务器的边缘嵌入和推理运行时。
必需的配置
调用Workers AI需要用户提供一个具有足够权限调用Workers AI REST端点的Cloudflare账户ID和API密钥。
export CLOUDFLARE_ACCOUNT_ID=YOUR_ACCOUNT_ID_HERE
export CLOUDFLARE_API_KEY=YOUR_API_KEY_HERE
Cloudflare账户ID不是秘密信息,因此可以安全地将其放入您的promptfoo
配置文件中。Cloudflare API密钥是秘密的,因此虽然您可以在配置中提供它,但强烈不建议这样做,因为它可能导致滥用。请参见下面的安全配置示例:
prompts:
- Tell me a really funny joke about {{topic}}. The joke should contain the word {{topic}}
providers:
- id: cloudflare-ai:chat:@cf/meta/llama-3-8b-instruct
config:
accountId: YOUR_ACCOUNT_ID_HERE
# 不建议在配置文件中保留您的API密钥,因为它是一个秘密值。
# 使用CLOUDFLARE_API_KEY环境变量或在配置中设置apiKeyEnvar值
# apiKey: YOUR_API_KEY_HERE
# apiKeyEnvar: SOME_ENV_HAR_CONTAINING_THE_API_KEY
tests:
- vars:
topic: birds
assert:
- type: icontains
value: '{{topic}}'
除了允许CLOUDFLARE_API_KEY
值的环境变量重定向的apiKeyEnvar
外,还可以使用accountIdEnvar
来类似地重定向CLOUDFLARE_ACCOUNT_ID
的值。
可用模型和模型参数
Cloudflare不断向其库存中添加新模型。请参阅他们的官方模型列表以获取支持的模型列表。不同的模型支持不同的参数,这些参数可以通过在promptfoo
配置文件中将这些参数作为配置对象的附加键来提供。
有关如何提供高级嵌入配置的示例,请参见examples/cloudflare-ai/embedding_configuration.yaml
有关如何提供高级完成/聊天配置的示例,请参见examples/cloudflare-ai/chat_advanced_configuration.yaml
不同的模型支持不同的参数。虽然此提供商努力保持相对灵活,但可能并非所有可能的参数都已添加。如果您需要支持尚未支持的参数,请打开一个PR以添加支持。