Spaces:
Build error
Build error
Update app.py
Browse files
app.py
CHANGED
@@ -1,23 +1,15 @@
|
|
|
|
|
|
1 |
from transformers import AutoTokenizer, AutoModelForCausalLM
|
2 |
from sentence_transformers import SentenceTransformer
|
3 |
from datasets import load_dataset
|
4 |
import faiss
|
5 |
import gradio as gr
|
6 |
from accelerate import Accelerator
|
7 |
-
import os
|
8 |
-
import torch
|
9 |
|
10 |
-
# 환경 변수에서 Hugging Face API 키 로드
|
11 |
hf_api_key = os.getenv('HF_API_KEY')
|
12 |
-
|
13 |
-
# 모델 및 토크나이저 설정
|
14 |
model_id = "microsoft/phi-2"
|
15 |
tokenizer = AutoTokenizer.from_pretrained(model_id, token=hf_api_key, trust_remote_code=True)
|
16 |
-
|
17 |
-
# 토크나이저에 패딩 토큰 설정
|
18 |
-
if tokenizer.pad_token is None:
|
19 |
-
tokenizer.pad_token = tokenizer.eos_token # EOS 토큰을 패딩 토큰으로 사용
|
20 |
-
|
21 |
model = AutoModelForCausalLM.from_pretrained(
|
22 |
model_id,
|
23 |
token=hf_api_key,
|
@@ -44,19 +36,6 @@ def format_prompt(prompt, retrieved_documents, k):
|
|
44 |
PROMPT += f"{retrieved_documents['text'][idx]}\n"
|
45 |
return PROMPT
|
46 |
|
47 |
-
def generate(formatted_prompt):
|
48 |
-
prompt_text = f"{SYS_PROMPT} {formatted_prompt}"
|
49 |
-
input_ids = tokenizer(prompt_text, return_tensors="pt", padding="max_length", max_length=512).input_ids.to(accelerator.device)
|
50 |
-
outputs = model.generate(
|
51 |
-
input_ids,
|
52 |
-
max_new_tokens=1024,
|
53 |
-
eos_token_id=tokenizer.eos_token_id,
|
54 |
-
do_sample=True,
|
55 |
-
temperature=0.6,
|
56 |
-
top_p=0.9
|
57 |
-
)
|
58 |
-
return tokenizer.decode(outputs[0][input_ids.shape[-1]:], skip_special_tokens=True)
|
59 |
-
|
60 |
def rag_chatbot_interface(prompt: str, k: int = 2):
|
61 |
scores, retrieved_documents = search(prompt, k)
|
62 |
formatted_prompt = format_prompt(prompt, retrieved_documents, k)
|
|
|
1 |
+
import os
|
2 |
+
import torch
|
3 |
from transformers import AutoTokenizer, AutoModelForCausalLM
|
4 |
from sentence_transformers import SentenceTransformer
|
5 |
from datasets import load_dataset
|
6 |
import faiss
|
7 |
import gradio as gr
|
8 |
from accelerate import Accelerator
|
|
|
|
|
9 |
|
|
|
10 |
hf_api_key = os.getenv('HF_API_KEY')
|
|
|
|
|
11 |
model_id = "microsoft/phi-2"
|
12 |
tokenizer = AutoTokenizer.from_pretrained(model_id, token=hf_api_key, trust_remote_code=True)
|
|
|
|
|
|
|
|
|
|
|
13 |
model = AutoModelForCausalLM.from_pretrained(
|
14 |
model_id,
|
15 |
token=hf_api_key,
|
|
|
36 |
PROMPT += f"{retrieved_documents['text'][idx]}\n"
|
37 |
return PROMPT
|
38 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
39 |
def rag_chatbot_interface(prompt: str, k: int = 2):
|
40 |
scores, retrieved_documents = search(prompt, k)
|
41 |
formatted_prompt = format_prompt(prompt, retrieved_documents, k)
|