Inference Unlimited

Leitfaden: Wie man Phi-2 auf einem Computer mit 32GB RAM startet

Einführung

Phi-2 ist ein leistungsstarkes Sprachmodell, das eine entsprechend leistungsfähige Hardware zum Starten erfordert. In diesem Leitfaden zeigen wir, wie man Phi-2 auf einem Computer mit 32GB RAM installiert und startet. Wir werden versuchen, alle wichtigen Schritte abzudecken, von der Vorbereitung der Umgebung bis zum Starten des Modells.

Voraussetzungen

Stellen Sie vor der Installation sicher, dass Ihr System die folgenden Anforderungen erfüllt:

Installation der Umgebung

1. Installation von Python

Phi-2 erfordert Python 3.8 oder eine neuere Version. Sie können es mit dem Paketmanager installieren:

sudo apt update
sudo apt install python3.8 python3.8-venv

2. Erstellung einer virtuellen Umgebung

Die Erstellung einer virtuellen Umgebung hilft, Konflikte mit anderen Paketen zu vermeiden:

python3.8 -m venv phi2_env
source phi2_env/bin/activate

3. Installation der Abhängigkeiten

Installieren Sie die erforderlichen Pakete:

pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
pip install transformers accelerate bitsandbytes

Herunterladen des Phi-2-Modells

Sie können das Phi-2-Modell mit der Hugging Face Transformers-Bibliothek herunterladen:

from transformers import AutoModelForCausalLM, AutoTokenizer

model_name = "microsoft/phi-2"
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForCausalLM.from_pretrained(model_name, device_map="auto", load_in_8bit=True)

Konfiguration des Speichers

Für einen Computer mit 32GB RAM wird die Verwendung von Speicheroptimierungen wie 8-Bit-Quantisierung empfohlen:

model = AutoModelForCausalLM.from_pretrained(
    model_name,
    device_map="auto",
    load_in_8bit=True,
    offload_folder="offload",
    offload_state_dict=True,
)

Starten des Modells

Jetzt können Sie das Modell starten und es testen:

prompt = "Was ist der Sinn des Lebens?"
inputs = tokenizer(prompt, return_tensors="pt").to("cuda")
outputs = model.generate(**inputs, max_new_tokens=100)
print(tokenizer.decode(outputs[0], skip_special_tokens=True))

Optimierungen

1. Verwendung von DeepSpeed

DeepSpeed ist ein Tool zur Optimierung von Speicher und Leistung:

pip install deepspeed

2. Konfiguration von DeepSpeed

Erstellen Sie eine Datei ds_config.json:

{
    "train_batch_size": "auto",
    "gradient_accumulation_steps": "auto",
    "optimizer": {
        "type": "AdamW",
        "params": {
            "lr": "auto",
            "betas": "auto",
            "eps": 1e-8,
            "weight_decay": 0.01
        }
    },
    "fp16": {
        "enabled": "auto"
    },
    "zero_optimization": {
        "stage": 3,
        "offload_optimizer": {
            "device": "cpu",
            "pin_memory": true
        },
        "offload_param": {
            "device": "cpu",
            "pin_memory": true
        }
    }
}

3. Starten mit DeepSpeed

from transformers import AutoModelForCausalLM, AutoTokenizer
import deepspeed

model_name = "microsoft/phi-2"
tokenizer = AutoTokenizer.from_pretrained(model_name)

model = AutoModelForCausalLM.from_pretrained(model_name, export=False)

ds_config = {
    "train_batch_size": "auto",
    "gradient_accumulation_steps": "auto",
    "optimizer": {
        "type": "AdamW",
        "params": {
            "lr": "auto",
            "betas": "auto",
            "eps": 1e-8,
            "weight_decay": 0.01
        }
    },
    "fp16": {
        "enabled": "auto"
    },
    "zero_optimization": {
        "stage": 3,
        "offload_optimizer": {
            "device": "cpu",
            "pin_memory": true
        },
        "offload_param": {
            "device": "cpu",
            "pin_memory": true
        }
    }
}

model_engine, optimizer, _, _ = deepspeed.initialize(
    model=model,
    config=ds_config
)

Zusammenfassung

Das Starten von Phi-2 auf einem Computer mit 32GB RAM erfordert eine entsprechende Vorbereitung der Umgebung und die Anwendung von Speicheroptimierungen. In diesem Leitfaden haben wir die wichtigsten Schritte besprochen, wie die Installation von Python, die Erstellung einer virtuellen Umgebung, das Herunterladen des Modells und die Speicherkonfiguration. Mit diesen Schritten sollten Sie in der Lage sein, Phi-2 zu starten und seine leistungsstarken Fähigkeiten zu nutzen.

Język: DE | Wyświetlenia: 5

← Powrót do listy artykułów