在 LangSmith UI 中查看成本
在 LangSmith UI 中,您可以通过三种方式探索使用量和支出:在单个跟踪内查看细分、在项目统计中查看聚合指标,以及在仪表板中查看。令牌和成本细分
UI 将令牌使用量和成本分为三类:- 输入:发送给模型的提示中的令牌。子类型包括:缓存读取、文本令牌、图像令牌等。
- 输出:模型响应中生成的令牌。子类型包括:推理令牌、文本令牌、图像令牌等。
- 其他:来自工具调用、检索步骤或任何自定义运行的成本。

在跟踪树中
跟踪树显示了令牌使用量和成本的最详细视图(针对单个跟踪)。它显示了整个跟踪的总使用量、每个父运行的聚合值,以及每个子运行的令牌和成本细分。 打开跟踪项目中的任何运行以查看其跟踪树。在跟踪线程中的成本时,请确保所有子运行都包含线程元数据(
session_id、thread_id 或 conversation_id)。如果子运行没有线程元数据,则这些运行的令牌计数和成本将不会包含在线程级聚合中。有关设置线程元数据的详细信息,请参阅配置线程。在项目统计中
项目统计面板显示项目中所有跟踪的总令牌使用量和成本。在仪表板中
仪表板可帮助您探索随时间变化的成本和令牌使用趋势。跟踪项目的预构建仪表板显示总成本以及按输入和输出令牌细分的成本。 您还可以在自定义仪表板中配置自定义成本跟踪图表。成本跟踪
您可以通过两种方式跟踪成本:- 自动:根据令牌计数和模型价格为 LLM 调用推导。
- 手动:直接在任何运行上指定,包括非 LLM 类型。
LLM 调用:根据令牌计数自动跟踪成本
要根据令牌使用量自动计算成本,您需要提供令牌计数、模型和提供商以及模型价格。-
发送令牌计数。许多模型将令牌计数作为响应的一部分包含在内。您必须提取此信息并使用以下方法之一将其包含在您的运行中:
-
在运行的元数据上设置
usage_metadata字段。此方法的优点是您无需更改被跟踪函数的运行时输出: -
在被跟踪函数的输出中返回
usage_metadata字段。将usage_metadata键直接包含在被跟踪函数返回的对象中。LangSmith 将从输出中提取它:
使用元数据模式和成本计算
usage_metadata字典中的以下字段被 LangSmith 识别。您可以直接查看完整的 Python 类型 或 TypeScript 接口。模型输入中使用的令牌数量。所有输入令牌类型的总和。模型响应中使用的令牌数量。所有输出令牌类型的总和。输入和输出中使用的令牌数量。可选,可以推断。input_tokens + output_tokens 的总和。输入令牌类型的细分。键是令牌类型字符串,值是计数。例如{"cache_read": 5}。已知字段包括:audio、text、image、cache_read、cache_creation、cache_read_over_200k(Gemini)、ephemeral_5m_input_tokens、ephemeral_1h_input_tokens(Anthropic 临时缓存层)。根据模型或提供商,可能存在其他字段。输出令牌类型的细分。键是令牌类型字符串,值是计数。例如{"reasoning": 5}。已知字段包括:audio、text、image、reasoning。根据模型或提供商,可能存在其他字段。输入令牌的成本。输出令牌的成本。令牌的成本。可选,可以推断。input_cost + output_cost 的总和。输入成本的详细信息。键是令牌类型字符串,值是成本金额。成本计算运行的成本是从最具体到最不具体的令牌类型贪婪计算的。假设您设置了每 1M 输入令牌 2 美元的价格,其中输出成本的详细信息。键是令牌类型字符串,值是成本金额。cache_read输入令牌的详细价格为每 1M 1 美元,输出令牌为每 1M 3 美元。如果您上传了以下使用元数据:那么,令牌成本将计算如下: -
在运行的元数据上设置
-
指定模型名称。使用自定义模型时,需要在运行的元数据中指定以下字段,以便将令牌计数与成本关联起来。在查看跟踪和进行筛选时,提供这些元数据字段也有助于识别模型。
ls_provider:模型的提供商,例如 “openai”、“anthropic”ls_model_name:模型的名称,例如 “gpt-5.4-mini”、“claude-3-opus-20240229”
-
设置模型价格。LangSmith 使用其模型定价表将模型名称映射到每令牌价格,以根据令牌计数计算成本。
对于不同令牌类型有不同定价的模型(例如,多模态或缓存令牌),您可以指定每种令牌类型的价格细分。将鼠标悬停在 Input price 和 Output price 条目旁边的 … 上,可以查看按令牌类型细分的价格。该表包含大多数 OpenAI、Anthropic 和 Gemini 模型的定价信息。如果您有自定义定价,可以创建新的模型价格条目或覆盖默认模型的定价。LangSmith 不会反映模型定价映射的更新对已记录跟踪的成本的影响。不支持回填模型定价更改。
创建新的或修改现有的模型价格条目
要修改默认模型价格,请创建一个与默认条目具有相同模型、提供商和匹配模式的新条目。 要在模型定价映射中创建新条目,请单击右上角的 + Model 按钮。 在这里,您可以指定以下字段:- Model Name:模型的人类可读名称。
- Input Price:模型每 1M 输入令牌的成本。此数字乘以提示中的令牌数以计算提示成本。
- Input Price Breakdown(可选):每种不同类型输入令牌的价格细分,例如
cache_read、video、audio。 - Output Price:模型每 1M 输出令牌的成本。此数字乘以完成中的令牌数以计算完成成本。
- Output Price Breakdown(可选):每种不同类型输出令牌的价格细分,例如
reasoning、image等。 - Model Activation Date(可选):定价适用的日期。只有此日期之后的运行才会应用此模型价格。
- Match Pattern:用于匹配模型名称的正则表达式模式。用于匹配运行元数据中
ls_model_name的值。 - Provider(可选):模型的提供商。如果指定,则与运行元数据中的
ls_provider进行匹配。
LLM 调用:直接发送成本
Gemini 2.5 Pro Preview 和 Gemini 2.5 Pro 使用分步成本函数,LangSmith 默认支持。对于任何其他具有非线性定价的模型,请在客户端计算成本,并将其作为usage_metadata 发送,如以下代码所示:
其他运行:发送成本
您也可以为任何非 LLM 运行(例如工具调用)发送成本信息。在运行的usage_metadata 的 total_cost 字段中指定成本:
usage_metadata:
将这些文档连接到 Claude、VSCode 等,通过 MCP 获取实时答案。


