资源层级结构
组织
组织是 LangSmith 内用户的逻辑分组,它定义了适用于其所有工作区的共享设置。这些设置管理组织层面的关注点,而非工作区内的单个项目。常见的组织级配置包括用户管理、单点登录(SSO)、OAuth 提供商配置、自定义角色创建、计费和用量跟踪。通常,每个公司对应一个组织。一个组织可以拥有多个工作区。更多详情,请参阅设置指南。 首次登录时,系统会自动为您创建一个个人组织。如果您想与他人协作,可以创建一个单独的组织并邀请您的团队成员加入。个人组织和共享组织之间存在一些重要区别:| 功能特性 | 个人组织 | 共享组织 |
|---|---|---|
| 最大工作区数量 | 1 | 可变,取决于计划(参见定价页面 |
| 协作 | 无法邀请用户 | 可以邀请用户 |
| 计费:付费计划 | 仅限开发者计划 | 所有其他计划可用 |
工作区
工作区以前称为租户。在过渡期间,部分代码和 API 可能仍会引用旧名称一段时间。
应用程序
应用程序是工作区内资源的逻辑分组。应用程序通常是智能体,但您也可以将其用于团队内的任何项目。应用程序通过仅显示与当前上下文中的应用程序相关联的资源,来保持用户界面的有序性。 应用程序建立在资源标签之上,并可用于通过ABAC控制资源访问。 在 LangSmith 用户界面的主导航侧边栏中切换应用程序。使用侧边栏顶部的应用程序下拉菜单来选择应用程序。 任何资源都可以在不标记到应用程序的情况下创建。这些资源将在选择所有应用程序选项时可见。资源
资源是用于构建、运行和观察应用程序和智能体的具体实体,例如追踪项目、提示、数据集和部署。资源的作用域限定在特定的应用程序。附加信息
下图解释了组织、工作区、应用程序和资源之间的关系:
有关哪些功能在哪些作用域中可用,请参阅下表:
| 资源/设置 | 作用域 |
|---|---|
| 追踪项目 | 工作区或应用程序 |
| 标注队列 | 工作区或应用程序 |
| 部署 | 工作区或应用程序 |
| 数据集和实验 | 工作区或应用程序 |
| 提示 | 工作区或应用程序 |
| 资源标签 | 工作区 |
| API 密钥 | 工作区 |
| 设置(包括密钥、反馈配置、模型、规则和共享 URL) | 工作区 |
| 用户管理:邀请用户到工作区 | 工作区 |
| RBAC:分配工作区角色 | 工作区 |
| 数据保留、用量限制 | 工作区* |
| 计划和计费、积分、发票 | 组织 |
| 用户管理:邀请用户到组织 | 组织** |
| 添加工作区 | 组织 |
| 分配组织角色 | 组织 |
| RBAC:创建/编辑/删除自定义角色 | 组织 |
资源标签
资源标签允许您进一步隔离工作区内的资源,以便与ABAC一起使用。每个标签都是一个键值对,您可以将其分配给资源。 LangSmith 的资源标签与云服务(如 AWS)中的标签非常相似。 在 LangSmith 用户界面中导航到设置,然后在侧边栏中选择资源标签页面。用户管理和 RBAC
用户
用户是拥有 LangSmith 访问权限的个人。用户可以是一个或多个组织以及这些组织内工作区的成员。 组织成员在设置页面的成员和角色下进行管理。 工作区成员在设置页面的工作区下进行管理。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_
要了解如何创建服务密钥或个人访问令牌,请参阅设置指南
组织角色
组织角色与企业功能工作区 RBAC 不同,用于多个工作区的上下文。您的组织角色决定了您的工作区成员资格特征以及您的组织级权限。 所选的组织角色也会影响工作区成员资格,如下所述:- 组织管理员 授予管理所有组织配置、用户、计费和工作区的完全访问权限。
- 组织管理员对组织中的所有工作区拥有
Admin访问权限。
- 组织管理员对组织中的所有工作区拥有
- 组织用户 可以读取组织信息,但无法在组织级别执行任何写入操作。组织用户可以创建个人访问令牌。
- 组织用户可以添加到一部分工作区,并像往常一样分配工作区角色(如果启用了 RBAC),这些角色指定了工作区级别的权限。
- 组织查看者 等同于组织用户,但不能创建个人访问令牌。(对于自托管,在 Helm chart 版本 0.11.25+ 中可用)。
The Organization User and Organization Viewer roles are only available in organizations on Plus and Enterprise plans. In Developer organizations (single workspace), all users are assigned the Organization Admin role by default.有关如何为整个组织禁用 PAT 创建的说明,请参阅安全设置。
| 组织查看者 | 组织用户 | 组织管理员 | |
|---|---|---|---|
| 查看组织配置 | ✅ | ✅ | ✅ |
| 查看组织角色 | ✅ | ✅ | ✅ |
| 查看组织成员 | ✅ | ✅ | ✅ |
| 查看数据保留设置 | ✅ | ✅ | ✅ |
| 查看用量限制 | ✅ | ✅ | ✅ |
| 创建个人访问令牌(PAT) | ❌ | ✅ | ✅ |
| 对所有工作区的管理员访问权限 | ❌ | ❌ | ✅ |
| 管理计费设置 | ❌ | ❌ | ✅ |
| 创建工作区 | ❌ | ❌ | ✅ |
| 创建、编辑和删除组织角色 | ❌ | ❌ | ✅ |
| 邀请新用户到组织 | ❌ | ❌ | ✅ |
| 删除用户邀请 | ❌ | ❌ | ✅ |
| 从组织中移除用户 | ❌ | ❌ | ✅ |
| 更新数据保留设置 | ❌ | ❌ | ✅ |
| 更新用量限制 | ❌ | ❌ | ✅ |
工作区角色(RBAC)
RBAC(基于角色的访问控制)是仅面向企业客户的功能。如果您对此功能感兴趣,请联系我们的销售团队。其他计划默认对所有用户使用管理员角色。
- 有关角色和权限的全面文档,请参阅基于角色的访问控制指南。
- 有关分配和创建角色的更多详情,请参阅用户管理指南。
- For a comprehensive list of required permissions along with the operations and roles that can perform them, refer to the Organization and workspace reference.
最佳实践
环境分离
使用资源标签通过默认标签键Environment 和环境的不同值(例如 dev、staging、prod)来按环境组织资源。我们不建议使用单独的工作区进行环境分离,因为资源无法跨工作区共享,这将阻止您在环境之间提升资源(如提示)。
提示管理中的资源标签与提交标签虽然两种类型的标签都可以使用环境术语,如
dev、staging 和 prod,但它们的目的不同:- 资源标签 (
Environment: prod):使用这些标签在您的工作区中组织和筛选资源。将资源标签应用于追踪项目、数据集和其他资源(包括提示),以按环境对它们进行分组,从而在用户界面中实现筛选。 - 提交标签 (
prod标签):使用这些标签来管理您的代码引用的提示版本。提交标签是指向提示历史记录中特定提交的标签。当您的代码按标签名称拉取提示时(例如client.pull_prompt("prompt-name:prod")),它会检索该标签当前指向的提交。要将提示从staging提升到prod,请将提交标签移动到指向所需的版本。
用量和计费
数据保留
本节介绍数据保留在 LangSmith 中的工作原理及其计费方式。保留的重要性
- 隐私:许多数据隐私法规,例如欧洲的 GDPR 或加利福尼亚州的 CCPA,要求组织在个人数据不再用于收集目的时将其删除。设置保留期限有助于遵守此类法规。
- 成本:LangSmith 对数据保留时间短的追踪收费较低。更多信息,请了解如何强制执行支出限制。
工作原理
LangSmith 根据数据保留有两个追踪层级,具有以下特征: 保留期结束后的数据删除 在指定的保留期结束后,追踪将无法在追踪项目用户界面或通过 API 访问。与追踪相关的所有用户数据(例如输入和输出)将在此后一天内从我们的内部系统中删除。与每个追踪相关的一些元数据可能会无限期保留,用于分析和计费目的。 数据保留自动升级 当您将某些功能与基础 层级的追踪一起使用时,它们的数据保留将自动升级到 扩展 层级。这将增加保留期限和追踪的成本。
追踪将在以下情况下自动升级的完整场景列表:
- 向追踪(或线程中的任何追踪)上的任何运行添加反馈,无论是通过手动标注、使用在线评估器自动添加,还是通过 SDK 以编程方式添加。
- 标注队列 收到来自追踪的任何运行。
- 自动化规则 匹配追踪内的任何运行。
- 我们认为匹配任何这些条件的追踪从根本上比其他追踪更有趣,因此用户能够将它们保留更长时间是有益的。
- 从哲学上讲,我们希望为可能没有进行有意义交互的追踪收取低一个数量级的费用。我们认为自动升级使我们的定价模型与 LangSmith 带来的价值保持一致,只有具有有意义交互的追踪才会以更高的费率收费。
- 标注队列、运行规则和反馈:使用这些功能的追踪将被自动升级。
- 监控:即使在基础层级追踪的数据保留期结束后,监控选项卡仍将继续工作。它由存在超过 30 天的追踪元数据提供支持,这意味着您的监控图表即使在
基础层级的追踪上也将保持准确。 - 数据集:数据集具有无限期的数据保留期限。换句话说,如果您将追踪的输入和输出添加到数据集中,它们将永远不会被删除。我们建议,如果您使用 LangSmith 进行数据收集,请利用数据集功能。
计费模型
可计费指标 在您的 LangSmith 发票上,您将看到我们收费的两个指标:- LangSmith 追踪(基础费用)
- LangSmith 追踪(扩展数据保留升级)。
基础 层级和 扩展 层级追踪的数量?
虽然我们理解这样会更直接,但它不能正确适应追踪升级。考虑一个在 6 月 30 日记录的 基础 层级追踪,并在 7 月 3 日升级到 扩展 层级。基础 层级追踪发生在 6 月的计费周期,但升级发生在 7 月的计费周期。因此,我们需要能够独立测量这两个事件,以便正确向客户收费。
如果您的追踪是作为扩展保留追踪记录的,那么 基础 和 扩展 指标将使用相同的时间戳记录。
成本细分
追踪的基础费用为每条追踪 0.05 美分。我们将升级定价为 扩展 保留追踪的成本是基础层级追踪的 10 倍(每条追踪 0.50 美分),包括两个指标。因此,每次升级的成本为 0.45 美分。
速率限制
LangSmith 设有速率限制,旨在确保所有用户的服务稳定性。 为确保访问和稳定性,在以下情况下,LangSmith 将响应 HTTP 状态码 429,表示已超过速率或用量限制:在我们的应用程序负载均衡器上,1 分钟内的临时吞吐量限制
此 429 是由于在 1 分钟窗口内,每个服务密钥或 PAT 的 API 调用次数超过了固定数量。窗口的开始时间会略有不同——不保证从时钟分钟的开始开始——并且可能会根据应用程序部署事件而变化。 在收到最大事件数后,我们将响应 429,直到达到评估窗口开始后的 60 秒,然后该过程重复。 此 429 由我们的应用程序负载均衡器抛出,是所有 LangSmith 用户(与计划层级无关)为确保所有用户的服务连续性而设置的机制。| 方法 | 端点 | 限制 | 窗口 |
|---|---|---|---|
DELETE | /sessions* | 30 | 1 分钟 |
POST 或 PATCH | /runs* | 5000 | 1 分钟 |
GET | /runs/:id | 30 | 1 分钟 |
POST | /feedbacks* | 5000 | 1 分钟 |
* | * | 2000 | 1 分钟 |
LangSmith SDK 采取措施,通过将来自单个会话 ID 的至多 100 次运行批量处理为单个 API 调用,以最大限度地降低在运行相关端点上达到这些限制的可能性。
计划级别的每小时追踪事件限制
此 429 是由于达到您每小时的最大事件摄入量,并在 UTC 每个时钟小时开始时的一个固定窗口中进行评估,并在每个新小时的开始时重置。 此上下文中的事件是运行的创建或更新。如果运行在同一小时内创建并随后更新,则会计为该限制的 2 个事件。 此限制由我们的应用程序抛出,并因计划层级而异,我们的 Startup/Plus 和企业计划层级的组织比我们的免费和开发者计划层级(专为个人使用设计)具有更高的每小时限制。| 计划 | 限制 | 窗口 |
|---|---|---|
| 开发者(未绑定支付方式) | 50,000 个事件 | 1 小时 |
| 开发者(已绑定支付方式) | 250,000 个事件 | 1 小时 |
| Startup/Plus | 500,000 个事件 | 1 小时 |
| 企业 | 自定义 | 自定义 |
计划级别的每小时追踪数据摄入限制
此 429 是由于达到您的追踪输入、输出和元数据中摄入的最大数据量,并在 UTC 每个时钟小时开始时的一个固定窗口中进行评估,并在每个新小时的开始时重置。 通常,输入、输出和元数据在运行创建和更新事件中都会发送。如果运行在 2.0MB 时创建,并在同一小时内更新到 3.0MB,则会计为该限制的 5.0MB 存储量。 此限制由我们的应用程序抛出,并因计划层级而异,我们的 Startup/Plus 和企业计划层级的组织比我们的免费和开发者计划层级(专为个人使用设计)具有更高的每小时限制。| 计划 | 限制 | 窗口 |
|---|---|---|
| 开发者(未绑定支付方式) | 500MB | 1 小时 |
| 开发者(已绑定支付方式) | 2.5GB | 1 小时 |
| Startup/Plus | 5.0GB | 1 小时 |
| 企业 | 自定义 | 自定义 |
计划级别的每月唯一追踪限制
此 429 是由于达到您每月最大追踪摄入量,并在 UTC 每个日历月开始时的一个固定窗口中进行评估,并在每个新月的开始时重置。 此限制由我们的应用程序抛出,仅适用于未绑定支付方式的开发者计划层级。| 计划 | 限制 | 窗口 |
|---|---|---|
| 开发者(未绑定支付方式) | 5,000 条追踪 | 1 个月 |
自行配置的每月用量限制
此 429 是由于达到您的组织管理员配置的用量限制,并在 UTC 每个日历月开始时的一个固定窗口中进行评估,并在每个新月的开始时重置。 此限制由我们的应用程序抛出,并根据组织的配置设置而异。每条追踪的最大运行次数
Each trace is limited to a maximum of 25,000 runs. Once the trace reaches this limit, LangSmith will reject any additional runs that you send for that trace.运行查询端点
POST /runs/query 端点根据查询参数有额外的按租户速率限制。详情请参阅使用 SDK 查询追踪。
在您的应用程序中处理 429 响应
由于某些 429 响应是暂时的,并且可能在后续调用中成功,如果您直接在应用程序中调用 LangSmith API,我们建议实施带有指数退避和抖动的重试逻辑。 为方便起见,使用 LangSmith SDK 构建的 LangChain 应用程序内置了此功能。需要注意的是,如果您长时间使端点饱和,重试可能无效,因为您的应用程序最终会积压大量请求,耗尽所有重试次数。如果是这种情况,我们希望能更具体地讨论您的需求。请通过 LangSmith 支持 联系支持人员,提供有关您的应用程序吞吐量需求的详细信息以及示例代码,我们可以与您合作,更好地了解最佳方法是修复错误、更改应用程序代码还是选择不同的 LangSmith 计划。
用量限制
LangSmith 允许您配置追踪的用量限制。请注意,这些是用量限制,而不是支出限制,这意味着它们允许您限制某些事件的发生次数,而不是您将花费的总金额。 LangSmith 允许您设置两种不同的每月限制,反映了我们在前述数据保留指南中讨论的可计费指标:- 所有追踪限制
- 扩展数据保留追踪限制
用量限制的特性
用量限制是近似值,这意味着我们不保证限制的精确性。在极少数情况下,在用量限制开始应用之前,可能会有少量时间处理超出限制阈值的额外追踪。扩展数据保留追踪限制的副作用
扩展数据保留追踪限制有副作用。如果已达到限制,任何可能导致追踪层级自动升级的功能将变得不可访问。这是因为追踪的自动升级将导致创建另一个扩展保留追踪,而这反过来不应被限制允许。因此,您将无法再:- 匹配运行规则
- 向追踪添加反馈
- 将运行添加到标注队列
更新用量限制
用量限制可以从设置页面下的用量和计费中更新。限制值会被缓存,因此可能需要一两分钟才能应用新的限制。
相关内容
- 关于如何强制执行支出限制的教程
附加资源
- 发布版本:了解 LangSmith 的版本支持政策,包括活跃、关键、生命周期终止和已弃用的支持级别。
Connect these docs to Claude, VSCode, and more via MCP for real-time answers.

