🤗 什么是Hugging Face?
Hugging Face是全球最大的开源AI模型和数据集平台,被誉为"AI界的GitHub"。它托管了超过100万个模型、20万个数据集,以及数千个可直接使用的AI应用(Spaces)。
🏪
Models Hub
100万+预训练模型,涵盖NLP/图像/音频/多模态
免费浏览
⚡
Inference API
无需GPU,通过API调用任意模型
免费额度
🚀
Spaces
免费部署AI应用(Gradio/Streamlit)
免费托管
📦
Transformers库
Python库,本地运行任意模型
开源免费
📊
Datasets Hub
20万+标注数据集,一行代码加载
免费使用
🎯
AutoTrain
无代码微调自定义模型
按用量付费
🏪 Models Hub 使用指南
Models Hub是Hugging Face的核心——你可以在这里找到、下载、在线测试任何开源AI模型。
如何搜索和筛选模型
- 访问 huggingface.co/models
- 使用任务类型筛选(Text Generation / Image Generation / Translation / Question Answering等)
- 按库筛选(Transformers / Diffusers / PEFT等)
- 按下载量/点赞数排序找热门模型
- 查看模型卡片(Model Card)了解:训练数据、能力、限制、使用方法
在线测试模型(无需代码)
大多数模型页面右侧都有Inference Widget——可以直接在浏览器中输入文本/图片测试模型效果,零代码体验。这是快速评估模型是否符合需求的最简单方式。
🔍 Model Card 阅读技巧:评估一个模型时,优先看:(1) Intended Uses(预期用途) (2) Limitations(限制和已知偏差) (3) Training Data(训练数据来源,判断是否有版权问题) (4) License(商业使用是否允许)。跳过这些直接用模型是常见的新手错误。
⚡ Inference API:无需GPU的模型调用
Hugging Face Inference API让你通过HTTP请求调用任意模型,无需自己的GPU。免费账号有一定的请求限制,Pro账号($9/月)有更高配额。
注册Hugging Face账号 → Settings → Access Tokens → New Token(选择read权限)→ 复制token
Python · Inference API
import requests
API_URL =
"https://api-inference.huggingface.co/models/meta-llama/Llama-3.1-8B-Instruct"
headers = {
"Authorization":
f"Bearer YOUR_TOKEN_HERE"}
def query(payload):
response = requests.
post(API_URL, headers=headers, json=payload)
return response.
json()
output =
query({
"inputs":
"请用简单语言解释什么是大语言模型",
"parameters": {
"max_new_tokens":
200}
})
print(output)
Python · FLUX图像生成
import requests
from PIL
import Image
import io
API_URL =
"https://api-inference.huggingface.co/models/black-forest-labs/FLUX.1-schnell"
headers = {
"Authorization":
"Bearer YOUR_TOKEN"}
response = requests.
post(
API_URL,
headers=headers,
json={
"inputs":
"A futuristic city at sunset, photorealistic, 4k"}
)
image = Image.
open(io.
BytesIO(response.content))
image.
save(
"output.png")
print(
"Image saved!")
🚀 Spaces:免费部署AI应用
Hugging Face Spaces让你免费部署AI应用(使用Gradio或Streamlit),其他人可以通过浏览器直接使用,无需安装任何东西。
免费CPU Spaces适合轻量级应用;需要GPU的应用可以升级到GPU Space($0.6-$8/小时)。
Python · Gradio + Spaces部署
import gradio
as gr
from transformers
import pipeline
classifier =
pipeline(
"sentiment-analysis",
model=
"cardiffnlp/twitter-roberta-base-sentiment"
)
def analyze(text):
result =
classifier(text)[
0]
return f"情感:{result['label']},置信度:{result['score']:.2%}"
demo = gr.
Interface(
fn=analyze,
inputs=gr.
Textbox(label=
"输入文本"),
outputs=gr.
Textbox(label=
"分析结果"),
title=
"AI情感分析"
)
demo.
launch()
创建Space的步骤:huggingface.co/new-space → 选择Gradio → 上传app.py → 自动构建和部署,获得公开URL。
💻 Transformers Pipeline:本地运行模型
如果你有本地GPU(或愿意等待CPU推理),使用Transformers库可以完全本地化运行模型,无需联网。
Shell
pip install transformers torch
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
Python · 5种常用任务Pipeline
from transformers
import pipeline
generator =
pipeline(
"text-generation", model=
"gpt2")
result =
generator(
"The future of AI is", max_length=
50)
translator =
pipeline(
"translation", model=
"Helsinki-NLP/opus-mt-zh-en")
translator(
"人工智能正在改变世界")
classifier =
pipeline(
"image-classification", model=
"google/vit-base-patch16-224")
classifier(
"https://example.com/cat.jpg")
summarizer =
pipeline(
"summarization", model=
"facebook/bart-large-cnn")
summarizer(
"Long article text here...", max_length=
130)
transcriber =
pipeline(
"automatic-speech-recognition", model=
"openai/whisper-base")
transcriber(
"audio.mp3")
🏆 2025年最值得关注的开源模型
| 模型 |
类型 |
参数量 |
特点 |
License |
推荐场景 |
| Llama 3.1 405B |
LLM |
405B |
最强开源LLM,接近GPT-4o |
Llama 3.1许可 |
通用推理/代码 |
| Llama 3.1 8B |
LLM |
8B |
本地运行首选,性价比极高 |
Llama 3.1许可 |
本地部署/快速推理 |
| Mistral 7B / Mixtral 8x7B |
LLM |
7B/47B |
推理速度快,MoE架构高效 |
Apache 2.0 |
商业应用/代码 |
| DeepSeek-V3 |
LLM |
671B MoE |
中文最强,接近GPT-4o |
MIT |
中文任务/推理 |
| FLUX.1-schnell |
图像生成 |
12B |
最快开源图像生成,质量高 |
Apache 2.0 |
图像生成/商业使用 |
| FLUX.1-dev |
图像生成 |
12B |
图像质量最高,需研究许可 |
非商业研究 |
高质量图像生成 |
| Whisper Large v3 |
语音识别 |
1.5B |
多语言ASR准确率最高 |
MIT |
语音转文字 |
| Phi-3.5-mini |
小型LLM |
3.8B |
微软出品,小模型性能最强 |
MIT |
边缘设备/移动端 |
| Qwen2.5-72B |
LLM |
72B |
阿里通义,中英文均衡 |
Qwen许可 |
中英双语任务 |
📊 Datasets Hub:一行代码加载训练数据
Hugging Face Datasets Hub提供20万+标注数据集,用Python的datasets库可以一行代码加载:
Python · Datasets使用示例
from datasets
import load_dataset
squad =
load_dataset(
"squad")
imdb =
load_dataset(
"imdb")
cnn =
load_dataset(
"cnn_dailymail",
"3.0.0")
print(squad)
print(squad[
'train'][
0])
small_dataset = squad[
'train'].
select(
range(
100))
🎯 模型微调入门
微调(Fine-tuning)是在预训练模型基础上,用你的特定数据继续训练,让模型适应你的任务。2025年最推荐的轻量微调方法是LoRA/QLoRA——只训练少量参数,GPU要求极低。
Python · QLoRA微调Llama(最低4GB VRAM)
from transformers
import AutoTokenizer, AutoModelForCausalLM, TrainingArguments
from peft
import LoraConfig, get_peft_model
from trl
import SFTTrainer
import torch
model_id =
"meta-llama/Llama-3.1-8B"
tokenizer = AutoTokenizer.
from_pretrained(model_id)
lora_config =
LoraConfig(
r=
8,
lora_alpha=
16,
target_modules=[
"q_proj",
"v_proj"],
lora_dropout=
0.1,
task_type=
"CAUSAL_LM"
)
training_args =
TrainingArguments(
output_dir=
"./my-llama-finetuned",
num_train_epochs=
3,
per_device_train_batch_size=
4,
learning_rate=
2e-4,
)
💡 无代码微调选项:如果不想写代码,Hugging Face的AutoTrain(autotrain.huggingface.co)提供界面化微调——上传CSV训练数据,选择模型,点击训练。适合初学者快速验证微调可行性。
💡 实用技巧与常见问题
加速技巧
- 模型量化:用
bitsandbytes库将模型量化到4/8bit,显存需求降低50-75%,速度略有下降
- FlashAttention2:安装
flash-attn,推理速度提升2-4倍(需要Ampere架构GPU)
- Ollama本地运行:对于Llama/Mistral系列,用Ollama比直接用Transformers更简单,一行命令运行:
ollama run llama3.1
常见错误解决
- "CUDA out of memory":降低
batch_size,或使用load_in_4bit=True量化加载
- "Gated model"访问被拒绝:需要在模型页面同意License条款,并在代码中设置
token="YOUR_HF_TOKEN"
- 模型下载太慢:使用镜像站
hf-mirror.com,设置HF_ENDPOINT=https://hf-mirror.com
- 推理太慢(CPU):选择更小的模型(7B代替70B),或使用Inference API云端推理
推荐学习路径
- 第1周:注册账号 → 浏览Models Hub → 用Inference Widget测试10个模型
- 第2周:安装Transformers → 运行Pipeline示例 → 部署第一个Gradio Space
- 第3-4周:用Inference API构建第一个AI应用(聊天机器人/图像生成器)
- 第2个月:学习LoRA微调,在自己的数据上微调小模型
🌟 免费学习资源:Hugging Face官方提供免费课程(huggingface.co/learn):NLP课程、RL课程、Diffusion Models课程,全部免费且质量很高。配合本指南,是学习开源AI开发的最佳起点。