起心动念 | 生成式 AI 开发实践系列的开端

2024-02-03 16:52

本文主要是介绍起心动念 | 生成式 AI 开发实践系列的开端,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

生成式 AI 和大模型的技术变革力量,正在逐渐影响着我们当下这个时代,全球各行各业都呈现百舸争流、万象更新的趋势。在 2023 年,我们通过各种面向开发者的活动,收集到了大量开发者关于基于生成式 AI 的开发内容需求和建议反馈。开发者们都期待我们在 2024 年推出更多关于生成式 AI 开发实践的系列内容。

亚马逊云科技开发者社区为开发者们提供全球的开发技术资源。这里有技术文档、开发案例、技术专栏、培训视频、活动与竞赛等。帮助中国开发者对接世界最前沿技术,观点,和项目,并将中国优秀开发者或技术推荐给全球云社区。如果你还没有关注/收藏,看到这里请一定不要匆匆划过,点这里让它成为你的技术宝库!

根据来自于过去一年的开发者的需求建议上的深度思考,我们确定了以下三个围绕生成式 AI 开发实践的内容系列,希望在 2024 年里,对开发者们在生成式 AI 应用领域的开发实践有所帮助:

  • 构建生成式 AI 应用开发实践系列

  • 开源大语言模型的优化实践系列

  • 亚马逊云科技上的生成式 AI 开发实践系列

构建生成式 AI 应用开发实践系列

在亚马逊云科技 re:Invent 2023 以及之后的 reCap 巡展中,细心的开发者们也许已经发现有一个很有趣的动手实验:

开发一款可部署的基于大语言模型的字谜游戏。

该款游戏使用了文生图模型为玩家提供一个未知的提示词,玩家需要根据模型生成的图像来猜测该提示词,来完成游戏。该动手实验完整地展示了如何在亚马逊云科技上完整构建生成式 AI 应用程序。

这款游戏的后端使用了三个大模型,包括:

  • 文本到图像的模型

  • 文本嵌入(Text Embedding)模型

  • 文本生成模型

整个游戏的主要拓扑结构图如下所示:

image.png

本系列计划用 3-5 篇博客的篇幅,完整阐述如何构建基于大模型的生成式 AI 应用实践,来帮助开发者们全面了解构建 生成式 AI 应用开发的完整流程,包括:构建前端程序、构建后端程序、以及代码面向生产环境的持续集成和持续部署(CI/CD)等方面内容:

  • 生成式 AI 应用设计概述

  • 文本到图像模型的设计

  • 嵌入模型的设计

  • 文本生成模型的设计

  • 生成式 AI 应用 CI/CD 实践

开源大语言模型的优化实践系列

该系列的策划起源自我们在 2023 年亚马逊云科技 re:Invent 上的演讲分享——使用 Amazon SageMaker 优化开源大语言模型的部署和微调。

  • 《使用 Amazon SageMaker 优化开源大语言模型的部署和微调》 演示文稿下载:https://d1.awsstatic.com/events/Summits/reinvent2023/BOA402\_Open-source-LLM-optimization-with-Amazon-SageMaker.pdf?trk=cndc-detail

在技术分享中,我们和世界各地的开发者们一起探讨了大语言模型的模型部署和微调优化领域,包括:模型编译、模型压缩、模型分布式训练、模型推理批处理等方面的行业最新论文和发展趋势,以及通过两个实际代码展示了 Amazon SageMaker 如何高效简化大语言模型的部署和微调流程。如下图所示:

image.png

分享结束后,很多开发者和我们沟通联系,希望我们可以把这个话题延展地更深入一些,因为和开源大模型优化相关的很多子领域,在过去一年行业进步迅速,很多优秀的论文和想法脱颖而出。因此,我规划了这一系列,通过 4-6 篇博客来分享我在开源大语言模型优化领域的心得和体会,话题包括:

  • 模型编译

  • 模型压缩

  • 模型分布式训练

  • 模型部署

  • 模型推理优化

