新技术前沿-2023-基于Hugging Face体验微软NewBing必应GPT4.0

Huggingface 超详细介绍
Hugging Face官网
go-proxy-bing的GitHub官网

1 Hugging Face简介

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

其之所以能够获得如此巨大的成功,一方面是让我们这些甲方企业的小白,尤其是入门者也能快速用得上科研大牛们训练出的超牛模型。另一方面是,这种特别开放的文化和态度,以及利他利己的精神特别吸引人。huggingface上面很多业界大牛也在使用和提交新模型,这样我们就是站在大牛们的肩膀上工作,而不是从头开始,当然我们也没有大牛那么多的计算资源和数据集。

在国内huggingface也是应用非常广泛,一些开源框架本质上就是调用transfomer上的模型进行微调(当然也有很多大牛在默默提供模型和数据集)。很多NLP工程师招聘的条目上也明摆着要求熟悉huggingface transformer库的使用。

Hugging Face是一家在自然语言处理和人工智能领域著名的公司,以开发开源的软件库和工具为主要贡献,其中最受欢迎的是Transformers库,广泛应用于诸如语言翻译、情感分析和问答等多种自然语言处理任务。此外,Hugging Face还开发了一些商业产品,例如Hugging Face Spaces和Hugging Face Datasets,为构建和部署自然语言处理模型提供工具和基础设施。

Hugging Face Hub是一个社区,旨在为机器学习开发者提供各种功能。其中主要包括:
(1)模型仓库(Model Repository):类似于Git仓库,允许用户管理代码版本和开源代码,模型仓库则让用户管理模型版本和开源模型等,使用方式与Github类似。
(2)模型(Models):Hugging Face为不同的机器学习任务提供了许多预训练好的机器学习模型,这些模型存储在模型仓库中。
(3)数据集(Dataset):Hugging Face上有许多公开数据集可供用户使用。

在NLP领域,Hugging Face因其提供基于Transformer的模型而闻名。为了方便用户使用,Hugging Face还提供了以下几个项目:
(1)Transformers :Transformers 库是Hugging Face的核心,我们学习Hugging Face其实就是学习怎么使用这个库。这个库提供了API和很多工具及方法,方便我们下载和训练最先进的预训练模型。这些模型支持不同模态下的常见任务,例如自然语言处理,计算机视觉,音频,多模态等。
(2)Datasets :使用该框架,只需要少量代码即可轻松下载和预处理常见公开数据集。同时还提供了强大的数据预处理方法,可帮助我们快速准备数据,以用于训练机器学习模型。
(3)Space :在这里我们可以在线体验很多有趣的应用,比如根据文字生成图片,根据我们的照片制作合成音视频等。

2 go-proxy-bing简介

2023年2月,尝到AI甜头的微软,与OpenAI联手,将聊天机器人工具ChatGPT整合到自家必应(Bing)搜索引擎当中,并命名为“New Bing”。在当时,New Bing来势汹汹,不仅使用了最强的GPT-4大模型,而且完全免费,目的就是希望撬动谷歌在搜索引擎领域的市场份额。

从当时各家测评来看,当ChatGPT被用作搜索工具时,它除了显示正常的搜索结果外,还会根据内容进行整理,直接给出最准确的答案,而传统搜索引擎仍然需要用户进行结果的筛选,效率与准确性远远不及ChatGPT。这样一来,当ChatGPT与Bing合体后,这个全新的搜索引擎带来了一种全新的商业模式——通过与聊天机器人进行交互,不断理解用户的需求,最终生成用户想要的答案。

NewBing不仅是一款搜索引擎,更是一个基于人工智能技术的全新生态系统。它利用了人工智能技术,将搜索引擎和其他智能化的服务和功能结合在一起,构建了一个全新的搜索和服务平台,为用户提供了更为丰富、个性化、可靠的搜索和服务体验。同时,NewBing对于人工智能技术的应用和发展,也具有重要的意义。

基于微软New Bing用Vue3和Go简单定制的微软New Bing演示站点,拥有一致的UI体验,支持ChatGPT提示词,国内可用,基本兼容微软Bing AI所有功能,无需登录即可畅聊。

3 安装部署流程

1、首先进入Hugging Face官网。
在这里插入图片描述
2、然后点击Sign Up(注册)一个账号,然后在邮箱中验证。
在这里插入图片描述
3、点击Spaces,创建新空间,即个人的新仓库。
在这里插入图片描述
4、点击Create new Space。
在这里插入图片描述
5、自定义空间名,选择mit协议,选择Docker部署,选择默认的免费控件,建立私有仓库。
在这里插入图片描述
收费的硬件配置。
在这里插入图片描述
6、配置Dockerfile。

