Llama 2免费托管及API提供

Llama 2 是 Meta 最新的文本生成模型,目前其性能优于所有开源替代方案。

在这里插入图片描述

推荐:用 NSDT编辑器 快速搭建可编程3D场景

1、强大的Llama 2

它击败了 Falcon-40B(之前最好的开源基础模型),与 GPT-3.5 相当,仅低于 GPT-4 和 PALM 2(均为闭源模型,分别由 OpenAI 和 Google 拥有)。
在这里插入图片描述
HuggingFace 上的开源基金会模型排行榜

在如上所示的同一排行榜上,如果你更改过滤器以包含微调模型,会发现基本上整个列表都是由 Llama 2 衍生品组成的。

虽然 Llama 2 还没有完全开放,但对于绝大多数用户来说是非常宽松的。

如果在 Llama 2 版本发布之日,被许可方或被许可方的关联公司提供的产品或服务的每月活跃用户数在上一个日历月中超过 7 亿,你必须向Meta申请许可证。

2、托管 Llama 2 API

Llama 2 模型有 3 种不同大小:7B、13B 和 70B 参数。

70B参数版本需要多个 GPU,因此无法免费托管。

在 13B 和 7B 版本中,13B 版本更强大,但需要一些压缩(量化或降低浮点精度)才能适合单个中档 GPU。 幸运的是,Llama cpp 库使这变得相当简单!

托管 Llama 2 API 的基本概要如下:

  • 使用 Google Colab 免费访问 Nvidia T4 GPU!
  • 使用 Llama cpp 将 Llama 2 模型压缩并加载到 GPU 上。
  • 创建 FastAPI 服务器以向模型提供 REST API。
  • 使用 Ngrok 通过公共 URL 公开 FastAPI 端点。

完整的 Colab 代码可以从这里下载。

3、Google Colab 操作

首先复制示例的Notebook:

在这里插入图片描述

在左上角,选择“文件”->“在云端硬盘中保存副本”。 这将打开你拥有的新 Colab。

仔细检查Runtime是否设置为使用 T4 Nvidia GPU:

在这里插入图片描述

右上角有用于更改运行时硬件的选项。

要查看实例上的文件(例如 server.log),请检查左侧边栏:
在这里插入图片描述

4、使用 Ngrok 创建公共 URL

我们需要的最后一个工具是 Ngrok,它提供了一种通过公共 URL 访问模型服务端点的方法。

用户需要创建一个仅允许 1 个本地隧道的免费帐户 — 你不需要下载或设置任何东西,只需要一个用户身份验证密钥的帐户。

可以使用电子邮件或通过 GitHub 或 Google 帐户进行注册。 请随意跳过两步身份验证设置。

在这里插入图片描述

在 Ngrok 设置页面上获取 Auth token,如图中红框所示

将用户身份验证令牌放入 Colab 代码中,如下所示:

!./ngrok authtoken <YOUR-NGROK-TOKEN-HERE>

这是示例的Notebook所需的唯一更改,简单易行!

其余流程相当简单,请参阅Notebook的内容。

5、访问 Llama 2 API

现在,只需一个简单的请求,就可以轻松访问你的 Llama 2 模型!

curl --location --request POST 'https://499a-104-196-231-246.ngrok-free.app/generate' \
--header 'Content-Type: application/json' \
--data-raw '{"inputs": "What is mypy used for?","parameters": {"temperature": 0.0,"max_tokens": 25}
}'

如果你使用 Postman,请求/响应可能如下所示:

在这里插入图片描述

6、下一步

主机托管的 LLM 最突出且广泛适用的用例之一是利用你的私有数据丰富模型的内部知识,以便它可以像知识渊博的队友一样在完整的上下文中回答用户查询。

我将在后续文章中介绍如何建立一个免费的开源项目来执行此操作。
在这里插入图片描述

作为一个案例,Danswer 是目前唯一免费、完全开源的基于 Llama 2 LLM 的问答项目,功能齐全,可供生产使用。

7、结束语

