このリポジトリには、ゼロショットのテキスト分類とテキスト生成のためのハグするフェイストランスライブラリの使用を示すコードが含まれています。分類用のBARTの例と、テキスト生成用のGPT-2の例が含まれています。
ZeroShotInferenceクラス:ゼロショットのテキスト分類とテキスト生成を処理するクラス。 main.py :テキスト分類とテキスト生成のためのZeroShotInferenceクラスの使用例。
このコードを実行するには、ハグするフェイストランスライブラリとその依存関係をインストールする必要があります。あなたはそれらをインストールすることができます:
pip install transformers torchこの例では、Facebook Bart Large Model(Bart-Large-Mnli)を使用して、特定の候補ラベルに基づいてテキストを分類します。
from transformers import pipeline
class ZeroShotInference :
def __init__ ( self , task , pre_trained_model ):
self . model = pre_trained_model
self . task = task
self . pipe = pipeline ( task = self . task , model = self . model )
def classify_text ( self , text , candidate_labels ):
result = self . pipe ( text , candidate_labels )
return result使用例:
text = "I love to play video games"
candidate_labels = [ 'hobby' , 'habit' , 'adventure' , 'boredom' , 'business' ]
task = "zero-shot-classification"
model = "facebook/bart-large-mnli"
zero_short_inference = ZeroShotInference ( task , model )
result = zero_short_inference . classify_text ( text , candidate_labels )
print ( result ) # Output: {'sequence': 'I love to play video games', 'labels': ['hobby', 'habit', 'adventure', 'business', 'boredom'], 'scores': [0.8799885511398315, 0.09845343977212906, 0.016700521111488342, 0.0031407771166414022, 0.0017165272729471326]}この例では、GPT-2を使用して、特定のプロンプトに基づいてテキストを生成します。
def generate_text ( self , prompt , max_length = 100 , temperature = 0.7 ):
output = self . pipe ( prompt , max_length = max_length , do_sample = True , temperature = temperature , truncation = True )
return output [ 0 ][ 'generated_text' ]使用例:
prompt = "I was doing coding last night"
model_2 = "gpt2"
task_2 = "text-generation"
zero_shot_infernece_2 = ZeroShotInference ( task_2 , model_2 )
result_2 = zero_shot_infernece_2 . generate_text ( prompt )
print ( result_2 )このモデルは、効率的な推論のために量子化技術を使用し、メモリの使用量を削減し、 BitsAndBytesConfigを使用して応答時間を高速化します
HF_TOKENの言及として、私はHuggingfaceからトークンを生成し、Secret of Google Colabに追加して使用されています
このタスクは、7Bバリアントを使用して教育テキストを生成するためのミストラルモデルを微調整することを目的としています。特定のデータセットでモデルをトレーニングし、それを使用して指定されたプロンプトに基づいて指導テキストを生成することが含まれます。
微調整ミストラル指導7Bプロジェクトは、教育テキストを生成するために、大規模な言語モデルであるミストラルモデルを活用します。教育テキストを含むデータセットでモデルを微調整することにより、目標は、コヒーレントで有益な指示を生成できる専門モデルを作成することです。
プロジェクトへの貢献は大歓迎です。リポジトリをフォークし、変更を加え、プルリクエストを送信してください。また、問題を開いて改善を提案したり、バグを報告することもできます。