【LLMOps】Paka:大模型管理应用平台部署实践

简介: 【4月更文挑战第11天】Paka大模型管理及应用平台介绍

[toc]


简介

paka 是一种多功能的 LLMOps 工具,只需一个命令即可简化大型语言模型 (LLM) 应用的部署和管理。

一、核心优势

  • 与云无关的资源预置:Paka 首先打破了云供应商锁定的障碍,目前支持 EKS,并计划扩展到更多云服务。
  • 优化模型执行:paka 专为提高效率而设计,可在 CPU 和 Nvidia GPU 上运行 LLM 模型,确保最佳性能。根据 CPU 使用率、请求速率和延迟自动扩展模型副本。
  • 可扩展的批处理作业管理:paka 擅长管理动态横向扩展和横向扩展的批处理作业,无需人工干预即可满足不同的工作负载需求。
  • 无缝应用程序部署:paka 支持将 Langchain 和 LlamaIndex 应用程序作为函数运行,提供零和备份的可扩展性,以及滚动更新以确保不会停机。
  • 全面的监控和跟踪:嵌入了对通过 Prometheus 和 Grafana 收集指标的内置支持,以及通过 Zipkin 进行跟踪。

1.运行时推理 : 当前的运行时推理是通过出色的 llama.cpp 和 llama-cpp-python 项目完成的。vLLM 支持即将推出。每个模型都在单独的模型组中运行。每个模型组都可以有自己的节点类型、副本和自动缩放策略。

2.无服务化容器 : 使用 knative 将应用程序部署为无服务器容器。但是,用户也可以将其应用程序部署到原生云产品,例如 Lambda、Cloud Run 等。

3.并行执行:可以为 celery 作业配置可选的 redis 代理。作业工作人员会根据队列长度自动缩放。

4.向量数据库:向量存储是用于存储嵌入的键值存储。Paka 支持配置 qdrant。

5.监控:Paka 内置了对监控和跟踪的支持。指标是通过 Prometheus 和 Grafana 收集的,跟踪是通过 Zipkin 完成的。用户还可以启用 Prometheus Alertmanager 进行警报。

6.持续化部署:Paka 支持通过滚动更新进行持续部署,以确保不会停机。应用程序可以构建,推送到容器注册表,并使用单个命令进行部署。

7.构建:应用程序、作业代码是使用 buildpack 构建的。无需编写 Dockerfile。但是,用户仍然需要安装 docker 运行时。

二、部署使用

1.安装paka

pip install paka

2.构建集群配置文件

aws:
  cluster:
    name: example
    region: us-west-2
    nodeType: t2.medium
    minNodes: 2
    maxNodes: 4
  modelGroups:
    - nodeType: c7a.xlarge
      minInstances: 1
      maxInstances: 3
      name: llama2-7b
      resourceRequest:
        cpu: 3600m
        memory: 6Gi
      autoScaleTriggers:
        - type: cpu
          metadata:
            type: Utilization
            value: "50"

3.构建集群

paka cluster up -f cluster.yaml -u

4.部署应用

创建Profile文件和.cnignore文件,在 Procfile 中,添加用于启动应用程序的命令。例如,对于 flask 应用程序,它将是 web: gunicorn app:app。 在 .cnignore 中,添加要在生成过程中忽略的文件。

若要固定语言运行时的版本,请添加带有版本号的runtime.txt文件。例如,对于 python,它可以是 python-3.11.*。

对于 python 应用程序,需要 requirements.txt 文件。

要部署应用程序,请运行 'paka function deploy --name --source --entrypoint 。例如:

paka function deploy --name langchain-server --source . --entrypoint serve

5.销毁集群

paka cluster down -f cluster.yaml

小节

本节我们介绍了paka以及paka的使用,Paka 使用单命令方法简化了大型语言模型 (LLM) 应用程序的部署和管理,为大语言模型的开发和部署,管理提供了更好的管理方式,本节只对paka作了简单介绍,后面我们会逐步深入学习。

