HugggingFace 推理 API、推理端点和推理空间相关模型部署和使用以及介绍

这篇具有很好参考价值的文章主要介绍了HugggingFace 推理 API、推理端点和推理空间相关模型部署和使用以及介绍。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

HugggingFace 推理 API、推理端点和推理空间相关模型部署和使用以及介绍。

Hugging Face是一家开源模型库公司。

2023年5月10日,Hugging Face宣布C轮1亿美元融资,由Lux Capital领投,红杉资本、Coatue、Betaworks、NBA球星Kevin Durant等跟投,其估值增长到了20亿美元。
2023年5月16日,Hugging Face首次登上了福布斯北美人工智能50强榜单。
2023年7月2号,参数总量达1760亿的BLOOM大模型经过为期117天的训练宣告完成,其参数总量恰好比OpenAI已经发布了近三年的GPT-3多10亿。

接触 AI 的同学肯定对HuggingFace[1]有所耳闻,它凭借一个开源的 Transformers 库迅速在机器学习社区大火,为研究者和开发者提供了大量的预训练模型,成为机器学习界的 GitHub。在 HuggingFace 上我们不仅可以托管模型,还可以方便地使用各种模型的 API 进行测试和验证,部署属于自己的模型 API 服务,创建自己的模型空间,分享自己的模型。本文将介绍 HuggingFace 的推理 API、推理端点和推理空间的使用方法。

HugggingFace 推理 API、推理端点和推理空间相关模型部署和使用以及介绍,学习资源,智能工具,HugggingFace,模型,推理,GitHub,开源,api,Transformers

HuggingFace 推理 API
在 HuggingFace 托管的模型中,有些模型托管之后会提供推理 API,如果我们想快速验证模型是否可以满足我们的需求,可以使用这些 API 进行测试,下面以这个模型为例Salesforce/blip-image-captioning-base进行介绍,该模型可以通过图片生成英文描述。

1.HuggingFace是什么
可以理解为对于AI开发者的GitHub,提供了模型、数据集(文本|图像|音频|视频)、类库(比如transformers|peft|accelerate)、教程等。
2.为什么需要HuggingFace
主要是HuggingFace把AI项目的研发流程标准化,即准备数据集、定义模型、训练和测试。

HuggingFace是一个高速发展的社区,包括Meta、Google、Microsoft、Amazon在内的超过5000家组织机构在为HuggingFace开源社区贡献代码、数据集和模型。目前包括模型236,291个,数据集44,810个。刚开始大多数的模型和数据集是NLP方向的,但图像和语音的功能模型正在快速更新中。

HuggingFace GitHub可以看到包括常用的transformers、datasets、diffusers、accelerate、pef和optimum类库。

Hugging Face最初是一家总部位于纽约的初创企业,专注于聊天机器人服务。然而,他们在创业过程中开源了一个名为Transformers的库,并在GitHub上发布。虽然聊天机器人业务并没有取得成功,但这个库却在机器学习社区迅速走红。目前,Hugging Face已经分享了超过100,000个预训练模型和10,000个数据集,成为机器学习界的重要开源资源。

hugging face官网: https://huggingface.co/

更多好用又免费ai工具推荐
0. >>>免费cha/t/g/p/t中文版(免f墙版) : https://ymiai.top/
1.>>>免费ai绘画网站: : https://tusiart.com/
2.>>>免费ai写作网站: : https://chat.moyanaigc.com
3.>>>免费ai绘画网站 : https://www.acgnai.com/

Hugging Face之所以取得巨大的成功,原因有二。首先,它使得非专业人士,尤其是初学者,能够快速使用科研专家们训练出的强大模型。这为我们提供了便利,使我们能够在短时间内应用高质量的模型。其次,Hugging Face的开放文化、合作态度以及利他利己的精神吸引了大量人才。许多业界知名人士在Hugging Face上使用和提交新的模型,这让我们能够站在他们的肩膀上,不必从零开始。尽管我们没有像他们那样丰富的计算资源和数据集,但Hugging Face为我们提供了平台和工具,使我们能够与专家们共同合作。

