في # 252 ، أصلح @ angela97lin خطأ لم يتم fit
تم تكوينه بحيث لا يرفع الأخطاء (على وجه التحديد ، المعلمة raise_errors
افتراضية حاليًا على false). قامت العلاقات العامة الخاصة بها بتحديث اختبارات الوحدة لتعيين raise_errors
إلى true في كل مكالمة إلى automl fit
في الاختبارات.
كنت أرغب في إنشاء تذكرة لمناقشة هذا الأمر بمزيد من التفصيل. أنا في حيرة من أمري بشأن المعلمة raise_errors
. لماذا هو موجود؟ لماذا لا يتم تطبيقه إلا على automl fit
؟ إذا كانت معلمة ضرورية ، فهل هناك تصميم أفضل ، وخاصة التصميم الذي من شأنه أن يثبط مثل هذه الأخطاء؟ أشعر بالقلق من أننا إذا اعتمدنا على الفريق لتذكر تعيين raise_errors
على true في اختبارات الوحدة ، فقد نواجه مشكلات مماثلة مرة أخرى.
الأفكار: أعلم أن @ kmax12 مذكور باستخدام متغير بيئة لهذا الغرض . إذا كانت هذه المعلمة ضرورية ولكن مخاوف اختبار الوحدة الخاصة بي صحيحة ، فقد يكون هذا حلاً جيدًا. يمكننا أيضًا تحديث جميع الاختبارات لاستخدام أداة اختبار والتي تتأكد بطريقة ما من تعيين raise_errors
بشكل مناسب ، إما عبر env var ، أو تكوين عام آخر ، أو عن طريق تغليف طريقة automl fit
.
أعتقد أنك تثير الكثير من النقاط الصحيحة هنا! الافتراض / التخمين الخاص بي مع العلم raise_error
هو أنه في حالة فشل خط أنابيب واحد فقط ، قد لا يرغب المستخدم في فشل تشغيله التلقائي بالكامل (*). لذا ، بدلاً من ذلك ، (بهدوء) لا نرفع الخطأ وبدلاً من ذلك نضبط جميع الدرجات على NaN لخط الأنابيب هذا.
أوافق على أنه سيكون من السهل جدًا التخطي ، وتنسى تعيين هذه العلامة في الاختبارات الأحدث ، وتفويت أخطاء مثل هذه مرة أخرى ، وهذا يتطلب مزيدًا من المناقشة!
ظهر هذا في هجوم قابلية الاستخدام الأخير . كان القرار الذي توصلنا إليه هو الإبقاء على raise_errors
ولكن افتراضيًا هو "true".
@ angela97lin يعمل على العلاقات العامة لهذا: # 638
@ angela97lin هل يمكنك من فضلك نقل هذا إلى التقدم لأن لديك علاقات عامة مفتوحة لذلك؟
التعليق الأكثر فائدة
ظهر هذا في هجوم قابلية الاستخدام الأخير . كان القرار الذي توصلنا إليه هو الإبقاء على
raise_errors
ولكن افتراضيًا هو "true".