如何让 Llama2、通义千问开源大语言模型快速跑在函数计算上?
:::info 本文是“在Serverless平台上构建AIGC应用”系列文章的第一篇文章。 :::
前言
随着ChatGPT 以及 Stable Diffusion,Midjourney 这些新生代 AIGC 应用的兴起,围绕AIGC应用的相关开发变得越来越广泛,有呈井喷之势,从长远看这波应用的爆发不仅仅是停留在形式之上,更是在各个领域产生实际的生产力价值,比如办公领域有copilot system 365,钉钉智能; 代码编程领域有 github copilot ,cursor ide; 文娱领域的妙鸭相机;可以肯定的是未来 AIGC 的应用数量会更多,类型也会更加丰富,企业的内部软件或者SOP都会尽可能的跟AI进行融合,这必然催生出海量的AIGC应用开发需求,这也代表着巨大的市场机会。
开发 AIGC 应用的挑战
AIGC 的应用前景如此诱人,可能决定企业未来的发展走向。然而对很多中小企业及开发者而言,上手进行aigc应用的开发依然有着非常高昂的成本:
- 基础模型服务的获取:chatgpt提供了非常完善的api 开发体系,然而并不开放给国内客户使用,开源的模型进行服务的部署非常困难
- 高昂的费用, GPU 短缺导致 GPU 的费用急剧飙升,本地购买高规格显卡需要一次性花费不少的成本,并且并不能提供在线服务。
- 端到端的对接:单纯模型服务的api无法变成直接的生产力,需要完成【企业数据&企业SOP】-> LLM 服务 -> 各种端侧的完整链路
函数计算AIGC应用的解决方案
函数计算围绕创建和使用AIGC,从基础设施到应用生态,开发端到使用端提供的完整的配套

主要包含三个部分:
- 一 、模型服务底座,函数计算可以部署来自魔搭,huggingface等开元社区的ai模型,我们针对 LLM, Bert等智能知识库/助手 场景做了专门的定制,接入OpenAI兼容的api规范,提供一键部署的模版和可视化的web访问界面,帮助开发者或者企业快速上手 llama2,chatglm2,通义千问等模型的部署
- 二、业务连接层 ,串联业务需求以及的模型服务,安全服务,数据库服务等基础资源,这部分有在AIGC应用部分有很多相同的逻辑,比如账号体系,数据集管理,提示词模版,工具管理,模型服务管理等,从各业务侧视角看,不一样的部分只是 提示词,知识库以及工具集,底层的模型服务,安全服务,数据库服务则是共享的,这层可以简化业务里面构建不同智能场景的流程,快速,低成本的可以构建不同业务的AIGC应用
- 三、客户端侧,客户端是AI应用的使用部分,也是最接近业务的部分,这部分更多的考虑是如何将AI服务融入已有的使用端,比如钉钉,企业微信等办公IM系统,以及web浏览器插件等,通过 函数计算+eventbridge可以快速帮助ai服务接入到这些客户端
本篇教程先来分享一下第一个部分,如何通过函数计算快速部署 AIGC相关模型服务包括LLM模型 和Embedding(Bert) 模型
LLM模型及Embedding服务部署教程
前期准备
使用该项目,您需要有开通以下服务:

对 AIGC 进行 CPU/GPU 推理计算
https://free.aliyun.com/?pipCode=fc存储大语言模型以及Embedding服务所需要的模型, 新用户请先领取免费试用资源包
https://free.aliyun.com/?product=9657388&crowd=personal
应用介绍
应用详情
使用阿里云函数计算部署开源大模型应用,提供兼容openai规范的接口和ChatGPT-Next-Web客户端.

操作文档
llm应用模版
登录到阿里云函数计算控制台->应用->创建应用-> 人工智能 选择AI大语言模型API服务应用模板点击"立即创建"

应用模版设置


设置好知道点击"创建并部署默认环境"
等待部署
该过程您会自动完成
服务访问

服务部署成功之后会返回两个链接
1、llm-server 为大语言模型的api服务界面,基于swagger,

