🚀 Llama3-ニュース分析
このモデルは、与えられたニュース本文を分析し、要約、感情分析、銘柄コード抽出、広告性判別などのタスクを実行することができます。
🚀 クイックスタート
このモデルは、与えられたニュース本文に対して以下の分析を行います。
- 要約(Summarization): ニュース記事の主要内容を1~3行で要約します。
- 感情分析(Sentiment Analysis): 記事内容の感情を肯定、否定、中立に評価します。
- 銘柄コード抽出(Stock Code Identification): 記載された会社名を基に関連する株式銘柄コードを抽出します。
- 広告性判別(Advertisement Detection): 本文が広告かどうかを判別します。
✨ 主な機能
- ニュースの要約、感情分析、銘柄コード抽出、広告性判別が可能です。
- meta-llamaのLlama-3.2-3Bをベースに学習されています。
- Hugging Faceの
transformers
ライブラリを使用しています。
📦 インストール
まず、環境を設定します。
pip install torch transformers
💻 使用例
基本的な使用法
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer
tokenizer = AutoTokenizer.from_pretrained('irene93/Llama3-news-analysis')
model = AutoModelForCausalLM.from_pretrained('irene93/Llama3-news-analysis')
model = torch.nn.DataParallel(model).cuda()
device = "cuda:0"
user_content = """한화에어로스페이스가 ‘밀렘 로보틱스’와 세계 최고의 무인차량 개발에 나선다.
한화에어로스페이스는 19일 유럽 최대의 무인차량(UGV) 기업인 밀렘 로보틱스와 ‘IDEX 2025’에서 최신 궤도형 UGV인 T-RCV(Tracked-Robotic Combat Vehicle)의 공동개발 및 글로벌시장 공략을 위한 전략적 파트너십을 확대한다는 내용의 양해각서를 체결했다고 밝혔다.
에스토니아의 ‘밀렘 로보틱스’는 미국, 영국, 프랑스 등 북대서양조약기구(NATO) 8개국을 포함한 총 16개국에 궤도형 UGV를 공급하는 등 글로벌 UGV의 표준화를 주도하는 세계 최고 수준의 기술을 보유하고 있다.
한화에어로스페이스는 차륜형 UGV ‘아리온스멧’을 통해 미군의ㅁ 해외비교성능시험(FCT)을 성공적으로 수행하고, 차세대 UGV인 ‘그런트(GRUNT)’를 자체 개발하는 등 글로벌 시장에서 기술력을 인정받으면서 올해 한국 육군의 다목적무인차량 구매사업자 선정을 앞두고 있다.
한화에어로스페이스 측은 “양사 협력을 바탕으로 국내외 고객들에게 빠르게 변화하는 현대 전투 환경에 대응할 새로운 대안을 제시하겠다”고 했다.
밀렘 로보틱스 측도 “양사의 혁신적인 기술과 풍부한 글로벌 시장 경험을 바탕으로 최첨단 무인화 솔루션 개발에 최선을 다하겠다”고 말했다."""
messages = [
{"role": "system", "content": "당신은 주어진 뉴스를 분석하는 챗봇입니다. **지시사항**:- 주어진 뉴스에 대하여 summary, advr, stk_code, sent_score 분석하고 json 형태로 출력하세요. - summary는 1~3줄 사이로 작성합니다.- advr는 해당 본문이 광고면 1 광고가 아닐경우에 0 으로 정수 1개의 값으로 출력하세요.- stk_code는 해당 본문에서 언급된 종목명을 찾고, 그 종목명의 종목 코드를 찾아 파이썬 리스트 형태로 작성하세요. - sent_score는 해당 본문이 긍정적일경우 1 부정적일경우 -1 , 긍정적이지도 부정:적이지도 않을경우 0 으로 정수 1개의 값을 출력하세요 - 본문: 이 주어지면 결과: 다음에 json 형태로 작성하세요"},
{"role": "user", "content": user_content}
]
input_ids = tokenizer.apply_chat_template(
messages,
add_generation_prompt=True,
return_tensors="pt"
).to(device)
terminators = [
tokenizer.eos_token_id,
tokenizer.convert_tokens_to_ids("<|eot_id|>")
]
outputs = model.module.generate(
input_ids,
max_new_tokens=2048,
eos_token_id=terminators,
do_sample=False,
)
response = outputs[0][input_ids.shape[-1]:]
print(tokenizer.decode(response, skip_special_tokens=True))
出力例
{
'summary': '한화에어로스페이스가 밀렘 로보틱스와 협력해 무인차량 개발에 나섰습니다.',
'advr_tp': '0',
'stk_code': ['012450'],
'sent_score': 1
}
📚 ドキュメント
モデル情報
- モデル:
irene93/Llama3-news-analysis
- トークナイザー:
AutoTokenizer
- モデルアーキテクチャ:
AutoModelForCausalLM
要件
📄 ライセンス
このプロジェクトはMITライセンスに基づいています。