Obszönitätenfilter aktivieren

Auf dieser Seite wird beschrieben, wie Sie mit Speech-to-Text anstößige Wörter in Ihren Audiodaten automatisch erkennen und im Transkript zensieren.

Sie können den Filter für vulgäre Ausdrücke aktivieren, indem Sie RecognitionFeatures profanityFilter=true festlegen. Wenn diese Option aktiviert ist, versucht Speech-to-Text, anstößige Wörter zu erkennen und nur den ersten Buchstaben gefolgt von Sternchen im Transkript zurückzugeben (z. B. f***). Wenn dieses Feld auf false festgelegt oder nicht festgelegt ist, versucht Speech-to-Text nicht, Obszönitäten zu filtern.

Im folgenden Beispiel wird gezeigt, wie der Obszönitätenfilter aktiviert wird, um in einem Cloud Storage-Bucket gespeicherte Audiodaten zu erkennen.

Python

Informationen zum Installieren und Verwenden der Clientbibliothek für Speech-to-Text finden Sie unter Speech-to-Text-Clientbibliotheken. Weitere Informationen finden Sie in der Referenzdokumentation zur Speech-to-Text Python API.

Richten Sie zur Authentifizierung bei Speech-to-Text Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.

from google.cloud import speech
from google.cloud.speech import RecognizeResponse


def sync_recognize_with_profanity_filter_gcs(audio_uri: str) -> RecognizeResponse:
    """Recognizes speech from an audio file in Cloud Storage and filters out profane language.
    Args:
        audio_uri (str): The Cloud Storage URI of the input audio, e.g., gs://[BUCKET]/[FILE]
    Returns:
        cloud_speech.RecognizeResponse: The full response object which includes the transcription results.
    """
    # Define the audio source
    audio = {"uri": audio_uri}

    client = speech.SpeechClient()
    config = speech.RecognitionConfig(
        encoding=speech.RecognitionConfig.AudioEncoding.FLAC,  # Audio format
        sample_rate_hertz=16000,
        language_code="en-US",
        # Enable profanity filter
        profanity_filter=True,
    )

    response = client.recognize(config=config, audio=audio)

    for result in response.results:
        alternative = result.alternatives[0]
        print(f"Transcript: {alternative.transcript}")

    return response.results