Llama 3 Portuguese Tom Cat 8b Instruct
Llama3 8Bを微調整したポルトガル語会話モデルで、ポルトガル語モデルの空白を埋め、会話能力を最適化
ダウンロード数 54
リリース時間 : 4/30/2024
モデル概要
このモデルは30万件のポルトガル語会話データで訓練され、高品質なポルトガル語会話体験を提供することを目的としています。MetaのLlama3 8Bモデルを基に微調整され、主にポルトガル語の理解と生成能力を最適化しました。
モデル特徴
ポルトガル語最適化
ポルトガル語に特化して微調整され、より自然なポルトガル語理解と生成能力を提供
命令追従
ユーザーの命令をよく理解し実行でき、対話システム構築に適している
マルチ量子化バージョンサポート
完全モデルから4ビット量子化まで複数のバージョンを提供し、様々なハードウェア要件に対応
モデル能力
ポルトガル語テキスト生成
対話システム構築
質問応答システム
命令追従
使用事例
教育
数学説明
数学教師として基礎数学概念を説明できる
2+2=4などの基礎数学問題を明確に説明可能
試験補助
ENEMなどのポルトガル語試験準備を支援
ENEMチャレンジテストで70.4%の精度を達成
専門サービス
法律相談
ブラジル弁護士会(OAB)関連情報を説明
ブラジル弁護士会の機能と構造を正確に記述可能
感情分析
ヘイトスピーチ検出
ポルトガル語のヘイトスピーチを識別
HateBRテストで86.99マクロF1値を達成
🚀 Llama-3-portuguese-Tom-cat-8b-instruct
このモデルは、ポルトガル語で30万件のチャットのスーパーセットを使って学習されました。ポルトガル語のモデルの不足を埋めるために開発され、Llama3 8Bをベースにチャット用途に調整されています。
もし互換性を高めたい場合、LuanaモデルにはLlamaCppで実行できるGGUFファミリーもあります。以下のモデルからGGUFモデルを探索できます。
このモデルや他のモデルを探索して、あなたのニーズに最適なものを見つけてください!
🚀 クイックスタート
このモデルは通常の形式から4ビット量子化まで使用できます。以下では両方のアプローチを紹介します。プロンプトで動詞を使うことが重要です。モデルにどのように行動するかを指示することで、応答を導くことができます。このような重要なポイントは、モデル(8bのような小さいモデルでも)のパフォーマンスを向上させます。
フルモデル : A100
ハーフモデル: L4
8ビットまたは4ビット : T4またはV100
!pip install -q -U transformers
!pip install -q -U accelerate
!pip install -q -U bitsandbytes
from transformers import AutoModelForCausalLM, AutoTokenizer, TextStreamer
model = AutoModelForCausalLM.from_pretrained("rhaymison/Llama-3-portuguese-Tom-cat-8b-instruct", device_map= {"": 0})
tokenizer = AutoTokenizer.from_pretrained("rhaymison/Llama-3-portuguese-Tom-cat-8b-instruct")
model.eval()
Pipelineを使うこともできます。
from transformers import pipeline
pipe = pipeline("text-generation",
model=model,
tokenizer=tokenizer,
do_sample=True,
max_new_tokens=512,
num_beams=2,
temperature=0.3,
top_k=50,
top_p=0.95,
early_stopping=True,
pad_token_id=tokenizer.eos_token_id,
)
def format_prompt(question:str):
system_prompt = "Abaixo está uma instrução que descreve uma tarefa, juntamente com uma entrada que fornece mais contexto. Escreva uma resposta que complete adequadamente o pedido."
return f"""<|begin_of_text|><|start_header_id|>system<|end_header_id|>
{ system_prompt }<|eot_id|><|start_header_id|>user<|end_header_id|>
{ question }<|eot_id|><|start_header_id|>assistant<|end_header_id|>"""
prompt = format_prompt("Me fale sobra a OAB, Ordem dos Advogados do Brasil")
result = pipe(prompt)
result[0]["generated_text"].split("assistant<|end_header_id|>")[1]
#A Ordem dos Advogados do Brasil (OAB) é a entidade responsável por regulamentar e fiscalizar a profissão de advogado no Brasil.
#Foi criada em 1930, com o objetivo de proteger os direitos e interesses dos advogados e da sociedade, garantindo a defesa dos direitos e garantias fundamentais.
#A OAB é uma entidade de direito público, com personalidade jurídica própria, e é composta por advogados e advogadas que atuam em todo o território nacional.
#A entidade é dirigida por um Conselho Federal, que é o órgão máximo da OAB, e é composto por 32 membros, eleitos por votação direta dos advogados e advogadas.
#A OAB tem como principais atribuições:. Regulamentar a profissão de advogado: a OAB estabelece as normas e regulamentações para a formação, habilitação e exercício
#a profissão de advogado no Brasil. Fiscalizar a atividade dos advogados: a OAB fiscaliza a atividade dos advogados, verificando se eles atendem às normas e
#regulamentações estabelecidas.. Defender os direitos e interesses dos advogados: a OAB defende os direitos e interesses dos advogados, garantindo que eles
#possam exercer sua profissão com liberdade e segurança.\n4. Representar a sociedade: a OAB representa a sociedade, defendendo os direitos e interesses dos
#dadãos e das instituições.A OAB também é responsável por: Certificar a formação e habilitação dos advogados; Fiscalizar a atividade dos advogados, verificando
#se eles atendem às normas e regulamentações estabelecidas;\n* Defender os direitos e interesses dos advogados, garantindo que eles possam exercer sua profissão
#com liberdade e segurança; Representar a sociedade, defendendo os direitos e interesses dos cidadãos e das instituições.Além disso, a OAB também é responsável por:
#Publicar o Diário da Ordem dos Advogados do Brasil
prompt = format_prompt("Haja como um professor de matemática e me explique porque 2 + 2 = 4")
result = pipe(prompt)
result[0]["generated_text"].split("assistant<|end_header_id|>")[1]
#Meu aluno, é um prazer explicar um conceito fundamental da matemática! equação 2 + 2 = 4 pode parecer simples, mas é
#importante entender por quê ela é verdadeira. Em matemática, a adição é uma operação que combina dois números para obter um resultado.
#Nesse caso, estamos adicionando 2 e 2. Para entender melhor, vamos começar com um exemplo concreto. Imagine que você tem 2 maçãs em uma mesa e seu amigo também tem
#2 maçãs em outra mesa. Se você e seu amigo combinam suas maçãs, você terá agora 4 maçãs.Agora, vamos usar símbolos para representar essa situação.
#Podemos escrever 2 + 2 =?, e o resultado é 4. Isso significa que quando você soma 2 e 2, o resultado é 4. Mas por quê isso é verdade? Isso é porque a adição é
#uma operação que segue certas regras. Uma dessas regras é que a ordem em que você soma os números não muda o resultado. Isso significa que 2 + 2 é igual a 2 + 2,
#independentemente da ordem em que você soma.Além disso, a adição também é uma operação que é associativa, o que significa que você pode adicionar números em
#qualquer ordem e o resultado será o mesmo. Por exemplo, (2 + 2) + 0 = 2 + (2 + 0). Isso é verdade porque a adição é uma operação que é idempotente, o que significa
#que adicionando 0 a um número não muda o resultado.Portanto, quando você soma 2 e 2, o resultado é 4 porque a adição segue essas regras. A equação 2 + 2 = 4
#é verdadeira porque é uma consequência lógica da definição da adição e das regras que a governam.Espero que isso tenha ajudado a entender melhor por quê 2 + 2 = 4,
#meu aluno!
もし「CUDA Out of memory」のようなメモリ問題がある場合、4ビットまたは8ビット量子化を使用する必要があります。Colabで完全なモデルを使用するにはA100が必要です。4ビットまたは8ビットを使用する場合は、T4またはL4で問題を解決できます。
💻 使用例
基本的な使用法
# 通常の使用方法
!pip install -q -U transformers
!pip install -q -U accelerate
!pip install -q -U bitsandbytes
from transformers import AutoModelForCausalLM, AutoTokenizer, TextStreamer
model = AutoModelForCausalLM.from_pretrained("rhaymison/Llama-3-portuguese-Tom-cat-8b-instruct", device_map= {"": 0})
tokenizer = AutoTokenizer.from_pretrained("rhaymison/Llama-3-portuguese-Tom-cat-8b-instruct")
model.eval()
高度な使用法
# 4ビット量子化の使用例
from transformers import BitsAndBytesConfig
import torch
nb_4bit_config = BitsAndBytesConfig(
load_in_4bit=True,
bnb_4bit_quant_type="nf4",
bnb_4bit_compute_dtype=torch.bfloat16,
bnb_4bit_use_double_quant=True
)
model = AutoModelForCausalLM.from_pretrained(
base_model,
quantization_config=bnb_config,
device_map={"": 0}
)
📚 ドキュメント
オープンポルトガル語LLMリーダーボード評価結果
詳細な結果はこちらと🚀 オープンポルトガル語LLMリーダーボードで確認できます。
メトリクス | 値 |
---|---|
平均 | 70.57 |
ENEM Challenge (No Images) | 70.40 |
BLUEX (No Images) | 58 |
OAB Exams | 51.07 |
Assin2 RTE | 90.91 |
Assin2 STS | 75.40 |
FaQuAD NLI | 76.05 |
HateBR Binary | 86.99 |
PT Hate Speech Binary | 60.39 |
tweetSentBR | 65.92 |
コメント
アイデア、助け、レポートはいつでも歓迎します。
メール: rhaymisoncristian@gmail.com
📄 ライセンス
このモデルはApache-2.0ライセンスの下で提供されています。
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が公開したオープンプリトレーニングトランスフォーマー言語モデルスイートで、パラメータ数は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によって開発されたテキスト-to-テキスト変換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アーキテクチャに基づく中国語抽出型QAモデルで、与えられたテキストから回答を抽出するタスクに適しています。
質問応答システム 中国語
R
uer
2,694
98