Prasanna18 commited on
Commit
ae5c6f8
1 Parent(s): 66754cf

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +22 -12
app.py CHANGED
@@ -85,17 +85,29 @@ if st.session_state['generated']:
85
  message(st.session_state["generated"][i], key=str(i), avatar_style="fun-emoji")
86
 
87
 
88
- API_URL = "https://api-inference.huggingface.co/models/Prasanna18/indian-food-classification"
89
- HEADERS = {"key"}
 
90
 
91
- def query_image_classification(image_bytes):
92
- try:
93
- response = requests.post(API_URL, headers=HEADERS, data=image_bytes)
94
- result = response.json()
95
- return result
96
- except Exception as e:
97
- st.error(f"An error occurred during image classification: {str(e)}")
98
- return None
 
 
 
 
 
 
 
 
 
 
 
99
 
100
  if image_upload:
101
  image_bytes = image_upload.read()
@@ -116,8 +128,6 @@ if image_upload:
116
  st.error("Invalid classification result format. Missing 'label' key.")
117
  else:
118
  st.error("Invalid classification result format or empty result list.")
119
- else:
120
- st.error("No classification result received.")
121
 
122
 
123
  import pydeck as pdk
 
85
  message(st.session_state["generated"][i], key=str(i), avatar_style="fun-emoji")
86
 
87
 
88
+ import requests
89
+ import streamlit as st
90
+ import time
91
 
92
+ API_URL = "https://api-inference.huggingface.co/models/Prasanna18/indian-food-classification"
93
+ HEADERS = {"Authorization": "Bearer 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"}
94
+
95
+ def query_image_classification(image_bytes, max_retries=3):
96
+ for retry in range(max_retries):
97
+ try:
98
+ response = requests.post(API_URL, headers=HEADERS, data=image_bytes)
99
+ response.raise_for_status() # Raise an error for non-2xx HTTP responses
100
+ result = response.json()
101
+ return result
102
+ except requests.exceptions.RequestException as e:
103
+ st.error(f"An error occurred during the API request: {str(e)}")
104
+ except ValueError as e:
105
+ st.error(f"An error occurred while processing the API response: {str(e)}")
106
+ if retry < max_retries - 1:
107
+ st.warning(f"Retrying request (attempt {retry + 1}/{max_retries})...")
108
+ time.sleep(1) # Wait for a moment before retrying
109
+ st.error("No classification result received after multiple retries.")
110
+ return None
111
 
112
  if image_upload:
113
  image_bytes = image_upload.read()
 
128
  st.error("Invalid classification result format. Missing 'label' key.")
129
  else:
130
  st.error("Invalid classification result format or empty result list.")
 
 
131
 
132
 
133
  import pydeck as pdk