在亚马逊云科技上的生成式 AI 开发实践系列

从 2023 年开始,在生成式 AI 领域涌现了很多优秀的书籍和在线课程。为帮助开发者可以系统了了解如何利用亚马逊云科技在云基础设施、数据存储、数据处理以及数据分析等诸多方面的优势,我们特别规划了这个系列的内容。

我们希望在 2024 年里通过 8-12 篇技术博客和大家逐步分享行业的最新进展和在亚马逊云科技上的开发实践,主要内容规划如下:

  • 生成式 AI 用例、基础知识、项目生命周期

  • 提示工程和上下文学习

  • 大型语言基础模型

  • 模型量化和模型的分布式训练

  • 模型微调和模型评估

  • 参数高效微调(PEFT)

  • 使用 RLHF 进行强化学习微调

  • 优化和部署 生成式 应用程序

  • 检索增强生成 (RAG) 和代理

  • 多模态基础模型概述

  • 使用 Stable Diffusion 模型进行用户可控的模型生成和微调

  • 使用 Amazon Bedrock 的生成式 AI 开发实践

敬请期待!

特别推荐

除了今年的内容分享预告,我也希望给开发者们推荐以下学习资源,与开发者共勉。

书籍《Generative AI on Amazon Web Services》

难度:初级/中级

该书的作者为来自亚马逊云科技的同事 Chris Fregly、Antje Barth 和 Shelbee Eigenbrode 等。 

书籍主要内容包括了:生成式 AI 的生命周期,包括用例定义、模型选择、模型微调、检索增强生成、通过人类反馈的强化学习以及模型量化、优化和部署等。如果开发者计划利用亚马逊云科技的诸多服务,在云端设计和开发生成式 AI 的应用的话,非常推荐此书。

书籍链接:https://www\.amazon.com/\_/dp/1098159225?trk=cndc-detail

在线课程《Generative AI with Large Language Models》

技术难度:中级

吴恩达创办的 DeepLearning.AI 一直在提供各种面向 AI 领域的精品课程。而在大语言模型领域,笔者非常推荐 DeepLearning.AI 与亚马逊云科技合作推出这门在线课程。

这门在线课程的主要内容是讲授生成式 AI 的工作原理,以及如何部署面向真实世界应用的生成式 AI 模型。这门课的对象主要是针对中等水平的生成式 AI 开发人员,所以需要有一定的编程基础并且对机器学习有一定的了解。此外,官方建议课程的学习时间是三周,也是一个比较长的学习周期。

在线课程链接:https://www\.coursera.org/learn/generative-ai-with-llms?trk=cndc-detail

在线课程《Hands-on Machine Learning with Amazon Web Services and NVIDIA》

技术难度:中级/高级

该在线课程是 DeepLearning.AI 与亚马逊云科技合作的又一重要课程,专为数据科学家和开发人员等 ML 实践者设计。课程要求注册课程的开发者,具有机器学习工作流程的基础知识。

在该课程中,开发者将了解如何让使用 Amazon SageMaker 和 NVIDIA GPU 加速的 Amazon EC2 实例构建、训练和部署可扩展机器学习模型的实践经验。

课程首先概述了 Amazon SageMaker 和 NVIDIA GPU。然后指导开发者通过运行由 GPU 驱动的 Amazon SageMaker 笔记本实例进行实践操作。学习内容包括:如何准备用于模型训练的数据集、构建模型、执行模型训练以及部署和优化 ML 模型等生成式 AI 模型训练的完整流程。

在线课程链接:https://www\.coursera.org/learn/machine-learning-aws-nvidia?trk=cndc-detail

最后,祝福各位开发者龙年新年快乐,阖家幸福,万事如意!

文章来源:起心动念 | 生成式 AI 开发实践系列的开端

这篇关于起心动念 | 生成式 AI 开发实践系列的开端的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/674796

相关文章

在 Spring Boot 中实现异常处理最佳实践

