الصوت وتحويل الكلام إلى نص
الصوت وتحويل الكلام إلى نص
تستضيف Navvo محرّك تحويل الكلام إلى نص خاصاً بها — ارفع مقطعاً صوتياً قصيراً واستلم النص، بالإنجليزية أو العربية. هذه هي النقطة نفسها خلف البحث الصوتي في خريطة Navvo ومحادثات Atlas دون استخدام اليدين؛ ازوجها مع POST /ai/atlas لبناء مساعد صوتي كامل.
model يقرأ دائماً "navvo-ai". المحرّكات التحتية تفاصيل تنفيذ لدى Navvo وقد تتغير دون إشعار.POST /ai/transcribe
تحويل كلام إلى نص عبر رفع صوت multipart. أرسل المقطع كجزء الملف في الطلب؛ تُقبل صيغ الصوت webm وogg وmp4/m4a (يعمل blob من MediaRecorder في المتصفح كما هو).
معاملات الاستعلام
en أو ar أو auto (الافتراضي). مع auto تُكتشف اللغة من الصوت.curl -s -X POST "https://navvo.io/api/v1/ai/transcribe?language=auto" \
-H "x-api-key: $NAVVO_API_KEY" \
-F "file=@clip.webm;type=audio/webm"
الاستجابة
{ "text": "أقرب صيدلية مفتوحة الآن", "language": "ar", "unavailable": false }
| الحقل | النوع | ملاحظات |
|---|---|---|
text | string | النص المُفرَّغ (سلسلة فارغة عندما لا يُتعرَّف على شيء) |
language | string | null | اللغة المكتشفة/المستخدمة، عند توفرها |
unavailable | boolean | تكون true عندما يتعذّر الوصول لمحرّك الكلام أو يكون المقطع فارغاً — تحقّق منها دائماً قبل استخدام text |
أبقِ المقاطع قصيرة (عبارة بحث منطوقة، أمر)؛ تنتهي مهلة الطلبات بعد ~20 ثانية من المعالجة. الرفع دون جزء ملف يعيد 400.
MediaRecorder بصيغة (audio/webm)، ثم POST /ai/transcribe، ثم مرّر text إلى GET /search أو POST /ai/atlas للحصول على إجراء خريطة مُهيكل.مساعدات الذكاء الاصطناعي المباشرة
مساعدان صغيران بعقد حتمي يستخدمهما تطبيق خرائط Navvo نفسه. يعيد كلاهما مغلّف الذكاء الاصطناعي المحايد القياسي — { model: "navvo-ai", unavailable, purpose, content } — حيث content هو نص ردّ النموذج.
POST /ai/search-understanding
يحوّل استعلام أماكن نصياً حراً إلى خطة استعلام مُهيكلة (مرشّحات، تلميحات تصنيف، لغة، إلحاح) لتجربة بحث أذكى.
curl -s -X POST "https://navvo.io/api/v1/ai/search-understanding" \
-H "x-api-key: $NAVVO_API_KEY" -H "content-type: application/json" \
-d '{ "query": "quiet cafe with wifi near Abdoun open now" }'
→ { "model": "navvo-ai", "unavailable": false, "purpose": "search_understanding", "content": "{ \"filters\": [\"wifi\"], \"categoryHints\": [\"cafe\"], \"locale\": \"en\", \"urgency\": \"now\" }" }
content هو سلسلة نصية بصيغة JSON صارمة — حلّلها من جهة العميل، وارجع إلى البحث العادي عندما تكون unavailable بقيمة true.
POST /ai/route-labels
يلخّص استجابة توجيه خام إلى تسمية قصيرة + نصيحة بلغة بشرية — الكتلة نفسها التي تُرفقها POST /routing/route تلقائياً.
| الحقل | النوع | ملاحظات |
|---|---|---|
payload | object | مطلوب — مغلّف استجابة التوجيه الخام الذي حصلت عليه من /routing/route أو /routing/plan |
→ { "model": "navvo-ai", "purpose": "route_labels", "content": "…", "parsed": { "label": "Fast city route", "tip": "Light traffic, mostly highways" } }
parsed هو الاستخلاص المُهيكل بأفضل جهد — يكون null عندما يتعذّر تحليل ردّ النموذج. فضّل parsed وعامل content كنص خام احتياطي.