Skip to main content

Groq

Groq API 通过 Groq SDK 集成到 promptfoo 中,为在评估中使用 Groq 模型提供了原生体验。Groq 为各种大型语言模型提供高性能推理。

设置

要使用 Groq,您需要设置您的 API 密钥:

  1. Groq 控制台 中创建一个 Groq API 密钥。
  2. 设置 GROQ_API_KEY 环境变量:
export GROQ_API_KEY=your_api_key_here

或者,您可以在提供者配置中指定 apiKey(见下文)。

配置

在您的 promptfoo 配置文件中配置 Groq 提供者:

providers:
- id: groq:llama3-groq-70b-8192-tool-use-preview
config:
temperature: 0.7
max_tokens: 100
tools:
- type: function
function:
name: get_weather
description: '获取给定位置的当前天气'
parameters:
type: object
properties:
location:
type: string
description: '城市和州,例如:San Francisco, CA'
unit:
type: string
enum:
- celsius
- fahrenheit
required:
- location
tool_choice: auto

关键配置选项:

  • temperature:控制输出的随机性(0.0 到 1.0)
  • max_tokens:响应中的最大令牌数
  • tools:定义模型可以使用的函数(用于工具使用/函数调用)
  • tool_choice:指定模型应如何选择工具('auto'、'none' 或特定工具)

支持的模型

Groq 支持多种模型,包括:

  • gemma-7b-it
  • gemma2-9b-it
  • llama-3.1-405b-reasoning
  • llama-3.1-70b-versatile
  • llama-3.1-8b-instant
  • llama2-70b-4096
  • llama3-70b-8192
  • llama3-8b-8192
  • llama3-groq-70b-8192-tool-use-preview(推荐用于工具使用)
  • llama3-groq-8b-8192-tool-use-preview(推荐用于工具使用)
  • mixtral-8x7b-32768

有关每个模型的最新列表和详细信息,请参阅 Groq 控制台文档

使用提供者

在您的测试配置中指定 Groq 提供者:

providers:
- id: groq:llama3-groq-70b-8192-tool-use-preview
config:
temperature: 0.5
max_tokens: 150

prompts:
- 告诉我 {{city}} 的天气,使用该位置的默认单位。

tests:
- vars:
city: Boston
- vars:
city: New York

工具使用(函数调用)

Groq 支持工具使用,允许模型调用预定义的函数。在提供者设置中配置工具:

providers:
- id: groq:llama3-groq-70b-8192-tool-use-preview
config:
tools:
- type: function
function:
name: get_weather
description: '获取给定位置的当前天气'
parameters:
type: object
properties:
location:
type: string
description: '城市和州,例如:San Francisco, CA'
unit:
type: string
enum:
- celsius
- fahrenheit
required:
- location
tool_choice: auto

对于复杂的工具或模糊的查询,请使用 llama3-groq-70b-8192-tool-use-preview 模型。

额外功能

  • 缓存:Groq 提供者默认缓存之前的 LLM 请求,以提高性能。
  • 令牌使用跟踪:提供每个请求的令牌使用详细信息。
  • 成本计算:根据令牌使用情况和使用的特定模型自动计算每个请求的成本。