Skip to main content
本页面引用了 Groq,这是一家提供 AI 硬件和软件的公司。有关如何使用 Grok 模型(由 xAI 提供)的信息,请参阅 xAI 提供商页面
API 参考详细了解所有功能和配置选项,请参阅 ChatGroq API 参考。
要查看所有 Groq 模型列表,请访问其 文档

综述

集成细节

类别序列化JS 支持下载量版本
ChatGroqlangchain-groqbetaPyPI - 下载量PyPI - 版本

模型功能

工具调用结构化输出图像输入音频输入视频输入标记级别流式传输原生异步标记使用情况Logprobs

配置

要访问 Groq 模型,您需要创建一个 Groq 账户、获取 API 密钥,并安装 langchain-groq 集成包。

凭据

前往 Groq 控制台 注册并生成一个 API 密钥。完成此操作后,设置 GROQ_API_KEY 环境变量:
import getpass
import os

if "GROQ_API_KEY" not in os.environ:
    os.environ["GROQ_API_KEY"] = getpass.getpass("请输入您的 Groq API 密钥: ")
为了启用对模型调用的自动跟踪,请设置 LangSmith API 密钥:
os.environ["LANGSMITH_API_KEY"] = getpass.getpass("请输入您的 LangSmith API 密钥: ")
os.environ["LANGSMITH_TRACING"] = "true"

安装

LangChain Groq 集成位于 langchain-groq 包中:
pip install -qU langchain-groq

实例化

现在我们可以实例化我们的模型对象并生成聊天完成。
推理格式如果您选择设置一个 reasoning_format,请确保您使用的模型支持它。您可以在 Groq 文档 中找到受支持的模型列表。
from langchain_groq import ChatGroq

llm = ChatGroq(
    model="qwen/qwen3-32b",
    temperature=0,
    max_tokens=None,
    reasoning_format="parsed",
    timeout=None,
    max_retries=2,
    # 其他参数...
)

调用

messages = [
    (
        "system",
        "您是一个将英语翻译成法语的帮助助手。请翻译用户句子。",
    ),
    ("human", "我热爱编程。"),
]
ai_msg = llm.invoke(messages)
ai_msg
AIMessage(content="J'aime la programmation.", additional_kwargs={'reasoning_content': '好的,所以我需要将句子“我热爱编程。”翻译成法语。让我想想如何处理这个问题。\n\n首先,我知道在法语中,“我”是“Je”。这很简单。接下来,“爱”这个动词在法语中是“aime”,当指代自己时。因此,“我爱”会变成“J\'aime”。\n\n接下来是“编程。”在法语中,编程是“la programmation”。但等等,当你谈论热爱一个活动时,在法语中通常使用定冠词。所以,应该是“la programmation”。\n\n将所有这些放在一起,“我爱编程”变成“J\'aime la programmation”。听起来不错。我认为这是正确的翻译。\n\n我应该再检查一下以确保没有遗漏任何东西。也许我可以想一些类似的短语。例如,“我热爱阅读”是“J\'aime lire”,但当它是名词时,如“我热爱音乐”则是“J\'aime la musique”。所以,使用“la programmation”是有道理的。\n\n我认为不需要再做其他更改了。“我爱编程”的结构在法语中与英语相同,因此“J\'aime la programmation”应该是正确的。\n\n也许另一种说法是“J\'adore la programmation”,用“adore”代替“aime”,但“aime”在这个上下文中更常用。所以,坚持使用“J\'aime la programmation”可能是最好的选择。\n'}, response_metadata={'token_usage': {'completion_tokens': 346, 'prompt_tokens': 23, 'total_tokens': 369, 'completion_time': 1.447541218, 'prompt_time': 0.000983386, 'queue_time': 0.009673684, 'total_time': 1.448524604}, 'model_name': 'deepseek-r1-distill-llama-70b', 'system_fingerprint': 'fp_e98d30d035', 'finish_reason': 'stop', 'logprobs': None}, id='run--5679ae4f-f4e8-4931-bcd5-7304223832c0-0', usage_metadata={'input_tokens': 23, 'output_tokens': 346, 'total_tokens': 369})
print(ai_msg.content)
J'aime la programmation.

视觉

Groq 支持某些模型的视觉能力,允许您发送图像与文本提示一起使用。
支持视觉功能的模型
  • meta-llama/llama-4-scout-17b-16e-instruct
  • meta-llama/llama-4-maverick-17b-128e-instruct
要获取最新支持视觉功能的模型列表,请参阅 Groq 文档
from langchain_groq import ChatGroq
from langchain.messages import HumanMessage

llm = ChatGroq(model="meta-llama/llama-4-scout-17b-16e-instruct")

message = HumanMessage(
    content=[
        {"type": "text", "text": "详细描述这张图片。"},
        {
            "type": "image_url",
            "image_url": {"url": "https://example.com/image.jpg"},
        },
    ]
)

response = llm.invoke([message])
print(response.content)
图像 URL 要求Groq 会直接从 URL 获取图像。确保您的图像 URL:
  • 是公开可访问的(无需身份验证)
  • 直接返回图像(无重定向)
  • 最大图像大小:每请求20MB

API 参考

要详细了解所有 ChatGroq 功能和配置选项,请参阅 API 参考