Skip to content
LangSmith 文档版本 跟随上游 源快照 169a73e2 更新于 2026-10-18

追踪 Mistral 应用

Mistral 通过简单的 API 提供开源权重语言模型的托管访问。

本指南展示如何使用 LangSmith 追踪 Mistral API 调用,让你能够记录提示词、响应和元数据,用于调试和可观测性。追踪通过 LangSmith SDK 和标准 span 插桩直接发送到 LangSmith。

安装

安装 Mistral 的官方库和 LangSmith:

bash
pip install mistralai langsmith
bash
npm install @mistralai/mistralai langsmith dotenv

mistralai 提供了用于与 Mistral API 交互的 Mistral 客户端。

设置

设置你的 API key 和项目名称:

bash
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>"  # optional
  • 确保你从 Mistral AI 账号 获取了 Mistral API key(将其设置为 MISTRAL_API_KEY)。
  • 设置 LANGSMITH_TRACING=true 并提供 LangSmith API key(LANGSMITH_API_KEY),即可启用追踪的自动记录。
  • 指定 LANGSMITH_PROJECT 名称以按项目组织追踪;如果未设置,追踪会进入默认项目(名称为 "default")。
  • LANGSMITH_TRACING 标志必须为 true,才会记录任何追踪。

配置追踪

  1. 用 LangSmith 对 Mistral API 调用进行插桩。在你的脚本中,创建 Mistral 客户端,并将调用包装在追踪函数中:
python
import os
from mistralai import Mistral
from langsmith import traceable

# Initialize Mistral API client with your API key
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

# Example usage
result = query_mistral("Hello, how are you?")
print("Mistral response:", result.content)
typescript
import { Client } from "langsmith";
import { traceable } from "langsmith/traceable";
import { Mistral } from "@mistralai/mistralai";
import "dotenv/config";

const mistral = new Mistral({
  apiKey: process.env.MISTRAL_API_KEY,
});

const langsmith = new Client();

const tracedChatCompletion = traceable(
  async (params: {
    model: string;
    messages: Array<{ role: string; content: string }>;
  }) => {
    const response = await mistral.chat.complete(params);
    // Return the message content so LangSmith captures it correctly
    return response.choices[0].message.content;
  },
  {
    name: "Mistral Chat Completion",
    run_type: "llm",
    metadata: {
      ls_provider: "mistral",
      ls_model_name: "mistral-small-latest",
    },
  }
);

async function main() {
  const response = await tracedChatCompletion({
    model: "mistral-small-latest",
    messages: [
      { role: "user", content: "Say hello in one short sentence." },
    ],
  });

  console.log(response);
}

main();

在此示例中,你使用 Mistral SDK 发送聊天补全请求(带有用户提示词),并获取模型的回答。

@traceable 装饰器(来自 LangSmith Python SDK)包装 query_mistral 函数,使每次调用都记录为类型 "llm" 的追踪 run。metadata="&quot;ls_provider&quot;: &quot;mistral&quot;, &quot;ls_model_name&quot;: &quot;mistral-medium-latest&quot;" 会为追踪打上提供商(Mistral)和模型名称标签。

你也可以参考 LangSmith JavaScript SDK。

  1. 执行你的脚本以生成追踪。例如:
bash
python mistral_trace.py
bash
node index.js

query_mistral("Hello, how are you?") 调用会访问 Mistral API,而由于 @traceable/traceable 包装器,LangSmith 会把这次调用的输入和输出记录为一条新追踪。你会在控制台看到模型响应,并在 LangSmith 中看到对应的 run。

在 LangSmith 中查看追踪

运行示例后,你可以在 LangSmith UI 中检查记录的追踪:

  1. 打开 LangSmith UI 并登录你的账号。
  2. 选择你用于此集成的项目(例如 LANGSMITH_PROJECT 中设置的名称,若未设置则为 default)。
  3. 找到与你的 Mistral API 调用对应的追踪。它会以函数名(query_mistral)或自定义名称标识(如果提供了)。
  4. 点击追踪将其打开。你将能够检查模型输入和输出,包括你发送的提示词消息和 Mistral 的响应,以及计时信息(延迟)和调用失败时的错误详情。

借助 LangSmith 的追踪,你可以完全掌握 Mistral 调用的可见性——从而调试 Mistral 模型的行为、监控性能(例如响应时间和 token 用量),并使用元数据标签比较不同参数的 run。

成本追踪

尽管 Mistral 模型是开源权重的,但使用托管的 Mistral API 可能会根据你的套餐产生基于用量的费用。

LangSmith 可以通过估算 token 用量并应用特定模型的定价,自动将成本关联到被追踪的 LLM 调用。追踪 Mistral API 调用时,LangSmith 会使用记录的提示词和响应消息来计算 token 数,并为每个 run 附加成本信息。

要为 LLM 调用启用自动成本跟踪,请参阅基于 token 数自动跟踪成本。

启用后,成本会直接显示在 LangSmith UI 中每条被追踪的 Mistral run 旁边,让你能够监控用量并跨时间比较实验。


BytesRouter 是社区翻译站点,所有译文仅供参考,一切以官方英文原文为准。