Sagify:简化 AWS SageMaker 上的 ML 和 LLM 工作流程

Sagify

3.5 | 17 | 0
类型:
开源项目
最后更新:
2025/10/02
资源描述:
Sagify 是一个开源 Python 工具,可简化 AWS SageMaker 上的机器学习管道,提供统一的 LLM 网关,实现专有和开源大型语言模型的无缝集成,提高生产力。
分享:
ML部署
LLM网关
SageMaker自动化
超参数调优
批量推理

Sagify 概述

什么是 Sagify?

Sagify 是一个创新的开源 Python 库,旨在简化 AWS SageMaker 上机器学习 (ML) 和大型语言模型 (LLM) 工作流程的复杂性。通过抽象化云基础设施的繁琐细节,Sagify 让数据科学家和 ML 工程师能够专注于真正重要的事情:开发和部署高影响力的模型。无论您是在训练自定义分类器、调整超参数,还是集成强大的 LLM(如 OpenAI 的 GPT 系列或开源替代品如 Llama 2),Sagify 都提供了一个模块化、直观的界面,加速您从原型到生产的路径。

在核心上,Sagify 利用了 AWS SageMaker 的强大功能,同时消除了手动 DevOps 任务的需要。这使其成为团队不可或缺的工具,他们希望利用云基 ML 的力量,而不会陷入设置和管理之中。对于专有 LLM(如来自 OpenAI、Anthropic 的)和部署在 SageMaker 端点的开源模型的支持,Sagify 弥合了实验与可扩展部署之间的差距,确保您的 ML 项目高效、成本效益高且富有创新性。

Sagify 如何工作?

Sagify 通过命令行界面 (CLI) 和 Python API 运行,自动化 ML 生命周期的关键阶段。其架构建立在模块化基础上,具有用于通用 ML 工作流程的独立组件,以及一个专用于处理语言模型的 LLM Gateway。

ML 工作流程的核心架构

对于传统的 ML 任务,Sagify 通过 sagify init 初始化项目结构开始。这会创建一个标准化的目录布局,包括训练和预测模块、Docker 配置以及本地测试环境。用户在提供的模板中实现简单的函数,如 train()predict(),Sagify 通过 sagify build 将其打包成 Docker 镜像。

一旦构建完成,这些镜像可以通过 sagify push 推送到 AWS ECR,并使用 sagify cloud train 在 SageMaker 上启动训练。该工具处理数据上传到 S3、资源配置(如 ml.m4.xlarge 等 EC2 实例类型)以及输出管理。对于部署,sagify cloud deploy 会启动端点,通过 REST API 提供预测,支持低延迟的实时推理。

Sagify 在高级功能如超参数优化方面也表现出色。通过在 JSON 配置中定义参数范围(例如,SVM 内核或 gamma 值),用户可以使用 sagify cloud hyperparameter-optimization 运行贝叶斯调优作业。这自动化了试错过程,直接从您的训练代码中使用 Sagify 的 log_metric 函数记录指标,如精度或准确率。对于较长作业,支持 Spot 实例以节省成本,使其适合资源密集型任务。

批量转换和流式推理完善了 ML 功能。批量作业离线处理大型数据集(例如,sagify cloud batch-transform),而通过 Lambda 和 SQS 的实验性流式处理启用实时管道,用于推荐系统等应用。

LLM Gateway:统一访问大型语言模型

Sagify 的一个亮点功能是 LLM Gateway,这是一个基于 FastAPI 的 RESTful API,提供与各种 LLM 交互的单一入口点。该网关支持多个后端:

  • 专有 LLM:直接集成 OpenAI(例如,GPT-4、用于图像生成的 DALL-E)、Anthropic(Claude 模型)以及即将推出的平台如 Amazon Bedrock 或 Cohere。
  • 开源 LLM:将模型如 Llama 2、Stable Diffusion 或嵌入模型(例如,BGE、GTE)部署为 SageMaker 端点。

工作流程很简单:使用无代码命令如 sagify cloud foundation-model-deploy 部署基础模型,或 sagify llm start 用于自定义配置。环境变量配置 API 密钥和端点,网关处理聊天完成、嵌入和图像生成的请求。

例如,要批量生成嵌入,请准备带有唯一 ID 的 JSONL 输入(例如,用于语义搜索的食谱),上传到 S3,并触发 sagify llm batch-inference。输出通过 ID 链接回来,非常适合填充向量数据库,用于搜索或推荐系统。支持的实例类型如 ml.p3.2xlarge 确保了高维度嵌入的可扩展性。

