Spaces:
Paused
Paused
Update app.py
Browse files
app.py
CHANGED
|
@@ -6,6 +6,7 @@ import uvicorn
|
|
| 6 |
import huggingface_hub
|
| 7 |
import re
|
| 8 |
from dotenv import load_dotenv
|
|
|
|
| 9 |
|
| 10 |
load_dotenv()
|
| 11 |
|
|
@@ -85,6 +86,7 @@ class ChatRequest(BaseModel):
|
|
| 85 |
top_p: float = 0.95
|
| 86 |
temperature: float = 0.7
|
| 87 |
|
|
|
|
| 88 |
def generate_chat_response(request, model_data):
|
| 89 |
try:
|
| 90 |
user_input = normalize_input(request.message)
|
|
@@ -109,19 +111,20 @@ def remove_duplicates(text):
|
|
| 109 |
text = text.replace('[/INST]', '')
|
| 110 |
lines = text.split('\n')
|
| 111 |
unique_lines = list(dict.fromkeys(lines))
|
| 112 |
-
return '\n'.join(unique_lines)
|
| 113 |
|
| 114 |
def remove_repetitive_responses(responses):
|
| 115 |
seen = set()
|
| 116 |
unique_responses = []
|
| 117 |
for response in responses:
|
| 118 |
-
normalized_response =
|
| 119 |
if normalized_response not in seen:
|
| 120 |
seen.add(normalized_response)
|
| 121 |
unique_responses.append(response)
|
| 122 |
return unique_responses
|
| 123 |
|
| 124 |
@app.post("/generate")
|
|
|
|
| 125 |
async def generate(request: ChatRequest):
|
| 126 |
try:
|
| 127 |
responses = []
|
|
@@ -145,7 +148,7 @@ async def generate(request: ChatRequest):
|
|
| 145 |
"all_responses": responses
|
| 146 |
}
|
| 147 |
except Exception:
|
| 148 |
-
|
| 149 |
|
| 150 |
def select_best_response(responses):
|
| 151 |
return responses[0] if responses else {}
|
|
|
|
| 6 |
import huggingface_hub
|
| 7 |
import re
|
| 8 |
from dotenv import load_dotenv
|
| 9 |
+
import spaces
|
| 10 |
|
| 11 |
load_dotenv()
|
| 12 |
|
|
|
|
| 86 |
top_p: float = 0.95
|
| 87 |
temperature: float = 0.7
|
| 88 |
|
| 89 |
+
@spaces.GPU(duration=0)
|
| 90 |
def generate_chat_response(request, model_data):
|
| 91 |
try:
|
| 92 |
user_input = normalize_input(request.message)
|
|
|
|
| 111 |
text = text.replace('[/INST]', '')
|
| 112 |
lines = text.split('\n')
|
| 113 |
unique_lines = list(dict.fromkeys(lines))
|
| 114 |
+
return '\n'.join(unique_lines)
|
| 115 |
|
| 116 |
def remove_repetitive_responses(responses):
|
| 117 |
seen = set()
|
| 118 |
unique_responses = []
|
| 119 |
for response in responses:
|
| 120 |
+
normalized_response = remove_duplicates(response['response'])
|
| 121 |
if normalized_response not in seen:
|
| 122 |
seen.add(normalized_response)
|
| 123 |
unique_responses.append(response)
|
| 124 |
return unique_responses
|
| 125 |
|
| 126 |
@app.post("/generate")
|
| 127 |
+
@spaces.GPU(duration=0)
|
| 128 |
async def generate(request: ChatRequest):
|
| 129 |
try:
|
| 130 |
responses = []
|
|
|
|
| 148 |
"all_responses": responses
|
| 149 |
}
|
| 150 |
except Exception:
|
| 151 |
+
pass
|
| 152 |
|
| 153 |
def select_best_response(responses):
|
| 154 |
return responses[0] if responses else {}
|