🚀 苏杰金融 8B v0.1 模型介绍
苏杰金融 8B v0.1 是一款专注于金融领域的语言模型,它在苏杰金融指令 177k 数据集上进行了精细微调。该模型基于强大的 LLAMA 3 模型,能够精准处理各类金融问题,为金融领域的信息分析和决策提供有力支持。

✨ 主要特性
🎯 微调聚焦
在首次微调中,模型着重关注以下三个关键金融任务:
- ✅❌ 是非问题回答
- 描述:回答需要简单“是”或“否”回应的金融问题。
- 类别分布:
- 训练集:5265 个“是”的示例,5302 个“否”的示例。
- 评估集:1340 个“是”的示例,1303 个“否”的示例。
- 📂 主题分类
- 描述:将金融文本分类到特定的金融相关类别,如公司新闻、市场、收益等。
- 类别分布:
- 训练集:在 20 个类别中均衡分布,每个类别有 29 - 40 个示例。
- 评估集:各类别数量不同,每个类别有 4 - 15 个示例。
- 😊😐😡 情感分析
- 描述:分析金融文本,将情感分类为积极、消极、中性、看跌或看涨。
- 类别分布:
- 训练集:1160 个积极示例,1155 个消极示例,1150 个中性示例,1133 个看跌示例,1185 个看涨示例。
- 评估集:281 个积极示例,286 个消极示例,291 个中性示例,308 个看跌示例,256 个看涨示例。
🎓 训练方法
为确保最佳性能,采用了平衡的训练方法。在数据集准备过程中,从三个重点任务的每个子类别中策略性地选择了相同数量的示例。最终的平衡训练数据集包含 17036 个示例,评估数据集包含 4259 个示例。
🔧 模型规格
属性 |
详情 |
基础模型 |
LLAMA 3 8B 🦙 |
微调技术 |
LoRA(低秩自适应),r = 16,alpha = 32 |
学习率 |
2e - 4 📈 |
权重衰减 |
0.01 🏋️♂️ |
训练轮数 |
1 🔄 |
量化方式 |
用于 VLLM 的 float16 🗜️ |
📊 评估结果
将模型与基础 LLAMA 3 模型在评估数据集上进行了对比测试,结果令人印象深刻!以模型生成的前 10 个单词中是否包含正确答案作为判断标准,确保模型不仅能提供准确答案,还能优先输出最相关的信息。

📦 安装指南
此模型使用 Unsloth 进行微调,请参考其 GitHub 仓库 并确保在使用模型前已安装。
💻 使用示例
基础用法
from unsloth import FastLanguageModel
max_seq_length = 2048
dtype = None
load_in_4bit = False
alpaca_prompt = """Below is an instruction that describes a task, paired with an input that provides further context. Write a response that appropriately completes the request.
### Instruction:
{}
### Input:
{}
### Response:
{}"""
model, tokenizer = FastLanguageModel.from_pretrained(
model_name = "sujet-ai/Sujet-Finance-8B-v0.1",
max_seq_length = max_seq_length,
dtype = dtype,
load_in_4bit = load_in_4bit,
token = "your hf token here",
)
example = {
'system_prompt': 'You are a financial sentiment analysis expert. Your task is to analyze the sentiment expressed in the given financial text.Only reply with bearish, neutral, or bullish.',
'user_prompt': "Expedia's Problems Run Deeper Than SEO Headwinds",
'answer': 'bearish',
}
inputs = tokenizer(
[alpaca_prompt.format(
example['system_prompt'],
example['user_prompt'],
"",
)],
return_tensors="pt"
).to("cuda")
outputs = model.generate(**inputs, max_new_tokens=2048, use_cache=True, pad_token_id=tokenizer.eos_token_id)
output = tokenizer.batch_decode(outputs)[0]
response = output.split("### Response:")[1].strip()
print(response)
你可以点击此链接获取关于数据集的更多信息。
📄 许可证
本模型遵循 Apache - 2.0 许可证。