תמלול דיבור לטקסט באמצעות ה-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 באמצעות המאגר המאוחד לניהול זהויות.
- (אופציונלי) יוצרים קטגוריה חדשה של 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,000 הרץ, ושהוא מאוחסן ב-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(לנתונים) ומוסיפים את הסימן@לפני שם הקובץ. הקובץ הזה צריך להיות באותה ספרייה שבה מריצים את הפקודה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.
- עוברים על אפליקציות לדוגמה.
- לקבלת מידע על שיפור הביצועים והדיוק וטיפים נוספים, אפשר לעיין במאמר בנושא שיטות מומלצות.