1 Hugging Face是什么如果你正在学习机器学习、大模型相关的内容那么Hugging Face是你一定不要错过的社区。其实Hugging Face和Github挺相似的相当于是机器学习界的github。Hugging Face一开始只是一家纽约的聊天机器人服务商本来是打算启动做聊天机器人的在github上开源了Transformer库结果有心栽花花不成无心栽柳柳成荫聊天机器人没做出个眉目倒是transformer库在社区里迅速火爆起来。下面我们来了解一下Hugging Face主要提供的服务。2 预训练模型Hugging Face提供了大量的预训练模型帮助到哪怕是小白也可以快速上手大佬们训练出来的模型。一开始主要涉及到的领域主要是NLP领域相关的任务比如文本分类、情感分析、对话问答以及命名实体识别等等。目前平台已经进一步壮大只要你能想得到的厉害的模型在上面基本上都可以找到。Hugging Face大量的预训练模型使得业界的研究者们不用再去重复造轮子可以更加关注自己的问题模型的开源反过来进一步推动了平台的发展。在Hugging Face上Transformer库是其中最核心的项目Transformer库提供了十分简洁的API接口使得模型加载、使用和训练变得非常简单。2.1 Transformer的安装它的安装非常简单我们在自己的虚拟环境中直接安装即可pip install transformers2.2 使用Transformer库假设我们的任务比较简单一般可以直接调用API就可以完成。 比如实现一个翻译任务from transformers import pipeline en_fr_translator pipeline(translation_en_to_fr) print(en_fr_translator(How old are you?))将以上代码执行将会得到翻译[{translation_text: quel âge êtes-vous?}]或者实现文本分类任务from transformers import pipeline classifier pipeline(sentiment-analysis) result classifier(I love using HuggingFace transformers!) print(result)最终我们会得到结果[{label: POSITIVE, score: 0.9998}]表明这是一句积极的话。或者实现文本生成的任务from transformers import pipeline generator pipeline(text-generation, modelgpt2) result generator(Once upon a time,) print(result[0][generated_text])看的出来其实还是有些在自说自话。除了Transformer之外我们也可以使用其他的模型比如BERTfrom transformers import pipeline unmasker pipeline(fill-mask, modelbert-base-chinese) unmasker(中国的首都是[MASK].)运行结果因此说白了Hugging Face其实就是将一堆牛叉的模型库封装好然后给你提供一份特定的使用说明书你直接去用就行了比如gpt、kimi、Qwen这些大模型我们没有必要去写代码也没有必要去重新训练(也不是你我能训练得了的)直接按照说明书直接用就ok。详细使用方法https://huggingface.co/docs/transformers/v4.21.0/en/main_classes/pipelines我们通过实际的界面来看比如在以上Hugging face的界面给出了一堆大模型就拿deepseek-ai/DeepSeek-OCR-2来说吧我们点击去看好家伙27W下载。下面给出了环境配置和具体使用代码以上代码是使用了DeepSeek-OCR-2模型进行OCR光学字符识别任务并将结果转换为markdown格式。因此想体验哪个大模型代码都不用你写了别人都给你写好了。3 数据集Hugging Face提供了大量的数据集包括音视频、计算机视觉、自然语言处理领域的任务。首先需要安装好Datasets库也是一行命令搞定pip install datasets我们来看看数据集的界面总共81万个数据集。3.1 数据集概览一般在下载数据集之前我们需要检查一下数据集信息比如Rotten Tomatoes 电影评论数据集from datasets import load_dataset_builder ds_builder load_dataset_builder(cornell-movie-review-data/rotten_tomatoes) ds_builder.info.description ds_builder.info.features最终得到数据集的关键信息Rotten Tomatoes movie review dataset for binary sentiment classification...任务二元情感分类positive/negative规模10,662条评论5,331条正面 5,331条负面来源Rotten Tomatoes 电影评论用途常用于情感分析基准测试3.2 数据集加载此时我们对数据集满意的话就可以使用load_dataset()加载它。from datasets import load_dataset dataset load_dataset(cornell-movie-review-data/rotten_tomatoes, splittrain)3.3 数据集划分使用函数 get_dataset_split_names() 可以列出数据集的分划名称。from datasets import get_dataset_split_names get_dataset_split_names(cornell-movie-review-data/rotten_tomatoes)最终结果为[train, validation, test]我们也可以只操作Train:from datasets import load_dataset dataset load_dataset(cornell-movie-review-data/rotten_tomatoes, splittrain)得到结果Dataset({ features: [text, label], num_rows: 8530 })返回所有from datasets import load_dataset dataset load_dataset(cornell-movie-review-data/rotten_tomatoes)得到结果DatasetDict({ train: Dataset({ features: [text, label], num_rows: 8530 }) validation: Dataset({ features: [text, label], num_rows: 1066 }) test: Dataset({ features: [text, label], num_rows: 1066 }) })详细使用方法参考中文网站https://hugging-face.cn/docs/datasets/index除此之外Hugging Face还提供了Doc界面包括一些参考文档以及社区文章类似于大家发发朋友圈一篇文章可能没有办法详细的说明Hugging Face的使用说明但是作为快速入门使用Model设Datasets已经够了剩下的大家可以多多探索哦用的越多越熟悉。Hugging Face作为目前机器学习领域最大的开源平台大家没事多逛逛还是很有好处的。欢迎大家关注我的gzh阿龙AI日记