2、llm-client则是访问客户端,访问客户端需要您输入前面填写的客户端私有密码,填写好之后就可以测试使用了



embedding模版
登录到阿里云函数计算控制台->应用->创建应用-> 人工智能 选择“开源Bert模型服务”应用模板点击"立即创建"

应用模版设置
选择好地域创建即可

等待部署
该过程您会自动完成
服务访问

测试embedding接口


总结
部署好LLM服务意味着您已经开启了AIGC应用的开发旅程,接下来我会继续跟大家分享更多关于AIGC相关的内容,包括如何构建知识库问答应用,如何调用工具完善大语言模型的能力,如何接入自己的IM系统和构建web的集成插件。
宇宙漫游,阿里云 x 森马 AIGC T恤设计大赛
一、
**【森马X阿里云 AIGC T恤设计大赛】**程序员AIGC 自己的T恤,赢Airpods,图案定制T恤!
通过函数计算FC 快捷部署 Stable Diffusion:内置模型库+常用插件+ControlNet,支持 SDXL1.0
立即参加:https://developer.aliyun.com/adc/series/activity/aigc_design
可赢取Airpods三代,作品定制联名体恤,森马行李箱等周边!
二、
还可以参加话题活动,一起讨论 AIGC 的未来发展趋势,用户可从任意角度交流分享,可以赢得护眼台灯、数据线、静音净化器奖品!
话题:《相比优秀的服装设计师,AIGC 可以如何突破设计灵感的界限?是纯粹的机械语言还是一点点的灵光乍现?》
https://developer.aliyun.com/ask/548537?spm=a2c6h.13148508.setting.14.4a894f0esFcznR

