Spaces:
Paused
Paused
Update app.py
Browse files
app.py
CHANGED
|
@@ -61,20 +61,23 @@ class ModelManager:
|
|
| 61 |
if self.loaded:
|
| 62 |
return global_data['models']
|
| 63 |
|
| 64 |
-
|
| 65 |
-
|
| 66 |
-
|
| 67 |
-
|
| 68 |
-
|
| 69 |
-
|
| 70 |
-
|
| 71 |
-
|
| 72 |
-
|
| 73 |
-
|
| 74 |
-
|
|
|
|
|
|
|
|
|
|
| 75 |
|
| 76 |
model_manager = ModelManager()
|
| 77 |
-
model_manager.load_all_models()
|
| 78 |
|
| 79 |
class ChatRequest(BaseModel):
|
| 80 |
message: str
|
|
@@ -112,7 +115,7 @@ def remove_repetitive_responses(responses):
|
|
| 112 |
seen = set()
|
| 113 |
unique_responses = []
|
| 114 |
for response in responses:
|
| 115 |
-
normalized_response =
|
| 116 |
if normalized_response not in seen:
|
| 117 |
seen.add(normalized_response)
|
| 118 |
unique_responses.append(response)
|
|
@@ -144,5 +147,8 @@ async def generate(request: ChatRequest):
|
|
| 144 |
except Exception:
|
| 145 |
raise HTTPException(status_code=500, detail="Internal Server Error")
|
| 146 |
|
|
|
|
|
|
|
|
|
|
| 147 |
if __name__ == "__main__":
|
| 148 |
uvicorn.run(app, host="0.0.0.0", port=7860)
|
|
|
|
| 61 |
if self.loaded:
|
| 62 |
return global_data['models']
|
| 63 |
|
| 64 |
+
try:
|
| 65 |
+
with ThreadPoolExecutor() as executor:
|
| 66 |
+
futures = [executor.submit(self.load_model, config) for config in model_configs]
|
| 67 |
+
models = []
|
| 68 |
+
for future in as_completed(futures):
|
| 69 |
+
model = future.result()
|
| 70 |
+
if model:
|
| 71 |
+
models.append(model)
|
| 72 |
+
|
| 73 |
+
global_data['models'] = models
|
| 74 |
+
self.loaded = True
|
| 75 |
+
return models
|
| 76 |
+
except Exception:
|
| 77 |
+
pass
|
| 78 |
|
| 79 |
model_manager = ModelManager()
|
| 80 |
+
model_manager.load_all_models()
|
| 81 |
|
| 82 |
class ChatRequest(BaseModel):
|
| 83 |
message: str
|
|
|
|
| 115 |
seen = set()
|
| 116 |
unique_responses = []
|
| 117 |
for response in responses:
|
| 118 |
+
normalized_response = normalize_input(response['response'])
|
| 119 |
if normalized_response not in seen:
|
| 120 |
seen.add(normalized_response)
|
| 121 |
unique_responses.append(response)
|
|
|
|
| 147 |
except Exception:
|
| 148 |
raise HTTPException(status_code=500, detail="Internal Server Error")
|
| 149 |
|
| 150 |
+
def select_best_response(responses):
|
| 151 |
+
return responses[0] if responses else {}
|
| 152 |
+
|
| 153 |
if __name__ == "__main__":
|
| 154 |
uvicorn.run(app, host="0.0.0.0", port=7860)
|