Smol Models 使用教程
1. 项目介绍
Smol Models 是来自 Hugging Face 的一系列高效且轻量级的 AI 模型,适用于文本和视觉任务。我们的目标是创建出在设备上运行高效且性能强劲的紧凑型模型。
2. 项目快速启动
以下是快速启动 SmolLM2 和 SmolVLM 模型的基本步骤。
SmolLM2 快速启动
from transformers import AutoModelForCausalLM, AutoTokenizer
# 选择模型checkpoint
checkpoint = "HuggingFaceTB/SmolLM2-1.7B-Instruct"
# 加载分词器和模型
tokenizer = AutoTokenizer.from_pretrained(checkpoint)
model = AutoModelForCausalLM.from_pretrained(checkpoint)
# 创建对话信息
messages = [{
"role": "user",
"content": "编写一篇关于'开源在AI研究中益处'的100字文章"
}]
# 应用聊天模板并获取输入文本
input_text = tokenizer.apply_chat_template(messages, tokenize=False)
SmolVLM 快速启动
from transformers import AutoProcessor, AutoModelForVision2Seq
# 加载处理器和模型
processor = AutoProcessor.from_pretrained("HuggingFaceTB/SmolVLM-Instruct")
model = AutoModelForVision2Seq.from_pretrained("HuggingFaceTB/SmolVLM-Instruct")
# 创建对话信息,包括图像和文本
messages = [
{
"role": "user",
"content": [
{"type": "image"},
{"type": "text", "text": "这张图片里有什么?"}
]
}
]
# 使用处理器处理信息
input_data = processor(messages)
3. 应用案例和最佳实践
在应用 Smol Models 时,以下是一些最佳实践:
- 模型微调:针对特定任务对模型进行微调,以提高性能。
- 资源优化:在设备上运行模型时,确保优化资源使用,例如通过减少模型大小或使用量化技术。
- 交互设计:对于语言模型,设计自然且直观的交互方式,以提升用户体验。
4. 典型生态项目
Smol Models 的生态系统包括以下项目:
- SmolTalk:用于指令微调的数据集。
- FineMath:数学预训练数据集。
- FineWeb-Edu:教育内容预训练数据集。
通过这些项目和数据集,开发者和研究人员可以进一步扩展 Smol Models 的应用范围。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考