
Документация
Trooper Совершенно новый интерфейс Trooper позволяет вам не указывать, какой тип модели вы хотите использовать. Stormtrooper автоматически обнаружит тип модели из указанного имени.
from stormtrooper import Trooper
# This loads a setfit model
model = Trooper ( "all-MiniLM-L6-v2" )
# This loads an OpenAI model
model = Trooper ( "gpt-4" )
# This loads a Text2Text model
model = Trooper ( "google/flan-t5-base" )Вам больше не нужно указывать, должна ли модель быть несколько или классификатором с нулевым выстрелом при ее инициализации. Если вы не пройдете никаких примеров обучения, будет автоматически предположить, что модель должна быть нулевой выстрелом.
# This is a zero-shot model
model . fit ( None , [ "dog" , "cat" ])
# This is a few-shot model
model . fit ([ "he was a good boy" , "just lay down on my laptop" ], [ "dog" , "cat" ])Вы можете использовать все виды моделей трансформаторов для нескольких и нулевой классификации в Stormtrooper.
Trooper("HuggingFaceH4/zephyr-7b-beta")Trooper("all-MiniLM-L6-v2")Trooper("google/flan-t5-base")Trooper("gpt-4")Trooper("facebook/bart-large-mnli") Найдите больше в наших документах.
pip install stormtrooper from stormtrooper import Trooper
class_labels = [ "atheism/christianity" , "astronomy/space" ]
example_texts = [
"God came down to earth to save us." ,
"A new nebula was recently discovered in the proximity of the Oort cloud."
]
new_texts = [ "God bless the reailway workers" , "The frigate is ready to launch from the spaceport" ]
# Zero-shot classification
model = Trooper ( "google/flan-t5-base" )
model . fit ( None , class_labels )
model . predict ( new_texts )
# ["atheism/christianity", "astronomy/space"]
# Few-shot classification
model = Trooper ( "google/flan-t5-base" )
model . fit ( example_texts , class_labels )
model . predict ( new_texts )
# ["atheism/christianity", "astronomy/space"] Generative и Text2text Models По умолчанию будут нечеткие результаты совместимости с ближайшей меткой класса, вы можете отключить это поведение, указав fuzzy_match=False .
Если вы хотите нечеткого соответствующего ускорения, вам следует установить python-Levenshtein .
Из версии 0.2.2 вы можете запустить модели на графическом процессоре. Вы можете указать устройство при инициализации модели:
classifier = Trooper ( "all-MiniLM-L6-v2" , device = "cuda:0" ) Вы можете запустить модель на нескольких устройствах в порядке приоритета устройства GPU -> CPU + Ram -> Disk и на нескольких устройствах, используя аргумент device_map . Обратите внимание, что это работает только с Text2text и генеративными моделями.
model = Trooper("HuggingFaceH4/zephyr-7b-beta", device_map="auto")