API 端点镜像 OpenAI 的格式,便于迁移:

  • 聊天完成:POST 到 /v1/chat/completions,带有消息、温度和最大令牌。
  • 嵌入:POST 到 /v1/embeddings,用于向量表示。
  • 图像生成:POST 到 /v1/images/generations,带有提示和维度。

部署选项包括本地 Docker 运行或用于生产的 AWS Fargate,使用 CloudFormation 模板进行编排。

关键功能和益处

Sagify 的功能专为简化 ML 和 LLM 开发而量身定制:

  • 基础设施自动化:不再手动配置——Sagify 管理 Docker 构建、ECR 推送、S3 数据处理和 SageMaker 作业。
  • 本地测试:命令如 sagify local trainsagify local deploy 在您的机器上模拟云环境。
  • 闪电部署:对于预训练模型(例如,scikit-learn、Hugging Face、XGBoost),使用 sagify cloud lightning-deploy,无需自定义代码。
  • 模型监控和管理:使用 sagify llm platformssagify llm models 列出平台和模型;按需启动/停止基础设施。
  • 成本效率:利用 Spot 实例、批量处理和自动缩放来优化 AWS 支出。

实际价值巨大。团队可以将部署时间从几周缩短到几天,正如 Sagify 的承诺所强调:“从想法到部署模型只需一天。”这对于使用 LLM 的迭代实验特别有用,在那里切换提供商(例如,GPT-4 用于聊天、Stable Diffusion 用于视觉)否则需要碎片化的设置。

用户证言和示例,如训练 Iris 分类器或部署 Llama 2 用于聊天,展示了可靠性。对于嵌入,使用 GTE-large 等模型的批量推理启用高效的 RAG(检索增强生成)系统,而图像端点驱动创意 AI 应用。

使用 Sagify:逐步指南

安装和设置

前提条件包括 Python 3.7+、Docker 和 AWS CLI。通过 pip 安装:

pip install sagify

通过创建具有 AmazonSageMakerFullAccess 等策略的 IAM 角色并在 ~/.aws/config 中设置配置文件来配置您的 AWS 账户。

ML 快速启动

  1. 克隆一个演示仓库(例如,Iris 分类)。
  2. 运行 sagify init 设置项目。
  3. 实现 train()predict() 函数。
  4. 本地构建和测试:sagify buildsagify local trainsagify local deploy
  5. 推送并在云上训练:sagify pushsagify cloud upload-datasagify cloud train
  6. 部署:sagify cloud deploy,并通过 curl 或 Postman 调用。

LLM 快速启动

  1. 部署模型:sagify cloud foundation-model-deploy --model-id model-txt2img-stabilityai-stable-diffusion-v2-1-base
  2. 设置环境变量(例如,OpenAI 的 API 密钥)。
  3. 启动网关:sagify llm gateway --start-local
  4. 查询 API:使用 curl、Python requests 或 JS fetch 进行完成、嵌入或图像。

对于批量推理,准备 JSONL 文件并运行 sagify llm batch-inference

为什么选择 Sagify 用于您的 ML 和 LLM 项目?

在充斥着 ML 框架的景观中,Sagify 以其针对 SageMaker 的优化和 LLM 统一性脱颖而出。它解决了常见的痛点,如基础设施开销和模型碎片化,从而实现更快的创新。适合扩展 AI 原型初创公司或构建生产级 LLM 应用的企业,Sagify 的开源特性促进社区贡献,并持续支持新模型(例如,Mistral、Gemma)。

适合谁?厌倦了样板代码的数据科学家、寻求自动化的 ML 工程师,以及实验 LLM 的 AI 开发者。通过将重点放在模型逻辑而非运维上,Sagify 赋能用户交付有影响力的解决方案——无论是语义搜索、生成艺术还是预测分析——同时遵守安全、可扩展 AWS 部署的最佳实践。

要获得 ML 工作流程或 LLM 集成的最佳结果,今天就开始使用 Sagify。其简单性和强大性的结合使其成为释放 AWS SageMaker 全部潜力的首选工具。

"Sagify"的最佳替代工具

UsageGuard
暂无图片
13 0

APIPark
暂无图片
273 0

APIPark 是一个开源 LLM 网关和 API 开发者门户,用于管理生产环境中的 LLM,确保稳定性和安全性。优化 LLM 成本并构建您自己的 API 门户。

LLM管理
API网关
开源API
LiteLLM
暂无图片
379 0

LiteLLM是一个LLM网关,它简化了跨100多个LLM的模型访问、支出跟踪和回退,所有这些都采用OpenAI格式。

LLM网关
OpenAI代理