From c36eac75875e3f2de46f9bdfff71fb0f92a3e50b Mon Sep 17 00:00:00 2001 From: Shane Date: Mon, 12 May 2025 21:59:15 +1000 Subject: [PATCH] try --- foodie_utils.py | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/foodie_utils.py b/foodie_utils.py index 947225d..bc5b6e9 100644 --- a/foodie_utils.py +++ b/foodie_utils.py @@ -362,7 +362,8 @@ def smart_image_and_filter(title, summary): "Analyze this article title and summary. Extract key entities (brands, locations, cuisines, or topics) " "for an image search about food industry trends or viral content. Prioritize specific multi-word terms if present, " "otherwise focus on the main theme. Also identify the main topic of the article (e.g., a specific food item or cuisine). " - "Return 'SKIP' if the article is about home appliances, recipes, promotions, contains 'homemade', or includes recipe-related terms like 'cook', 'bake', or 'ingredient'. " + "Return 'SKIP' if the article is about home appliances, recipes, promotions, contains '[homemade]' or 'homemade', " + "or includes recipe-related terms like 'cook', 'bake', or 'ingredient'. " "Return as JSON with double quotes for all property names and string values (e.g., " "{\"image_query\": \"fast food trends\", \"relevance\": [\"fast food\", \"dining\", \"culture\"], \"main_topic\": \"fast food\", \"action\": \"KEEP\"})." ) @@ -390,12 +391,13 @@ def smart_image_and_filter(title, summary): return extract_main_topic(title.lower() + " " + summary.lower()), ["food"], "food", True main_topic = extract_main_topic(title.lower() + " " + summary.lower()) skip_flag = ( + "[homemade]" in title.lower() or "homemade" in title.lower() or "homemade" in summary.lower() or any(kw in title.lower() or kw in summary.lower() for kw in RECIPE_KEYWORDS) ) logging.info(f"Fallback for '{title}': Skip={skip_flag}, Reasons: " - f"homemade_in_title={'homemade' in title.lower()}, " + f"homemade_in_title={'[homemade]' in title.lower() or 'homemade' in title.lower()}, " f"homemade_in_summary={'homemade' in summary.lower()}, " f"recipe_keywords={any(kw in title.lower() or kw in summary.lower() for kw in RECIPE_KEYWORDS)}") return main_topic, [main_topic, "food"], main_topic, skip_flag @@ -403,12 +405,13 @@ def smart_image_and_filter(title, summary): logging.warning(f"JSON parsing failed: {e}, raw: '{fixed_result}'. Using fallback.") main_topic = extract_main_topic(title.lower() + " " + summary.lower()) skip_flag = ( + "[homemade]" in title.lower() or "homemade" in title.lower() or "homemade" in summary.lower() or any(kw in title.lower() or kw in summary.lower() for kw in RECIPE_KEYWORDS) ) logging.info(f"Fallback for '{title}': Skip={skip_flag}, Reasons: " - f"homemade_in_title={'homemade' in title.lower()}, " + f"homemade_in_title={'[homemade]' in title.lower() or 'homemade' in title.lower()}, " f"homemade_in_summary={'homemade' in summary.lower()}, " f"recipe_keywords={any(kw in title.lower() or kw in summary.lower() for kw in RECIPE_KEYWORDS)}") return main_topic, [main_topic, "food"], main_topic, skip_flag @@ -418,6 +421,7 @@ def smart_image_and_filter(title, summary): main_topic = result.get("main_topic", extract_main_topic(title.lower() + " " + summary.lower())) skip_flag = ( result["action"] == "SKIP" or + "[homemade]" in title.lower() or "homemade" in title.lower() or "homemade" in summary.lower() or any(kw in title.lower() or kw in summary.lower() for kw in RECIPE_KEYWORDS) @@ -425,7 +429,7 @@ def smart_image_and_filter(title, summary): logging.info(f"Smart image query: {image_query}, Relevance: {relevance_keywords}, Main Topic: {main_topic}, Skip: {skip_flag}, " f"Reasons: action={result['action']}, " - f"homemade_in_title={'homemade' in title.lower()}, " + f"homemade_in_title={'[homemade]' in title.lower() or 'homemade' in title.lower()}, " f"homemade_in_summary={'homemade' in summary.lower()}, " f"recipe_keywords={any(kw in title.lower() or kw in summary.lower() for kw in RECIPE_KEYWORDS)}") @@ -443,12 +447,13 @@ def smart_image_and_filter(title, summary): logging.error(f"Smart image/filter failed: {e}, using fallback") main_topic = extract_main_topic(title.lower() + " " + summary.lower()) skip_flag = ( + "[homemade]" in title.lower() or "homemade" in title.lower() or "homemade" in summary.lower() or any(kw in title.lower() or kw in summary.lower() for kw in RECIPE_KEYWORDS) ) logging.info(f"Fallback for '{title}': Skip={skip_flag}, Reasons: " - f"homemade_in_title={'homemade' in title.lower()}, " + f"homemade_in_title={'[homemade]' in title.lower() or 'homemade' in title.lower()}, " f"homemade_in_summary={'homemade' in summary.lower()}, " f"recipe_keywords={any(kw in title.lower() or kw in summary.lower() for kw in RECIPE_KEYWORDS)}") return main_topic, [main_topic, "food"], main_topic, skip_flag