使用 DeepSeek 在云和边缘环境中进行部署2025年5月15日 | 阅读 7 分钟 引言在现代世界,人工智能技术的应用以及将人工智能模型集成到不同应用程序中已不再是什么新鲜事,而是非常普遍甚至必不可少。随着时间的推移,所有机构、组织或公司都需要在其领域取得进步,为此,它们需要响应迅速、可扩展且成本效益高的人工智能驱动解决方案,而像 DeepSeek 这样强大而非常有能力的人工智能模型可以提供这些解决方案。 DeepSeek 是一个开源的大型语言模型,它旨在用于多种用途和多样的任务,例如创意内容创作、深度研究与分析、NLP 应用、集成到聊天机器人、代码生成等。但是,要在应用程序中使用 DeepSeek,您首先需要对其进行高效部署,为此,您需要对云环境和边缘环境都有深入的了解。 在本文中,您将了解部署的整个过程、面临的挑战、过程中使用的工具以及在云和边缘环境中进行部署的最佳方法。  DeepSeek 部署需求在通过不同环境部署 DeepSeek 之前,了解其需求非常重要。 - 对于较大模型的部署,需要高计算能力的资源和硬件,例如强大的 GPU。
- 由于 DeepSeek 会被多个用户同时使用以处理各种请求,因此部署设置应在未来可扩展,以保持性能。
- 为了获得良好的响应时间和用户体验,推理时间应非常短。这可以通过模型优化、缓存策略和高效的架构来实现。
- DeepSeek 必须维护所有用户的安全和隐私。这通过安全传输(TLS/SSL)、数据加密、访问控制等方式来实现。
- 由于运行 DeepSeek 模型需要繁重的设置和操作,因此管理运营和设置成本至关重要。
 根据用例,DeepSeek 可以通过两种方式进行部署,每种方式都有其优点和局限性。 - 云环境(Azure、私有云、GCP 等)