# Build Stage
# 使用 golang:alpine 作为构建阶段的基础镜像
FROM golang:alpine AS builder
# 添加git, 以便之后可以从GitHub克隆项目
RUN apk --no-cache add git
# 从GitHub克隆go-proxy-bingai项目到/workspace/app目录下
RUN git clone https://github.com/Harry-zklcdc/go-proxy-bingai.git /workspace/app
# 设置工作目录为之前克隆的项目目录
WORKDIR /workspace/app
# 编译go项目,-ldflags="-s -w"是为了减少编译后的二进制大小
RUN go build -ldflags="-s -w" -tags netgo -trimpath -o go-proxy-bingai main.go

# Runtime Stage
# 使用轻量级的alpine镜像作为运行时的基础镜像
FROM alpine
# 设置工作目录
WORKDIR /workspace/app
# 从构建阶段复制编译后的二进制文件到运行时镜像中
COPY --from=builder /workspace/app/go-proxy-bingai .
# 设置环境变量,此处为随机字符
ENV Go_Proxy_BingAI_USER_TOKEN_1="kJs8hD92ncMzLaoQWYtx5rG6bE3fz4io"
# 暴露8080端口
EXPOSE 8080
# 容器启动时运行的命令
CMD ["/workspace/app/go-proxy-bingai"]

在这里插入图片描述
复制Dockerfile文件内容并提交
在这里插入图片描述
7、部署中,点击files,找到README.md修改配置。
在这里插入图片描述

在这里插入图片描述
8、修改完成以后,直接点击APP
在这里插入图片描述
在这里插入图片描述
https://sydney.vcanbb.chat
https://keranbing-newbing.hf.space

在这里插入图片描述
9、如果想在手机上也能访问,则点击Settings。
在这里插入图片描述
点击Make public即可。
在这里插入图片描述
10、若token过期,则修改Dockerfile中的代码,随机填写即可。
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
ava实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),可运行高分资源 Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现
C语言是一种广泛使用的编程语言,它具有高效、灵活、可移植性强等特点,被广泛应用于操作系统、嵌入式系统、数据库、编译器等领域的开发。C语言的基本语法包括变量、数据类型、运算符、控制结构(如if语句、循环语句等)、函数、指针等。下面详细介绍C语言的基本概念和语法。 1. 变量和数据类型 在C语言中,变量用于存储数据,数据类型用于定义变量的类型和范围。C语言支持多种数据类型,包括基本数据类型(如int、float、char等)和复合数据类型(如结构体、联合等)。 2. 运算符 C语言中常用的运算符包括算术运算符(如+、、、/等)、关系运算符(如==、!=、、=、<、<=等)、逻辑运算符(如&&、||、!等)。此外,还有位运算符(如&、|、^等)和指针运算符(如、等)。 3. 控制结构 C语言中常用的控制结构包括if语句、循环语句(如for、while等)和switch语句。通过这些控制结构,可以实现程序的分支、循环和多路选择等功能。 4. 函数 函数是C语言中用于封装代码的单元,可以实现代码的复用和模块化。C语言中定义函数使用关键字“void”或返回值类型(如int、float等),并通过“{”和“}”括起来的代码块来实现函数的功能。 5. 指针 指针是C语言中用于存储变量地址的变量。通过指针,可以实现对内存的间接访问和修改。C语言中定义指针使用星号()符号,指向数组、字符串和结构体等数据结构时,还需要注意数组名和字符串常量的特殊性质。 6. 数组和字符串 数组是C语言中用于存储同类型数据的结构,可以通过索引访问和修改数组中的元素。字符串是C语言中用于存储文本数据的特殊类型,通常以字符串常量的形式出现,用双引号("...")括起来,末尾自动添加'\0'字符。 7. 结构体和联合 结构体和联合是C语言中用于存储不同类型数据的复合数据类型。结构体由多个成员组成,每个成员可以是不同的数据类型;联合由多个变量组成,它们共用同一块内存空间。通过结构体和联合,可以实现数据的封装和抽象。 8. 文件操作 C语言中通过文件操作函数(如fopen、fclose、fread、fwrite等)实现对文件的读写操作。文件操作函数通常返回文件指针,用于表示打开的文件。通过文件指针,可以进行文件的定位、读写等操作。 总之,C语言是一种功能强大、灵活高效的编程语言,广泛应用于各种领域。掌握C语言的基本语法和数据结构,可以为编程学习和实践打下坚实的基础。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

皮皮冰燃

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值