《在SpringBoot中实现异常处理最佳实践》本文介绍如何在SpringBoot中实现异常处理,涵盖核心概念、实现方法、与先前查询的集成、性能分析、常见问题和最佳实践,感兴趣的朋友一起看看吧... 目录一、Spring Boot 异常处理的背景与核心概念1.1 为什么需要异常处理?1.2 Spring B

Go语言开发实现查询IP信息的MCP服务器

《Go语言开发实现查询IP信息的MCP服务器》随着MCP的快速普及和广泛应用,MCP服务器也层出不穷,本文将详细介绍如何在Go语言中使用go-mcp库来开发一个查询IP信息的MCP... 目录前言mcp-ip-geo 服务器目录结构说明查询 IP 信息功能实现工具实现工具管理查询单个 IP 信息工具的实现服

Spring Boot 整合 SSE的高级实践(Server-Sent Events)

《SpringBoot整合SSE的高级实践(Server-SentEvents)》SSE(Server-SentEvents)是一种基于HTTP协议的单向通信机制,允许服务器向浏览器持续发送实... 目录1、简述2、Spring Boot 中的SSE实现2.1 添加依赖2.2 实现后端接口2.3 配置超时时

Python使用getopt处理命令行参数示例解析(最佳实践)

《Python使用getopt处理命令行参数示例解析(最佳实践)》getopt模块是Python标准库中一个简单但强大的命令行参数处理工具,它特别适合那些需要快速实现基本命令行参数解析的场景,或者需要... 目录为什么需要处理命令行参数?getopt模块基础实际应用示例与其他参数处理方式的比较常见问http

Java Optional的使用技巧与最佳实践

《JavaOptional的使用技巧与最佳实践》在Java中,Optional是用于优雅处理null的容器类,其核心目标是显式提醒开发者处理空值场景,避免NullPointerExce... 目录一、Optional 的核心用途二、使用技巧与最佳实践三、常见误区与反模式四、替代方案与扩展五、总结在 Java

Spring Boot循环依赖原理、解决方案与最佳实践(全解析)

《SpringBoot循环依赖原理、解决方案与最佳实践(全解析)》循环依赖指两个或多个Bean相互直接或间接引用,形成闭环依赖关系,:本文主要介绍SpringBoot循环依赖原理、解决方案与最... 目录一、循环依赖的本质与危害1.1 什么是循环依赖?1.2 核心危害二、Spring的三级缓存机制2.1 三

使用Python开发一个带EPUB转换功能的Markdown编辑器

《使用Python开发一个带EPUB转换功能的Markdown编辑器》Markdown因其简单易用和强大的格式支持,成为了写作者、开发者及内容创作者的首选格式,本文将通过Python开发一个Markd... 目录应用概览代码结构与核心组件1. 初始化与布局 (__init__)2. 工具栏 (setup_t

Python 中的 with open文件操作的最佳实践

《Python中的withopen文件操作的最佳实践》在Python中,withopen()提供了一个简洁而安全的方式来处理文件操作,它不仅能确保文件在操作完成后自动关闭,还能处理文件操作中的异... 目录什么是 with open()?为什么使用 with open()?使用 with open() 进行

Spring Shell 命令行实现交互式Shell应用开发

《SpringShell命令行实现交互式Shell应用开发》本文主要介绍了SpringShell命令行实现交互式Shell应用开发,能够帮助开发者快速构建功能丰富的命令行应用程序,具有一定的参考价... 目录引言一、Spring Shell概述二、创建命令类三、命令参数处理四、命令分组与帮助系统五、自定义S

Python通过模块化开发优化代码的技巧分享

《Python通过模块化开发优化代码的技巧分享》模块化开发就是把代码拆成一个个“零件”,该封装封装,该拆分拆分,下面小编就来和大家简单聊聊python如何用模块化开发进行代码优化吧... 目录什么是模块化开发如何拆分代码改进版:拆分成模块让模块更强大:使用 __init__.py你一定会遇到的问题模www.