תמלול דיבור לטקסט באמצעות ה-API

בדף הזה מוסבר איך לשלוח בקשת זיהוי דיבור ל-Cloud Speech-to-Text באמצעות ממשק REST והפקודה curl.

‫Cloud Speech-to-Text מאפשר לכם לשלב בקלות את הטכנולוגיות של Google לזיהוי דיבור באפליקציות של מפתחים. אתם יכולים לשלוח נתוני אודיו אל Cloud Speech-to-Text API, ואז הממשק יחזיר תמלול טקסט של קובץ האודיו הזה. מידע נוסף על השירות זמין במאמר יסודות Cloud STT.

לפני שמתחילים

לפני ששולחים בקשה ל-Cloud Speech-to-Text API, צריך לבצע את הפעולות הבאות. פרטים נוספים מופיעים בדף לפני שמתחילים.

התפקידים הנדרשים

כדי לקבל את ההרשאות שנדרשות להמרת דיבור לטקסט, צריך לבקש מהאדמין להקצות לכם את תפקיד ה-IAM‏ Service Usage Consumer (roles/serviceusage.serviceUsageConsumer) בפרויקט. להסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.

יכול להיות שאפשר לקבל את ההרשאות הנדרשות גם באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש.

שליחת בקשה לתמלול אודיו

עכשיו אפשר להשתמש ב-Cloud STT כדי לתמלל קובץ אודיו לטקסט. בדוגמת הקוד הבאה מוצג אופן השליחה של בקשת REST‏ recognize אל Cloud Speech-to-Text API.

  1. יוצרים קובץ בקשת 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 שצוין. קובץ האודיו גלוי לכולם, כך שלא צריך פרטי כניסה כדי לגשת אליו.

  2. משתמשים ב-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 כדי למחוק אותו.

המאמרים הבאים