Latitude-LLM自托管部署完全指南:在生产环境中运行您的AI平台

【免费下载链接】latitude-llm Latitude is the open-source prompt engineering platform to build, evaluate, and refine your prompts with AI 【免费下载链接】latitude-llm 项目地址: https://gitcode.com/gh_mirrors/la/latitude-llm

Latitude-LLM是一款开源的提示工程平台,可帮助您构建、评估和优化AI提示。本指南将详细介绍如何在生产环境中自托管部署Latitude-LLM,让您拥有一个功能完备的AI平台。

基础设施组件

在开始部署之前,了解Latitude-LLM的基础设施组件至关重要。一个典型的生产部署包括以下关键服务:

  1. Web应用:主要的Next.js前端(例如app服务)
  2. API网关:处理传入的API请求(例如gateway服务)
  3. 工作节点:处理后台任务,如评估和数据集生成(例如worker服务)
  4. WebSockets:管理实时连接(例如websockets服务)
  5. 数据库:PostgreSQL用于存储持久数据
  6. 缓存/队列:Redis用于缓存和消息队列
  7. 反向代理/负载均衡器:(如Traefik、Nginx、Caddy、云负载均衡器)处理传入流量、SSL终止和服务路由
  8. 对象存储(推荐):S3兼容存储,用于上传的数据集或图像等文件

Latitude-LLM架构图 Latitude-LLM架构示意图,展示了Orchestrator如何协调多个LLM调用并将结果合成输出

安装方法

虽然可以在单台机器上使用docker compose运行Latitude,但生产部署通常受益于更健壮的方法:

Docker Compose(单服务器)

  • 优点:对于小型部署或初始测试,设置简单
  • 缺点:可扩展性和容错能力有限
  • 设置:按照Docker Compose说明操作,确保.env文件中配置了生产就绪的设置(强密码、S3存储、通过Traefik或其他代理的正确域名/SSL设置)
# 确保.env为生产环境配置
git clone https://gitcode.com/gh_mirrors/la/latitude-llm
cd latitude-llm
cp .env.example .env
# 编辑.env文件,设置生产环境值(数据库凭据、S3、Traefik电子邮件、域名等)
docker network create web # 如果使用Traefik默认配置
docker compose -f docker-compose.yml -f docker-compose.prod.yml up -d

注意:我们只提供amd64镜像,如果您使用的是搭载Apple Silicon的Mac OS,需要启用amd64模拟并下载amd64镜像。

容器编排(Kubernetes、ECS等)

  • 优点:可扩展性、高可用性、自动化管理
  • 缺点:初始设置较为复杂
  • 设置:需要为每个Latitude服务(web、gateway、worker、websockets)创建部署清单(如Kubernetes YAML、ECS任务定义)。需要单独管理数据库和Redis实例(如使用托管云服务如RDS/ElastiCache或在编排器内部署)

Helm Chart(OCI)

图表通过工作流.github/workflows/publish-helm-chart.yml自动发布到GitHub容器注册表,标签匹配helm-chart-v*。安装命令如下:

helm install latitude oci://ghcr.io/<owner>/latitude \
  --version <version> \
  -n latitude --create-namespace \
  -f charts/latitude/values.yaml \
  -f charts/latitude/values.secrets.yaml

生产环境配置

