Sirisha335 commited on
Commit
9931cf1
·
verified ·
1 Parent(s): 6baf97c

Upload folder using huggingface_hub

Browse files
Files changed (3) hide show
  1. Dockerfile +1 -2
  2. app.py +7 -7
  3. requirements.txt +0 -5
Dockerfile CHANGED
@@ -2,5 +2,4 @@ FROM python:3.9-slim
2
  WORKDIR /app
3
  COPY . .
4
  RUN pip install --no-cache-dir -r requirements.txt
5
- # Update CMD to point to extraalearn_api instead of superkart_api
6
- CMD ["gunicorn", "-w", "4", "-b", "0.0.0.0:7860", "app:extraalearn_api"]
 
2
  WORKDIR /app
3
  COPY . .
4
  RUN pip install --no-cache-dir -r requirements.txt
5
+ CMD ["gunicorn", "-w", "4", "-b", "0.0.0.0:7860", "app:app"]
 
app.py CHANGED
@@ -3,8 +3,8 @@ import joblib
3
  import pandas as pd
4
  from flask import Flask, request, jsonify
5
 
6
- # Initialize Flask app for ExtraaLearn
7
- extraalearn_api = Flask(__name__)
8
 
9
  # Load the model
10
  model = joblib.load('Extraalearn.joblib')
@@ -19,11 +19,11 @@ EXPECTED_FEATURES = [
19
  'educational_channels_Yes', 'referral_Yes'
20
  ]
21
 
22
- @extraalearn_api.get('/')
23
  def home():
24
  return 'ExtraaLearn Lead Conversion API is Running'
25
 
26
- @extraalearn_api.post('/v1/predict')
27
  def predict():
28
  try:
29
  data = request.get_json()
@@ -46,10 +46,10 @@ def predict():
46
  p['referral_Yes'] = 1 if data.get('referral') == 'Yes' else 0
47
 
48
  df_final = pd.DataFrame([p])[EXPECTED_FEATURES]
49
- prediction_proba = model.predict_proba(df_final)[:, 1].tolist()[0] # Use predict_proba
50
- return jsonify({'Conversion_Probability': float(prediction_proba)}) # Changed key to Conversion_Probability
51
  except Exception as e:
52
  return jsonify({'error': str(e)}), 400
53
 
54
  if __name__ == '__main__':
55
- extraalearn_api.run(host='0.0.0.0', port=7860)
 
3
  import pandas as pd
4
  from flask import Flask, request, jsonify
5
 
6
+ # Initialize Flask app
7
+ app = Flask(__name__)
8
 
9
  # Load the model
10
  model = joblib.load('Extraalearn.joblib')
 
19
  'educational_channels_Yes', 'referral_Yes'
20
  ]
21
 
22
+ @app.get('/')
23
  def home():
24
  return 'ExtraaLearn Lead Conversion API is Running'
25
 
26
+ @app.post('/v1/predict')
27
  def predict():
28
  try:
29
  data = request.get_json()
 
46
  p['referral_Yes'] = 1 if data.get('referral') == 'Yes' else 0
47
 
48
  df_final = pd.DataFrame([p])[EXPECTED_FEATURES]
49
+ prediction_proba = model.predict_proba(df_final)[:, 1].tolist()[0]
50
+ return jsonify({'Conversion_Probability': float(prediction_proba)})
51
  except Exception as e:
52
  return jsonify({'error': str(e)}), 400
53
 
54
  if __name__ == '__main__':
55
+ app.run(host='0.0.0.0', port=7860)
requirements.txt CHANGED
@@ -1,14 +1,9 @@
1
- writefile backend_files/requirements.txt
2
  pandas==2.2.2
3
  numpy==2.0.2
4
  scikit-learn==1.6.1
5
  seaborn==0.13.2
6
  joblib==1.4.2
7
  xgboost==2.1.4
8
- joblib==1.4.2
9
- Werkzeug==2.2.2
10
  flask==2.2.2
11
  gunicorn==20.1.0
12
  requests==2.32.3
13
- uvicorn[standard]
14
- streamlit==1.43.2
 
 
1
  pandas==2.2.2
2
  numpy==2.0.2
3
  scikit-learn==1.6.1
4
  seaborn==0.13.2
5
  joblib==1.4.2
6
  xgboost==2.1.4
 
 
7
  flask==2.2.2
8
  gunicorn==20.1.0
9
  requests==2.32.3