Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
|
@@ -40,7 +40,9 @@ def get_embedding(text):
|
|
| 40 |
def format_ingredients_for_bert(ingredients_list):
|
| 41 |
"""Formatiert Zutatenliste für BERT"""
|
| 42 |
return f"Ingredients: {', '.join(ingredients_list)}"
|
| 43 |
-
|
|
|
|
|
|
|
| 44 |
|
| 45 |
def get_cosine_similarity(vec1, vec2):
|
| 46 |
"""Berechnet die Cosinus-Ähnlichkeit zwischen zwei Vektoren"""
|
|
@@ -125,6 +127,15 @@ def find_best_ingredients(required_ingredients_names, available_ingredients_deta
|
|
| 125 |
current_combination = required_ingredients_names.copy()
|
| 126 |
remaining_ingredients_details = available_ingredients_filtered_details.copy()
|
| 127 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 128 |
num_to_add = min(max_ingredients - len(required_ingredients_names), len(remaining_ingredients_details))
|
| 129 |
|
| 130 |
for round_num in range(num_to_add):
|
|
|
|
| 40 |
def format_ingredients_for_bert(ingredients_list):
|
| 41 |
"""Formatiert Zutatenliste für BERT"""
|
| 42 |
return f"Ingredients: {', '.join(ingredients_list)}"
|
| 43 |
+
|
| 44 |
+
def normalize_ingredient_name(name):
|
| 45 |
+
return name.strip().lower()
|
| 46 |
|
| 47 |
def get_cosine_similarity(vec1, vec2):
|
| 48 |
"""Berechnet die Cosinus-Ähnlichkeit zwischen zwei Vektoren"""
|
|
|
|
| 127 |
current_combination = required_ingredients_names.copy()
|
| 128 |
remaining_ingredients_details = available_ingredients_filtered_details.copy()
|
| 129 |
|
| 130 |
+
# Entferne Duplikate aus remaining_ingredients_details - nur eine Zutat pro Name
|
| 131 |
+
seen_names = set()
|
| 132 |
+
unique_remaining_ingredients = []
|
| 133 |
+
for item in remaining_ingredients_details:
|
| 134 |
+
if item.name not in seen_names:
|
| 135 |
+
unique_remaining_ingredients.append(item)
|
| 136 |
+
seen_names.add(item.name)
|
| 137 |
+
remaining_ingredients_details = unique_remaining_ingredients
|
| 138 |
+
|
| 139 |
num_to_add = min(max_ingredients - len(required_ingredients_names), len(remaining_ingredients_details))
|
| 140 |
|
| 141 |
for round_num in range(num_to_add):
|