在国内,Hugging Face也广泛应用于各个领域。许多开源框架本质上都是利用Hugging Face的Transformers库进行模型微调(当然也有许多专家默默地贡献模型和数据集)。许多自然语言处理工程师的招聘要求明确要求熟悉Hugging Face的Transformers库的使用。在我们简要介绍了Hugging Face的强大功能之后,让我们看看如何开始使用Hugging Face。因为它不仅提供了丰富的数据集,还提供了各种模型供我们自由下载和调用,所以入门非常简单。即使对于GPT和BERT等模型的细节了解不多,也可以使用它们的模型(当然,还是有必要了解一下我为你写的关于BERT的简介)。

2016年,一家名为Hugging Face的公司应运而生。

在成立初期的2016年,就像许多类似的初创公司一样,Hugging Face专注于聊天机器人领域。他们开发了一个基于LSTM的聊天机器人应用程序,主要面向青少年的情感和娱乐服务。然而,由于技术尚未成熟以及商业模式难以变现,尽管Hugging Face拥有一定的核心用户群体,但公司的发展速度相对缓慢。

直到2018年,面对发展瓶颈,创始人决定开放聊天机器人的AI模型,让用户自行开发服务,初衷是通过用户共创来获得灵感。这一出人意料的举动却成为Hugging Face进入高速发展的快车道,开启了取得成功的新篇章。

由于开源的AI模型数量有限,Hugging Face迅速成为人工智能开发者的聚集地。创始团队随后根据用户需求转变自身的聊天平台为开发者社区,并逐渐形成了全球最大的自然语言处理开源模型数据库。

同年,Hugging Face发布了Transformers框架,该框架基于注意力机制,在机器翻译、语音识别、文本生成等自然语言处理任务中得到广泛应用。Transformers框架以其高性能和开源属性成为机器学习工具库中最为重要的资源之一,使Hugging Face迅速提升了知名度和影响力。

如今,Hugging Face已经成为机器学习模型研究的中心,成为GitHub上增长最快的人工智能项目之一。

hugging face

打造机器学习领域的“GitHub”
Hugging Face致力于构建机器学习领域的”GitHub”,专注于自然语言处理(NLP)技术,并通过技术创新不断丰富产品与服务,成为广大研究人员和技术开发者的合作伙伴。

在Hugging Face的技术DNA中,核心项目是于2018年开源的Transformers,一种面向自然语言处理的预训练语言模型。Transformers基于注意力机制,在翻译、语音识别、图像分类、文本生成等NLP任务中得到广泛应用。Hugging Face开发的模型和数据集可以直接使用,实现推理和迁移学习,使Transformers框架在性能和易用性上处于业界领先地位。

BERT模型利用两个Transformers网络进行预训练,使模型能够同时学习当前和历史位置的信息。而GPT-3模型也利用Transformers进行训练,在语言生成方面展示了大型语言模型的巨大潜力。

Transformers彻底改变了深度学习在NLP领域的发展范式,降低了相关研究和应用的门槛。因此,Hugging Face迅速崛起成为行业翘楚,成为人工智能社区中最有影响力的技术供应商。通过提供高性能且易用的技术解决方案,Hugging Face为研究人员和开发者们带来了巨大的价值。

页面小组件
推理 API 有两种使用方式,一种是在模型页面的右侧找到推理 API 的小组件页面,初始界面如下图所示:

HugggingFace 推理 API、推理端点和推理空间相关模型部署和使用以及介绍,学习资源,智能工具,HugggingFace,模型,推理,GitHub,开源,api,Transformers

可以在这个页面中上传图片,然后就可以看到模型进行推理运行,等一会后推理结果就出来了,如下图所示:

HugggingFace 推理 API、推理端点和推理空间相关模型部署和使用以及介绍,学习资源,智能工具,HugggingFace,模型,推理,GitHub,开源,api,Transformers

推理结果为:“a dog wearing a santa hat and a red scarf”(一只狗戴着圣诞老人的帽子和红色的围巾)

页面小组件的方式是 HuggingFace 自动帮助模型创建的,具体的信息可以参考这里[2]。

代码调用
另外一种方式是通过代码对推理 API 进行调用,在右侧的Deploy菜单中选择Inference API,如下图所示:

HugggingFace 推理 API、推理端点和推理空间相关模型部署和使用以及介绍,学习资源,智能工具,HugggingFace,模型,推理,GitHub,开源,api,Transformers

打开菜单后可以看到几种代码调用方式,分别有 Python, JavaScript 和 Curl:

HugggingFace 推理 API、推理端点和推理空间相关模型部署和使用以及介绍,学习资源,智能工具,HugggingFace,模型,推理,GitHub,开源,api,Transformers

这里我们选择 Curl 方式来进行调用,我们可以直接复制界面上的 Curl 命令,注意其中包含了我们的 API token,所以不要随意分享出去,然后在终端上执行命令,就可以看到预测结果了:

$ curl https://api-inference.huggingface.co/models/Salesforce/blip-image-captioning-base \
    -X POST \
    --data-binary '@dogs.jpg' \
    -H "Authorization: Bearer hf_xxxxxxxxxxxxxxxxxxxxxx"

# 输出结果
[{"generated_text":"a dog wearing a santa hat and a red scarf"}]%

HuggingFace 推理端点(Endpoint)
推理 API 虽然方便,但推理 API 一般用于测试和验证,由于速率限制,官方不推荐在生产环境中使用,而且也不是所有模型都有提供推理 API。如果想要在生产环境部署一个专属的推理 API 服务,我们可以使用 HuggingFace 的推理端点(Endpoint)。

推理端点的部署也比较简单,首先在Deploy菜单中选择Inference Endpoints,如下图所示:

HugggingFace 推理 API、推理端点和推理空间相关模型部署和使用以及介绍,学习资源,智能工具,HugggingFace,模型,推理,GitHub,开源,api,Transformers

打开菜单后可以看到新建推理端点的界面,如下图所示:
HugggingFace 推理 API、推理端点和推理空间相关模型部署和使用以及介绍,学习资源,智能工具,HugggingFace,模型,推理,GitHub,开源,api,Transformers

首先是服务器的选择,先选择云服务厂商,目前只有 AWS 和 Azure 两种,再选择机器区域节点。

然后是服务器的配置,HuggingFace 默认会给出模型的最低推理配置,如果我们想要更高的配置,可以点击2中的下拉框进行选择。

接着是推理端点的安全等级,有 3 种选择,分别是Protected、Public和Privaate

Pubulic:推理端点运行在公共的 HuggingFace 子网中,互联网上的任何人都可以访问,无需任何认证。

Protected:推理端点运行在公共的 HuggingFace 子网,互联网上任何拥有合适 HuggingFace Token 的人都可以访问它。

Privacy:推理端点运行在私有的 HuggingFace 子网,不能通过互联网访问,只能通过你的 AWS 或 Azure 账户中的一个私有连接来使用,可以满足最严格的合规要求。

最后显示的是服务器的价格,按小时算,根据配置的不同,价格也会有所不同。HuggingFace API 是免费的,但 HuggingFace 的推理端点是要收费的,毕竟是自己专属的 API 服务。因为推理端点部署是收费的,所以在部署之前需要在 HuggginFace 中添加付款方法,一般使用国内的 Visa 或 Master 卡就可以了。

信息确认无误后点击Create Endpoint按钮创建推理端点,创建成功后可以进入推理端点的详情页面看到如下信息:

HugggingFace 推理 API、推理端点和推理空间相关模型部署和使用以及介绍,学习资源,智能工具,HugggingFace,模型,推理,GitHub,开源,api,Transformers

其中Endpoint URL就是部署好的推理端点地址,我们可以跟调用推理 API 一样的方式来使用它,示例代码如下:

$ curl https://your-endpoint-url \
    -X POST \
    --data-binary '@dogs.jpg' \
    -H "Authorization: Bearer hf_xxxxxxxxxxxxxxxxxxxxxx"

HuggingFace 模型空间(Space)
HuggingFace 推理端点是部署 API 服务,但是如果我们想要分享自己的模型,让别人可以直接在浏览器中使用模型的功能,这时候就需要使用 HuggingFace 的模型空间(Space)了。

要部署一个模型空间,首先在模型的Deploy菜单中选择Spaces,如下图所示:

HugggingFace 推理 API、推理端点和推理空间相关模型部署和使用以及介绍,学习资源,智能工具,HugggingFace,模型,推理,GitHub,开源,api,Transformers

选择菜单后可以看到空间创建的引导界面,如下图所示:

HugggingFace 推理 API、推理端点和推理空间相关模型部署和使用以及介绍,学习资源,智能工具,HugggingFace,模型,推理,GitHub,开源,api,Transformers

界面中显示了启动模型的 Python 脚本,然后我们点击Create new Space按钮进入空间的创建页面,如下图所示:

HugggingFace 推理 API、推理端点和推理空间相关模型部署和使用以及介绍,学习资源,智能工具,HugggingFace,模型,推理,GitHub,开源,api,Transformers

在模型创建页面中,我们需要设置以下信息:

首先要指定空间的名称,一般以模型的名称命名。

然后选择空间的 SDK,目前有Streamlit、Gradio、Docker和Static 四种。

Streamlit:Streamlit 是一个可以帮助我们快速创建数据应用的 Python 库,可以在浏览器中直接使用模型,它相比Gradio可以支持更加丰富的页面组件,界面也更加美观。

Gradio:Gradio 也是一个编写 GUI 界面的 Python 库,相对Streamlit来说,它的 GUI 功能虽然比较少,但它的优势在于简单易用,一般演示的 Demo 用它就足够了。

Docker:推理空间也可以使用 Docker 容器进行部署,它内部支持了 10 种模版。

Static:静态页面,我理解是包括 Html、Js、Css 等前端资源来作为页面展示。

然后选择空间硬件,HuggingFace 为每个空间提供了一个免费的配置:

2 核 CPU 16G 内存,用这个配置部署推理空间是免费的,如果你想要更高的配置,也可以选择付费的配置。

HugggingFace 推理 API、推理端点和推理空间相关模型部署和使用以及介绍,学习资源,智能工具,HugggingFace,模型,推理,GitHub,开源,api,Transformers

最后是安全等级,有Public和Private两种,Public 是公开的,任何人都可以访问,但只有你的组织成员可以修改,Private 是私有的,只有你的组织成员可以访问。

设置完后点击Create Space按钮就开始创建推理空间了,创建完成后会自动跳转到空间的页面,如下图所示:

HugggingFace 推理 API、推理端点和推理空间相关模型部署和使用以及介绍,学习资源,智能工具,HugggingFace,模型,推理,GitHub,开源,api,Transformers

如果推理空间的安全等级设置为 Public,你就可以将空间的 URL 分享给其他人使用了。想查看 HuggingFace 推理空间更多的信息,可以参考这里[3]。

总结
本文介绍了 HuggingFace 的推理 API、推理端点和推理空间的使用方法,推理 API 是免费的,使用 HuggingFace 自建的 API 服务,推理端点是部署自己专属的 API 服务,但需要收取一定的费用。推理空间是部署模型的 Web 页面,可以直接在浏览器中使用模型的功能,可以用于演示和分享模型,有一定的免费额度。

参考:
[1] HuggingFace: https://huggingface.co/
[2] https://huggingface.co/docs/hub/models-widgets
[3] https://huggingface.co/docs/hub/spaces文章来源地址https://www.toymoban.com/news/detail-803494.html