虽然能够免费托管自己的 LLM 非常有价值,但使用 Google Colab 有一些注意事项:

  • 本指南(和 Google Colab)更多地用于开发用途,为了拥有永久端点,你可能需要投资专用硬件,因为 Google Colab 将在一段时间不活动后回收实例。
  • 免费套餐中不提供 A100 等高端 GPU。
  • 在免费套餐中,你只能在单个会话中申请最多 12 小时的实例。

原文链接:Llama 2 API免费托管方案 — BimAnt

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

redis的三种集群方式

redis有三种集群方式&#xff1a;主从复制&#xff0c;哨兵模式和集群。 1.主从复制 主从复制原理&#xff1a; 从服务器连接主服务器&#xff0c;发送SYNC命令&#xff1b; 主服务器接收到SYNC命名后&#xff0c;开始执行BGSAVE命令生成RDB文件并使用缓冲区记录此后执行的所…

Fluent-MyBatis

Fluent-MyBatis Fluent-MyBatis 简介 何为 Fluent Mybatis&#xff1f; Fluent Mybatis, 是一款 Mybatis 语法增强框架, 综合了 Mybatis Plus, Dynamic SQL, JPA 等框架特性和优点 Fluent-MyBatis 开源地址 Fluent-MyBatis 原理 Fluent-MyBatis 原理是利用 annotation pro…

2023.8.12号论文阅读

文章目录 TriFormer: A Multi-modal Transformer Framework For Mild Cognitive Impairment Conversion Prediction摘要本文方法实验结果 SwIPE: Efficient and Robust Medical Image Segmentation with Implicit Patch Embeddings摘要本文方法实验结果 TriFormer: A Multi-mod…

Java实现钉钉企业内部应用机器和自定义机器人发送消息

前言 公司让写一个服务监控的功能,当监测到服务停止时,向钉钉群里推送报警信息。之前大概看到钉钉的开放平台的API文档,好像能群发消息的只有机器人。 钉钉开放平台目前提供三种机器人: 企业内部应用机器人 群模板机器人 自定义机器人 本来向用自己比较熟悉的自定义机器人…

【实用黑科技】如何 把b站的缓存视频弄到本地——数据恢复软件WinHex 和 音视频转码程序FFmpeg

&#x1f468;‍&#x1f4bb;个人主页&#xff1a;元宇宙-秩沅 &#x1f468;‍&#x1f4bb; hallo 欢迎 点赞&#x1f44d; 收藏⭐ 留言&#x1f4dd; 加关注✅! &#x1f468;‍&#x1f4bb; 本文由 秩沅 原创 &#x1f468;‍&#x1f4bb; 收录于专栏&#xff1a;效率…

numpy与matplotlib 常用日常代码

matplotlab 和 numpy 可能是python 数据处理工作中用的最多的库了&#xff0c; 官网的文档十分详细&#xff0c;但是就是因为数量庞大&#xff0c;很多时候常用的功能和生僻冷门的功能混在一起&#xff0c;找不到重点。按照二八原则&#xff0c;掌握20%的功能就已经能应付绝大多…

[Docker精进篇] Docker镜像构建和实践 (三)

前言&#xff1a; Docker镜像构建的作用是将应用程序及其依赖打包到一个可移植、自包含的镜像中&#xff0c;以便在不同环境中快速、可靠地部署和运行应用程序。 文章目录 Docker镜像构建1️⃣是什么&#xff1f;2️⃣为什么&#xff1f;3️⃣镜像构建一、用现有容器构建新镜像…

最强自动化测试框架Playwright(34)CDPSession

在 Playwright 中&#xff0c;CDPSession 类是用于与浏览器的 Chrome DevTools Protocol (CDP) 会话进行交互的对象。CDP 是与Chromium浏览器通信的底层协议&#xff0c;它提供了许多与浏览器进行交互和控制的功能。 CDPSession 类提供了执行底层 CDP 命令的方法&#xff0c;并…

优测云服务平台|【压力测试功能升级】轻松完成压测任务

一、本次升级主要功能如下&#xff1a; 1.多份报告对比查看测试结果 2.报告新增多种下载格式 Word格式Excel格式 3.新增多种编排复杂场景的控制器 漏斗控制器并行控制器事务控制器仅一次控制器分组控制器集合点 4.新增概览页面&#xff0c;包含多种统计维度 二、报告对比…