相关文章:
如何让 Llama2、通义千问开源大语言模型快速跑在函数计算上?
:::info 本文是“在Serverless平台上构建AIGC应用”系列文章的第一篇文章。 ::: 前言 随着ChatGPT 以及 Stable Diffusion,Midjourney 这些新生代 AIGC 应用的兴起,围绕AIGC应用的相关开发变得越来越广泛,有呈井喷之势,从长远看这波应用的爆…...
Linux内核源码分析 (B.2)虚拟地址空间布局架构
Linux内核源码分析 (B.2)虚拟地址空间布局架构 文章目录 Linux内核源码分析 (B.2)虚拟地址空间布局架构一、Linux内核整体架构及子系统二、Linux内核内存管理架构 一、Linux内核整体架构及子系统 Linux内核只是操作系统当中的一部分,对下管理系统所有硬件设备&…...
Spring系列文章:Spring使用JdbcTemplate
一、简介 JdbcTemplate是Spring提供的⼀个JDBC模板类,是对JDBC的封装,简化JDBC代码。 当然,你也可以不⽤,可以让Spring集成其它的ORM框架,例如:MyBatis、Hibernate等。 第一步:引入依赖 <d…...
[matlab]cvx安装后测试代码
测试环境: windows10 x64 matlab2023a 代码来自官方网站:CVX: Matlab Software for Disciplined Convex Programming | CVX Research, Inc. m 20; n 10; p 4; A randn(m,n); b randn(m,1); C randn(p,n); d randn(p,1); e rand; cvx_beginva…...
【css】margin:auot什么情况下失效
margin:auto只对块级元素有效果,并且在正常文档流margin:automargin:0 auto,css默认在正常文档流里面margin-top和margin-bottom是0 为什么margin: auto能实现水平居中,而垂直居中不行? 一般子…...
linux的dirty page回写磁盘过程中是否允许并发写入更新page?
概述 众所周知Linux内核write系统调用采用pagecache机制加速写入过程,避免write系统调用长时间block应用进程,用户态进程执行write调用的时候,内核只是将用户态buffer copy到内核的pagecache当中,write系统调用就返回了,完全不需要等待数据完全写入存储设备,因为存储设备…...
Docker-基础命令使用
文章目录 前言命令帮助命令执行示意图docker rundocker psdocker inspectdocker execdocker attachdocker stopdocker startdocker topdocker rmdocker prune参考说明 前言 本文主要介绍Docker基础命令的使用方法。 命令帮助 Docker命令获取帮助方法 # docker -h Flag shor…...
【Python 程序设计】Python 中的类型提示【06/8】
目录 一、说明 二、什么是动态类型? 2.1 为什么要使用类型提示? 2.2 局限性 三、基本类型提示 3.1 声明变量的类型 3.2 函数注释 四、Python 中的内置类型 4.1 原子类型与复合类型 五、函数注释 5.1 如何指定函数的参数类型和返回类型 5.2 在函数签名中…...
78 # koa 中间件的实现
上上节实现了上下文的,上一节使用了一下中间件,这一节来实现 koa 的中间件这个洋葱模型。 思路: 储存用户所有的 callback将用户传递的 callback 全部组合起来(redux 里的 compose)组合成一个线性结构依次执行&#…...
国产操作系统麒麟v10中遇到的一些问题
下载pycharm:直接在应用商店 目标:主机1安装了虚拟机,主机2要ping通主机1安装的虚拟机。 前提:主机1,主机2在同一局域网下,同一网段。 网络配置 因为虚拟机的网段不在局域网网段内,局域网下…...
Gridea+GitPage+Gittalk 搭建个人博客
👋通过GrideaGitPage 搭建属于自己的博客! 👻GitPage 负责提供 Web 功能! 😽Gridea 作为本地编辑器,方便 push 文章! 🏷本文讲解如何使用 GrideaGitPage 服务域名(可选&a…...
代码质量保障第2讲:单元测试 - 浅谈单元测试
代码质量保障第2讲:单元测试 - 浅谈单元测试 本文是代码质量保障第2讲,浅谈单元测试。单元测试(unit testing),是指对软件中的最小可测试单元进行检查和验证。这是基础,所以围绕着单元测试,我从…...
“五度晟企通”企业发展服务平台正式发布,帮扶企业行稳致远!
在数字中国建设的大背景下,“五度易链”以企业实际发展需求为牵引,以帮扶企业行稳致远为目标,基于全体量产业大数据,运用NLP、AI等新一代信息技术,打造了数字化ToB企业发展服务平台“五度晟企通”,旨在以数…...
Java类和对象(七千字详解!!!带你彻底理解类和对象)
目录 一、面向对象的初步认知 1、什么是面向对象 2、面向对象和面向过程 (1)传统洗衣服的过程 (2)现代洗衣服过程 编辑 二、类的定义和使用 1、类的定义格式 三、类的实例化 1、什么是实例化 2、类和对象说明 四、t…...
机器学习笔记:node2vec(论文笔记:node2vec: Scalable Feature Learning for Networks)
2016 KDD 1 intro 利用graph上的节点相似性,对这些节点进行embedding 同质性:节点和其周围节点的embedding比较相似 蓝色节点和其周围的节点结构等价性 结构相近的点embedding相近 比如蓝色节点,都处于多个簇的连接处 2 随机游走 2.1 介绍…...
go基础10 -字符串的高效构造与转换
前面提到过,Go原生支持通过/操作符来连接多个字符串以构造一个更长的字符串,并且通过/操作符的字符串连接构造是最自然、开发体验最好的一种。 但Go还提供了其他一些构造字符串的方法,比如: ● 使用fmt.Sprintf; ● 使…...
VR钢铁实训 | 铁前事业部虚拟仿真培训软件
随着科技的发展,虚拟现实技术在各个行业中的应用越来越广泛。在钢铁冶炼行业中,VR技术也逐渐得到了应用,其中铁前事业部虚拟仿真培训软件就是一项非常有优势的技术。 铁前事业部虚拟仿真培训软件是广州华锐互动打造的《钢铁生产VR虚拟培训系统…...
DevOps
DevOps 是开发 (Dev) 和运营 (Ops) 的复合词,它将人、流程和技术结合起来,不断地为客户提供价值。 DevOps 对团队意味着什么? DevOps 使以前孤立的角色(开发、IT 运营、质量工程和安全)可以协调和协作,以生…...
IJ中PHP环境的搭建和使用教程
目录 目录 前言 思维导图 1,PHP环境下载 1.下载链接 2.进行安装 3,自定义路径 4.进行相关的一些库的选择下载 2,进行IJ中PHP环境的配置 2.1,下载PHP插件 2.2,下载过程中的注意事项 3,为什么这么做呢? 3.1,原因 3.2,进行代码…...
java开发之个人微信的二次开发
简要描述: 修改我在某群的昵称 请求URL: http://域名/updateIInChatRoomNickName 请求方式: POST 请求头Headers: Content-Type:application/jsonAuthorization:login接口返回 参数: 参…...
Linux 文件类型,目录与路径,文件与目录管理
文件类型 后面的字符表示文件类型标志 普通文件:-(纯文本文件,二进制文件,数据格式文件) 如文本文件、图片、程序文件等。 目录文件:d(directory) 用来存放其他文件或子目录。 设备…...
Java多线程实现之Callable接口深度解析
Java多线程实现之Callable接口深度解析 一、Callable接口概述1.1 接口定义1.2 与Runnable接口的对比1.3 Future接口与FutureTask类 二、Callable接口的基本使用方法2.1 传统方式实现Callable接口2.2 使用Lambda表达式简化Callable实现2.3 使用FutureTask类执行Callable任务 三、…...
基于Docker Compose部署Java微服务项目
一. 创建根项目 根项目(父项目)主要用于依赖管理 一些需要注意的点: 打包方式需要为 pom<modules>里需要注册子模块不要引入maven的打包插件,否则打包时会出问题 <?xml version"1.0" encoding"UTF-8…...
NLP学习路线图(二十三):长短期记忆网络(LSTM)
在自然语言处理(NLP)领域,我们时刻面临着处理序列数据的核心挑战。无论是理解句子的结构、分析文本的情感,还是实现语言的翻译,都需要模型能够捕捉词语之间依时序产生的复杂依赖关系。传统的神经网络结构在处理这种序列依赖时显得力不从心,而循环神经网络(RNN) 曾被视为…...
【HarmonyOS 5 开发速记】如何获取用户信息(头像/昵称/手机号)
1.获取 authorizationCode: 2.利用 authorizationCode 获取 accessToken:文档中心 3.获取手机:文档中心 4.获取昵称头像:文档中心 首先创建 request 若要获取手机号,scope必填 phone,permissions 必填 …...
深度学习习题2
1.如果增加神经网络的宽度,精确度会增加到一个特定阈值后,便开始降低。造成这一现象的可能原因是什么? A、即使增加卷积核的数量,只有少部分的核会被用作预测 B、当卷积核数量增加时,神经网络的预测能力会降低 C、当卷…...
IP如何挑?2025年海外专线IP如何购买?
你花了时间和预算买了IP,结果IP质量不佳,项目效率低下不说,还可能带来莫名的网络问题,是不是太闹心了?尤其是在面对海外专线IP时,到底怎么才能买到适合自己的呢?所以,挑IP绝对是个技…...
纯 Java 项目(非 SpringBoot)集成 Mybatis-Plus 和 Mybatis-Plus-Join
纯 Java 项目(非 SpringBoot)集成 Mybatis-Plus 和 Mybatis-Plus-Join 1、依赖1.1、依赖版本1.2、pom.xml 2、代码2.1、SqlSession 构造器2.2、MybatisPlus代码生成器2.3、获取 config.yml 配置2.3.1、config.yml2.3.2、项目配置类 2.4、ftl 模板2.4.1、…...
并发编程 - go版
1.并发编程基础概念 进程和线程 A. 进程是程序在操作系统中的一次执行过程,系统进行资源分配和调度的一个独立单位。B. 线程是进程的一个执行实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位。C.一个进程可以创建和撤销多个线程;同一个进程中…...
jdbc查询mysql数据库时,出现id顺序错误的情况
我在repository中的查询语句如下所示,即传入一个List<intager>的数据,返回这些id的问题列表。但是由于数据库查询时ID列表的顺序与预期不一致,会导致返回的id是从小到大排列的,但我不希望这样。 Query("SELECT NEW com…...
