资源层次结构
组织
组织是 LangSmith 中用户的逻辑分组,拥有自己的计费配置。通常,每个公司有一个组织。一个组织可以有多个工作区。有关更多详细信息,请参阅设置指南。 首次登录时,系统会自动为您创建一个个人组织。如果您想与他人协作,可以创建一个单独的组织并邀请您的团队成员加入。您的个人组织和共享组织之间存在一些重要区别:| 功能 | 个人 | 共享 |
|---|---|---|
| 最大工作区数 | 1 | 可变,取决于计划(参见定价页面) |
| 协作 | 无法邀请用户 | 可以邀请用户 |
| 计费:付费计划 | 仅限开发者计划 | 所有其他计划可用 |
工作区
工作区以前称为租户。在过渡期间,一些代码和 API 仍可能引用旧名称。
下图解释了组织、工作区以及作用域内和工作区内不同资源之间的关系:
请参阅下表,了解哪些功能在哪个范围(组织或工作区)可用:| 资源/设置 | 范围 |
|---|---|
| 跟踪项目 | 工作区 |
| 注释队列 | 工作区 |
| 部署 | 工作区 |
| 数据集和实验 | 工作区 |
| 提示 | 工作区 |
| 资源标签 | 工作区 |
| API 密钥 | 工作区 |
| 设置,包括秘密、反馈配置、模型、规则和共享 URL | 工作区 |
| 用户管理:邀请用户加入工作区 | 工作区 |
| RBAC:分配工作区角色 | 工作区 |
| 数据保留,使用限制 | 工作区* |
| 计划和账单、积分、发票 | 组织 |
| 用户管理:邀请用户加入组织 | 组织** |
| 添加工作区 | 组织 |
| 分配组织角色 | 组织 |
| RBAC:创建/编辑/删除自定义角色 | 组织 |
资源标签
资源标签允许您在工作区内组织资源。每个标签都是一个键值对,可以分配给资源。标签可用于在 UI 和 API 中筛选工作区范围的资源:项目、数据集、注释队列、部署和实验。 每个新工作区都带有两个默认标签键:Application(应用程序)和Environment(环境);顾名思义,这些标签可用于根据资源所属的应用程序和环境对资源进行分类。可以根据需要添加更多标签。 LangSmith 资源标签与 AWS 等云服务中的标签非常相似。 
用户管理和 RBAC
用户
用户是拥有 LangSmith 访问权限的人。用户可以是组织内一个或多个组织和工作区的成员。 组织成员在组织设置中管理:

