fencer666 2024-04-19 16:02 采纳率: 0%
浏览 14

针对大数据量和高并发数的AI数字人的服务器搭建

公司现在准备针对数字人的使用对象为ToC(不是短视频和直播),每个人都可以在系统中生成多个数字人
数字人的主要功能包括:
1、根据形象、声音生成数字人
2、真人可以与数字人进行话语沟通
3、可以投喂数据,使数字人个性化
那意味着数字人的生成、访问的并发数都会大量增加,服务器端的算力会要求很高,请问AI服务器如何来搭建,才能费用低、性能好呢,没有弄过,现在思考的方法如下:
1、直接到如阿里云这种服务商租赁AI服务器和向量数据库,但不知道如何选择服务器的配置和数量(涉及到GPU的算力)。
2、是否可以搭建私有化服务器,嫁接到外网,然后应用程序来访问,那这服务器的配置和数量又要怎么选择。
举例以并发数100的情况来考虑,或者除了以上两种方式之外还有更加好的方式,解答越详细越好,先谢谢各位啦

  • 写回答

5条回答 默认 最新

  • 专家-赤兔[在线] 全栈领域优质创作者 2024-04-19 16:02
    关注

    引自免费微信小程序:皆我百晓生

    要搭建一个支持大规模并发和处理复杂AI任务的服务器集群,你需要考虑以下几个关键因素:计算资源、存储需求、网络带宽、负载均衡、数据安全以及成本效益。这里我会提供一种详细的方案,包括硬件选择、软件配置和云服务建议。

    1. 硬件选择

    对于高并发的AI数字人应用,你需要高性能的CPU、大量的内存、足够的存储空间以及高效的GPU来进行深度学习模型的推理和训练。以下是基本配置建议:

    • CPU: 选择多核的Xeon或Epyc处理器,比如Intel Xeon Platinum 8380或AMD EPYC 7763,这些处理器具有出色的多线程性能。
    • 内存: 至少64GB起,根据实际需求可能需要更多,例如256GB或更高,确保有足够的内存来运行大型模型和缓存数据。
    • GPU: 针对自然语言处理和语音识别,NVIDIA Tesla V100或A100是不错的选择,它们提供了强大的张量核心用于加速深度学习任务。至少每台服务器配备1-2块GPU。
    • 存储: 使用SSD作为操作系统和主要应用程序的存储,同时使用高速磁盘阵列(RAID)或NVMe SSD阵列作为数据存储,如Intel Optane DCPMM或PCIe NVMe SSD。
    • 网络: 高速InfiniBand或RoCE(RDMA over Converged Ethernet)网络卡,确保服务器间的数据传输速度。
    • 服务器数量: 根据并发数和每个用户平均使用的资源来决定。初期可以考虑至少3-5台服务器,随着并发数的增长,可以通过横向扩展添加更多的服务器。

    2. 软件配置

    • 操作系统: Linux发行版,如Ubuntu Server或CentOS,它们都有很好的社区支持,并且适合部署AI工作负载。
    • 中间件: Docker用于容器化应用和服务,Kubernetes用于容器编排和管理。
    • 数据库: 使用分布式键值存储(如Redis或Memcached)用于缓存频繁访问的数据,关系型数据库(如PostgreSQL或MySQL)存储持久化数据。
    • 框架和库: TensorFlow、PyTorch或Keras等深度学习框架,用于模型的开发和推理。
    • 监控和日志: Prometheus和Grafana用于监控,ELK Stack(Elasticsearch, Logstash, Kibana)用于日志分析。
    • 安全性: 安全组设置、防火墙规则、SSL/TLS加密等,保护服务器免受攻击。

    3. 云服务建议

    如果你不想自己维护物理服务器,可以考虑使用公有云服务,如阿里云、AWS、Google Cloud或Azure。他们提供弹性的实例类型、自动伸缩服务、GPU实例、负载均衡器和存储服务。具体选择可以根据预算、地域、API支持等因素决定。

    • 实例选择: 在上述硬件配置基础上,选择相应的云服务器实例类型,例如阿里云的神龙系列或GPU实例。
    • 负载均衡: 利用云服务商提供的负载均衡服务,如阿里云的SLB,将流量分发到不同的服务器上,保证系统的稳定性和可用性。
    • 数据库服务: 使用云数据库服务,如RDS,避免手动维护数据库集群。
    • 存储服务: 使用云对象存储服务,如OSS,存储大文件和备份数据。

    4. 成本优化

    • 预留实例: 预付费购买实例,通常比按需付费更便宜。
    • ** spot实例**: 如果应用能容忍偶尔中断,使用竞价实例可节省大量费用。
    • 自动缩放: 根据实时负载动态调整实例数量,减少闲置资源。
    • 定期审计: 监控资源使用情况,避免浪费。

    5. 架构设计

    • 微服务架构: 将应用拆分为独立的服务,如图像生成、语音识别、数据存储等,便于扩展和维护。
    • 消息队列: 如RabbitMQ或Kafka,处理异步任务,降低主应用的压力。
    • CDN: 如果内容适合,使用内容分发网络加速全球用户的访问。

    在实现过程中,你可能需要一个专业的DevOps团队来协助完成服务器的搭建、配置和运维。此外,持续监控和优化系统性能也很重要,以便及时发现并解决潜在的问题。

    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 4月19日

悬赏问题

  • ¥15 35114 SVAC视频验签的问题
  • ¥15 impedancepy
  • ¥15 在虚拟机环境下完成以下,要求截图!
  • ¥15 求往届大挑得奖作品(ppt…)
  • ¥15 如何在vue.config.js中读取到public文件夹下window.APP_CONFIG.API_BASE_URL的值
  • ¥50 浦育平台scratch图形化编程
  • ¥20 求这个的原理图 只要原理图
  • ¥15 vue2项目中,如何配置环境,可以在打完包之后修改请求的服务器地址
  • ¥20 微信的店铺小程序如何修改背景图
  • ¥15 UE5.1局部变量对蓝图不可见