Finance Llama 8B
基於Llama 3.1 8B微調的金融領域專用模型,擅長金融推理、問答和多輪對話
下載量 155
發布時間 : 5/26/2025
模型概述
該模型是在50萬條金融指令數據上微調的版本,專為金融任務、推理和多輪對話設計,覆蓋問答、情感分析、實體識別等多種金融場景
模型特點
金融專業化
專為金融推理、問答、實體識別、情感分析等場景優化
多輪對話能力
擅長進行強調上下文理解和推理的深度對話
多樣化數據訓練
整合了多個高質量金融數據集,包含超過50萬條訓練條目
模型能力
金融問答
投資組合分析
金融實體識別
市場情緒分析
多輪金融對話
金融推理
使用案例
投資諮詢
投資組合分散策略
為個人投資者提供波動市場中的投資組合分散建議
生成可操作的投資策略建議
金融信息提取
金融實體識別
從金融文本中識別公司、股票代碼等關鍵實體
準確提取金融相關命名實體
🚀 金融大語言模型Finance-Llama-8B
Finance-Llama-8B是基於unsloth/Meta-Llama-3.1-8B
在Josephgflowers/Finance-Instruct-500k
數據集上微調得到的模型。它專為金融任務、推理和多輪對話而設計,能夠為金融領域的各類應用提供強大的支持。
✨ 主要特性
- 廣泛覆蓋:在超過500,000條數據上進行訓練,涵蓋金融問答、推理、情感分析、主題分類、多語言命名實體識別和對話式人工智能等多個領域。
- 多輪對話:能夠進行豐富的對話,強調上下文理解和推理能力。
- 多樣數據源:包含來自Cinder、Sujet-Finance-Instruct-177k、Phinance Dataset、BAAI/IndustryInstruction_Finance-Economics、Josephgflowers/Financial-NER-NLP等眾多高質量數據集的條目。
- 金融專業化:針對金融推理、問答、實體識別、情感分析等任務進行了優化。
📚 詳細文檔
數據集詳情
Finance-Instruct-500k數據集
- 概述:Finance-Instruct-500k是一個全面且精心策劃的數據集,旨在訓練用於金融任務、推理和多輪對話的高級語言模型。該數據集整合了來自多個高質量金融數據集的數據,提供了超過500,000條條目,為金融相關的指令調整和微調提供了無與倫比的深度和多樣性。
- 數據集關鍵特性:
- 廣泛覆蓋:超過500,000條條目,涵蓋金融問答、推理、情感分析、主題分類、多語言命名實體識別和對話式人工智能等領域。
- 多輪對話:豐富的對話,強調上下文理解和推理能力。
- 多樣數據源:包含來自Cinder、Sujet-Finance-Instruct-177k、Phinance Dataset、BAAI/IndustryInstruction_Finance-Economics、Josephgflowers/Financial-NER-NLP等眾多高質量數據集的條目。
📦 安裝指南
該模型可以使用transformers
庫的管道進行文本生成。首先,請確保你已經安裝了transformers
和torch
庫:
pip install transformers torch
💻 使用示例
基礎用法
from transformers import pipeline, AutoModelForCausalLM, AutoTokenizer
import torch
# 替代無bitsandbytes的內存高效加載選項
model_id = "tarun7r/Finance-Llama-8B"
print("正在使用內存優化加載模型...")
# 選項1:使用FP16(半精度) - 減少約50%的內存
try:
print("嘗試使用FP16加載...")
model = AutoModelForCausalLM.from_pretrained(
model_id,
torch_dtype=torch.float16, # 半精度
device_map="auto", # 自動設備放置
low_cpu_mem_usage=True, # 加載期間高效使用CPU內存
trust_remote_code=True
)
print("✔ 模型已使用FP16加載")
except Exception as e:
print(f"FP16加載失敗: {e}")
# 選項2:CPU卸載 - 部分層在GPU上,部分在CPU上
try:
print("嘗試使用CPU卸載...")
model = AutoModelForCausalLM.from_pretrained(
model_id,
torch_dtype=torch.float16,
device_map="balanced", # 在GPU和CPU之間平衡
low_cpu_mem_usage=True,
trust_remote_code=True
)
print("✔ 模型已使用CPU卸載加載")
except Exception as e:
print(f"CPU卸載加載失敗: {e}")
# 選項3:作為備用方案,完全在CPU上加載
print("正在CPU上加載...")
model = AutoModelForCausalLM.from_pretrained(
model_id,
torch_dtype=torch.float16,
device_map="cpu",
low_cpu_mem_usage=True,
trust_remote_code=True
)
print("✔ 模型已在CPU上加載")
# 加載分詞器
tokenizer = AutoTokenizer.from_pretrained(model_id)
if tokenizer.pad_token is None:
tokenizer.pad_token = tokenizer.eos_token
# 創建管道
generator = pipeline(
"text-generation",
model=model,
tokenizer=tokenizer
)
print("✔ 管道已成功創建!")
# 現有的提示代碼
finance_prompt_template = """以下是一個描述任務的指令,以及提供進一步上下文的輸入。請編寫一個適當的響應來完成請求。
### 指令:
{}
### 輸入:
{}
### 響應:
"""
# 更新系統提示以提供更詳細的聊天機器人角色描述
messages = [
{"role": "system", "content": "你是一個知識淵博的金融聊天機器人。你的目的是根據用戶的具體需求和上下文,提供準確、有洞察力和可操作的金融建議。"},
{"role": "user", "content": "個人投資者在動盪市場中可以使用哪些策略來有效分散投資組合?"},
]
# 更新生成器調用以使用消息
prompt = "\n".join([f"{msg['role'].capitalize()}: {msg['content']}" for msg in messages])
print("\n--- 正在生成響應 ---")
try:
outputs = generator(
prompt,
#max_new_tokens=250, # 為提高內存效率而減少
do_sample=True,
temperature=0.7,
top_p=0.9,
pad_token_id=tokenizer.eos_token_id,
# 內存高效生成設置
num_beams=1, # 不使用束搜索以節省內存
early_stopping=True,
use_cache=True
)
# 提取響應
generated_text = outputs[0]['generated_text']
response_start = generated_text.rfind("### 響應:")
if response_start != -1:
response = generated_text[response_start + len("### 響應:"):].strip()
print("\n--- 響應 ---")
print(response)
else:
print(generated_text)
# 生成後清理GPU內存
if torch.cuda.is_available():
torch.cuda.empty_cache()
except Exception as e:
print(f"生成錯誤: {e}")
📄 許可證
本項目採用Apache-2.0許可證。
引用
@misc{tarun7r/Finance-Llama-8B,
author = {tarun7r},
title = {tarun7r/Finance-Llama-8B: A Llama 3.1 8B Model Fine-tuned on Josephgflowers/Finance-Instruct-500k},
year = {2025},
publisher = {Hugging Face},
journal = {Hugging Face Model Hub},
howpublished = {\url{https://huggingface.co/tarun7r/Finance-Llama-8B}}
}
信息表格
屬性 | 詳情 |
---|---|
模型類型 | 基於unsloth/Meta-Llama-3.1-8B 微調的金融語言模型 |
訓練數據 | Josephgflowers/Finance-Instruct-500k 數據集 |
庫名稱 | transformers |
任務類型 | 文本生成 |
Phi 2 GGUF
其他
Phi-2是微軟開發的一個小型但強大的語言模型,具有27億參數,專注於高效推理和高質量文本生成。
大型語言模型 支持多種語言
P
TheBloke
41.5M
205
Roberta Large
MIT
基於掩碼語言建模目標預訓練的大型英語語言模型,採用改進的BERT訓練方法
大型語言模型 英語
R
FacebookAI
19.4M
212
Distilbert Base Uncased
Apache-2.0
DistilBERT是BERT基礎模型的蒸餾版本,在保持相近性能的同時更輕量高效,適用於序列分類、標記分類等自然語言處理任務。
大型語言模型 英語
D
distilbert
11.1M
669
Llama 3.1 8B Instruct GGUF
Meta Llama 3.1 8B Instruct 是一個多語言大語言模型,針對多語言對話用例進行了優化,在常見的行業基準測試中表現優異。
大型語言模型 英語
L
modularai
9.7M
4
Xlm Roberta Base
MIT
XLM-RoBERTa是基於100種語言的2.5TB過濾CommonCrawl數據預訓練的多語言模型,採用掩碼語言建模目標進行訓練。
大型語言模型 支持多種語言
X
FacebookAI
9.6M
664
Roberta Base
MIT
基於Transformer架構的英語預訓練模型,通過掩碼語言建模目標在海量文本上訓練,支持文本特徵提取和下游任務微調
大型語言模型 英語
R
FacebookAI
9.3M
488
Opt 125m
其他
OPT是由Meta AI發佈的開放預訓練Transformer語言模型套件,參數量從1.25億到1750億,旨在對標GPT-3系列性能,同時促進大規模語言模型的開放研究。
大型語言模型 英語
O
facebook
6.3M
198
1
基於transformers庫的預訓練模型,適用於多種NLP任務
大型語言模型
Transformers

1
unslothai
6.2M
1
Llama 3.1 8B Instruct
Llama 3.1是Meta推出的多語言大語言模型系列,包含8B、70B和405B參數規模,支持8種語言和代碼生成,優化了多語言對話場景。
大型語言模型
Transformers 支持多種語言

L
meta-llama
5.7M
3,898
T5 Base
Apache-2.0
T5基礎版是由Google開發的文本到文本轉換Transformer模型,參數規模2.2億,支持多語言NLP任務。
大型語言模型 支持多種語言
T
google-t5
5.4M
702
精選推薦AI模型
Llama 3 Typhoon V1.5x 8b Instruct
專為泰語設計的80億參數指令模型,性能媲美GPT-3.5-turbo,優化了應用場景、檢索增強生成、受限生成和推理任務
大型語言模型
Transformers 支持多種語言

L
scb10x
3,269
16
Cadet Tiny
Openrail
Cadet-Tiny是一個基於SODA數據集訓練的超小型對話模型,專為邊緣設備推理設計,體積僅為Cosmo-3B模型的2%左右。
對話系統
Transformers 英語

C
ToddGoldfarb
2,691
6
Roberta Base Chinese Extractive Qa
基於RoBERTa架構的中文抽取式問答模型,適用於從給定文本中提取答案的任務。
問答系統 中文
R
uer
2,694
98