Skip to main content
Mistral 通过一个简单的 API 提供对开放权重语言模型的托管访问。 本指南向您展示如何使用 LangSmith 追踪 Mistral API 调用,从而记录提示、响应和元数据,用于调试和可观测性。追踪数据通过 LangSmith SDK 和标准的 span 检测直接发送到 LangSmith。

安装

安装 Mistral 的官方库和 LangSmith:
pip install mistralai langsmith
mistralai 提供了一个 Mistral 客户端,用于与 Mistral 的 API 交互。

设置

设置您的 API 密钥 和项目名称:
export MISTRAL_API_KEY="<your_mistral_api_key>"
export LANGSMITH_TRACING="true"
export LANGSMITH_API_KEY="<your_langsmith_api_key>"
export LANGSMITH_PROJECT="<your_project_name>"  # 可选
  • 确保您拥有来自 Mistral AI 账户 的 Mistral API 密钥(将其设置为 MISTRAL_API_KEY)。
  • 设置 LANGSMITH_TRACING=true 并提供您的 LangSmith API 密钥 (LANGSMITH_API_KEY) 以激活追踪的自动记录。
  • 指定一个 LANGSMITH_PROJECT 名称以按项目组织追踪;如果未设置,追踪将进入默认项目(名为 “default”)。
  • LANGSMITH_TRACING 标志必须为 true 才能记录任何追踪。

配置追踪

  1. 使用 LangSmith 检测 Mistral API 调用。在您的脚本中,创建一个 Mistral 客户端,并将调用包装在一个可追踪的函数中:
    import os
    from mistralai import Mistral
    from langsmith import traceable
    
    # 使用您的 API 密钥初始化 Mistral API 客户端
    client = Mistral(api_key=os.environ["MISTRAL_API_KEY"])
    
    @traceable(
        run_type="llm",
        metadata={"ls_provider": "mistral", "ls_model_name": "mistral-medium-latest"},
    )
    def query_mistral(prompt: str):
        response = client.chat.complete(
            model="mistral-medium-latest",
            messages=[{"role": "user", "content": prompt}],
        )
        return response.choices[0].message
    
    # 示例用法
    result = query_mistral("Hello, how are you?")
    print("Mistral response:", result.content)
    
    在此示例中,您使用 Mistral SDK 发送一个聊天补全请求(包含用户提示)并检索模型的答案。 @traceable 装饰器(来自 LangSmith Python SDK)包装了 query_mistral 函数,使得每次调用都被记录为类型为 "llm" 的追踪运行。metadata={"ls_provider": "mistral", "ls_model_name": "mistral-medium-latest"} 为追踪标记了提供者(Mistral)和模型名称。 您也可以参考 LangSmith JavaScript SDK
  2. 执行您的脚本以生成追踪。例如:
    python mistral_trace.py
    
    query_mistral("Hello, how are you?") 调用将访问 Mistral API,并且由于 @traceable/traceable 包装器,LangSmith 将记录此调用的输入和输出作为新的追踪。您将在控制台看到模型的响应被打印出来,并且在 LangSmith 中会出现相应的运行记录。

在 LangSmith 中查看追踪

运行示例后,您可以在 LangSmith UI 中检查记录的追踪:
  1. 打开 LangSmith UI 并登录您的账户。
  2. 选择您用于此集成的项目(例如,在 LANGSMITH_PROJECT 中设置的名称,或者如果您未设置则为默认项目)。
  3. 找到与您的 Mistral API 调用相对应的追踪。它将通过函数名(query_mistral)或如果提供了自定义名称则通过该名称来标识。
  4. 单击追踪以打开它。您将能够检查模型的输入和输出,包括您发送的提示消息和 Mistral 的响应,以及时间信息(延迟)和如果调用失败则包含的任何错误详情。
通过 LangSmith 的追踪,您可以完全了解您的 Mistral 调用——允许您调试 Mistral 模型的行为、监控性能(例如,响应时间和令牌使用量),并使用元数据标签比较具有不同参数的运行。

成本追踪

虽然 Mistral 模型是开放权重的,但使用托管的 Mistral API 可能会根据您的计划产生基于使用量的费用。 LangSmith 可以通过估算令牌使用量并应用特定于模型的定价,自动将成本与追踪的 LLM 调用关联起来。在追踪 Mistral API 要时,LangSmith 使用记录的提示和响应消息来计算令牌数量,并将成本信息附加到每个运行。 要启用 LLM 调用的自动成本追踪,请参阅 基于令牌数量自动追踪成本 启用后,成本将直接显示在 LangSmith UI 中每个追踪的 Mistral 运行旁边,以便您可以监控使用情况并随时间比较实验。