如何让 Llama2、通义千问开源大语言模型快速跑在函数计算上?

news2025/1/15 16:28:31

:::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,从基础设施到应用生态,开发端到使用端提供的完整的配套
image.png
主要包含三个部分:

  • 一 、模型服务底座,函数计算可以部署来自魔搭,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客户端.
image.png

操作文档

llm应用模版

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

应用模版设置

image.png
image.png
设置好知道点击"创建并部署默认环境"

等待部署

该过程您会自动完成

服务访问

image.png
服务部署成功之后会返回两个链接
1、llm-server 为大语言模型的api服务界面,基于swagger,
image.png
2、llm-client则是访问客户端,访问客户端需要您输入前面填写的客户端私有密码,填写好之后就可以测试使用了
image.png
image.png
image.png

embedding模版

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

应用模版设置

选择好地域创建即可
image.png

等待部署

该过程您会自动完成

服务访问

image.png

测试embedding接口
image.png

image.png

总结

部署好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
1692752551111-6c828582-01d4-452a-a847-92979655e6f6.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/980890.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

算法基础-数学知识-高斯消元、求组合数

高斯消元、求组合数 高斯消元883. 高斯消元解线性方程组 组合数AcWing 885. 求组合数 IAcWing 886. 求组合数 IIAcWing 887. 求组合数 IIIAcWing 888. 求组合数 IV 高斯消元 找到当前列绝对值最大的数 所在的行将改行的该列的系数变成1,其他列也要跟着变将这行和最…

使用GPT-4生成训练数据微调GPT-3.5 RAG管道

OpenAI在2023年8月22日宣布,现在可以对GPT-3.5 Turbo进行微调了。也就是说,我们可以自定义自己的模型了。然后LlamaIndex就发布了0.8.7版本,集成了微调OpenAI gpt-3.5 turbo的功能 也就是说,我们现在可以使用GPT-4生成训练数据&a…

taro vue3 ts nut-ui 项目

# 使用 npm 安装 CLI $ npm install -g tarojs/cli 查看 Taro 全部版本信息​ 可以使用 npm info 查看 Taro 版本信息,在这里你可以看到当前最新版本 npm info tarojs/cli 项目初始化​ 使用命令创建模板项目: taro init 项目名 taro init myApp …

《TCP/IP网络编程》阅读笔记--基于UDP的服务器端/客户端

目录 1--TCP和UDP的主要区别 2--基于 UDP 的数据 I/O 函数 3--基于 UDP 的回声服务器端/客户端 4--UDP客户端Socket的地址分配 5--UDP存在数据边界 6--UDP已连接与未连接的设置 1--TCP和UDP的主要区别 ① TCP 提供的是可靠数据传输服务,而 UDP 提供的是不可靠…

使用Java分析器优化代码性能,解决OOM问题

有的时候博客内容会有变动,首发博客是最新的,其他博客地址可能会未同步,认准https://blog.zysicyj.top 首发博客地址 背景 最近我一直在做性能优化,对一个单机应用做性能优化。主要是涉及到解析和导入导出相关的业务。 大致说一下这个单机应用…

算法 数据结构 递归插入排序 java插入排序 递归求解插入排序算法 如何用递归写插入排序 插入排序动图 插入排序优化 数据结构(十)

1. 插入排序(insertion-sort): 是一种简单直观的排序算法。它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入 算法稳定性: 对于两个相同的数,经过…

Matlab进阶绘图第28期—带回归趋势线的密度散点图

在之前的文章中,分享了Matlab密度散点图的绘制方法: 进一步,假如我们需要计算、添加散点的拟合线,该怎么操作呢? 本期就来分享一下带回归趋势线的密度散点图的绘制方法,先来看一下成品效果: 特…

iOS开发Swift-10-位置授权, cocoapods,API,天气获取,城市获取-和风天气App首页代码

