我的编程空间,编程开发者的网络收藏夹
学习永远不晚

手把手教你玩Hugging Face

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

手把手教你玩Hugging Face

Hugging Face起初是一家总部位于纽约的聊天机器人初创服务商,他们本来打算创业做聊天机器人,然后在github上开源了一个Transformers库,虽然聊天机器人业务没搞起来,但是他们的这个库在机器学习社区迅速大火起来。目前已经共享了超100,000个预训练模型,10,000个数据集,变成了机器学习界的github

打开它的网站:Hugging Face – The AI community building the future.

可以看到,Hugging Face的主要功能都在最上面的一行,包括:模型(Models)、数据集(Datasets)、空间(Spaces)。其他还有:说明文档(Docs)、解决方案(Solutions)、报价(Pricing)。另外在折叠的菜单里,还有交流社区(Community)、以及机器学习的一些课程等等。

在这里,我们先着重说一下这个Spaces。这是Hugging Face区别于github的一个特殊功能。就是可以把你的模型和代码运行在它的服务器上,并且可以公开提供给别人用!

具体怎么做呢?举个简单的例子:现在大火的ChatGPT很好玩,但是由于众所周知的原因,不给我们用了!爬墙又很麻烦,梯子有可能不稳定,普通人也不会用。Hugging Face这时候就派上用场了!因为它是个美国网站,且没有被墙,它的服务都运行在美国,所以在这上面用你的ChatGPT API Key就不会被封!

打开这个Space:Chatgpt Demo - a Hugging Face Space by cuiyuan605

就可以用你的OpenAI API Key跟ChatGPT畅聊了!

如果你觉得用别人的Space不放心,那可以将它一键克隆到你的账号:

这样,你就可以随意修改它的代码,妈妈再也不用担心你的Key被别人偷了!

如果你没有ChatGPT的API Key,这里还有一个可以将文字变成图像的小模型,你也可以克隆到你的账号里玩一玩:Text to Image - a Hugging Face Space by cuiyuan605

这个Space的功能,就是将你的代码,运行在Hugging Face的服务器上。App就是你的服务交互界面,Files是你的代码文件,Community是这个服务的相关讨论。另外,还可以在Settings里修改这个服务的设置,后面的菜单里是其他人对这个Space的一些操作。

那么,这个Space的交互原理是什么,如何从零构建一个自己的Space呢?

可以参考一下网站给的文档:Spaces

如果不想看英文文档,可以看我下面的简单介绍。

这个Space的主要原理,就是让你在它的服务器上跑一个web服务。然后将你生成的交互页面嵌入到App这个选项页里。

Hugging Face提供了三种动态交互的方式:Gradio、Streamlit和Docker。

这里重点说一下Gradio,这是一个python的web服务库。是专门为机器学习应用,封装的一个前后端库。用法很简单,详细文档可以参考这里:Quickstart

我们先用一个简单的例子,让你可以快速用起来。

首先,创建一个Space,Space SDK选择Gradio:

然后,在Files中创建文件requirements.txt,用于指定项目的依赖库。比如在这里,我们可以将文件内容编辑为:

transformerstorch

接下来,创建文件app.py,用于实现交互界面。我们将文件内容编辑为:

import gradio as grdef greet(name):    return "Hello " + name + "!!"iface = gr.Interface(fn=greet, inputs="text", outputs="text")iface.launch()

保存文件后,点击App选项页,等它build一会儿,一个简单的Gradio项目就成功啦!

之后每次更新仓库,都会重新构建和启动App,你也可以用git把项目拉到本地进行开发,开发完成后上传代码,方法和github一样。clone的地址在Settings后面那个三个点的菜单里。

是不是是很简单,是不是打开了一个新世界的大门,只要把项目设为public,就可以将服务提供给其他人用啦。不过免费的空间只有2CPU和16G内存,且每48小时就会将你的服务自动停止。需要更长的服务时间,更多硬件资源,甚至GPU资源,那就需要马内了,毕竟世上没有免费的午餐!

下面的Streamlit和Docker只做简单的介绍。

Streamlit也是一个python的前后端库,只不过它并不是专为机器学习应用开发的,而是更偏向于可视化数据展示。此外,它还有个重要的功能,就是能够把页面嵌入到其他的网站,也就是说你可以把Hugging Face上服务,嵌入到你的个人网站里!开不开心,意不意外!具体方法可以参考文档:Streamlit Spaces

至于Docker则是一个更加独立自由的空间,用过的都说好!具体使用方法可以参考官方文档:Your First Docker Space: Text Generation with T5

这里顺便说一下,Docker这个示例是跑不通的!官方文档写错了,需要把Dockerfile的最后一行:

CMD ["uvicorn", "app.main:app", "--host", "0.0.0.0", "--port", "7860"]

改为:

CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "7860"]

除了Spaces以外,Hugging Face还提供了各路大佬上传的各种模型和数据集,让我们可以站在大佬的肩膀上看世界,不用苦逼的造轮子。

不过模型和数据文件一般都比较大,需要用到lfs(Large File Storge)大文件存储,用之前记得先装一下:

git lfs intall

然后git clone走起

我们除了可以直接下载这些模型和数据集以外,还可以对模型进行自动训练。

或者直接将模型部署为API或者Space

数据集的clone地址藏在这里哦:

下面,我们就开心的玩起来吧!

参考资料:

《Huggingface 超详细介绍》:Huggingface 超详细介绍 - 知乎

来源地址:https://blog.csdn.net/cuiyuan605/article/details/130250118

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

手把手教你玩Hugging Face

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

抛开概念,手把手教你玩转 Node.js CommonJS 规范

本文将详细介绍 Node.js CommonJS 规范,包括模块定义、加载、循环依赖等内容,并提供大量代码示例,帮助您快速上手使用 Node.js CommonJS 规范开发 Node.js 应用程序。
抛开概念,手把手教你玩转 Node.js CommonJS 规范
2024-02-04

手把手教你ghost win7安装教程

还在为不会安装ghost win7系统还发愁吗?接下来小编就手把手教你安装步骤,可要看好了。1、下载ghost win7 64位旗舰版系统,右键点击系统镜像,使用WinRAR解压到C盘之外的分区。2、双击“安装系统.exe”打开Onekey
2023-07-11

手把手教你写--FTP(基于python)

ftp需求分析1. 多用户同时登陆(客户端合法性验证)2. 用户登陆,加密认证--(hamc or md5)3. 注册功能4. 上传/下载文件,保证文件一致性5. 不同用户家目录不同,且只能访问自己的家目录6. 对用户进行磁盘配额、不同用户
2023-01-30

手把手教你用Vue3写播放器

本篇文章给大家带来了关于Vue3的相关知识,其中主要跟大家聊一聊怎么用Vue3写个播放器,感兴趣的朋友下面一起来看一下吧,希望对大家有帮助。
2023-05-14

手把手教你在GitLab中部署LDAP

GitLab是一款高效的代码管理工具,它能够帮助团队更加高效地管理代码,并实现更好的协作。在一个团队中,有时需要对不同人员授予不同的权限,这时就需要使用LDAP来对GitLab进行认证工作。接下来,我们就来了解一下如何在GitLab中部署L
2023-10-22

手把手教你win7怎样更新win10

win10出色的性能、精致的页面、吸引了越来越多的电脑用户,有许多人已经从win7更新至win10系统了,而有些小伙伴们却还不知道win7更新win10的方法,今天小编就手把手教大家win7怎样更新win10。1、首先进入http://ww
2023-07-10

手把手教你在Python里使用ChatGPT

最近几天我一直在玩ChatGPT,我对使用这个工具的无限可能性着迷,下面这篇文章主要给大家介绍了关于在Python里使用ChatGPT的相关资料,文中通过图文介绍的非常详细,需要的朋友可以参考下
2022-12-19

手把手教你在vue中使用three.js

最近在vue3项目中通过three.js实现了实际的三维效果demo,下面这篇文章主要给大家介绍了关于在vue中使用three.js的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
2023-03-01

手把手教你将sublime3打造成pyt

sublime3汉化版下载地址:http://www.cr173.com/soft/55484.html 1、 打开sublimeText 在菜单栏找到工具——>编译系统——>新编译系统2、 在新的配置文件中输入如下配置 { “cmd”:
2023-01-31

手把手教你用阿里云代理

进入阿里云官网,点击左侧“阿里云代理”选项。在代理页面中选择您要代理的云服务器或云产品。填写您的账号信息,包括您的云服务器密码、账号、代理IP地址等。选择您要开通的地区和服务级别。选择您要使用的操作系统、数据库、应用等。选择您要使用的API或SDK。设置您的代理参数,例如认证方式、API密钥等。设置您的客户端调用方式,例如Web、APP等。确认您的订单和服务状态等信息,并点击“确认开通”按钮。等待阿...
2023-10-27

手把手教你大地win7下载安装教程

如何获取并安装大地系统Win7?许多朋友可能已经听说过大地系统,并且大地系统的安装包也受到了许多网友的赞许。那么如何下载安装大地win7呢?接下来就让小编给大家带来大地win7下载安装的详细教程,有需要的小伙伴们快来看看吧!1、首先百度搜索
2023-07-14

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录