Deploying latest raw changes and full functionality
Browse files- __pycache__/app.cpython-313.pyc +0 -0
- app.py +2 -1
- cache/nutrition_cache.json +1 -1
- speech_module/__pycache__/transcriber1.cpython-310.pyc +0 -0
- speech_module/__pycache__/transcriber1.cpython-313.pyc +0 -0
- speech_module/transcriber.py +6 -1
- speech_module/transcriber1.py +6 -1
- test_hindi_stt.py +86 -54
- utils/__pycache__/config.cpython-310.pyc +0 -0
- utils/__pycache__/config.cpython-313.pyc +0 -0
- utils/config.py +1 -1
__pycache__/app.cpython-313.pyc
CHANGED
|
Binary files a/__pycache__/app.cpython-313.pyc and b/__pycache__/app.cpython-313.pyc differ
|
|
|
app.py
CHANGED
|
@@ -418,4 +418,5 @@ with gr.Blocks(title="🥗 Recipe Health Analyzer") as demo:
|
|
| 418 |
|
| 419 |
|
| 420 |
if __name__ == "__main__":
|
| 421 |
-
demo.launch(
|
|
|
|
|
|
| 418 |
|
| 419 |
|
| 420 |
if __name__ == "__main__":
|
| 421 |
+
demo.launch(share=True,
|
| 422 |
+
ssr_mode=False,)
|
cache/nutrition_cache.json
CHANGED
|
@@ -1 +1 @@
|
|
| 1 |
-
{"bun": {"calories": 1890.0, "total_fat": 26.6, "saturated_fat": 12.6, "protein": 4.45, "carbohydrates": 48.6, "sugar": 25.7, "fiber": 1.2, "sodium": 305.0}, "mayonnaise": {"calories": 1100.0, "total_fat": 19.0, "saturated_fat": 2.96, "protein": 0.9, "carbohydrates": 23.9, "sugar": 4.34, "fiber": 0.0, "sodium": 837.0}, "fries": {"calories": 1130.0, "total_fat": 20.2, "saturated_fat": 2.92, "protein": 18.8, "carbohydrates": 8.86, "sugar": 2.72, "fiber": 3.9, "sodium": 16.0}, "burger": {"calories": 286.0, "total_fat": 14.8, "saturated_fat": 6.84, "protein": 14.6, "carbohydrates": 23.7, "sugar": 4.49, "fiber": 1.0, "sodium": 602.0}, "eggs": {"calories": 55.0, "total_fat": 0.0, "saturated_fat": 0.0, "protein": 10.7, "carbohydrates": 2.36, "sugar": 0.0, "fiber": 0.0, "sodium": 0.0}, "onion": {"calories": 166.0, "total_fat": 0.1, "saturated_fat": 0.042, "protein": 1.1, "carbohydrates": 9.34, "sugar": 4.24, "fiber": 1.7, "sodium": 4.0}, "tomato": {"calories": 302.0, "total_fat": 0.44, "saturated_fat": 0.062, "protein": 12.9, "carbohydrates": 74.7, "sugar": 43.9, "fiber": 16.5, "sodium": 134.0}, "chili": {"calories": 656.0, "total_fat": 9.79, "saturated_fat": 4.15, "protein": 12.6, "carbohydrates": 4.57, "sugar": 2.27, "fiber": 1.4, "sodium": 381.0}, "optional": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "capsicum": {"calories": 1330.0, "total_fat": 17.3, "saturated_fat": 3.26, "protein": 12.0, "carbohydrates": 56.6, "sugar": 10.3, "fiber": 27.2, "sodium": 30.0}, "spinach": {"calories": 23, "total_fat": 0.4, "saturated_fat": 0.06, "protein": 2.9, "carbohydrates": 3.6, "sugar": 0.42, "fiber": 2.2, "sodium": 79}, "oil": {"calories": 884, "total_fat": 100.0, "saturated_fat": 13.8, "protein": 0.0, "carbohydrates": 0.0, "sugar": 0.0, "fiber": 0.0, "sodium": 2}, "salt": {"calories": 0, "total_fat": 0.0, "saturated_fat": 0.0, "protein": 0.0, "carbohydrates": 0.0, "sugar": 0.0, "fiber": 0.0, "sodium": 38758}, "coriander": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "butter": {"calories": 900.0, "total_fat": 100.0, "saturated_fat": 60.0, "protein": 0.0, "carbohydrates": 0.0, "sugar": 0.0, "fiber": 0.0, "sodium": 0.0}, "thighs": {"calories": 1840.0, "total_fat": 44.2, "saturated_fat": 12.1, "protein": 9.58, "carbohydrates": 0.79, "sugar": 0.0, "fiber": 0.0, "sodium": 51.0}, "sauce": {"calories": 438.0, "total_fat": 18.3, "saturated_fat": 8.44, "protein": 7.68, "carbohydrates": 60.5, "sugar": 10.3, "fiber": 1.0, "sodium": 3200.0}, "cheese": {"calories": 1230.0, "total_fat": 28.6, "saturated_fat": 18.0, "protein": 7.1, "carbohydrates": 3.5, "sugar": 3.5, "fiber": 0.0, "sodium": 436.0}, "aalu": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "tamatar": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "bundy": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "patty": {"calories": 824.0, "total_fat": 9.0, "saturated_fat": 1.42, "protein": 21.0, "carbohydrates": 8.0, "sugar": 1.2, "fiber": 4.6, "sodium": 550.0}, "ingredients": {"calories": 19.9, "total_fat": 0.288, "saturated_fat": 0.0, "protein": 0.859, "carbohydrates": 4.32, "sugar": 2.57, "fiber": 0.0, "sodium": 236.0}, "turmeric": {"calories": 1300.0, "total_fat": 3.25, "saturated_fat": 1.84, "protein": 9.68, "carbohydrates": 67.1, "sugar": 3.21, "fiber": 22.7, "sodium": 27.0}, "powder": {"calories": 1040.0, "total_fat": 0.47, "saturated_fat": 0.244, "protein": 3.69, "carbohydrates": 79.6, "sugar": 0.0, "fiber": 44.5, "sodium": 10.0}, "crumbs": {"calories": 1650.0, "total_fat": 5.3, "saturated_fat": 1.2, "protein": 13.4, "carbohydrates": 72.0, "sugar": 6.2, "fiber": 4.5, "sodium": 732.0}, "sugar": {"calories": 1670.0, "total_fat": 0.0, "saturated_fat": 0.0, "protein": 0.0, "carbohydrates": 99.8, "sugar": 99.2, "fiber": 0.0, "sodium": 3.0}, "confectioners": {"calories": 539.0, "total_fat": 29.0, "saturated_fat": 24.1, "protein": 2.2, "carbohydrates": 67.1, "sugar": 67.1, "fiber": 0.0, "sodium": 89.0}, "vanilla": {"calories": 288.0, "total_fat": 0.06, "saturated_fat": 0.01, "protein": 0.06, "carbohydrates": 12.6, "sugar": 12.6, "fiber": 0.0, "sodium": 9.0}, "liqueur": {"calories": 1410.0, "total_fat": 0.3, "saturated_fat": 0.106, "protein": 0.1, "carbohydrates": 46.8, "sugar": 38.3, "fiber": 0.0, "sodium": 8.0}, "cream": {"calories": 815.0, "total_fat": 19.1, "saturated_fat": 10.2, "protein": 2.96, "carbohydrates": 3.66, "sugar": 3.67, "fiber": 0.0, "sodium": 72.0}, "confidence": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "crust": {"calories": 2020.0, "total_fat": 22.4, "saturated_fat": 4.72, "protein": 6.08, "carbohydrates": 64.5, "sugar": 26.3, "fiber": 2.7, "sodium": 503.0}, "grey": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "slash": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "100gs": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "200ml": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "bananas": {"calories": 346.0, "total_fat": 1.81, "saturated_fat": 0.698, "protein": 3.89, "carbohydrates": 88.3, "sugar": 47.3, "fiber": 9.9, "sodium": 3.0}, "paneer": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "soup": {"calories": 37.0, "total_fat": 0.55, "saturated_fat": 0.17, "protein": 2.53, "carbohydrates": 5.71, "sugar": 0.37, "fiber": 0.8, "sodium": 181.0}, "chips": {"calories": 2170.0, "total_fat": 33.6, "saturated_fat": 29.0, "protein": 2.3, "carbohydrates": 58.4, "sugar": 35.3, "fiber": 7.7, "sodium": 6.0}, "grill": {"calories": 121.0, "total_fat": 0.58, "saturated_fat": 0.064, "protein": 3.28, "carbohydrates": 4.44, "sugar": 2.26, "fiber": 2.2, "sodium": 11.0}, "salmon": {"calories": 902.0, "total_fat": 100.0, "saturated_fat": 19.9, "protein": 0.0, "carbohydrates": 0.0, "sugar": 0.0, "fiber": 0.0, "sodium": 0.0}, "rice": {"calories": 416.0, "total_fat": 5.0, "saturated_fat": 0.0, "protein": 10.0, "carbohydrates": 82.6, "sugar": 0.0, "fiber": 0.0, "sodium": 233.0}, "broccoli": {"calories": 31.0, "total_fat": 0.34, "saturated_fat": 0.039, "protein": 2.57, "carbohydrates": 3.8, "sugar": 1.4, "fiber": 2.4, "sodium": 36.0}, "avocado": {"calories": 884.0, "total_fat": 100.0, "saturated_fat": 11.6, "protein": 0.0, "carbohydrates": 0.0, "sugar": 0.0, "fiber": 0.0, "sodium": 0.0}, "spaghetti": {"calories": 170.0, "total_fat": 8.52, "saturated_fat": 3.1, "protein": 7.84, "carbohydrates": 15.5, "sugar": 2.03, "fiber": 1.5, "sodium": 351.0}, "fry": {"calories": 218.0, "total_fat": 2.85, "saturated_fat": 0.453, "protein": 5.7, "carbohydrates": 44.6, "sugar": 0.88, "fiber": 6.3, "sodium": 45.0}, "bacon": {"calories": 309.0, "total_fat": 29.5, "saturated_fat": 4.62, "protein": 11.7, "carbohydrates": 5.31, "sugar": 0.0, "fiber": 2.6, "sodium": 1460.0}, "yolks": {"calories": 2800.0, "total_fat": 59.1, "saturated_fat": 20.3, "protein": 33.6, "carbohydrates": 0.66, "sugar": 0.23, "fiber": 0.0, "sodium": 149.0}, "parmesan": {"calories": 1760.0, "total_fat": 27.8, "saturated_fat": 15.4, "protein": 28.4, "carbohydrates": 13.9, "sugar": 0.07, "fiber": 0.0, "sodium": 1800.0}, "season": {"calories": 465.0, "total_fat": 18.3, "saturated_fat": 5.25, "protein": 10.8, "carbohydrates": 63.5, "sugar": 4.41, "fiber": 5.0, "sodium": 1330.0}, "milk": {"calories": 446.0, "total_fat": 13.8, "saturated_fat": 2.91, "protein": 7.6, "carbohydrates": 71.7, "sugar": 10.3, "fiber": 3.4, "sodium": 687.0}, "banana": {"calories": 346.0, "total_fat": 1.81, "saturated_fat": 0.698, "protein": 3.89, "carbohydrates": 88.3, "sugar": 47.3, "fiber": 9.9, "sodium": 3.0}, "chicken": {"calories": 158.0, "total_fat": 17.6, "saturated_fat": 3.23, "protein": 18.0, "carbohydrates": 4.05, "sugar": 0.47, "fiber": 0.3, "sodium": 722.0}, "flour": {"calories": 357.0, "total_fat": 0.1, "saturated_fat": 0.019, "protein": 0.3, "carbohydrates": 88.2, "sugar": 0.0, "fiber": 3.4, "sodium": 2.0}, "corn": {"calories": 0.0, "total_fat": 0.0, "saturated_fat": 13.4, "protein": 0.0, "carbohydrates": 0.0, "sugar": 0.0, "fiber": 0.0, "sodium": 0.0}, "end": {"calories": 1440.0, "total_fat": 31.3, "saturated_fat": 12.9, "protein": 15.8, "carbohydrates": 0.0, "sugar": 0.0, "fiber": 0.0, "sodium": 54.0}, "lentils": {"calories": 351.0, "total_fat": 1.92, "saturated_fat": 0.0, "protein": 23.6, "carbohydrates": 62.2, "sugar": 0.0, "fiber": 0.0, "sodium": 0.0}, "broth": {"calories": 67.0, "total_fat": 0.6, "saturated_fat": 0.133, "protein": 2.0, "carbohydrates": 0.4, "sugar": 0.09, "fiber": 0.0, "sodium": 200.0}, "carrots": {"calories": 341.0, "total_fat": 1.49, "saturated_fat": 0.256, "protein": 8.1, "carbohydrates": 79.6, "sugar": 38.8, "fiber": 23.6, "sodium": 275.0}, "stalks": {"calories": 28.0, "total_fat": 0.35, "saturated_fat": 0.054, "protein": 2.98, "carbohydrates": 5.24, "sugar": 0.0, "fiber": 0.0, "sodium": 27.0}, "garlic": {"calories": 597.0, "total_fat": 0.38, "saturated_fat": 0.0, "protein": 6.62, "carbohydrates": 28.2, "sugar": 0.0, "fiber": 2.7, "sodium": 0.0}, "labc\u00fc": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "sciences": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "hotel": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "life": {"calories": 374.0, "total_fat": 4.1, "saturated_fat": 0.77, "protein": 9.14, "carbohydrates": 79.0, "sugar": 25.2, "fiber": 6.3, "sodium": 463.0}, "heaven": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "tables": {"calories": 0.0, "total_fat": 0.0, "saturated_fat": 0.0, "protein": 0.0, "carbohydrates": 0.0, "sugar": 0.0, "fiber": 0.0, "sodium": 38800.0}, "juice": {"calories": 480.0, "total_fat": 1.41, "saturated_fat": 0.705, "protein": 1.41, "carbohydrates": 24.1, "sugar": 20.6, "fiber": 0.1, "sodium": 42.0}, "honey": {"calories": 1270.0, "total_fat": 0.0, "saturated_fat": 0.0, "protein": 0.3, "carbohydrates": 82.4, "sugar": 82.1, "fiber": 0.2, "sodium": 4.0}, "salary": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "and\u967d\u5316": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "spots": {"calories": 123.0, "total_fat": 4.9, "saturated_fat": 1.45, "protein": 18.5, "carbohydrates": 0.0, "sugar": 0.0, "fiber": 0.0, "sodium": 29.0}, "surgeon": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "water": {"calories": 19.0, "total_fat": 0.2, "saturated_fat": 0.0, "protein": 2.6, "carbohydrates": 3.13, "sugar": 0.0, "fiber": 2.1, "sodium": 113.0}, "namak": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "haldi": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "mirch": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "taziyya": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "washedlaughter": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "gravy": {"calories": 367.0, "total_fat": 9.61, "saturated_fat": 3.32, "protein": 10.7, "carbohydrates": 59.4, "sugar": 0.0, "fiber": 2.0, "sodium": 4840.0}, "masala": {"calories": 238.0, "total_fat": 0.88, "saturated_fat": 0.18, "protein": 3.3, "carbohydrates": 10.5, "sugar": 2.3, "fiber": 2.6, "sodium": 92.0}, "mix": {"calories": 363.0, "total_fat": 1.62, "saturated_fat": 0.395, "protein": 10.6, "carbohydrates": 76.4, "sugar": 3.83, "fiber": 3.1, "sodium": 1080.0}, "stirring": {"calories": 162.0, "total_fat": 0.35, "saturated_fat": 0.032, "protein": 3.45, "carbohydrates": 7.68, "sugar": 0.3, "fiber": 3.6, "sodium": 5.0}, "mixture": {"calories": 131.0, "total_fat": 5.6, "saturated_fat": 1.05, "protein": 13.1, "carbohydrates": 7.5, "sugar": 7.5, "fiber": 0.0, "sodium": 162.0}, "bags": {"calories": 1460.0, "total_fat": 2.01, "saturated_fat": 0.405, "protein": 11.2, "carbohydrates": 81.0, "sugar": 0.81, "fiber": 11.8, "sodium": 4.0}, "cruiser": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "slits": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "box": {"calories": 686.0, "total_fat": 4.99, "saturated_fat": 1.64, "protein": 6.68, "carbohydrates": 23.1, "sugar": 1.57, "fiber": 1.2, "sodium": 460.0}, "white\uad7fas": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "seed": {"calories": 168.0, "total_fat": 2.3, "saturated_fat": 0.621, "protein": 5.3, "carbohydrates": 32.0, "sugar": 0.0, "fiber": 4.8, "sodium": 23.0}, "cents": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "settees": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "patda": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "funds": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "ma'am": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "information": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "distance": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "bhaid": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "rahira": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "grains": {"calories": 338.0, "total_fat": 1.63, "saturated_fat": 0.197, "protein": 10.3, "carbohydrates": 75.9, "sugar": 0.98, "fiber": 15.1, "sodium": 2.0}, "children": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}}
|
|
|
|
| 1 |
+
{"bun": {"calories": 1890.0, "total_fat": 26.6, "saturated_fat": 12.6, "protein": 4.45, "carbohydrates": 48.6, "sugar": 25.7, "fiber": 1.2, "sodium": 305.0}, "mayonnaise": {"calories": 1100.0, "total_fat": 19.0, "saturated_fat": 2.96, "protein": 0.9, "carbohydrates": 23.9, "sugar": 4.34, "fiber": 0.0, "sodium": 837.0}, "fries": {"calories": 1130.0, "total_fat": 20.2, "saturated_fat": 2.92, "protein": 18.8, "carbohydrates": 8.86, "sugar": 2.72, "fiber": 3.9, "sodium": 16.0}, "burger": {"calories": 286.0, "total_fat": 14.8, "saturated_fat": 6.84, "protein": 14.6, "carbohydrates": 23.7, "sugar": 4.49, "fiber": 1.0, "sodium": 602.0}, "eggs": {"calories": 55.0, "total_fat": 0.0, "saturated_fat": 0.0, "protein": 10.7, "carbohydrates": 2.36, "sugar": 0.0, "fiber": 0.0, "sodium": 0.0}, "onion": {"calories": 166.0, "total_fat": 0.1, "saturated_fat": 0.042, "protein": 1.1, "carbohydrates": 9.34, "sugar": 4.24, "fiber": 1.7, "sodium": 4.0}, "tomato": {"calories": 302.0, "total_fat": 0.44, "saturated_fat": 0.062, "protein": 12.9, "carbohydrates": 74.7, "sugar": 43.9, "fiber": 16.5, "sodium": 134.0}, "chili": {"calories": 656.0, "total_fat": 9.79, "saturated_fat": 4.15, "protein": 12.6, "carbohydrates": 4.57, "sugar": 2.27, "fiber": 1.4, "sodium": 381.0}, "optional": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "capsicum": {"calories": 1330.0, "total_fat": 17.3, "saturated_fat": 3.26, "protein": 12.0, "carbohydrates": 56.6, "sugar": 10.3, "fiber": 27.2, "sodium": 30.0}, "spinach": {"calories": 23, "total_fat": 0.4, "saturated_fat": 0.06, "protein": 2.9, "carbohydrates": 3.6, "sugar": 0.42, "fiber": 2.2, "sodium": 79}, "oil": {"calories": 884, "total_fat": 100.0, "saturated_fat": 13.8, "protein": 0.0, "carbohydrates": 0.0, "sugar": 0.0, "fiber": 0.0, "sodium": 2}, "salt": {"calories": 0, "total_fat": 0.0, "saturated_fat": 0.0, "protein": 0.0, "carbohydrates": 0.0, "sugar": 0.0, "fiber": 0.0, "sodium": 38758}, "coriander": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "butter": {"calories": 900.0, "total_fat": 100.0, "saturated_fat": 60.0, "protein": 0.0, "carbohydrates": 0.0, "sugar": 0.0, "fiber": 0.0, "sodium": 0.0}, "thighs": {"calories": 1840.0, "total_fat": 44.2, "saturated_fat": 12.1, "protein": 9.58, "carbohydrates": 0.79, "sugar": 0.0, "fiber": 0.0, "sodium": 51.0}, "sauce": {"calories": 438.0, "total_fat": 18.3, "saturated_fat": 8.44, "protein": 7.68, "carbohydrates": 60.5, "sugar": 10.3, "fiber": 1.0, "sodium": 3200.0}, "cheese": {"calories": 1230.0, "total_fat": 28.6, "saturated_fat": 18.0, "protein": 7.1, "carbohydrates": 3.5, "sugar": 3.5, "fiber": 0.0, "sodium": 436.0}, "aalu": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "tamatar": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "bundy": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "patty": {"calories": 824.0, "total_fat": 9.0, "saturated_fat": 1.42, "protein": 21.0, "carbohydrates": 8.0, "sugar": 1.2, "fiber": 4.6, "sodium": 550.0}, "ingredients": {"calories": 19.9, "total_fat": 0.288, "saturated_fat": 0.0, "protein": 0.859, "carbohydrates": 4.32, "sugar": 2.57, "fiber": 0.0, "sodium": 236.0}, "turmeric": {"calories": 1300.0, "total_fat": 3.25, "saturated_fat": 1.84, "protein": 9.68, "carbohydrates": 67.1, "sugar": 3.21, "fiber": 22.7, "sodium": 27.0}, "powder": {"calories": 1040.0, "total_fat": 0.47, "saturated_fat": 0.244, "protein": 3.69, "carbohydrates": 79.6, "sugar": 0.0, "fiber": 44.5, "sodium": 10.0}, "crumbs": {"calories": 1650.0, "total_fat": 5.3, "saturated_fat": 1.2, "protein": 13.4, "carbohydrates": 72.0, "sugar": 6.2, "fiber": 4.5, "sodium": 732.0}, "sugar": {"calories": 1670.0, "total_fat": 0.0, "saturated_fat": 0.0, "protein": 0.0, "carbohydrates": 99.8, "sugar": 99.2, "fiber": 0.0, "sodium": 3.0}, "confectioners": {"calories": 539.0, "total_fat": 29.0, "saturated_fat": 24.1, "protein": 2.2, "carbohydrates": 67.1, "sugar": 67.1, "fiber": 0.0, "sodium": 89.0}, "vanilla": {"calories": 288.0, "total_fat": 0.06, "saturated_fat": 0.01, "protein": 0.06, "carbohydrates": 12.6, "sugar": 12.6, "fiber": 0.0, "sodium": 9.0}, "liqueur": {"calories": 1410.0, "total_fat": 0.3, "saturated_fat": 0.106, "protein": 0.1, "carbohydrates": 46.8, "sugar": 38.3, "fiber": 0.0, "sodium": 8.0}, "cream": {"calories": 815.0, "total_fat": 19.1, "saturated_fat": 10.2, "protein": 2.96, "carbohydrates": 3.66, "sugar": 3.67, "fiber": 0.0, "sodium": 72.0}, "confidence": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "crust": {"calories": 2020.0, "total_fat": 22.4, "saturated_fat": 4.72, "protein": 6.08, "carbohydrates": 64.5, "sugar": 26.3, "fiber": 2.7, "sodium": 503.0}, "grey": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "slash": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "100gs": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "200ml": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "bananas": {"calories": 346.0, "total_fat": 1.81, "saturated_fat": 0.698, "protein": 3.89, "carbohydrates": 88.3, "sugar": 47.3, "fiber": 9.9, "sodium": 3.0}, "paneer": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "soup": {"calories": 37.0, "total_fat": 0.55, "saturated_fat": 0.17, "protein": 2.53, "carbohydrates": 5.71, "sugar": 0.37, "fiber": 0.8, "sodium": 181.0}, "chips": {"calories": 2170.0, "total_fat": 33.6, "saturated_fat": 29.0, "protein": 2.3, "carbohydrates": 58.4, "sugar": 35.3, "fiber": 7.7, "sodium": 6.0}, "grill": {"calories": 121.0, "total_fat": 0.58, "saturated_fat": 0.064, "protein": 3.28, "carbohydrates": 4.44, "sugar": 2.26, "fiber": 2.2, "sodium": 11.0}, "salmon": {"calories": 902.0, "total_fat": 100.0, "saturated_fat": 19.9, "protein": 0.0, "carbohydrates": 0.0, "sugar": 0.0, "fiber": 0.0, "sodium": 0.0}, "rice": {"calories": 416.0, "total_fat": 5.0, "saturated_fat": 0.0, "protein": 10.0, "carbohydrates": 82.6, "sugar": 0.0, "fiber": 0.0, "sodium": 233.0}, "broccoli": {"calories": 31.0, "total_fat": 0.34, "saturated_fat": 0.039, "protein": 2.57, "carbohydrates": 3.8, "sugar": 1.4, "fiber": 2.4, "sodium": 36.0}, "avocado": {"calories": 884.0, "total_fat": 100.0, "saturated_fat": 11.6, "protein": 0.0, "carbohydrates": 0.0, "sugar": 0.0, "fiber": 0.0, "sodium": 0.0}, "spaghetti": {"calories": 170.0, "total_fat": 8.52, "saturated_fat": 3.1, "protein": 7.84, "carbohydrates": 15.5, "sugar": 2.03, "fiber": 1.5, "sodium": 351.0}, "fry": {"calories": 218.0, "total_fat": 2.85, "saturated_fat": 0.453, "protein": 5.7, "carbohydrates": 44.6, "sugar": 0.88, "fiber": 6.3, "sodium": 45.0}, "bacon": {"calories": 309.0, "total_fat": 29.5, "saturated_fat": 4.62, "protein": 11.7, "carbohydrates": 5.31, "sugar": 0.0, "fiber": 2.6, "sodium": 1460.0}, "yolks": {"calories": 2800.0, "total_fat": 59.1, "saturated_fat": 20.3, "protein": 33.6, "carbohydrates": 0.66, "sugar": 0.23, "fiber": 0.0, "sodium": 149.0}, "parmesan": {"calories": 1760.0, "total_fat": 27.8, "saturated_fat": 15.4, "protein": 28.4, "carbohydrates": 13.9, "sugar": 0.07, "fiber": 0.0, "sodium": 1800.0}, "season": {"calories": 465.0, "total_fat": 18.3, "saturated_fat": 5.25, "protein": 10.8, "carbohydrates": 63.5, "sugar": 4.41, "fiber": 5.0, "sodium": 1330.0}, "milk": {"calories": 446.0, "total_fat": 13.8, "saturated_fat": 2.91, "protein": 7.6, "carbohydrates": 71.7, "sugar": 10.3, "fiber": 3.4, "sodium": 687.0}, "banana": {"calories": 346.0, "total_fat": 1.81, "saturated_fat": 0.698, "protein": 3.89, "carbohydrates": 88.3, "sugar": 47.3, "fiber": 9.9, "sodium": 3.0}, "chicken": {"calories": 158.0, "total_fat": 17.6, "saturated_fat": 3.23, "protein": 18.0, "carbohydrates": 4.05, "sugar": 0.47, "fiber": 0.3, "sodium": 722.0}, "flour": {"calories": 357.0, "total_fat": 0.1, "saturated_fat": 0.019, "protein": 0.3, "carbohydrates": 88.2, "sugar": 0.0, "fiber": 3.4, "sodium": 2.0}, "corn": {"calories": 0.0, "total_fat": 0.0, "saturated_fat": 13.4, "protein": 0.0, "carbohydrates": 0.0, "sugar": 0.0, "fiber": 0.0, "sodium": 0.0}, "end": {"calories": 1440.0, "total_fat": 31.3, "saturated_fat": 12.9, "protein": 15.8, "carbohydrates": 0.0, "sugar": 0.0, "fiber": 0.0, "sodium": 54.0}, "lentils": {"calories": 351.0, "total_fat": 1.92, "saturated_fat": 0.0, "protein": 23.6, "carbohydrates": 62.2, "sugar": 0.0, "fiber": 0.0, "sodium": 0.0}, "broth": {"calories": 67.0, "total_fat": 0.6, "saturated_fat": 0.133, "protein": 2.0, "carbohydrates": 0.4, "sugar": 0.09, "fiber": 0.0, "sodium": 200.0}, "carrots": {"calories": 341.0, "total_fat": 1.49, "saturated_fat": 0.256, "protein": 8.1, "carbohydrates": 79.6, "sugar": 38.8, "fiber": 23.6, "sodium": 275.0}, "stalks": {"calories": 28.0, "total_fat": 0.35, "saturated_fat": 0.054, "protein": 2.98, "carbohydrates": 5.24, "sugar": 0.0, "fiber": 0.0, "sodium": 27.0}, "garlic": {"calories": 597.0, "total_fat": 0.38, "saturated_fat": 0.0, "protein": 6.62, "carbohydrates": 28.2, "sugar": 0.0, "fiber": 2.7, "sodium": 0.0}, "labc\u00fc": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "sciences": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "hotel": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "life": {"calories": 374.0, "total_fat": 4.1, "saturated_fat": 0.77, "protein": 9.14, "carbohydrates": 79.0, "sugar": 25.2, "fiber": 6.3, "sodium": 463.0}, "heaven": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "tables": {"calories": 0.0, "total_fat": 0.0, "saturated_fat": 0.0, "protein": 0.0, "carbohydrates": 0.0, "sugar": 0.0, "fiber": 0.0, "sodium": 38800.0}, "juice": {"calories": 480.0, "total_fat": 1.41, "saturated_fat": 0.705, "protein": 1.41, "carbohydrates": 24.1, "sugar": 20.6, "fiber": 0.1, "sodium": 42.0}, "honey": {"calories": 1270.0, "total_fat": 0.0, "saturated_fat": 0.0, "protein": 0.3, "carbohydrates": 82.4, "sugar": 82.1, "fiber": 0.2, "sodium": 4.0}, "salary": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "and\u967d\u5316": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "spots": {"calories": 123.0, "total_fat": 4.9, "saturated_fat": 1.45, "protein": 18.5, "carbohydrates": 0.0, "sugar": 0.0, "fiber": 0.0, "sodium": 29.0}, "surgeon": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "water": {"calories": 19.0, "total_fat": 0.2, "saturated_fat": 0.0, "protein": 2.6, "carbohydrates": 3.13, "sugar": 0.0, "fiber": 2.1, "sodium": 113.0}, "namak": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "haldi": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "mirch": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "taziyya": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "washedlaughter": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "gravy": {"calories": 367.0, "total_fat": 9.61, "saturated_fat": 3.32, "protein": 10.7, "carbohydrates": 59.4, "sugar": 0.0, "fiber": 2.0, "sodium": 4840.0}, "masala": {"calories": 238.0, "total_fat": 0.88, "saturated_fat": 0.18, "protein": 3.3, "carbohydrates": 10.5, "sugar": 2.3, "fiber": 2.6, "sodium": 92.0}, "mix": {"calories": 363.0, "total_fat": 1.62, "saturated_fat": 0.395, "protein": 10.6, "carbohydrates": 76.4, "sugar": 3.83, "fiber": 3.1, "sodium": 1080.0}, "stirring": {"calories": 162.0, "total_fat": 0.35, "saturated_fat": 0.032, "protein": 3.45, "carbohydrates": 7.68, "sugar": 0.3, "fiber": 3.6, "sodium": 5.0}, "mixture": {"calories": 131.0, "total_fat": 5.6, "saturated_fat": 1.05, "protein": 13.1, "carbohydrates": 7.5, "sugar": 7.5, "fiber": 0.0, "sodium": 162.0}, "bags": {"calories": 1460.0, "total_fat": 2.01, "saturated_fat": 0.405, "protein": 11.2, "carbohydrates": 81.0, "sugar": 0.81, "fiber": 11.8, "sodium": 4.0}, "cruiser": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "slits": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "box": {"calories": 686.0, "total_fat": 4.99, "saturated_fat": 1.64, "protein": 6.68, "carbohydrates": 23.1, "sugar": 1.57, "fiber": 1.2, "sodium": 460.0}, "white\uad7fas": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "seed": {"calories": 168.0, "total_fat": 2.3, "saturated_fat": 0.621, "protein": 5.3, "carbohydrates": 32.0, "sugar": 0.0, "fiber": 4.8, "sodium": 23.0}, "cents": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "settees": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "patda": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "funds": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "ma'am": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "information": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "distance": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "bhaid": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "rahira": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "grains": {"calories": 338.0, "total_fat": 1.63, "saturated_fat": 0.197, "protein": 10.3, "carbohydrates": 75.9, "sugar": 0.98, "fiber": 15.1, "sodium": 2.0}, "children": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "planets": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "inaal": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "series": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "two\u00e8resachat": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "earth": {"calories": 386.0, "total_fat": 4.9, "saturated_fat": 0.919, "protein": 7.5, "carbohydrates": 78.1, "sugar": 0.12, "fiber": 0.5, "sodium": 7.0}, "amount": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "mountains": {"calories": 67.0, "total_fat": 0.1, "saturated_fat": 0.022, "protein": 1.34, "carbohydrates": 16.3, "sugar": 0.31, "fiber": 2.5, "sodium": 13.0}, "dawns": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "price": {"calories": 130, "total_fat": 0.3, "saturated_fat": 0.08, "protein": 2.7, "carbohydrates": 28.2, "sugar": 0.05, "fiber": 0.4, "sodium": 1}, "thunder": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "parts": {"calories": 1060.0, "total_fat": 15.9, "saturated_fat": 10.1, "protein": 24.3, "carbohydrates": 2.77, "sugar": 1.13, "fiber": 0.0, "sodium": 619.0}, "rockets": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "levels": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "forest": {"calories": 631.0, "total_fat": 2.53, "saturated_fat": 0.626, "protein": 9.12, "carbohydrates": 22.9, "sugar": 3.54, "fiber": 1.3, "sodium": 396.0}, "number": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "doctors": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "fcan": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "frozan": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "production": {"calories": 102.0, "total_fat": 0.3, "saturated_fat": 0.041, "protein": 1.2, "carbohydrates": 5.31, "sugar": 3.56, "fiber": 1.5, "sodium": 474.0}, "threshold": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "cutlets": {"calories": 447.0, "total_fat": 2.07, "saturated_fat": 0.805, "protein": 22.1, "carbohydrates": 0.0, "sugar": 0.0, "fiber": 0.0, "sodium": 86.0}, "layer": {"calories": 307.0, "total_fat": 13.2, "saturated_fat": 2.94, "protein": 5.88, "carbohydrates": 41.2, "sugar": 5.88, "fiber": 1.2, "sodium": 1060.0}, "stove": {"calories": 381.0, "total_fat": 4.1, "saturated_fat": 0.8, "protein": 12.6, "carbohydrates": 73.1, "sugar": 10.1, "fiber": 2.5, "sodium": 1530.0}, "minutes.anch": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}, "seeds": {"calories": 168.0, "total_fat": 2.3, "saturated_fat": 0.621, "protein": 5.3, "carbohydrates": 32.0, "sugar": 0.0, "fiber": 4.8, "sodium": 23.0}, "cook": {"calories": 83.0, "total_fat": 0.24, "saturated_fat": 0.042, "protein": 3.08, "carbohydrates": 18.6, "sugar": 0.1, "fiber": 4.5, "sodium": 5.0}, "gas": {"calories": 150, "total_fat": 5, "saturated_fat": 1.5, "protein": 5, "carbohydrates": 20, "sugar": 3, "fiber": 2, "sodium": 100}}
|
speech_module/__pycache__/transcriber1.cpython-310.pyc
CHANGED
|
Binary files a/speech_module/__pycache__/transcriber1.cpython-310.pyc and b/speech_module/__pycache__/transcriber1.cpython-310.pyc differ
|
|
|
speech_module/__pycache__/transcriber1.cpython-313.pyc
CHANGED
|
Binary files a/speech_module/__pycache__/transcriber1.cpython-313.pyc and b/speech_module/__pycache__/transcriber1.cpython-313.pyc differ
|
|
|
speech_module/transcriber.py
CHANGED
|
@@ -78,10 +78,15 @@ class WhisperTranscriber:
|
|
| 78 |
try:
|
| 79 |
model = self._load()
|
| 80 |
|
| 81 |
-
# Build decode options
|
| 82 |
decode_kwargs = {
|
| 83 |
"fp16": False,
|
| 84 |
"task": task,
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 85 |
}
|
| 86 |
if language:
|
| 87 |
decode_kwargs["language"] = language
|
|
|
|
| 78 |
try:
|
| 79 |
model = self._load()
|
| 80 |
|
| 81 |
+
# Build decode options with anti-hallucination settings
|
| 82 |
decode_kwargs = {
|
| 83 |
"fp16": False,
|
| 84 |
"task": task,
|
| 85 |
+
"temperature": 0.0,
|
| 86 |
+
"condition_on_previous_text": False,
|
| 87 |
+
"initial_prompt": "This is a cooking recipe with ingredients and quantities.",
|
| 88 |
+
"suppress_tokens": "-1",
|
| 89 |
+
"without_timestamps": True,
|
| 90 |
}
|
| 91 |
if language:
|
| 92 |
decode_kwargs["language"] = language
|
speech_module/transcriber1.py
CHANGED
|
@@ -78,10 +78,15 @@ class WhisperTranscriber:
|
|
| 78 |
try:
|
| 79 |
model = self._load()
|
| 80 |
|
| 81 |
-
# Build decode options
|
| 82 |
decode_kwargs = {
|
| 83 |
"fp16": False,
|
| 84 |
"task": task,
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 85 |
}
|
| 86 |
if language:
|
| 87 |
decode_kwargs["language"] = language
|
|
|
|
| 78 |
try:
|
| 79 |
model = self._load()
|
| 80 |
|
| 81 |
+
# Build decode options with anti-hallucination settings
|
| 82 |
decode_kwargs = {
|
| 83 |
"fp16": False,
|
| 84 |
"task": task,
|
| 85 |
+
"temperature": 0.0,
|
| 86 |
+
"condition_on_previous_text": False,
|
| 87 |
+
"initial_prompt": "This is a cooking recipe with ingredients and quantities.",
|
| 88 |
+
"suppress_tokens": "-1",
|
| 89 |
+
"without_timestamps": True,
|
| 90 |
}
|
| 91 |
if language:
|
| 92 |
decode_kwargs["language"] = language
|
test_hindi_stt.py
CHANGED
|
@@ -3,7 +3,8 @@ test_hindi_stt.py — Test Hindi speech-to-text support
|
|
| 3 |
"""
|
| 4 |
import sys
|
| 5 |
from pathlib import Path
|
| 6 |
-
|
|
|
|
| 7 |
|
| 8 |
from utils.logger import logger
|
| 9 |
import inspect
|
|
@@ -13,127 +14,158 @@ def test_hindi_stt_fixed():
|
|
| 13 |
logger.info("=" * 70)
|
| 14 |
logger.info("TESTING: Hindi Speech-to-Text Support")
|
| 15 |
logger.info("=" * 70)
|
| 16 |
-
|
| 17 |
# Test 1: Check transcriber1.py has Hindi support
|
| 18 |
logger.info("\n1. Checking transcriber1.py for Hindi support parameters...")
|
| 19 |
try:
|
| 20 |
from speech_module.transcriber1 import SpeechTranscriber, WhisperTranscriber
|
| 21 |
-
|
| 22 |
# Check SpeechTranscriber.transcribe signature
|
| 23 |
sig = inspect.signature(SpeechTranscriber.transcribe)
|
| 24 |
params = list(sig.parameters.keys())
|
| 25 |
-
|
| 26 |
logger.info(f" SpeechTranscriber.transcribe() parameters: {params}")
|
| 27 |
-
|
| 28 |
if 'language' in params and 'task' in params:
|
| 29 |
-
logger.info("
|
| 30 |
else:
|
| 31 |
-
logger.error("
|
| 32 |
return False
|
| 33 |
-
|
| 34 |
# Check WhisperTranscriber.transcribe signature
|
| 35 |
sig_whisper = inspect.signature(WhisperTranscriber.transcribe)
|
| 36 |
params_whisper = list(sig_whisper.parameters.keys())
|
| 37 |
-
|
| 38 |
logger.info(f" WhisperTranscriber.transcribe() parameters: {params_whisper}")
|
| 39 |
-
|
| 40 |
if 'language' in params_whisper and 'task' in params_whisper:
|
| 41 |
-
logger.info("
|
| 42 |
else:
|
| 43 |
-
logger.error("
|
| 44 |
return False
|
| 45 |
-
|
| 46 |
except Exception as e:
|
| 47 |
-
logger.error(f"
|
| 48 |
return False
|
| 49 |
-
|
| 50 |
# Test 2: Check __init__.py imports from transcriber1
|
| 51 |
logger.info("\n2. Checking speech_module/__init__.py imports...")
|
| 52 |
try:
|
| 53 |
-
|
|
|
|
| 54 |
init_content = f.read()
|
| 55 |
-
|
| 56 |
if "transcriber1" in init_content:
|
| 57 |
-
logger.info("
|
| 58 |
else:
|
| 59 |
-
logger.error("
|
| 60 |
return False
|
| 61 |
-
|
| 62 |
except Exception as e:
|
| 63 |
-
logger.error(f"
|
| 64 |
return False
|
| 65 |
-
|
| 66 |
-
# Test 3: Check
|
| 67 |
-
logger.info("\n3. Checking
|
| 68 |
try:
|
| 69 |
-
|
|
|
|
| 70 |
app_content = f.read()
|
| 71 |
-
|
| 72 |
checks = {
|
| 73 |
-
"transcribe_audio function has language parameter": '
|
| 74 |
-
"
|
| 75 |
-
"
|
| 76 |
-
"
|
| 77 |
-
"
|
| 78 |
-
"
|
| 79 |
}
|
| 80 |
-
|
| 81 |
all_passed = True
|
| 82 |
for check_name, result in checks.items():
|
| 83 |
-
status = "
|
| 84 |
logger.info(f" {status} {check_name}")
|
| 85 |
if not result:
|
| 86 |
all_passed = False
|
| 87 |
-
|
| 88 |
if not all_passed:
|
| 89 |
return False
|
| 90 |
-
|
| 91 |
except Exception as e:
|
| 92 |
-
logger.error(f"
|
| 93 |
return False
|
| 94 |
-
|
| 95 |
# Test 4: Import and verify the updated modules work
|
| 96 |
logger.info("\n4. Testing import and initialization...")
|
| 97 |
try:
|
| 98 |
from speech_module import SpeechTranscriber
|
| 99 |
-
logger.info("
|
| 100 |
-
|
| 101 |
# Try to instantiate
|
| 102 |
transcriber = SpeechTranscriber()
|
| 103 |
-
logger.info("
|
| 104 |
-
|
| 105 |
# Check method exists and has right signature
|
| 106 |
method = getattr(transcriber, 'transcribe')
|
| 107 |
sig = inspect.signature(method)
|
| 108 |
if 'language' in sig.parameters:
|
| 109 |
-
logger.info("
|
| 110 |
else:
|
| 111 |
-
logger.error("
|
| 112 |
return False
|
| 113 |
-
|
| 114 |
except Exception as e:
|
| 115 |
-
logger.error(f"
|
| 116 |
import traceback
|
| 117 |
traceback.print_exc()
|
| 118 |
return False
|
| 119 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 120 |
return True
|
| 121 |
|
| 122 |
if __name__ == "__main__":
|
| 123 |
-
logger.info("\n
|
| 124 |
logger.info("This test verifies that Hindi speech-to-text support is properly configured.")
|
| 125 |
-
|
| 126 |
success = test_hindi_stt_fixed()
|
| 127 |
-
|
| 128 |
logger.info("\n" + "=" * 70)
|
| 129 |
if success:
|
| 130 |
-
logger.info("
|
| 131 |
logger.info("\nYou can now:")
|
| 132 |
logger.info(" 1. Upload/record Hindi audio")
|
| 133 |
-
logger.info(" 2. Select 'Hindi
|
| 134 |
-
logger.info(" 3. Click 'Transcribe & analyze'")
|
| 135 |
logger.info(" 4. Whisper will transcribe and translate to English automatically")
|
| 136 |
else:
|
| 137 |
-
logger.error("
|
| 138 |
sys.exit(1)
|
| 139 |
logger.info("=" * 70)
|
|
|
|
| 3 |
"""
|
| 4 |
import sys
|
| 5 |
from pathlib import Path
|
| 6 |
+
SCRIPT_DIR = Path(__file__).parent
|
| 7 |
+
sys.path.insert(0, str(SCRIPT_DIR))
|
| 8 |
|
| 9 |
from utils.logger import logger
|
| 10 |
import inspect
|
|
|
|
| 14 |
logger.info("=" * 70)
|
| 15 |
logger.info("TESTING: Hindi Speech-to-Text Support")
|
| 16 |
logger.info("=" * 70)
|
| 17 |
+
|
| 18 |
# Test 1: Check transcriber1.py has Hindi support
|
| 19 |
logger.info("\n1. Checking transcriber1.py for Hindi support parameters...")
|
| 20 |
try:
|
| 21 |
from speech_module.transcriber1 import SpeechTranscriber, WhisperTranscriber
|
| 22 |
+
|
| 23 |
# Check SpeechTranscriber.transcribe signature
|
| 24 |
sig = inspect.signature(SpeechTranscriber.transcribe)
|
| 25 |
params = list(sig.parameters.keys())
|
| 26 |
+
|
| 27 |
logger.info(f" SpeechTranscriber.transcribe() parameters: {params}")
|
| 28 |
+
|
| 29 |
if 'language' in params and 'task' in params:
|
| 30 |
+
logger.info(" [PASS] FIXED: language and task parameters present")
|
| 31 |
else:
|
| 32 |
+
logger.error(" [FAIL] FAILED: language or task parameters missing")
|
| 33 |
return False
|
| 34 |
+
|
| 35 |
# Check WhisperTranscriber.transcribe signature
|
| 36 |
sig_whisper = inspect.signature(WhisperTranscriber.transcribe)
|
| 37 |
params_whisper = list(sig_whisper.parameters.keys())
|
| 38 |
+
|
| 39 |
logger.info(f" WhisperTranscriber.transcribe() parameters: {params_whisper}")
|
| 40 |
+
|
| 41 |
if 'language' in params_whisper and 'task' in params_whisper:
|
| 42 |
+
logger.info(" [PASS] FIXED: WhisperTranscriber has Hindi support")
|
| 43 |
else:
|
| 44 |
+
logger.error(" [FAIL] FAILED: WhisperTranscriber missing parameters")
|
| 45 |
return False
|
| 46 |
+
|
| 47 |
except Exception as e:
|
| 48 |
+
logger.error(f" [FAIL] FAILED: {e}")
|
| 49 |
return False
|
| 50 |
+
|
| 51 |
# Test 2: Check __init__.py imports from transcriber1
|
| 52 |
logger.info("\n2. Checking speech_module/__init__.py imports...")
|
| 53 |
try:
|
| 54 |
+
init_path = SCRIPT_DIR / "speech_module" / "__init__.py"
|
| 55 |
+
with open(init_path, "r") as f:
|
| 56 |
init_content = f.read()
|
| 57 |
+
|
| 58 |
if "transcriber1" in init_content:
|
| 59 |
+
logger.info(" [PASS] __init__.py imports from transcriber1.py")
|
| 60 |
else:
|
| 61 |
+
logger.error(" [FAIL] __init__.py does not import from transcriber1.py")
|
| 62 |
return False
|
| 63 |
+
|
| 64 |
except Exception as e:
|
| 65 |
+
logger.error(f" [FAIL] FAILED: {e}")
|
| 66 |
return False
|
| 67 |
+
|
| 68 |
+
# Test 3: Check app.py has language selection (Hindi audio tab)
|
| 69 |
+
logger.info("\n3. Checking app.py for Hindi language support...")
|
| 70 |
try:
|
| 71 |
+
app_path = SCRIPT_DIR / "app.py"
|
| 72 |
+
with open(app_path, "r", encoding="utf-8") as f:
|
| 73 |
app_content = f.read()
|
| 74 |
+
|
| 75 |
checks = {
|
| 76 |
+
"transcribe_audio function has language parameter": 'language: str = None' in app_content,
|
| 77 |
+
"analyze_hindi_audio function exists": 'def analyze_hindi_audio(audio_path):' in app_content,
|
| 78 |
+
"Hindi audio tab exists": 'Hindi audio' in app_content,
|
| 79 |
+
"task=translate for Hindi": 'task="translate"' in app_content,
|
| 80 |
+
"language=hi for Hindi": 'language="hi"' in app_content,
|
| 81 |
+
"analyze_english_audio function exists": 'def analyze_english_audio(audio_path):' in app_content,
|
| 82 |
}
|
| 83 |
+
|
| 84 |
all_passed = True
|
| 85 |
for check_name, result in checks.items():
|
| 86 |
+
status = "[PASS]" if result else "[FAIL]"
|
| 87 |
logger.info(f" {status} {check_name}")
|
| 88 |
if not result:
|
| 89 |
all_passed = False
|
| 90 |
+
|
| 91 |
if not all_passed:
|
| 92 |
return False
|
| 93 |
+
|
| 94 |
except Exception as e:
|
| 95 |
+
logger.error(f" [FAIL] FAILED: {e}")
|
| 96 |
return False
|
| 97 |
+
|
| 98 |
# Test 4: Import and verify the updated modules work
|
| 99 |
logger.info("\n4. Testing import and initialization...")
|
| 100 |
try:
|
| 101 |
from speech_module import SpeechTranscriber
|
| 102 |
+
logger.info(" [PASS] SpeechTranscriber imported successfully")
|
| 103 |
+
|
| 104 |
# Try to instantiate
|
| 105 |
transcriber = SpeechTranscriber()
|
| 106 |
+
logger.info(" [PASS] SpeechTranscriber instantiated successfully")
|
| 107 |
+
|
| 108 |
# Check method exists and has right signature
|
| 109 |
method = getattr(transcriber, 'transcribe')
|
| 110 |
sig = inspect.signature(method)
|
| 111 |
if 'language' in sig.parameters:
|
| 112 |
+
logger.info(" [PASS] transcribe method accepts language parameter")
|
| 113 |
else:
|
| 114 |
+
logger.error(" [FAIL] transcribe method missing language parameter")
|
| 115 |
return False
|
| 116 |
+
|
| 117 |
except Exception as e:
|
| 118 |
+
logger.error(f" [FAIL] FAILED: {e}")
|
| 119 |
import traceback
|
| 120 |
traceback.print_exc()
|
| 121 |
return False
|
| 122 |
+
|
| 123 |
+
# Test 5: Verify anti-hallucination parameters in transcriber1.py
|
| 124 |
+
logger.info("\n5. Checking anti-hallucination decode parameters...")
|
| 125 |
+
try:
|
| 126 |
+
t1_path = SCRIPT_DIR / "speech_module" / "transcriber1.py"
|
| 127 |
+
with open(t1_path, "r", encoding="utf-8") as f:
|
| 128 |
+
t1_content = f.read()
|
| 129 |
+
|
| 130 |
+
checks = {
|
| 131 |
+
"temperature=0.0 set": '"temperature": 0.0' in t1_content,
|
| 132 |
+
"condition_on_previous_text=False": '"condition_on_previous_text": False' in t1_content,
|
| 133 |
+
"initial_prompt set": '"initial_prompt"' in t1_content,
|
| 134 |
+
"without_timestamps=True": '"without_timestamps": True' in t1_content,
|
| 135 |
+
"suppress_tokens set": '"suppress_tokens"' in t1_content,
|
| 136 |
+
}
|
| 137 |
+
|
| 138 |
+
all_passed = True
|
| 139 |
+
for check_name, result in checks.items():
|
| 140 |
+
status = "[PASS]" if result else "[FAIL]"
|
| 141 |
+
logger.info(f" {status} {check_name}")
|
| 142 |
+
if not result:
|
| 143 |
+
all_passed = False
|
| 144 |
+
|
| 145 |
+
if not all_passed:
|
| 146 |
+
return False
|
| 147 |
+
|
| 148 |
+
except Exception as e:
|
| 149 |
+
logger.error(f" [FAIL] FAILED: {e}")
|
| 150 |
+
return False
|
| 151 |
+
|
| 152 |
return True
|
| 153 |
|
| 154 |
if __name__ == "__main__":
|
| 155 |
+
logger.info("\n[HINDI STT CONFIGURATION TEST]")
|
| 156 |
logger.info("This test verifies that Hindi speech-to-text support is properly configured.")
|
| 157 |
+
|
| 158 |
success = test_hindi_stt_fixed()
|
| 159 |
+
|
| 160 |
logger.info("\n" + "=" * 70)
|
| 161 |
if success:
|
| 162 |
+
logger.info("[PASS] ALL TESTS PASSED - Hindi STT support is now fully configured!")
|
| 163 |
logger.info("\nYou can now:")
|
| 164 |
logger.info(" 1. Upload/record Hindi audio")
|
| 165 |
+
logger.info(" 2. Select 'Hindi audio' tab")
|
| 166 |
+
logger.info(" 3. Click 'Transcribe Hindi & analyze'")
|
| 167 |
logger.info(" 4. Whisper will transcribe and translate to English automatically")
|
| 168 |
else:
|
| 169 |
+
logger.error("[FAIL] SOME TESTS FAILED - Please review the errors above")
|
| 170 |
sys.exit(1)
|
| 171 |
logger.info("=" * 70)
|
utils/__pycache__/config.cpython-310.pyc
CHANGED
|
Binary files a/utils/__pycache__/config.cpython-310.pyc and b/utils/__pycache__/config.cpython-310.pyc differ
|
|
|
utils/__pycache__/config.cpython-313.pyc
CHANGED
|
Binary files a/utils/__pycache__/config.cpython-313.pyc and b/utils/__pycache__/config.cpython-313.pyc differ
|
|
|
utils/config.py
CHANGED
|
@@ -19,7 +19,7 @@ MODELS_DIR.mkdir(exist_ok=True)
|
|
| 19 |
@dataclass
|
| 20 |
class SpeechConfig:
|
| 21 |
backend: str = "whisper"
|
| 22 |
-
whisper_model_size: str = "
|
| 23 |
whisper_language: str = "en"
|
| 24 |
whisper_device: str = "cpu"
|
| 25 |
wav2vec2_model: str = "facebook/wav2vec2-base-960h"
|
|
|
|
| 19 |
@dataclass
|
| 20 |
class SpeechConfig:
|
| 21 |
backend: str = "whisper"
|
| 22 |
+
whisper_model_size: str = "base" # base balances accuracy vs speed for Hindi translation
|
| 23 |
whisper_language: str = "en"
|
| 24 |
whisper_device: str = "cpu"
|
| 25 |
wav2vec2_model: str = "facebook/wav2vec2-base-960h"
|