Penyisipan Lora-Layer dinamis di seluruh encoder gambar atau teks, atau kedua encoder.
Memuat bobot klip openai pra-terlatih dengan aman ke dalam model lora-ified.
Memuat model siap penyesuaian dengan benar-benar tidak membeku positional_embedding , logit_scale , dan proyeksi.
CATATAN: Kami saat ini hanya mendukung model transformator visi di Lora-Ifification of Image Encoder. Model ResNet akan segera ditambahkan.
Penting: Pastikan Anda memiliki klip sebelum Anda menginstal loraclip . Ini bisa dilakukan dengan
pip install regex ftfy
pip install git+https://github.com/openai/CLIP.git Anda kemudian dapat menginstal paket ini secara langsung menggunakan pip melalui pip install loraclip . Atau, Anda dapat mempertimbangkan untuk membangun ini dari sumber oleh
git clone https://github.com/jaisidhsingh/LoRA-CLIP.git
cd LoRA-CLIP
pip install -e . import loraclip
import argparse
def test_loraclip ( args ):
# Easy-to-use with standard CLIP syntax.
# 1. Dynamic LoRA rank specification
# 2. Specify which encoder(s) to LoRA-ify
model , preprocess = loraclip . load ( args . clip_model_name , device = args . device , r = args . lora_rank , lora_mode = args . lora_mode )
# Utility to preview no. of trainable params along with their % with total params.
loraclip . print_trainable_parameters ( model )
def setup_args ():
parser = argparse . ArgumentParser ()
parser . add_argument ( "--clip-model-name" , type = str , default = "ViT-B/16" )
parser . add_argument ( "--device" , type = str , default = "cuda" )
parser . add_argument ( "--lora-rank" , type = int , default = 4 )
parser . add_argument ( "--lora-mode" , type = str , default = "vision+text" , choices = [ "vision" , "text" , "vision+text" ])
args = parser . parse_args ()
return args
if __name__ == "__main__" :
args = setup_args ()
test_loraclip ( args )https://github.com/openai/clip
https://github.com/sivandoveh/tsvlc