无论采用哪种方法,都需确保正确配置以下内容:

  • .env文件:设置强POSTGRES_PASSWORD,配置APP_DOMAINAPP_URL,设置MAIL_TRANSPORT(如SMTP、Mailgun)并提供有效凭据,配置DRIVE_DISK(推荐s3
  • 存储:使用S3兼容的对象存储(DRIVE_DISK=s3)以实现可扩展性和持久性。安全配置存储桶名称和IAM角色或访问密钥
  • 数据库和Redis:使用托管服务(RDS、ElastiCache、Memorystore)或确保自托管实例针对性能、备份和安全性进行了适当配置
  • Latitude分析:我们收集匿名使用数据以改进产品。您可以通过在.env文件中设置OPT_OUT_ANALYTICS=true来选择退出
  • 反向代理/SSL:配置反向代理(Traefik、Nginx等)以处理SSL终止(如使用Let's Encrypt)并将流量正确路由到Latitude服务
  • 资源分配:确保每个服务有足够的CPU、内存和磁盘空间,尤其是数据库和工作节点

连接提供程序API密钥

在自托管设置中,Latitude需要访问您的AI提供程序API密钥(OpenAI、Anthropic等)才能正常运行。

  • 配置方法:将这些密钥安全地添加到Latitude服务(特别是网关以及可能的工作节点/API)运行的环境中
    • Docker Compose:将它们添加到.env文件中(例如OPENAI_API_KEY=sk-...
    • Kubernetes:将它们存储为Kubernetes Secrets,并作为环境变量挂载到部署中
    • ECS:使用AWS Secrets Manager或Parameter Store与任务定义集成
  • Latitude UI:一旦在环境中配置,您可能仍需要在Latitude管理UI(设置>提供程序)中"注册"提供程序,但如果密钥在环境中可用,通常不需要直接将密钥粘贴到UI中

扩展和更新

  • 扩展:使用编排器,您可以通过增加副本数量(特别是webgatewayworkerwebsockets)来水平扩展服务。垂直扩展数据库和Redis资源,或使用可扩展的托管服务
  • 更新:从Latitude GitHub容器注册表拉取最新的官方Docker镜像(或从最新源代码构建自己的镜像)并更新部署(例如docker compose pull && docker compose up -dkubectl rollout restart deployment、更新ECS服务)
  • 迁移:确保数据库迁移在启动时自动运行(默认docker-compose.yml包含迁移服务)或在更新应用服务之前手动运行(cd packages/core && pnpm db:migrate

Latitude-LLM实验结果 Latitude-LLM实验结果界面,展示了提示性能指标和评估结果

安全和备份

  • 安全:限制对数据库和Redis端口的访问,使用强密码,保持依赖项更新,配置防火墙规则,保护API密钥和机密
  • 备份:为PostgreSQL数据库实施定期备份。如果使用本地存储(DRIVE_DISK=local),确保存储卷已备份

监控和日志记录

  • 日志记录:配置Docker日志驱动程序或编排器日志记录,以聚合所有服务(web、gateway、worker等)的日志
  • 监控:使用Prometheus/Grafana、Datadog或云提供商监控服务等工具跟踪资源使用情况(CPU、内存)、错误率、请求延迟和队列长度
  • 健康检查:在负载均衡器或编排器中配置健康检查端点,以监控服务可用性
  • 可选集成:在.env中配置Sentry(SENTRY_DSN)或PostHog以增强错误跟踪和分析

自托管MCP集成

如果使用通过MCP的第三方集成,您还需要在基础设施内部署和管理这些MCP服务器。

总结

通过本指南,您应该已经了解了如何在生产环境中自托管部署Latitude-LLM。无论您选择Docker Compose、Kubernetes还是其他部署方法,关键是确保正确配置安全设置、存储和监控,以确保系统的稳定运行。

Latitude-LLM提供了强大的提示工程能力,自托管部署让您可以完全控制您的AI平台,保护敏感数据并根据需要定制系统。现在,您可以开始构建、评估和优化您的AI提示,为您的应用程序提供强大的语言模型能力。

祝您部署顺利!如有任何问题,请查阅官方文档或社区支持资源。

【免费下载链接】latitude-llm Latitude is the open-source prompt engineering platform to build, evaluate, and refine your prompts with AI 【免费下载链接】latitude-llm 项目地址: https://gitcode.com/gh_mirrors/la/latitude-llm

Logo

小龙虾开发者社区是 CSDN 旗下专注 OpenClaw 生态的官方阵地,聚焦技能开发、插件实践与部署教程,为开发者提供可直接落地的方案、工具与交流平台,助力高效构建与落地 AI 应用

更多推荐