Youcef Kias نشر 3 يوليو أرسل تقرير نشر 3 يوليو could you explain more about the error and how to fix it 1 اقتباس
0 محمد_عاطف نشر 3 يوليو أرسل تقرير نشر 3 يوليو يرجى تفعيل ال debug لمعرفة أين الخطأ وما هو . يجب إستبدال السطر التالي : app.run() بهذا السطر : app.run(debug=True) بعد ذلك يجب إغلاق المشروع وإعادة تشغيله وإرسال رسالة الخطأ التي تظهر لك مع أخر ملف قمت بتعديله. اقتباس
0 Youcef Kias نشر 3 يوليو الكاتب أرسل تقرير نشر 3 يوليو like this ERROR:app:Exception on / [GET] Traceback (most recent call last): File "C:\Users\youce\PyCharmMiscProject\venv\Lib\site-packages\flask\app.py", line 1511, in wsgi_app response = self.full_dispatch_request() ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\youce\PyCharmMiscProject\venv\Lib\site-packages\flask\app.py", line 920, in full_dispatch_request return self.finalize_request(rv) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\youce\PyCharmMiscProject\venv\Lib\site-packages\flask\app.py", line 939, in finalize_request response = self.make_response(rv) ^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\youce\PyCharmMiscProject\venv\Lib\site-packages\flask\app.py", line 1249, in make_response raise TypeError( TypeError: The view function did not return a valid response. The return type must be a string, dict, list, tuple with headers or status, Response instance, or WSGI callable, but it was a Predict. اقتباس
0 محمد_عاطف نشر 3 يوليو أرسل تقرير نشر 3 يوليو بتاريخ 3 دقائق مضت قال Youcef Kias: like this ERROR:app:Exception on / [GET] Traceback (most recent call last): File "C:\Users\youce\PyCharmMiscProject\venv\Lib\site-packages\flask\app.py", line 1511, in wsgi_app response = self.full_dispatch_request() ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\youce\PyCharmMiscProject\venv\Lib\site-packages\flask\app.py", line 920, in full_dispatch_request return self.finalize_request(rv) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\youce\PyCharmMiscProject\venv\Lib\site-packages\flask\app.py", line 939, in finalize_request response = self.make_response(rv) ^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\youce\PyCharmMiscProject\venv\Lib\site-packages\flask\app.py", line 1249, in make_response raise TypeError( TypeError: The view function did not return a valid response. The return type must be a string, dict, list, tuple with headers or status, Response instance, or WSGI callable, but it was a Predict. إذا الخطأ يخبرك أنه لم يتم إعادة respone صالح وصحيح حيث يجب على الرد أن يكون إما سلسلة نصية أو قاموس أو قائمة ولكنك قمت بإعادة كائن Predict . يرجى إرفاق ملف المشروع للإطلاع عليه ومساعدتك. اقتباس
0 محمد_عاطف نشر 3 يوليو أرسل تقرير نشر 3 يوليو بتاريخ 29 دقائق مضت قال Youcef Kias: app.py 2.21 kB · 1 تنزيل لاحظ المشكلة أنك قمت بوضع سطر 25 : @app.route('/') قبل الصنف Predict مباشرة وهذا خاطئ . وحيث أنك إستخدمت api.add_resource لتسجيل الأصناف. إذا المسارات التي يجب أن تذهب إليها هي /predict أو /health وليس المسار / . ولكن الصحيح هو إما حذف @app.route('/') أو إضافة مسار أساسي هكذا مثلا : from flask import Flask, jsonify from flask_restful import Api, Resource, reqparse import numpy as np import pandas as pd import joblib import tensorflow as tf app = Flask(__name__) api = Api(app) # تهيئة Flask-RESTful # تحميل النماذج والمحولات dl_model = tf.keras.models.load_model('models/dl_model.h5') rf = joblib.load('models/rf_model.joblib') scaler = joblib.load('models/scaler.joblib') # مستخرج السمات من النموذج العميق feature_layer = dl_model.get_layer(index=-2).output extractor = tf.keras.Model(inputs=dl_model.input, outputs=feature_layer) # تحضير محلل البيانات المطلوبة parser = reqparse.RequestParser() for feat in ['age', 'sex', 'cp', 'trestbps', 'chol', 'fbs', 'restecg', 'thalch', 'exang', 'oldpeak', 'slope', 'ca', 'thal']: parser.add_argument(feat, type=float, required=True, help=f"{feat} مطلوب") @app.route('/') def home(): return "Home use /predict or /health" class Predict(Resource): def get(self): args = parser.parse_args() df = pd.DataFrame([args]) X_scaled = scaler.transform(df.values) X_dl = extractor.predict(X_scaled) X_comb = np.hstack([X_scaled, X_dl]) y_pred = int(rf.predict(X_comb)[0]) y_proba = rf.predict_proba(X_comb)[0].tolist() # توليد التوصيات العلاجية recommendations = [] if y_pred >= 2: recommendations = [ "مراجعة طبيب قلب مختص", "إجراء رسم قلب وتخطيط مجدد", "متابعة مستمرة للضغط والكوليسترول" ] else: recommendations = [ "اتباع نظام غذائي قليل الدسم", "ممارسة الرياضة بانتظام", "متابعة سنوية فقط" ] return jsonify({ 'prediction': y_pred, 'probabilities': y_proba, 'recommendations': recommendations }) class Health(Resource): def get(self): return {'status': 'healthy'}, 200 api.add_resource(Predict, '/predict') # GET /predict api.add_resource(Health, '/health') # GET /health if __name__ == '__main__': app.run(debug=True) ويمكنك الذهاب إلى المسارات التالية الصحيحة : http://localhost:5000/predict http://localhost:5000/health اقتباس
0 Youcef Kias نشر 3 يوليو الكاتب أرسل تقرير نشر 3 يوليو I fix it, so what is you're opinion about it? try to build an api where I build an API that allows users (doctors and nurses) to enter patient data and obtain diagnoses or treatment recommendations اقتباس
السؤال
Youcef Kias
could you explain more about the error and how to fix it
6 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.