小编是一名热爱人工智能的专栏作者,致力于分享人工智能领域的最新知识、技术和趋势。这里,你将能够了解到人工智能的最新应用和创新,探讨人工智能对未来社会的影响,以及探索人工智能背后的科学原理和技术实现。欢迎大家点赞,评论,收藏,让我们一起探索人工智能的奥秘,共同见证科技的进步!

目录
相关文章
|
1月前
|
Java jenkins 测试技术
云效Flow:打造高效、稳定的CI/CD流程实战指南
云效流水线Flow评测展示新建流水线步骤,包括选择模板、添加源、Java构建、主机部署及自定义任务。通过图形界面逐项配置,如代码扫描,保存后运行流水线。虽然Flow易于上手,功能丰富,支持多环境部署,但复杂项目管理稍显繁琐,社区支持需加强。对比其他CI/CD工具,Flow在成本、功能和性能上有竞争力,适合作为团队选择。
云效Flow:打造高效、稳定的CI/CD流程实战指南
|
1月前
|
前端开发 安全 JavaScript
计算机软件从 CS 模式到 BS 架构迁移背后的动因
计算机软件从 CS 模式到 BS 架构迁移背后的动因
|
10月前
|
弹性计算 API 数据库
大模型规模化落地,企业AIGC应用支持多个大语言模型(LLM)切换及GPU规划化管理(PAI-EAS + ADB-PG)
随着年初的ChatGPT引爆大语言模型市场, LLM的集中爆发,大部分企业已经完成了AIGC产品的调研,并进入第二阶段, 即寻求大规模落地的AIGC产品解决方案。本文介绍了如何企业规模化大语言模型落地,支持多个模型的快速使用,包括通义千问-7b,ChatGLM-6b,Llama2-7b ,Llama2-13b,百川-13b和Falcon-7b。
大模型规模化落地,企业AIGC应用支持多个大语言模型(LLM)切换及GPU规划化管理(PAI-EAS + ADB-PG)
|
9月前
|
人工智能 JavaScript 前端开发
SAP 智能机器人流程自动化(iRPA)解决方案分享
SAP 智能机器人流程自动化(iRPA)解决方案分享
|
人工智能 机器人 Linux
阿里云RPA(机器人流程自动化)干货系列之四:阿里云RPA产品架构
导读:本文是阿里云RPA(机器人流程自动化)干货系列之四,详细介绍了阿里云RPA产品架构和技术架构(包括客户端和服务端)等。
7381 0
|
人工智能 JavaScript 前端开发
SAP 智能机器人流程自动化(iRPA)解决方案分享(二)
著名典型《终结者》系列构造的世界观里,人类和以天网为核心的人工智能程序无法共存,双方不是你死就是我活。而在现实世界里,基于人工智能的机器人流程自动化则是智慧企业的好助手。
292 0
SAP 智能机器人流程自动化(iRPA)解决方案分享(二)
|
人工智能 监控 机器人
SAP 智能机器人流程自动化(iRPA)解决方案分享(一)
著名典型《终结者》系列构造的世界观里,人类和以天网为核心的人工智能程序无法共存,双方不是你死就是我活。而在现实世界里,基于人工智能的机器人流程自动化则是智慧企业的好助手。
293 0
SAP 智能机器人流程自动化(iRPA)解决方案分享(一)
|
弹性计算 监控 架构师
阿里云架构师金云龙:基于云XR平台的视觉计算应用部署
采用计算巢接入的方式进行部署,大幅降低交付难度、缩短交付和部署的周期。
阿里云架构师金云龙:基于云XR平台的视觉计算应用部署
|
Kubernetes Devops 关系型数据库
生产级Golang麻将游戏服务器 NanoServer 二次开发,利用Drone CI/CD打通DevOps上 K8S 迭代流程
生产级Golang麻将游戏服务器 NanoServer 二次开发,利用Drone CI/CD打通DevOps上 K8S 迭代流程
641 0
生产级Golang麻将游戏服务器 NanoServer 二次开发,利用Drone CI/CD打通DevOps上 K8S 迭代流程