1.获取用户当前所在的位置 在infi中点击加号,选择权限:当用户使用app的时候获取位置权限. 填写使用位置权限的目的. 2.获取用户的经纬度. ViewController: import UIKit import CoreLocationclass ViewController: UIViewController, CLLocationManagerDelegate { //遵循CLL…

C#进阶 多个泛型约束

using System; using System.Collections; using System.Collections.Generic; using System.Linq; using UnityEngine;public class A02_Generic : MonoBehaviour {[ContextMenu("测试Start")]// Start is called before the first frame updatevoid Start(){Person…

Java SPI的原理和实践

Java SPI的概念和术语 SPI:全称是Service Provider Interface它是从Java 6开始引入的,是一种基于ClassLoader来发现并加载服务的机制。一个标准的SPI,由3个组件构成,分别是: Service - 服务接口:是一个公…

简单理解微服务限流、降级、熔断

微服务限流、降级、熔断分别都是什么意思,我们平时工作中为什么要关注这些东西呢? 公司不断的发展壮大,一开始处于蛮荒时代,咱们从单体应用过渡到微服务的时候,可能还是那一套单体的思想,再加上用户量可能…

VIT理论代码详解

将图像输入到transformer的思想 把每个像素点按照顺序拿出来,作为token,这样做的话输入参数规模是:假如是1通道的灰度图: 224x224x150176,bert才512,是bert的100倍。 改进方法: VIT模型架构图…

前端代理报错Error occured while trying to proxy to: localhost:端口

webpack配置进行前端代理时, 报错信息如下:(DEPTH_ZERO_SELF_SIGNED_CERT) 需设置:secure为false即可解决此报错 // webpack配置前端代理config["/test"]{target: https://xxxx.com,changeOrigin: true,secure: false // 这个配置…

设计模式(1) - UML类图

1、前言 最近在阅读 Android 源码,时常碰到代码中有一些巧妙的写法,简单的如 MediaPlayerService 中的 IFactory,我知道它是工厂模式,但是却不十分清楚它为什么这么用;复杂点的像 NuPlayer 中的 DeferredActions 机制…

云原生Kubernetes:kubectl管理命令

目录 一、理论 1.kubectl 管理命令 2.项目的生命周期 二、实验 1.kubectl 管理命令 2.项目的生命周期 三、总结 一、理论 1.kubectl 管理命令 (1)陈述式资源管理方法 kubernetes集群管理集群资源的唯一入口是通过相应的方法调用apiserver的接口…

进入低功耗和唤醒

休眠模式 进入休眠模式 如果使用 WFI 指令进入睡眠模式,则嵌套向量中断控制器 (NVIC) 确认的任意外设中断都会 将器件从睡眠模式唤醒。 如果使用 WFE 指令进入睡眠模式,MCU 将在有事件发生时立即退出睡眠模式。唤醒事件可 通过以下方式产生&#xff…

转载: 又拍云【PrismCDN 】低延时的P2P HLS直播技术实践

低延时的P2P HLS直播技术实践本文是第二部分《PrismCDN 网络的架构解析,以及低延迟、低成本的奥秘》低延时的P2P HLS直播技术实践 [首页 > Open Talk NO.41 | 2018 音视频技术沙龙深圳站 > 低延时 WebP2P 直播技术实践https://opentalk-blog.b0.upaiyun.com/prod/2018-0…

maven管理android项目

maven管理android项目 1.安装maven-android-sdk-deployer,下载地址:https://github.com/mosabua/maven-android-sdk-deployer 2.解压缩大英文路径文件夹 3.在压缩后的根目录执行mvn clean install -P 2.3.3(2.3.3指的是android版本号&#x…

传输层协议--UDP

引入 传输层负责数据能够从发送端传输到接收端。 端口号(Port) 端口号标识了一个主机上进行通信的一个进程。 两个问题: 1. 一个进程可以绑定多个端口号吗?--可以 2.一个端口号可以绑定多个进程吗?--不可以 我们…

OpenCV(二十二):均值滤波、方框滤波和高斯滤波

目录 1.均值滤波 2.方框滤波 3.高斯滤波 1.均值滤波 OpenCV中的均值滤波(Mean Filter)是一种简单的滤波技术,用于平滑图像并减少噪声。它的原理非常简单:对于每个像素,将其与其周围邻域内像素的平均值作为新的像素值…