API 密钥
我们已于 2024 年 10 月 22 日停止支持以 `ls__` 为前缀的旧版 API 密钥,转而使用个人访问令牌 (PAT) 和服务密钥。所有新集成都必须使用 PAT 和服务密钥。自 2024 年 10 月 22 日起,以 `ls__` 为前缀的 API 密钥将不再有效。
到期日期
创建 API 密钥时,您可以选择设置到期日期。为密钥添加到期日期可增强安全性并最大程度地降低未经授权访问的风险。例如,您可以为需要提升访问权限的临时任务设置密钥到期日期。 默认情况下,密钥永不过期。一旦过期,API 密钥将不再有效,无法重新激活或修改其到期日期。个人访问令牌 (PAT)
个人访问令牌(PAT)用于验证对 LangSmith API 的请求。它们由用户创建并作用于用户。PAT 将拥有与创建它的用户相同的权限。我们建议不要使用它们来验证来自您的应用程序的请求,而是将其用于与 LangSmith API 交互的个人脚本或工具。如果与 PAT 相关联的用户从组织中删除,则 PAT 将不再有效。 PAT 以lsv2_pt_ 为前缀服务密钥
服务密钥类似于 PAT,但用于代表服务账户验证对 LangSmith API 的请求。只有管理员可以创建服务密钥。我们建议将其用于需要与 LangSmith API 交互的应用程序/服务,例如 LangGraph 代理或其他集成。服务密钥可以作用于单个工作区、多个工作区或整个组织,并且可以用于验证对 LangSmith API 的请求,无论其拥有哪个工作区的访问权限。 服务密钥以lsv2_sk_ 为前缀使用
X-Tenant-Id 标头指定目标工作区。- 使用 PAT 时:如果省略此标头,请求将针对与密钥关联的默认工作区运行。
- 使用组织范围的服务密钥时:访问工作区范围的资源时,必须包含
X-Tenant-Id标头。否则,请求将失败并显示403 Forbidden错误。
要了解如何创建服务密钥或个人访问令牌,请参阅设置指南
组织角色
组织角色与下面的企业功能 (RBAC) 不同,用于多个工作区的上下文。您的组织角色决定了您的工作区成员资格特性和您的组织级权限。有关更多信息,请参阅组织设置指南。 选择的组织角色也如以下所述影响工作区成员资格:Organization Admin授予完全访问权限,可管理所有组织配置、用户、账单和工作区。Organization Admin对组织中的所有工作区拥有Admin访问权限Organization User可以读取组织信息,但不能在组织级别执行任何写入操作。Organization User可以创建个人访问令牌。Organization User可以添加到工作区子集并像往常一样分配工作区角色(如果启用了 RBAC),这会指定工作区级别的权限。Organization Viewer等同于Organization User,但不能创建个人访问令牌。(对于自托管,可在 Helm chart 0.11.25+ 版本中获取)
Organization User 和 Organization Viewer 角色仅适用于具有多个工作区的组织。在仅限于单个工作区的组织中,所有用户都是 Organization Admin。自定义组织范围的角色尚不可用。有关如何禁用整个组织的 PAT 创建的说明,请参阅安全设置。| 组织查看者 | 组织用户 | 组织管理员 | |
|---|---|---|---|
| 查看组织配置 | ✅ | ✅ | ✅ |
| 查看组织角色 | ✅ | ✅ | ✅ |
| 查看组织成员 | ✅ | ✅ | ✅ |
| 查看数据保留设置 | ✅ | ✅ | ✅ |
| 查看使用限制 | ✅ | ✅ | ✅ |
| 创建个人访问令牌 (PAT) | ❌ | ✅ | ✅ |
| 对所有工作区的管理员访问权限 | ❌ | ❌ | ✅ |
| 管理计费设置 | ❌ | ❌ | ✅ |
| 创建工作区 | ❌ | ❌ | ✅ |
| 创建、编辑和删除组织角色 | ❌ | ❌ | ✅ |
| 邀请新用户加入组织 | ❌ | ❌ | ✅ |
| 删除用户邀请 | ❌ | ❌ | ✅ |
| 从组织中移除用户 | ❌ | ❌ | ✅ |
| 更新数据保留设置 | ❌ | ❌ | ✅ |
| 更新使用限制 | ❌ | ❌ | ✅ |
工作区角色 (RBAC)
RBAC(基于角色的访问控制)是仅适用于企业客户的功能。如果您对此功能感兴趣,请联系我们的销售团队。其他计划默认对所有用户使用管理员角色。
Admin- 对工作区内的所有资源拥有完全访问权限Viewer- 对工作区内的所有资源拥有只读访问权限Editor- 除工作区管理(添加/删除用户、更改角色、配置服务密钥)外,拥有所有权限
Roles 选项卡下管理: 
最佳实践
环境隔离
使用资源标签,通过默认标签键Environment 和不同的环境值(例如 dev、staging、prod)按环境组织资源。这种标签结构将允许您今天组织跟踪项目,并在我们发布基于属性的访问控制 (ABAC) 时轻松强制执行权限。资源标签上的 ABAC 将提供一种细粒度的方式来限制对生产跟踪项目的访问,例如。我们不建议您使用工作区进行环境隔离,因为您无法跨工作区共享资源。如果您想将提示从 staging 提升到 prod,我们建议您改用提交标签。有关更多信息,请参阅文档。
使用和账单
数据保留
本节涵盖 LangSmith 中数据保留的工作方式及其定价。保留为何重要
- 隐私:许多数据隐私法规,例如欧洲的 GDPR 或加利福尼亚的 CCPA,要求组织在不再需要收集数据的目的时删除个人数据。设置保留期有助于遵守此类法规。
- 成本:LangSmith 对数据保留时间较短的跟踪收取较低的费用。有关如何优化支出的详细信息,请参阅我们的教程。
工作原理
LangSmith 根据数据保留期限将跟踪分为两个等级,具有以下特点| 基本 | 扩展 | |
|---|---|---|
| 价格 | 0.50 美元/1k 跟踪 | 5 美元/1k 跟踪 |
| 保留期 | 14 天 | 400 天 |
自动升级可能会影响您的账单。请仔细阅读本节,以充分了解您预估的 LangSmith 追踪成本。
base 层级跟踪使用某些功能时,其数据保留将自动升级到 extended 层级。这将增加保留期和跟踪成本。 以下是跟踪在以下情况中将升级的完整场景列表:
为什么自动升级跟踪? 我们自动升级跟踪模型有两个原因:- 我们认为符合这些条件中的任何一个的跟踪从根本上比其他跟踪更有趣,因此用户能够将它们保留更长时间是件好事。
- 从哲学上讲,我们希望对可能没有有意义交互的跟踪收取低一个数量级的费用。我们认为自动升级使我们的定价模型与 LangSmith 带来的价值保持一致,即只有具有有意义交互的跟踪才会以更高的费率收费。
- 注释队列、运行规则和反馈:使用这些功能的跟踪将被自动升级。
- 监控:即使基本层级跟踪的数据保留期结束,监控选项卡仍将继续工作。它由存在超过 30 天的跟踪元数据提供支持,这意味着即使在
base层级跟踪上,您的监控图表也将保持准确。 - 数据集:数据集具有无限期的数据保留期。换句话说,如果您将跟踪的输入和输出添加到数据集,它们将永远不会被删除。我们建议您如果使用 LangSmith 进行数据收集,请利用数据集功能。
计费模型
可计费指标 在您的 LangSmith 发票上,您将看到我们收费的两个指标:- LangSmith 跟踪(基本费用)
- LangSmith 跟踪(扩展数据保留升级)。
base 层级和 extended 层级跟踪的数量呢? 虽然我们理解这会更简单,但它不适合跟踪升级。考虑一个 6 月 30 日记录的 base 层级跟踪,并在 7 月 3 日升级到 extended 层级。base 层级跟踪发生在 6 月账单期,但升级发生在 7 月账单期。因此,我们需要能够独立测量这两个事件,以便正确向客户计费。 如果您的跟踪被记录为扩展保留跟踪,那么 base 和 extended 指标都将以相同的时间戳记录。 成本细分 跟踪的基本费用为每条跟踪 0.05 美分。我们将升级定价为 extended 保留跟踪的成本是基本层级跟踪的 10 倍(每条跟踪 0.50 美分),包括两个指标。因此,每次升级的成本为 0.45 美分。速率限制
LangSmith 设有速率限制,旨在确保所有用户的服务稳定性。 为确保访问和稳定性,在以下情况下,LangSmith 将响应 HTTP 状态码 429,表示已超出速率或使用限制:我们应用程序负载均衡器在 1 分钟内的临时吞吐量限制
此 429 是由于在 1 分钟窗口内超出了每个 API 密钥/访问令牌的固定 API 调用次数限制。窗口的开始时间会略有不同——不保证从时钟分钟的开始时间开始——并且可能会根据应用程序部署事件而变化。 达到最大事件数后,我们将响应 429,直到从评估窗口开始经过 60 秒,然后重复该过程。 此 429 由我们的应用程序负载均衡器抛出,是所有 LangSmith 用户(无论计划层级如何)的机制,以确保所有用户的服务连续性。| 方法 | 端点 | 限制 | 窗口 |
|---|---|---|---|
| 删除 | 会话 | 30 | 1 分钟 |
| 发布或修补 | 运行 | 5000 | 1 分钟 |
| 发布 | 反馈 | 5000 | 1 分钟 |
| * | * | 2000 | 1 分钟 |
LangSmith SDK 采取措施,通过将来自单个会话 ID 的最多 100 次运行批处理到一个 API 调用中,最大限度地减少在与运行相关的端点上达到这些限制的可能性。
计划级别每小时跟踪事件限制
此 429 是由于达到每小时最大事件摄取量,并在每个 UTC 时钟小时开始的固定窗口中进行评估,并在每个新小时开始时重置。 在此上下文中,事件是运行的创建或更新。因此,如果运行在同一小时窗口中创建,然后更新,则这将计入此限制的 2 个事件。 这由我们的应用程序抛出,并因计划层级而异,我们的启动/高级和企业计划层级的组织比我们的免费和开发者计划层级(专为个人使用设计)具有更高的每小时限制。| 计划 | 限制 | 窗口 |
|---|---|---|
| 开发者(未备案付款信息) | 50,000 个事件 | 1 小时 |
| 开发者(已备案付款信息) | 250,000 个事件 | 1 小时 |
| 初创/Plus | 500,000 个事件 | 1 小时 |
| 企业 | 自定义 | 自定义 |
计划级别每小时跟踪数据摄取限制
此 429 是由于您的跟踪输入、输出和元数据摄取的数据量达到最大值,并在每个 UTC 时钟小时开始的固定窗口中进行评估,并在每个新小时开始时重置。 通常,输入、输出和元数据在运行创建和更新事件时都会发送。因此,如果运行在创建时大小为 2.0MB,并在同一小时窗口中更新时大小为 3.0MB,则这将计入此限制的 5.0MB 存储空间。 这由我们的应用程序抛出,并因计划层级而异,我们的初创/高级和企业计划层级的组织比我们的免费和开发者计划层级(专为个人使用设计)具有更高的每小时限制。| 计划 | 限制 | 窗口 |
|---|---|---|
| 开发者(未备案付款信息) | 500MB | 1 小时 |
| 开发者(已备案付款信息) | 2.5GB | 1 小时 |
| 初创/Plus | 5.0GB | 1 小时 |
| 企业 | 自定义 | 自定义 |
计划级别每月唯一跟踪限制
此 429 是由于达到您每月摄取的最大跟踪数,并在每个 UTC 日历月开始的固定窗口中进行评估,并在每个新月开始时重置。 这由我们的应用程序抛出,仅适用于未备案付款信息的开发者计划层级。| 计划 | 限制 | 窗口 |
|---|---|---|
| 开发者(未备案付款信息) | 5,000 次跟踪 | 1 个月 |
自行配置的每月使用限制
此 429 是由于达到您的组织管理员配置的使用限制,并在每个 UTC 日历月开始的固定窗口中进行评估,并在每个新月开始时重置。 这由我们的应用程序抛出,并因组织及其配置设置而异。在应用程序中处理 429 响应
由于某些 429 响应是临时的,并且在后续调用中可能会成功,因此如果您在应用程序中直接调用 LangSmith API,我们建议实施具有指数退避和抖动的重试逻辑。 为方便起见,使用 LangSmith SDK 构建的 LangChain 应用程序内置了此功能。需要注意的是,如果您长时间占用端点,重试可能无效,因为您的应用程序最终将运行足够大的积压工作,以耗尽所有重试。如果是这种情况,我们希望更具体地讨论您的需求。请联系 LangSmith 支持,提供您的应用程序吞吐量需求和示例代码的详细信息,我们可以与您一起更好地了解最佳方法是修复错误、更改应用程序代码还是选择不同的 LangSmith 计划。
使用限制
LangSmith 允许您配置跟踪的使用限制。请注意,这些是使用限制,而不是支出限制,这意味着它们允许您限制某些事件的发生数量,而不是您将花费的总金额。 LangSmith 允许您设置两个不同的每月限制,这与我们上述数据保留指南中讨论的计费指标相对应:- 所有跟踪限制
- 延长数据保留跟踪限制
使用限制的属性
使用限制是近似值,这意味着我们不保证限制的精确性。在极少数情况下,在开始应用使用限制之前,可能会有一小段时间处理超出限制阈值的额外跟踪。延长数据保留跟踪限制的副作用
延长数据保留追踪限制具有副作用。如果已达到限制,任何可能导致追踪层级自动升级的功能都将变得不可用。这是因为追踪的自动升级将导致创建另一个延长保留追踪,而这反过来又不应受限制的允许。因此,您不能再- 匹配运行规则
- 向追踪添加反馈
- 将运行添加到注释队列
更新使用限制
使用限制可以在“设置”页面下的“使用情况和计费”中更新。限制值会被缓存,因此新限制可能需要一两分钟才能生效。相关内容
- 如何优化支出的教程
附加资源
- 发布版本:了解 LangSmith 的版本支持策略,包括 Active、Critical、End of Life 和 Deprecated 支持级别。
以编程方式连接这些文档到 Claude、VSCode 等,通过 MCP 获取实时答案。