在 AWS 上运行 LangSmith 时 亚马逊云科技 (AWS), self-hosted 模式会部署一个完整的 LangSmith 平台及其可观测性功能。
本页面提供:
- - 初始设置步骤 用于部署到 EKS、配置托管服务以及设置身份验证。
- - AWS 特定架构模式 以及参考图表。
- - 服务建议 以及最佳实践。
- - AWS 架构完善的最佳实践 涵盖运维卓越性、安全性和可靠性。
初始设置
Deploy to Kubernetes
请遵循 Kubernetes 安装指南。LangSmith 已在 Amazon Elastic Kubernetes Service (EKS) 上进行了测试。
EKS 特定注意事项: - 确保已安装 EBS CSI Driver 以支持持久化存储 - 使用 ebs.csi.aws.com 存储类 provisioner
Configure external services
对于生产部署,请连接到 AWS 托管服务:
Amazon S3
将追踪数据存储在 S3 中
Amazon RDS
PostgreSQL 数据库
Amazon ElastiCache
使用 Redis 或 Valkey 进行缓存
ClickHouse Cloud
分析数据库
Set up authentication
使用 IAM Roles for Service Accounts (IRSA) 对 LangSmith Pod 进行 AWS 服务身份验证,而无需使用静态凭证。
关键页面: - S3 IRSA 配置 - RDS IAM 身份验证 - ElastiCache IAM 身份验证
完成这些初始设置步骤后,您可以查看下面的完整 AWS 架构和最佳实践。
参考架构
我们建议利用 AWS 的托管服务来提供一个可扩展、安全且有弹性的平台。以下架构适用于自托管以及混合部署模式,并符合 AWS 架构完善框架:
- **入口与网络**:请求通过 Amazon Application Load Balancer (ALB) 进入您的 VPC,并使用 AWS WAF 和 IAM基于 OIDC 的身份验证进行保护。 - **前端和后端服务:** 容器运行在 Amazon EKS,通过 ALB 进行编排。根据需要将请求路由到集群内的其他服务。 - **存储和数据库:** - Amazon RDS for PostgreSQL or Aurora:元数据、项目、用户,以及已部署代理的短期和长期记忆。LangSmith 支持 PostgreSQL 14 或更高版本。 - Amazon ElastiCache (Redis 或 Valkey):缓存和作业队列。ElastiCache 可以采用单实例或集群模式。LangSmith 需要 Redis OSS 5.0 或更高版本,或 Valkey 8。 - ClickHouse + Amazon EBS:分析和追踪存储。 - 我们建议使用 外部托管的 ClickHouse 解决方案 除非出于安全或合规原因 无法使用外部托管解决方案。 - 混合部署不需要 ClickHouse。 - Amazon S3:用于追踪工件和遥测数据的对象存储。
- LLM 集成: 可选代理请求至 Amazon Bedrock or Amazon SageMaker 进行 LLM 推理。
- 监控与可观测性: 与...集成 Amazon CloudWatch
计算选项
LangSmith根据您的需求支持多种计算选项:
| 计算选项 | 描述 | 适用于 |
|---|---|---|
| **弹性 Kubernetes 服务(首选)** | 高级扩展和多租户支持 | 大型企业 |
| **EC2-based** | 完全控制、自建基础设施 | 受监管或气隙环境 |
AWS 架构完善最佳实践
本参考旨在与 AWS 架构完善框架的六大支柱保持一致:
卓越运营
- - 使用 IaC (CloudFormation / Terraform).
- - 使用 AWS Systems Manager Parameter Store 进行配置。
- - 配置您的 LangSmith 实例以 导出遥测数据 并通过...持续监控 CloudWatch Logs.
- - 管理 LangSmith 部署 的首选方法是创建一个构建 Agent Server 镜像并将其推送到 ECR在将新版本部署到预发布或生产环境之前,为拉取请求创建测试部署。
安全性
- - 使用 IAM 具有最小权限策略的角色。
- - 启用静态加密 (RDS, S3,ClickHouse 卷) 和传输中加密 (TLS 1.2+)。
- - 与 AWS Secrets Manager 集成以管理凭据。
- - 使用 Amazon Cognito 作为身份提供商,结合 LangSmith 内置的身份验证和授权功能来保护对代理及其工具的访问安全。
可靠性
- - 复制 LangSmith 数据平面 跨区域:在不同区域将相同的数据平面部署到 Kubernetes 集群以实现 LangSmith 部署。部署 RDS 和 ECS 服务跨 Multi-AZ.
- - 实施 auto-scaling 用于后端工作程序。
- - 使用 Amazon Route 53 运行状况检查和故障转移策略。
性能效率
- - 利用 EC2 实例以优化计算。
- - 使用 S3 Intelligent-Tiering 存储不频繁访问的跟踪数据。
成本优化
- - Right-size EKS 集群使用 Compute Savings Plans.
- - 使用 AWS Cost Explorer dashboards.
可持续性
- - 通过按需计算最大限度地减少闲置工作负载。
- - 在低延迟、低成本层级中存储遥测数据。
- - 为非生产环境启用自动关闭。
安全性和合规性
LangSmith 可配置为:
- - PrivateLink专有访问(无公共互联网暴露,除计费所需的出口外)。
- - KMS基于加密密钥用于 S3、RDS 和 EBS。
- - 审计日志到 CloudWatch 和 AWS CloudTrail.
客户可部署在 GovCloud、ISO 或 HIPAA 区域(如需要)。
监控和评估
使用 LangSmith:
- - 捕获在 Bedrock or SageMaker.
- - 上运行的 LLM 应用的跟踪。 LangSmith 数据集.
- - 追踪延迟、令牌使用情况和成功率。
集成方式:
- - AWS CloudWatch dashboards.
- - OpenTelemetry 和 Prometheus exporters.