模型配置定义了 LangSmith 功能调用 AI 提供商时使用的模型和参数。一个单一的共享配置库贯穿整个工作区,因此您创建的任何配置都可以在以下功能中使用,无需重复创建: 工作区管理员可以创建、编辑和删除配置,并控制每个功能可用的提供商和模型。非管理员成员可以查看配置,但无法修改。 配置也可以携带 OAuth 客户端凭据,这样 LangSmith 会在请求时针对您的身份提供商 (IdP) 签发短期的承载令牌,而不是使用静态的 API 密钥。

功能访问

功能访问表独立控制每个 LangSmith 功能的提供商和模型可用性。 所有功能都支持自定义工作区配置,因此您可以使用任何提供商或模型——即使是默认显示精选列表的功能也是如此。
洞察 使用两个独立的行——一个用于分析,一个用于摘要生成。如果您为任一行选择了不兼容的提供商或非推荐的模型,界面会显示警告。

配置功能访问

要在界面中配置功能访问:
  1. 导航至 设置 > 模型配置。
  2. 在 功能访问 表中,找到您要配置的功能。
  3. 点击 启用的提供商 并为该功能启用或禁用提供商。
  4. 点击 可用模型 并选择用户可以从中选择的模型。
  5. 使用 默认模型 下拉菜单设置用户打开该功能时预选的模型。
在 设置 > 模型提供商 中被整个组织禁用的提供商在此表中显示为锁定状态,并且无法在每个工作区重新启用。请参阅组织范围的提供商控制。

组织范围的提供商控制

提供商的可用性在两个级别上控制:
  • 组织(组织管理员):为整个组织(每个工作区和每个功能)启用或禁用提供商。在 设置 > 模型提供商 中管理。
  • 工作区(工作区管理员):上面的功能访问表,用于控制单个工作区内每个功能的提供商和模型可用性。
组织级别优先。被组织禁用的提供商在所有工作区和功能中都不可用,并在每个工作区的功能访问表中显示为锁定状态——工作区管理员可以看到它,但无法重新启用。工作区只能从组织允许的提供商中选择。 管理组织范围的提供商需要组织管理员角色(organization:manage 权限),适用于 LangSmith 云版和自托管版的组织(非个人账户)。

为组织禁用提供商

  1. 导航到 设置 下的模型提供商页面。
  2. 切换提供商的开关以将其禁用或重新启用。

配置

配置表是您工作区的命名模型配置共享库。您在 LangSmith 中创建的配置(包括从沙盒创建的)都会显示在这里,您可以在所有功能中重复使用它们。

创建配置

  1. 导航至 设置 > 模型配置。
  2. 在 配置 下,点击 + 创建。
  3. 选择 提供商 和 模型。
  4. 输入 API 密钥名称——这是存储提供商 API 密钥的工作区密钥的名称。
  5. 根据需要调整参数。参数按以下部分分组:
    • 标准采样设置:温度、top P、top K、存在惩罚、频率惩罚、最大输出令牌
    • 推理:推理强度、服务层级
    • 提供商配置:提供商 API、基础 URL
    • 选项:停止序列、种子、JSON 模式、额外头部、每秒请求数、额外参数
    可用参数因提供商而异——详情请参考您的提供商文档。
  6. 点击 保存。

编辑配置

  1. 在 配置 表中,点击配置旁边的溢出菜单 。
  2. 选择 编辑。
  3. 更新配置并点击 保存。

删除配置

  1. 在 配置 表中,点击配置旁边的溢出菜单 。
  2. 选择 删除 并确认。

OAuth 客户端凭据

OAuth 客户端凭据适用于 LangSmith 云版和运行版本 0.16.0-rc.6 或更高版本的自托管版部署。
当模型配置位于 OAuth2 网关之后时,您可以直接在配置上存储 OAuth client_credentials,而不是分发静态的 API 密钥。LangSmith 在请求时将这些凭据交换为短期的承载令牌,将其作为 Authorization: Bearer <token> 附加到出站的 LLM 调用上,并在令牌过期前刷新它。这是一种按配置、自助服务的替代方案,用于替代通过 LLM 认证代理路由工作区;两者在每个配置上是互斥的。 OAuth 客户端凭据适用于支持自定义模型配置的所有计划。使用自定义 OAuth 开关适用于承载令牌提供商(OpenAI、Anthropic、OpenAI 兼容端点及类似服务),不支持使用原生云身份验证的 Bedrock、Google Vertex AI 或 Google GenAI。对于 LangServe (已弃用) 预设,该开关也会隐藏。

在模型配置上配置 OAuth

