# 📡 وثائق API - Whisper Text Processor دليل شامل لاستخدام API معالج النصوص المتكامل ## 🌐 معلومات عامة ### Base URL ``` https://YOUR_USERNAME-whisper-text-processor.hf.space ``` ### Content-Type ``` application/json ``` ### Authentication لا يتطلب API مصادقة حالياً (قد يتغير في المستقبل) ## 📋 نقاط النهاية (Endpoints) ### 1. فحص حالة الخادم #### `GET /health` فحص حالة الخادم والتأكد من أن جميع المكونات تعمل بشكل صحيح. **المعاملات:** لا توجد **الاستجابة:** ```json { "status": "healthy", "message": "خادم معالج النصوص يعمل بشكل طبيعي", "processor_loaded": true } ``` **مثال:** ```bash curl -X GET "https://your-space.hf.space/health" ``` --- ### 2. تصحيح النصوص #### `POST /correct-text` تصحيح النص المدخل باستخدام قاموس مرجعي مبني من النصوص المرجعية. **المعاملات:** ```json { "text": "string", // النص المراد تصحيحه (مطلوب) "reference_texts": ["string"], // قائمة النصوص المرجعية (مطلوب) "max_distance": 3, // أقصى مسافة للتصحيح (اختياري) "threshold_freq": 1 // الحد الأدنى لتكرار الكلمة (اختياري) } ``` **الاستجابة:** ```json { "success": true, "message": "تم تصحيح النص بنجاح", "data": { "original_text": "يحتاز غشاء الطبل", "corrected_text": "يهتز غشاء الطبل", "corrections": [ { "original": "يحتاز", "corrected": "يهتز", "frequency": 4, "distance": 2 } ], "corrections_count": 1 } } ``` **مثال:** ```bash curl -X POST "https://your-space.hf.space/correct-text" \ -H "Content-Type: application/json" \ -d '{ "text": "يحتاز غشاء الطبل تنتقل عظيمات السماء", "reference_texts": [ "يهتز غشاء الطبل تنتقل عظيمات السمع الاهتزازات", "يهتز غشاء النافذة البيضية يهتز اللمف الخارجي" ], "max_distance": 3, "threshold_freq": 1 }' ``` --- ### 3. مقارنة النصوص #### `POST /compare-texts` مقارنة نصين وحساب معدلات الخطأ مع إظهار الاختلافات بصرياً. **المعاملات:** ```json { "reference_text": "string", // النص المرجعي (مطلوب) "transcribed_text": "string" // النص المستخرج (مطلوب) } ``` **الاستجابة:** ```json { "success": true, "message": "تم مقارنة النصوص بنجاح", "data": { "wer": 0.3, "cer": 0.076, "wer_percentage": "30.00%", "cer_percentage": "7.69%", "html_diff": "HTML مع الاختلافات المظللة", "reference_words": 10, "transcribed_words": 10, "word_differences": 0 } } ``` **مثال:** ```bash curl -X POST "https://your-space.hf.space/compare-texts" \ -H "Content-Type: application/json" \ -d '{ "reference_text": "يهتز غشاء الطبل تنتقل عظيمات السمع", "transcribed_text": "يحتاز غشاء الطبل تنتقل عظيمات السماء" }' ``` --- ### 4. معالجة الملفات الصوتية #### `POST /process-audio` معالجة شاملة للملف الصوتي تتضمن تحويل الصوت إلى نص، التصحيح، والمقارنة. **المعاملات (multipart/form-data):** - `audio_file`: ملف صوتي (مطلوب) - `reference_text`: النص المرجعي (مطلوب) - `reference_texts`: نصوص مرجعية إضافية كـ JSON string (اختياري) - `max_distance`: أقصى مسافة للتصحيح (اختياري، افتراضي: 3) - `threshold_freq`: الحد الأدنى لتكرار الكلمة (اختياري، افتراضي: 1) **الاستجابة:** ```json { "success": true, "message": "تم معالجة الملف الصوتي بنجاح", "data": { "audio_path": "/path/to/audio.wav", "reference_text": "النص المرجعي", "original_transcription": "النص المستخرج الأصلي", "corrected_transcription": "النص المصحح", "corrections": [...], "original_metrics": { "wer": 0.15, "cer": 0.08, "wer_percentage": "15.00%", "cer_percentage": "8.00%" }, "corrected_metrics": { "wer": 0.0, "cer": 0.0, "wer_percentage": "0.00%", "cer_percentage": "0.00%" }, "improvement": { "wer_improvement": 0.15, "cer_improvement": 0.08 }, "timestamps": [...] } } ``` **مثال:** ```bash curl -X POST "https://your-space.hf.space/process-audio" \ -F "audio_file=@audio.wav" \ -F "reference_text=يهتز غشاء الطبل تنتقل عظيمات السمع" \ -F "reference_texts=[\"نص إضافي 1\", \"نص إضافي 2\"]" \ -F "max_distance=3" \ -F "threshold_freq=1" ``` --- ### 5. إنشاء تقرير HTML #### `POST /generate-report` إنشاء تقرير HTML شامل يحتوي على جميع نتائج المعالجة مع تصميم تفاعلي. **المعاملات (multipart/form-data):** - `audio_file`: ملف صوتي (مطلوب) - `reference_text`: النص المرجعي (مطلوب) - `reference_texts`: نصوص مرجعية إضافية كـ JSON string (اختياري) **الاستجابة:** ```html