init commit
Browse files- app.py +27 -29
- requirements.txt +3 -4
app.py
CHANGED
@@ -1,40 +1,38 @@
|
|
1 |
-
from transformers import LlamaForCausalLM, LlamaTokenizer
|
2 |
-
import torch
|
3 |
import os
|
|
|
|
|
|
|
4 |
|
5 |
-
#
|
6 |
hf_token = os.getenv("HF_API_TOKEN")
|
7 |
|
8 |
-
|
9 |
-
|
10 |
|
11 |
-
#
|
12 |
-
|
|
|
|
|
|
|
|
|
|
|
13 |
|
14 |
-
# Завантажуємо токенізатор
|
15 |
-
tokenizer =
|
|
|
16 |
|
17 |
-
# Завантажуємо модель з
|
18 |
-
model =
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
-
device_map="auto" # Для автоматичного розподілу на доступні пристрої
|
23 |
)
|
24 |
|
25 |
-
#
|
26 |
-
input_text = "Hello, how
|
27 |
inputs = tokenizer(input_text, return_tensors="pt")
|
|
|
28 |
|
29 |
-
#
|
30 |
-
|
31 |
-
|
32 |
-
max_length=50, # Максимальна довжина відповіді
|
33 |
-
num_return_sequences=1, # Кількість відповідей
|
34 |
-
do_sample=True, # Випадкове семплування для різноманіття
|
35 |
-
temperature=0.7 # Регулювання "креативності"
|
36 |
-
)
|
37 |
-
|
38 |
-
# Декодуємо та виводимо результат
|
39 |
-
decoded_output = tokenizer.decode(output[0], skip_special_tokens=True)
|
40 |
-
print(f"\nВідповідь моделі: {decoded_output}")
|
|
|
|
|
|
|
1 |
import os
|
2 |
+
from transformers import AutoTokenizer, AutoModelForCausalLM
|
3 |
+
import torch
|
4 |
+
from transformers import BitsAndBytesConfig
|
5 |
|
6 |
+
# Завантажуємо токен автентифікації з змінної середовища
|
7 |
hf_token = os.getenv("HF_API_TOKEN")
|
8 |
|
9 |
+
# Ідентифікатор моделі
|
10 |
+
model_id = "meta-llama/Llama-2-7b-hf"
|
11 |
|
12 |
+
# Налаштування для BitsAndBytes
|
13 |
+
bnb_config = BitsAndBytesConfig(
|
14 |
+
load_in_4bit=True,
|
15 |
+
bnb_4bit_use_double_quant=True,
|
16 |
+
bnb_4bit_quant_type="nf4",
|
17 |
+
bnb_4bit_compute_dtype=torch.bfloat16
|
18 |
+
)
|
19 |
|
20 |
+
# Завантажуємо токенізатор з Hugging Face
|
21 |
+
tokenizer = AutoTokenizer.from_pretrained(model_id, use_auth_token=hf_token)
|
22 |
+
tokenizer.pad_token = tokenizer.eos_token
|
23 |
|
24 |
+
# Завантажуємо модель на CPU з використанням автентифікації
|
25 |
+
model = AutoModelForCausalLM.from_pretrained(
|
26 |
+
model_id,
|
27 |
+
device_map="cpu", # Завантажуємо модель на CPU
|
28 |
+
use_auth_token=hf_token
|
|
|
29 |
)
|
30 |
|
31 |
+
# Тепер ви можете використовувати модель для генерації тексту, наприклад:
|
32 |
+
input_text = "Hello, how are you?"
|
33 |
inputs = tokenizer(input_text, return_tensors="pt")
|
34 |
+
outputs = model.generate(inputs["input_ids"])
|
35 |
|
36 |
+
# Перетворюємо вихідний тензор в текст
|
37 |
+
generated_text = tokenizer.decode(outputs[0], skip_special_tokens=True)
|
38 |
+
print(generated_text)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
requirements.txt
CHANGED
@@ -1,4 +1,3 @@
|
|
1 |
-
transformers
|
2 |
-
|
3 |
-
|
4 |
-
sentencepiece>=0.1.96
|
|
|
1 |
+
transformers==4.40.0
|
2 |
+
torch==2.1.0
|
3 |
+
accelerate==0.20.3
|
|