- 边缘环境(智能手机、物联网设备、微型数据中心)
在云中部署的原因云为部署 DeepSeek 等模型提供了多种原因。 - 这些云平台提供高可扩展性,允许根据负载进行动态扩展。
- 它们提供高性能、强大的 GPU,并且 Azure ML 和 Google Vertex AI 等服务提供了非常好的硬件。
- 通过使用一些特定工具,操作得到简化并在很大程度上得到管理。这些工具包括 AWS SageMaker、Azure ML、GCP 的 AI 平台等。
- 云平台具有全球覆盖范围,其应用程序通过多区域部署服务用户。
- 这些云平台非常可靠;它们可以从任何类型的数据丢失中恢复。
在边缘部署的原因在此之前,在数据生成设备(如智能手机、无人机等)上运行 AI 模型的过程称为边缘计算。 边缘环境为部署 DeepSeek 等模型提供了多种原因。 - 它提供了非常低的延迟,这对于需要实时运行的应用程序(如自动驾驶系统、监控等)非常重要。
- 出于隐私目的,数据不应泄露到本地环境之外。
- 在没有网络、没有连接或网络昂贵的情况下,边缘环境可用于离线使用。
- 边缘计算降低了带宽成本,因为我们不需要将大量数据发送到云端。
然而,使用边缘设备有一个很大的缺点,即它们通常没有高计算资源、内存和能量。 DeepSeek 部署的注意事项在云或边缘环境中部署 DeepSeek 需要进行一些考虑和准备。这些包括: 1. 模型选择- 选择您想要的模型,并从不同的 DeepSeek 模型大小(DeepSeek-Coder、DeepSeek-1.3B、DeepSeek-7B)中进行选择。
- 量化模型和较轻量级的模型版本更适合边缘部署。
2. 模型优化这包括三件事: - 量化: 在将性能损失降至最低的同时,减小模型大小。
- 剪枝: 为了提高推理速度,它会移除所有冗余参数。
- 知识蒸馏: 训练一个较小的模型来复制或以与较大模型相同的方式工作。
3. 云端容器化这包括所有依赖项(PyTorch、HuggingFace Transformers、DeepSeek SDK)并将模型打包到 Docker 容器中。 4. API 接口创建为了便于集成,通过 RESTful 或 gRPC API 公开 DeepSeek 模型。 DeepSeek 在云中的部署 让我们看一下在 AWS 上进行高级部署的步骤。 第 1 步: 准备模型 - 使用预训练或微调的 DeepSeek 模型。
- 首先,优化模型,然后将其保存为 TorchScript、OMNX 或 HuggingFace 格式。
步骤 2 编写 Dockerfile。 DeepSeek 模型将通过 FastAPI 或 Flask 服务器由 **server.py** 公开。 步骤 3 使用 AWS CLI 将 Docker 镜像推送到 Elastic Container Registry。 第 4 步: 部署 - 对于托管容器适配,请使用 Elastic Container Service (ECS)。
- 对于基于 Kubernetes 的适配,请使用 Elastic Kubernetes Service (EKS)。
- 对于完全托管的 ML 部署,请使用 AWS SageMaker。
步骤 5 - 为了扩展目的,请使用 Auto Scaling Groups。
- 为了负载均衡,请使用 AWS Application Load Balancer 来分发流量。
DeepSeek 在边缘的部署 边缘部署需要对模型进行特殊处理。 第 1 步: 压缩模型,使其更小、更快,且不损失任何精度。 - 将模型中的数字从 FP32(32 位浮点)更改为 INT8(8 位整数)或 FP16(16 位浮点)。
- 剪枝会移除模型中所有不必要的组件,使其更快并减小其大小。
- 蒸馏是指训练一个较小的模型来模仿或复制较大模型的行为,使用更少的计算量,同时保持高性能。
第 2 步: 将模型导出为 ONNX 步骤 3 在边缘应用程序中集成和加载 ONNX 模型与 ONNX runtime。 步骤 4 通过使用 TensorRT(适用于 NVIDIA 设备)或 Core ML(适用于 iOS 设备)优化边缘运行时,以实现更快的推理。 步骤 5 通过使用 TCL 和加密模型文件来保护连接。 工具和框架 用于 DeepSeek 部署过程的工具有很多,以下是它们的列表: - Docker: 它将 DeepSeek 打包到轻量级容器中,使其可以在不同环境之间流畅运行。
- Kubernetes: 它用于管理容器化 DeepSeek 模型的操作,并自动化部署。
- ONNX: 它是一种格式,有助于 DeepSeek 模型在不同框架之间转移。
- AWS SageMaker: 它是一项云服务,有助于在无需手动服务器管理的情况下训练和部署 DeepSeek 模型。
- HuggingFace Transformer: 这是一个非常流行的库,可以轻松地对基于 Transformer 的 DeepSeek 模型进行微调、加载和提供服务。
- TorchServe: 它专门用于高效托管用 PyTorch 构建的 DeepSeek 模型。
部署中遇到的挑战即使成功部署后,在安全性、维护等方面仍会面临持续的挑战。 - 边缘设备(如手机和 IoT 设备)上的硬件资源(如内存和计算能力)是有限的。DeepSeek 模型必须经过高效压缩才能正常运行。
- 在不使用服务器的部署中,如果没有活动实例,启动新实例可能会导致延迟。
- 部署在云或边缘上的模型和 API 容易受到攻击。加密文件、保护 API 和使用身份验证至关重要。
- 部署后跟踪模型性能非常重要。以便及早检测错误并收集用户反馈以进行再训练和更新。
部署最佳实践- 持续监控模型的性能。检查其响应时间、速度、准确性(输出的正确性)和错误,以便及早发现问题,而不会降低质量。
- 通过根据用户流量自动添加或删除服务器,确保以零额外成本平稳提供服务。为此,您可以使用 AWS Auto Scaling 或 Kubernetes HPA 等云功能。
- 如果某些任务不需要即时结果,则可以一次处理多个请求,以节省成本和能源资源。
- 在记录中保存并标记不同的模型版本,以便在任何更新导致问题或出现 bug 时能够轻松切换回先前的版本。
- 在设备和服务器之间划分任务。使用快速的本地边缘设备进行快速响应(如简单的预测任务),并使用强大的云服务器处理繁重任务(如训练复杂推理)。
结论 因此,通过阅读整篇文章,您应该已经了解了在云和边缘环境中部署 DeepSeek 模型开启了无限的可能性。云部署和边缘部署各有其优势,云部署提供高计算能力和可扩展性,而边缘部署提供低延迟和隐私。通过适当的容器化、安全实践、模型优化和部署管道,DeepSeek 可以为各种应用程序提供支持,包括企业级云软件和边缘的实时嵌入式系统。 未来,DeepSeek 模型可以在没有集中收集跨多个边缘设备的数据的情况下进行训练;正在进行研究以减少 AI 模型在边缘设备的能耗;将来,云提供商可能会允许租赁优化的 DeepSeek 变体,也可能实现多模型部署,即可以在同一边缘设备或云端点部署多个模型。 随着两项技术的进步,开发人员可以利用 DeepSeek 的灵活性,不受任何限制地创建和部署新的、更高级的功能。因此,如果您正踏上部署之旅,那么过程很简单:开始行动,不断优化,并以可扩展且高效的方式进行构建。
|