到了这里,关于HugggingFace 推理 API、推理端点和推理空间相关模型部署和使用以及介绍的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 大语言模型推理与部署工具介绍

    本项目中的相关模型主要支持以下量化、推理和部署方式,具体内容请参考对应教程。 工具 特点 CPU GPU 量化 GUI API vLLM§ 16K‡ 教程 llama.cpp 丰富的量化选项和高效本地推理 ✅ ✅ ✅ ❌ ✅ ❌ ✅ link 🤗Transformers 原生transformers推理接口 ✅ ✅ ✅ ✅ ❌ ✅ ✅ link Colab Demo 在Colab中

    2024年02月09日
    浏览(39)
  • 【TensorRT】TensorRT C# API 项目更新 (1):支持动态Bath输入模型推理(下篇)

    关于该项目的调用方式在上一篇文章中已经进行了详细介绍,具体使用可以参考《最新发布!TensorRT C# API :基于C#与TensorRT部署深度学习模型》,下面结合Yolov8-cls模型详细介绍一下更新的接口使用方法。 4.1 创建并配置C#项目   首先创建一个简单的C#项目,然后添加项目配置

    2024年04月17日
    浏览(31)
  • AIGC - ChatGLM大模型:ChatGLM2-6B模型推理部署

    如果你要问我为什么直接部署ChatGLM2的模型? 因为当我在8月份在上海召开的全球人工智能大会上了解到清华-智谱发布的ChatGLM模型时,它已经发布了新的版本ChatGLM2,并且推理的效果提升了不少,那么本着只要最好的原则,我就直接上手先玩新版本了。 作为AIGC方面的小白来说

    2024年02月06日
    浏览(48)
  • C#开源项目:私有化部署LLama推理大模型

    推荐一个C#大模型推理开源项目,让你轻松驾驭私有化部署! 01 项目简介 LLama是Meta发布的一个免费开源的大模型,是一个有着上百亿数量级参数的大语言模型,支持CPU和GPU两种方式。 而LLamaSharp就是针对llama.cpp封装的C#版本,让方便我们基于C#开发应用,让我们不需要自己编译

    2024年02月03日
    浏览(65)
  • 开源大模型部署及推理所需显卡成本必读之一

    在人工智能大模型训练的过程中,常常会面临显存资源不足的情况,其中包括但不限于以下两个方面:1.经典错误:CUDA out of memory. Tried to allocate ...;2.明明报错信息表明显存资源充足,仍然发生 OOM 问题。为了深入理解问题的根源并寻求解决方案,必须对系统内存架构以及显

    2024年03月21日
    浏览(43)
  • 【AI实战】大模型 LLM 部署推理框架的 vLLM 应用

    vLLM is a fast and easy-to-use library for LLM inference and serving. vLLM 速度很快: State-of-the-art serving throughput Efficient management of attention key and value memory with PagedAttention Continuous batching of incoming requests Optimized CUDA kernels vLLM灵活且易于使用: Seamless integration with popular HuggingFace models High-throughput

    2024年02月04日
    浏览(41)
  • 确保端点安全的 7 大 REST API 安全策略

    在当今 REST API 驱动的环境中,大多数 API 都是基于 REST 的,并被 Web 应用程序广泛使用。这些 API 就像用于在线发送和接收信息的多功能工具。然而,它们的广泛使用使它们面临各种安全威胁和挑战。 无论客户端或其运行环境如何,可以采用哪些策略来保护 REST API 的完整性和

    2024年02月02日
    浏览(60)
  • llama-factory SFT系列教程 (一),大模型 API 部署与使用

    本来今天没有计划学 llama-factory ,逐步跟着github的文档走,发现这框架确实挺方便,逐渐掌握了一些。 最近想使用 SFT 微调大模型,llama-factory 是使用非常广泛的大模型微调框架; 基于 llama_factory 微调 qwen/Qwen-7B,qwen/Qwen-7B-Chat 我使用的是 qwen/Qwen-7B ,如果追求对话效果 qwen/

    2024年04月16日
    浏览(45)
  • 使用Tensorrt部署,C++ API yolov7_pose模型

    虽然标题叫部署yolov7_pose模型,但是接下来的教程可以使用Tensorrt部署任何pytorch模型。 仓库地址:https://github.com/WongKinYiu/yolov7/tree/pose 系统版本:ubuntu18.4 驱动版本:CUDA Version: 11.4 在推理过程中,基于 TensorRT 的应用程序的执行速度可比 CPU 平台的速度快 40 倍。借助 TensorRT,您

    2024年02月05日
    浏览(44)
  • 【模型部署 01】C++实现分类模型(以GoogLeNet为例)在OpenCV DNN、ONNXRuntime、TensorRT、OpenVINO上的推理部署

    深度学习领域常用的基于CPU/GPU的推理方式有OpenCV DNN、ONNXRuntime、TensorRT以及OpenVINO。这几种方式的推理过程可以统一用下图来概述。整体可分为模型初始化部分和推理部分,后者包括步骤2-5。 以GoogLeNet模型为例,测得几种推理方式在推理部分的耗时如下: 结论: GPU加速首选

    2024年02月06日
    浏览(56)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包