AI 可观测性演示
多云 AI 原生全栈可观测性平台,用于监控 LLM 工作负载。
快速开始
先决条件
- 具有 Bedrock 访问权限的 AWS 账户。此演示在 us-east-1 中使用 Claude 3 Haiku/Sonnet,但您可以通过更新
gateway/litellm-config.yaml中的模型 ID 来替换任何 Bedrock 支持的模型。可观测性管道与模型无关,可与 LiteLLM 支持的任何 LLM 提供商配合使用。 - 配置了 AdministratorAccess 的 AWS CLI
- Docker Desktop 正在运行
- Docker Compose v2
- Python 3.11+
- Terraform 1.5.0+
阶段 1:基础设施部署
cd AI-OBS_DEMO/terraform
terraform init
terraform plan -out=tfplan
terraform apply tfplan
# 捕获输出
export AMP_WORKSPACE_ID=$(terraform output -raw amp_workspace_id)
export AMP_REMOTE_WRITE_URL=$(terraform output -raw amp_remote_write_url)
export AMP_ENDPOINT=$(terraform output -raw amp_endpoint)
阶段 2:环境配置
cd ..
cp .env.example .env
# 使用您的 AWS 凭证和 Terraform 输出编辑 .env
# 添加:
# - AWS_ACCESS_KEY_ID
# - AWS_SECRET_ACCESS_KEY
# - AWS_SESSION_TOKEN(如果使用临时凭证)
# - AMP_REMOTE_WRITE_URL(来自 Terraform)
# - AMP_ENDPOINT(来自 Terraform)
阶段 3:构建和启动
# 构建所有服务
docker compose build
# 启动堆栈
docker compose up -d
# 验证服务
docker compose ps
# 检查 OTEL Collector 健康状态
curl http://localhost:13133
# 运行演示并查看日志
docker compose logs -f ai-app
阶段 4:验证遥测数据
# 安装 awscurl
pip3 install awscurl
# 查询 AMP 的 token 使用情况
awscurl --service aps --region us-east-1 \
"${AMP_ENDPOINT}api/v1/query?query=gen_ai_usage_input_tokens_total"
# 在 AWS 控制台中检查 X-Ray traces
# 导航到:X-Ray > Traces > 按服务筛选:ai-observability-demo
# 检查 CloudWatch logs
# 导航到:CloudWatch > Log Groups > /ai-observability-demo
阶段 5:Grafana Dashboard
- 打开 AWS 控制台 → Amazon Managed Grafana → ai-可观测性-demo
- 点击 "Open Grafana"
- 添加数据源:
- Prometheus:使用 AMP endpoint 和 SigV4 认证
- CloudWatch:设置为您资源所在的区域
- X-Ray:设置为与 CloudWatch 相同的区域
- 导入 dashboard:
grafana/dashboards/ai-observability.json