30W IP网络有源音箱 校园广播音箱

SV-7042XT是深圳锐科达电子有限公司的一款2.0声道壁挂式网络有源音箱&#xff0c;具有10/100M以太网接口&#xff0c;可将网络音源通过自带的功放和喇叭输出播放&#xff0c;可达到功率30W。同时它可以外接一个30W的无源副音箱&#xff0c;用在面积较大的场所。5寸进口全频低音…

嵌入式Linux开发实操(九):CAN接口开发

前言: CAN网络在汽车中的使用可以说相当广泛。而CAN网络需要的收发器最常用的就是NXP 的TJA1042: CAN网络:

Docker网络与Cgroup硬件资源占用控制

目录 1.dockers的网络模式 1.1 获取容器的进程号 1.2 docker网络模式的特性 1.3 host主机模式 1.4 container模式 1.5 none模式 1.6 bridge 桥接模式 1.6 容器的自定义网络 &#xff08;1&#xff09;未创建自定义网络时&#xff0c;创建指定IP容器的测试 &#xff0…

opsForHash() 与 opsForValue 请问有什么区别?

&#x1f449;&#xff1a;&#x1f517;官方API参考手册 如图&#xff0c;opsForHash()返回HashOperations<K,HK,HV>但是 opsForValue()返回ValueOperations<K,V>… 区别就是opsForHash的返回值泛型中有K,HK,HV,其中K是Redis指定的某个数据库里面某一个关键字(由…

详解拦截器和过滤器

目录 代码演示过滤器Demo拦截器Demo 过滤器自定义拦截器配置拦截器过滤器执行原理多个过滤器的执行顺序 拦截器自定义拦截器注册拦截器1&#xff09;注册拦截器2&#xff09;配置拦截的路径3&#xff09;配置不拦截的路径 多个拦截器的执行顺序 过滤器和拦截器的区别 代码演示 …

如何使用Spark/Flink等分布式计算引擎做网络入侵检测

如何使用Spark/Flink等分布式计算引擎做网络入侵检测 引言16 Distributed Abnormal Behavior Detection Approach Based on Deep Belief Network and Ensemble SVM Using Spark17 Spark configurations to optimize decision tree classification on UNSW-NB1518 A dynamic spa…

elementUI 的上传组件<el-upload>,自定义上传按钮样式

方法一&#xff1a; 原理&#xff1a;调用<el-upload>组件的方法唤起选择文件事件 效果&#xff1a; 页面代码&#xff1a; 1、选择图片按钮 <div class"flex_row_spacebetween btn" click"chooseImg"><span class"el-icon-plus ic…

【QT】 QFileQFileInfo文件操作

很高兴在雪易的CSDN遇见你 &#xff0c;给你糖糖 欢迎大家加入雪易社区-CSDN社区云 前言 本文分享QT对文件的操作技术&#xff0c;希望对各位小伙伴有所帮助&#xff01; 感谢各位小伙伴的点赞关注&#xff0c;小易会继续努力分享&#xff0c;一起进步&#xff01; 你的点…

Vue3 —— watchEffect 高级侦听器

该文章是在学习 小满vue3 课程的随堂记录示例均采用 <script setup>&#xff0c;且包含 typescript 的基础用法 前言 Vue3 中新增了一种特殊的监听器 watchEffect&#xff0c;它的类型是&#xff1a; function watchEffect(effect: (onCleanup: OnCleanup) > void,o…

go_并发编程(1)

go并发编程 一、 并发介绍1&#xff0c;进程和线程2&#xff0c;并发和并行3&#xff0c;协程和线程4&#xff0c;goroutine 二、 Goroutine1&#xff0c;使用goroutine1&#xff09;启动单个goroutine2&#xff09;启动多个goroutine 2&#xff0c;goroutine与线程3&#xff0…

通过 HttpClient 发送请求

文章目录 1. 引入 maven 依赖2. 发送 GET 方式的请求3. 发送 POST 方式的请求 1. 引入 maven 依赖 <dependency><groupId>org.apache.httpcomponents</groupId><artifactId>httpclient</artifactId> </dependency>2. 发送 GET 方式的请求…