🚀 gpt-neo-1.3B-emailgen
该模型是基于 EleutherAI/gpt-neo-1.3B 在 postbot/multi-emails-100k 数据集上进行微调的版本。它在评估集上取得了以下成果:
🚀 快速开始
此模型主要用于文本生成,特别是电子邮件生成。你可以通过以下方式使用它:
from transformers import AutoModelForCausalLM, AutoTokenizer
model = AutoModelForCausalLM.from_pretrained("postbot/gpt-neo-1.3B-emailgen")
tokenizer = AutoTokenizer.from_pretrained("postbot/gpt-neo-1.3B-emailgen")
input_text = "Good Morning Professor Beans, Hope you are doing well. I just wanted to reach out and ask if differential calculus will be on the exam"
input_ids = tokenizer(input_text, return_tensors="pt").input_ids
output = model.generate(input_ids, **parameters)
generated_text = tokenizer.decode(output[0], skip_special_tokens=True)
print(generated_text)
输入参数详情
参数 |
详情 |
min_length |
生成文本的最小长度,设置为 32 |
max_length |
生成文本的最大长度,设置为 128 |
no_repeat_ngram_size |
避免重复的 n-gram 大小,设置为 2 |
do_sample |
是否进行采样,设置为 True |
temperature |
采样温度,设置为 0.4 |
top_k |
采样时考虑的前 k 个词,设置为 30 |
top_p |
采样时考虑的累积概率,设置为 0.9 |
repetition_penalty |
重复惩罚系数,设置为 3.5 |
length_penalty |
长度惩罚系数,设置为 0.9 |
✨ 主要特性
- 文本生成能力:能够根据输入的文本生成相关的电子邮件内容。
- 多场景适用:可用于多种电子邮件场景,如给教授发邮件、发送时事通讯、询问办公时间等。
📦 安装指南
暂未提供具体安装步骤,你可以参考 Hugging Face 的相关文档来安装所需的库,如 transformers
、torch
等。
💻 使用示例
基础用法
from transformers import AutoModelForCausalLM, AutoTokenizer
model = AutoModelForCausalLM.from_pretrained("postbot/gpt-neo-1.3B-emailgen")
tokenizer = AutoTokenizer.from_pretrained("postbot/gpt-neo-1.3B-emailgen")
input_text = "Good Morning Professor Beans, Hope you are doing well. I just wanted to reach out and ask if differential calculus will be on the exam"
input_ids = tokenizer(input_text, return_tensors="pt").input_ids
output = model.generate(input_ids, min_length=32, max_length=128, no_repeat_ngram_size=2, do_sample=True, temperature=0.4, top_k=30, top_p=0.9, repetition_penalty=3.5, length_penalty=0.9)
generated_text = tokenizer.decode(output[0], skip_special_tokens=True)
print(generated_text)
高级用法
from transformers import AutoModelForCausalLM, AutoTokenizer
model = AutoModelForCausalLM.from_pretrained("postbot/gpt-neo-1.3B-emailgen")
tokenizer = AutoTokenizer.from_pretrained("postbot/gpt-neo-1.3B-emailgen")
scenarios = [
"Hey <NAME>, Thank you for signing up for my weekly newsletter. Before we get started, you'll have to confirm your email address.",
"Hi <NAME>, I hope this email finds you well. I wanted to reach out and ask about office hours"
]
for scenario in scenarios:
input_ids = tokenizer(scenario, return_tensors="pt").input_ids
output = model.generate(input_ids, min_length=32, max_length=128, no_repeat_ngram_size=2, do_sample=True, temperature=0.4, top_k=30, top_p=0.9, repetition_penalty=3.5, length_penalty=0.9)
generated_text = tokenizer.decode(output[0], skip_special_tokens=True)
print(f"Scenario: {scenario}\nGenerated Text: {generated_text}\n")
📚 详细文档
模型描述
更多详细信息待补充。
预期用途与限制
更多详细信息待补充。
训练和评估数据
更多详细信息待补充。
🔧 技术细节
训练过程
训练超参数
训练过程中使用了以下超参数:
- 学习率(learning_rate):0.0001
- 训练批次大小(train_batch_size):4
- 评估批次大小(eval_batch_size):4
- 随机种子(seed):42
- 分布式类型(distributed_type):多 GPU
- 梯度累积步数(gradient_accumulation_steps):32
- 总训练批次大小(total_train_batch_size):128
- 优化器(optimizer):Adam,β=(0.9, 0.999),ε=1e - 08
- 学习率调度器类型(lr_scheduler_type):余弦
- 学习率调度器热身比例(lr_scheduler_warmup_ratio):0.02
- 训练轮数(num_epochs):2
训练结果
训练损失 |
轮数 |
步数 |
验证损失 |
1.8669 |
1.0 |
789 |
1.7866 |
1.4049 |
2.0 |
1578 |
1.6930 |
框架版本
- Transformers 4.22.2
- Pytorch 1.10.0+cu113
- Tokenizers 0.12.1
📄 许可证
该模型使用 Apache - 2.0 许可证。
📊 评估结果
详细结果可查看 此处
指标 |
值 |
平均值(Avg.) |
33.47 |
AI2 推理挑战(25 - 样本) |
29.95 |
HellaSwag(10 - 样本) |
47.95 |
MMLU(5 - 样本) |
24.11 |
TruthfulQA(0 - 样本) |
42.55 |
Winogrande(5 - 样本) |
56.27 |
GSM8k(5 - 样本) |
0.00 |