Spaces:
Running
Running
Update app.py
Browse files
app.py
CHANGED
@@ -26,29 +26,34 @@ vectordb = Chroma(
|
|
26 |
|
27 |
retriever = vectordb.as_retriever(search_kwargs={"k": 5})
|
28 |
|
|
|
|
|
|
|
29 |
class CustomInferenceClient:
|
30 |
def __init__(self, model_name: str, hf_token: str, kwargs: Optional[Dict[str, Any]] = None):
|
31 |
-
self.llm = LLM(model_name=model_name, hf_token=hf_token) # LLM ์ธ์คํด์ค
|
32 |
-
self.kw_args_model = KwArgsModel(kwargs=kwargs) # KwArgsModel ์ธ์คํด์ค
|
33 |
-
self.inference_client = InferenceClient(model=model_name, token=hf_token)
|
34 |
-
self.model_name = model_name
|
35 |
|
36 |
-
#
|
37 |
def _call(self, prompt: str, stop: Optional[List[str]] = None) -> str:
|
38 |
if stop is not None:
|
39 |
-
raise ValueError("stop kwargs are not permitted.")
|
40 |
-
kwargs = self.kw_args_model.kwargs # KwArgsModel
|
41 |
-
response_gen = self.inference_client.text_generation(prompt, **kwargs, stream=True)
|
42 |
-
response = ''.join(response_gen)
|
43 |
-
return response
|
44 |
|
|
|
45 |
@property
|
46 |
def _llm_type(self) -> str:
|
47 |
-
return "custom"
|
48 |
|
|
|
49 |
@property
|
50 |
def _identifying_params(self) -> dict:
|
51 |
-
return {"model_name": self.model_name}
|
52 |
|
53 |
kwargs = {"max_new_tokens":256, "temperature":0.9, "top_p":0.6, "repetition_penalty":1.3, "do_sample":True}
|
54 |
|
|
|
26 |
|
27 |
retriever = vectordb.as_retriever(search_kwargs={"k": 5})
|
28 |
|
29 |
+
from typing import Optional, List, Dict, Any
|
30 |
+
# LLM, KwArgsModel, InferenceClient ๋ฑ ํ์ํ ๋ชจ๋ ๋๋ ํด๋์ค๋ฅผ ๋ถ๋ฌ์์ผ ํจ
|
31 |
+
|
32 |
class CustomInferenceClient:
|
33 |
def __init__(self, model_name: str, hf_token: str, kwargs: Optional[Dict[str, Any]] = None):
|
34 |
+
self.llm = LLM(model_name=model_name, hf_token=hf_token) # LLM ์ธ์คํด์ค ์์ฑ
|
35 |
+
self.kw_args_model = KwArgsModel(kwargs=kwargs) # KwArgsModel ์ธ์คํด์ค ์์ฑ
|
36 |
+
self.inference_client = InferenceClient(model=model_name, token=hf_token) # InferenceClient ์ธ์คํด์ค ์์ฑ
|
37 |
+
self.model_name = model_name # ๋ชจ๋ธ ์ด๋ฆ ์ ์ฅ
|
38 |
|
39 |
+
# _call ๋ฉ์๋ ๊ตฌํ
|
40 |
def _call(self, prompt: str, stop: Optional[List[str]] = None) -> str:
|
41 |
if stop is not None:
|
42 |
+
raise ValueError("stop kwargs are not permitted.") # stop ์ธ์๊ฐ ์์ผ๋ฉด ์๋ฌ ๋ฐ์
|
43 |
+
kwargs = self.kw_args_model.kwargs # KwArgsModel๋ก๋ถํฐ kwargs ๋ฐ๊ธฐ
|
44 |
+
response_gen = self.inference_client.text_generation(prompt, **kwargs, stream=True) # ํ
์คํธ ์์ฑ ์์ฒญ
|
45 |
+
response = ''.join(response_gen) # ์คํธ๋ฆผ์ผ๋ก๋ถํฐ ๋ฌธ์์ด ์์ฑ
|
46 |
+
return response # ์์ฑ๋ ๋ฌธ์์ด ๋ฐํ
|
47 |
|
48 |
+
# _llm_type ์์ฑ ๊ตฌํ
|
49 |
@property
|
50 |
def _llm_type(self) -> str:
|
51 |
+
return "custom" # ์ฌ์ฉ์ ์ ์ ํ์
์ผ๋ก ์ง์
|
52 |
|
53 |
+
# _identifying_params ์์ฑ ๊ตฌํ
|
54 |
@property
|
55 |
def _identifying_params(self) -> dict:
|
56 |
+
return {"model_name": self.model_name} # ๋ชจ๋ธ ์ด๋ฆ์ ๋ฐํ
|
57 |
|
58 |
kwargs = {"max_new_tokens":256, "temperature":0.9, "top_p":0.6, "repetition_penalty":1.3, "do_sample":True}
|
59 |
|