המרת דיבור לטקסט באמצעות ה-API
בדף הזה נסביר איך לשלוח בקשת זיהוי דיבור ל-Cloud Speech-to-Text באמצעות ממשק REST והפקודה curl.
Cloud Speech-to-Text מאפשר לשלב בקלות את הטכנולוגיות של Google לזיהוי דיבור באפליקציות של מפתחים. אפשר לשלוח נתוני אודיו אל Cloud Speech-to-Text API, ואז הממשק יחזיר תמליל טקסט של קובץ האודיו הזה. מידע נוסף על השירות זמין במאמר היסודות של Cloud STT.
לפני שמתחילים
לפני ששולחים בקשה ל-Cloud Speech-to-Text API, צריך לבצע את הפעולות הבאות. פרטים נוספים מופיעים בדף לפני שמתחילים.
- מפעילים את Cloud Speech-to-Text בפרויקט ב- Google Cloud .
- מוודאים שהחיוב מופעל בשירות Cloud Speech-to-Text.
- מוודאים שיש את ההרשאות הנדרשות כדי להשלים את ההדרכה. אם יצרתם פרויקט חדש לצורך ההדרכה הזו, כבר יש לכם את ההרשאות הנדרשות.
-
התקינו את ה-CLI של Google Cloud. אחר כך, מאתחלים את ה-CLI של Google Cloud באמצעות הפקודה הבאה:
gcloud initאם אתם משתמשים בספק זהויות חיצוני (IdP), קודם אתם צריכים להיכנס ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.
- (אופציונלי) יוצרים קטגוריה חדשה ב-Google Cloud Storage כדי לאחסן את נתוני האודיו.
התפקידים הנדרשים
כדי לקבל את ההרשאות שנדרשות לתמלול דיבור לטקסט, צריך לבקש מהאדמין להקצות לכם את תפקיד ה-IAM Service Usage Consumer (roles/serviceusage.serviceUsageConsumer) בפרויקט.
כדי לקרוא הסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.
יכול להיות שאפשר לקבל את ההרשאות הנדרשות גם באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש.
שליחת בקשה לתמלול אודיו
עכשיו אפשר להשתמש ב-Cloud STT כדי לתמלל קובץ אודיו לטקסט. בדוגמת הקוד הבאה מוצג אופן השליחה של בקשת REST recognize אל Cloud Speech-to-Text API.
-
יוצרים קובץ בקשת JSON עם הטקסט הבא ושומרים אותו כקובץ טקסט פשוט
sync-request.json:{ "config": { "encoding":"FLAC", "sampleRateHertz": 16000, "languageCode": "en-US", "enableWordTimeOffsets": false }, "audio": { "uri":"gs://cloud-samples-tests/speech/brooklyn.flac" } }קטע הקוד הזה ב-JSON מציין שלקובץ האודיו יש פורמט קידוד FLAC, תדירות דגימה של 16,000Hz, ושהוא מאוחסן ב-Google Cloud Storage ב-URI הנתון. קובץ האודיו נגיש לכולם, כך שלא צריך פרטי כניסה לאימות כדי לגשת לקובץ.
-
משתמשים ב-
curlכדי לשלוח בקשתspeech:recognize, ומעבירים לה את שם הקובץ של בקשת ה-JSON שהגדרתם בשלב 1:בדוגמה של הפקודה
curlנעשה שימוש בפקודהgcloud auth print-access-tokenכדי לקבל טוקן אימות.curl -s -H "Content-Type: application/json" \ -H "Authorization: Bearer "$(gcloud auth print-access-token) \ https://speech.googleapis.com/v1/speech:recognize \ -d @sync-request.jsonשימו לב שכדי להעביר שם קובץ אל
curl, צריך להשתמש באפשרות-d(לציון "data") ולהוסיף את הסימן@לפני שם הקובץ. הקובץ הזה צריך להיות באותה ספרייה שבה מריצים את הפקודהcurl.אמורה להתקבל תגובה שדומה לזו:
{ "results": [ { "alternatives": [ { "transcript": "how old is the Brooklyn Bridge", "confidence": 0.98267895 } ] } ] }
כל הכבוד! שלחתם את הבקשה הראשונה שלכם ל-Cloud STT.
אם קיבלתם הודעת שגיאה או תגובה ריקה מ-Cloud STT, עיינו בשלבים לפתרון בעיות ולצמצום שגיאות.
הסרת המשאבים
כדי לא לצבור חיובים בחשבון Google Cloud על המשאבים שבהם השתמשתם בדף הזה, מבצעים את הפעולות הבאות.
- אם לא צריך את הפרויקט, אפשר למחוק אותו באמצעות Google Cloud console .
המאמרים הבאים
- מתרגלים תמלול של קובצי אודיו קצרים.
- איך מעבדים קובצי אודיו ארוכים באצווה לזיהוי דיבור
- איך לתמלל אודיו בסטרימינג, למשל ממיקרופון.
- כדי להתחיל להשתמש ב-Cloud STT בשפה הרצויה, אפשר להשתמש בספריית לקוח של Cloud STT.
- עוברים על אפליקציות לדוגמה.
- לשיפור הביצועים והדיוק, ולקבלת טיפים נוספים, אפשר לעיין במאמר בנושא שיטות מומלצות.