配置 OAuth 需要工作区管理员角色,或者具有 workspaces:manage-model-configs 权限的自定义角色。没有此权限的成员会看到 OAuth 字段被禁用,并显示掩码的密钥提示。在 LangSmith 界面中:
  1. 导航至 设置 > 模型配置,然后点击 + 创建 或通过溢出菜单 > 编辑 打开现有行。
  2. 选择一个兼容的提供商,并像往常一样配置模型参数。
  3. 打开 使用自定义 OAuth 开关。
  4. 填写 OAuth 字段:
    • 令牌 URL:身份提供商令牌端点,例如 https://login.example.com/oauth/token。
    • 客户端 ID:OAuth 客户端标识符。
    • 客户端密钥:OAuth 客户端密钥。静态加密存储。
    • 令牌端点认证方法:client_secret_basic 或 client_secret_post。
    • 额外参数:在令牌请求正文中发送的键/值行。使用这些行来设置 scope、audience、resource 或身份提供商期望的任何其他参数。当发送多个作用域时,为每个值添加一行;重复的键将作为多值对发送。
    • 额外头部:随令牌请求发送的附加头部。Authorization 等保留头部在保存时会被拒绝。
  5. 点击 保存。
LangSmith 设置中的模型配置创建模态框,已启用使用自定义 OAuth,显示了令牌 URL、客户端 ID、掩码的客户端密钥以及设置为 HTTP Basic 的令牌端点认证方法。

编辑语义

OAuth 字段遵循保护存储密钥的编辑行为:
  • 密钥往返:服务器返回密钥显示为 ********。输入框渲染为空,并显示 “密钥已设置。键入以替换。” 提示。不重新输入就提交会保留存储的密钥不变。
  • 关闭开关保留凭据:关闭 使用自定义 OAuth 开关会停用 OAuth 流程,但保留存储的字段。重新打开开关会恢复使用相同的凭据。
  • 清除字段:编辑配置并将字段留空以显式清除它。
  • 通过“另存为预设”克隆:当您将一次性配置保存为新预设时,非机密的 OAuth 字段会复制到新行中。机密无法传输,因为它永远不会被读取暴露,因此在克隆时 OAuth 会被强制禁用,直到您重新输入密钥。

请求流程

当请求针对启用了 OAuth 的配置运行时,LangSmith 通过内部代理签发一个承载令牌,缓存结果,并在缓存令牌过期前将其附加到每个出站的 LLM 调用上。 在 OAuth 和 LLM 认证代理之间的路由是按配置进行的,而不是按组织。每个请求根据配置的 OAuth 状态解析为使用 OAuth 或 LLM 认证代理。一个单一的多模型作业(例如,具有独立分析模型和摘要模型的洞察)可以混合使用这两种流程,因为每个模型是独立解析的。

回退行为

如果代理无法签发令牌(IdP 不可达、凭据无效、配置在请求准备和执行之间被删除),请求将回退到该提供商的静态工作区 API 密钥。如果没有设置工作区密钥,则在出站调用时预期会出现提供商 401 错误。 令牌轮换仅在缓存的承载令牌过期后才生效。请围绕身份提供商配置的访问令牌 TTL 来计划轮换。

覆盖范围

启用 OAuth 的配置在消耗模型配置的任何地方都会被遵循:
  • 沙盒:聊天运行和实验运行。
  • 评估器:当每个提示都解析为启用 OAuth 的配置时,LLM-as-judge 配置、复用、预览测试和评估器详细测试都会跳过工作区密钥提示。
  • 洞察:分析和摘要配置是独立解析的。
  • 聊天
  • 机群
当配置启用了 OAuth 时,LangSmith 不会提示输入该配置的工作区密钥,因为代理会在请求时提供凭据。

安全与审计

  • 静态加密:客户端密钥使用 Fernet 加密,其密钥派生方式与工作区密钥相同。
  • 承载令牌缓存:访问令牌被缓存直至过期,并且永远不会写入日志。

常见问题

不能。OAuth 凭据存储在模型配置上,该配置是工作区范围的。每个工作区都输入自己的凭据,即使凭据指向同一个身份提供商客户端。
如果代理无法签发承载令牌(IdP 不可达、凭据无效、配置在请求准备和执行之间被删除),请求将回退到该提供商的静态工作区 API 密钥。请重新打开模型配置并验证令牌 URL 是否可达、客户端 ID 和密钥是否为最新、令牌端点认证方法是否与您的身份提供商期望的相匹配。
编辑模型配置并在 客户端密钥 字段中重新输入密钥。保存后,之前的密钥将被覆盖。Redis 缓存的承载令牌将继续工作,直到其 TTL 过期,之后代理将使用轮换后的密钥签发新的承载令牌。
可以。路由是按配置进行的。启用了 OAuth 的配置使用 OAuth;未启用 OAuth 的配置在组织级别启用了代理时,会回退到 LLM 认证代理。一个单一的多模型作业可以混合使用这两种流程。