Hızlı Başlangıç: Konuşmayı tanıma ve metne çevirme
Başvuru belgeleri | Paketi (NuGet) | GitHub'da ek örnekler
Bu hızlı başlangıçta, konuşmayı bir dilden başka bir dildeki metne çevirmek için bir uygulama çalıştıracaksınız.
İpucu
Visual Studio Code'da örnekleri kolayca derlemek ve çalıştırmak için Azure AI Konuşma Araç Seti'ni deneyin.
Önkoşullar
- Azure aboneliği. Ücretsiz bir tane oluşturabilirsiniz.
- Azure portalında konuşma kaynağı oluşturun.
- Konuşma kaynak anahtarını ve bölgesini alın. Konuşma kaynağınız dağıtıldıktan sonra anahtarları görüntülemek ve yönetmek için Kaynağa git'i seçin.
Ortamı ayarlama
Konuşma SDK'sı bir NuGet paketi olarak kullanılabilir ve .NET Standard 2.0'ı uygular. Konuşma SDK'sını bu kılavuzun ilerleyen bölümlerinde yüklersiniz, ancak daha fazla gereksinim için önce SDK yükleme kılavuzunu gözden geçirin.
Ortam değişkenlerini belirleme
Azure AI hizmetlerine erişmek için uygulamanızın kimliğini doğrulamanız gerekir. Bu makalede, kimlik bilgilerinizi depolamak için ortam değişkenlerini nasıl kullanacağınız gösterilmektedir. Ardından uygulamanızın kimliğini doğrulamak için kodunuzdan ortam değişkenlerine erişebilirsiniz. Üretim için kimlik bilgilerinizi depolamak ve erişmek için daha güvenli bir yol kullanın.
Önemli
Kimlik bilgilerini bulutta çalışan uygulamalarınızla depolamaktan kaçınmak için Azure kaynakları için yönetilen kimliklerle Microsoft Entra Id kimlik doğrulaması yapmanızı öneririz.
API anahtarı kullanıyorsanız, bunu Azure Key Vault gibi başka bir yerde güvenli bir şekilde depolayın. API anahtarını doğrudan kodunuzla eklemeyin ve hiçbir zaman herkese açık olarak göndermeyin.
Yapay zeka hizmetleri güvenliği hakkında daha fazla bilgi için bkz . Azure AI hizmetlerine yönelik isteklerin kimliğini doğrulama.
Konuşma kaynak anahtarınız ve bölgeniz için ortam değişkenlerini ayarlamak için bir konsol penceresi açın ve işletim sisteminizle geliştirme ortamınıza yönelik yönergeleri izleyin.
- Ortam değişkenini
SPEECH_KEY
ayarlamak için anahtarınızı kaynağınızın anahtarlarından biriyle değiştirin. - Ortam değişkenini
SPEECH_REGION
ayarlamak için bölgenizi kaynağınızın bölgelerinden biriyle değiştirin.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region
Not
Yalnızca geçerli konsoldaki ortam değişkenlerine erişmeniz gerekiyorsa, ortam değişkenini yerine setx
ile set
ayarlayabilirsiniz.
Ortam değişkenlerini ekledikten sonra, konsol penceresi de dahil olmak üzere ortam değişkenlerini okuması gereken tüm programları yeniden başlatmanız gerekebilir. Örneğin, düzenleyici olarak Visual Studio kullanıyorsanız, örneği çalıştırmadan önce Visual Studio'yu yeniden başlatın.
Mikrofondan konuşma çevirme
Yeni bir konsol uygulaması oluşturmak ve Konuşma SDK'sını yüklemek için bu adımları izleyin.
Yeni projeyi istediğiniz bir komut istemi açın ve .NET CLI ile bir konsol uygulaması oluşturun. Dosya
Program.cs
proje dizininde oluşturulmalıdır.dotnet new console
.NET CLI ile yeni projenize Konuşma SDK'sını yükleyin.
dotnet add package Microsoft.CognitiveServices.Speech
öğesinin içeriğini
Program.cs
aşağıdaki kodla değiştirin.using System; using System.IO; using System.Threading.Tasks; using Microsoft.CognitiveServices.Speech; using Microsoft.CognitiveServices.Speech.Audio; using Microsoft.CognitiveServices.Speech.Translation; class Program { // This example requires environment variables named "SPEECH_KEY" and "SPEECH_REGION" static string speechKey = Environment.GetEnvironmentVariable("SPEECH_KEY"); static string speechRegion = Environment.GetEnvironmentVariable("SPEECH_REGION"); static void OutputSpeechRecognitionResult(TranslationRecognitionResult translationRecognitionResult) { switch (translationRecognitionResult.Reason) { case ResultReason.TranslatedSpeech: Console.WriteLine($"RECOGNIZED: Text={translationRecognitionResult.Text}"); foreach (var element in translationRecognitionResult.Translations) { Console.WriteLine($"TRANSLATED into '{element.Key}': {element.Value}"); } break; case ResultReason.NoMatch: Console.WriteLine($"NOMATCH: Speech could not be recognized."); break; case ResultReason.Canceled: var cancellation = CancellationDetails.FromResult(translationRecognitionResult); Console.WriteLine($"CANCELED: Reason={cancellation.Reason}"); if (cancellation.Reason == CancellationReason.Error) { Console.WriteLine($"CANCELED: ErrorCode={cancellation.ErrorCode}"); Console.WriteLine($"CANCELED: ErrorDetails={cancellation.ErrorDetails}"); Console.WriteLine($"CANCELED: Did you set the speech resource key and region values?"); } break; } } async static Task Main(string[] args) { var speechTranslationConfig = SpeechTranslationConfig.FromSubscription(speechKey, speechRegion); speechTranslationConfig.SpeechRecognitionLanguage = "en-US"; speechTranslationConfig.AddTargetLanguage("it"); using var audioConfig = AudioConfig.FromDefaultMicrophoneInput(); using var translationRecognizer = new TranslationRecognizer(speechTranslationConfig, audioConfig); Console.WriteLine("Speak into your microphone."); var translationRecognitionResult = await translationRecognizer.RecognizeOnceAsync(); OutputSpeechRecognitionResult(translationRecognitionResult); } }
Konuşma tanıma dilini değiştirmek için öğesini desteklenen başka bir dille değiştirin
en-US
. Tam yerel ayarı tire (-
) ayırıcısıyla belirtin. Örneğin,es-ES
İspanyolca (İspanya) için. Varsayılan dil, bir dil belirtmezseniz oluren-US
. Konuşulabilecek birden çok dilden birini belirleme hakkında ayrıntılı bilgi için bkz . Dil belirleme.Çeviri hedef dilini değiştirmek için öğesini desteklenen başka bir dille değiştirin
it
. Birkaç özel durumla, yalnızca yerel ayar tire (-
) ayırıcısının önündeki dil kodunu belirtirsiniz. Örneğin, yerinees-ES
İspanyolca (İspanya) kullanınes
. Varsayılan dil, bir dil belirtmezseniz oluren
.
Mikrofondan konuşma tanımayı başlatmak için yeni konsol uygulamanızı çalıştırın:
dotnet run
İstendiğinde mikrofonunuza konuşun. Konuştuğunuz şey, hedef dilde çevrilmiş metin olarak verilmelidir:
Speak into your microphone.
RECOGNIZED: Text=I'm excited to try speech translation.
TRANSLATED into 'it': Sono entusiasta di provare la traduzione vocale.
Açıklamalar
Hızlı başlangıcı tamamladığınıza göre dikkat edilmesi gereken bazı ek noktalar şunlardır:
- Bu örnek, 30 saniyeye kadar veya sessizlik algılanana kadar konuşmaların dökümünü almak için işlemini kullanır
RecognizeOnceAsync
. Çok dilli konuşmalar da dahil olmak üzere daha uzun ses için sürekli tanıma hakkında bilgi için bkz . Konuşmayı çevirme. - Ses dosyasından konuşmayı tanımak için yerine
FromDefaultMicrophoneInput
kullanınFromWavFileInput
:using var audioConfig = AudioConfig.FromWavFileInput("YourAudioFile.wav");
- MP4 gibi sıkıştırılmış ses dosyaları için GStreamer'ı yükleyin ve veya
PushAudioInputStream
kullanınPullAudioInputStream
. Daha fazla bilgi için bkz . Sıkıştırılmış giriş sesini kullanma.
Kaynakları temizleme
Oluşturduğunuz Konuşma kaynağını kaldırmak için Azure portalını veya Azure Komut Satırı Arabirimi'ni (CLI) kullanabilirsiniz.
Başvuru belgeleri | Paketi (NuGet) | GitHub'da ek örnekler
Bu hızlı başlangıçta, konuşmayı bir dilden başka bir dildeki metne çevirmek için bir uygulama çalıştıracaksınız.
İpucu
Visual Studio Code'da örnekleri kolayca derlemek ve çalıştırmak için Azure AI Konuşma Araç Seti'ni deneyin.
Önkoşullar
- Azure aboneliği. Ücretsiz bir tane oluşturabilirsiniz.
- Azure portalında konuşma kaynağı oluşturun.
- Konuşma kaynak anahtarını ve bölgesini alın. Konuşma kaynağınız dağıtıldıktan sonra anahtarları görüntülemek ve yönetmek için Kaynağa git'i seçin.
Ortamı ayarlama
Konuşma SDK'sı bir NuGet paketi olarak kullanılabilir ve .NET Standard 2.0'ı uygular. Konuşma SDK'sını bu kılavuzun ilerleyen bölümlerinde yükleyebilirsiniz, ancak daha fazla gereksinim için önce SDK yükleme kılavuzunu gözden geçirin
Ortam değişkenlerini belirleme
Azure AI hizmetlerine erişmek için uygulamanızın kimliğini doğrulamanız gerekir. Bu makalede, kimlik bilgilerinizi depolamak için ortam değişkenlerini nasıl kullanacağınız gösterilmektedir. Ardından uygulamanızın kimliğini doğrulamak için kodunuzdan ortam değişkenlerine erişebilirsiniz. Üretim için kimlik bilgilerinizi depolamak ve erişmek için daha güvenli bir yol kullanın.
Önemli
Kimlik bilgilerini bulutta çalışan uygulamalarınızla depolamaktan kaçınmak için Azure kaynakları için yönetilen kimliklerle Microsoft Entra Id kimlik doğrulaması yapmanızı öneririz.
API anahtarı kullanıyorsanız, bunu Azure Key Vault gibi başka bir yerde güvenli bir şekilde depolayın. API anahtarını doğrudan kodunuzla eklemeyin ve hiçbir zaman herkese açık olarak göndermeyin.
Yapay zeka hizmetleri güvenliği hakkında daha fazla bilgi için bkz . Azure AI hizmetlerine yönelik isteklerin kimliğini doğrulama.
Konuşma kaynak anahtarınız ve bölgeniz için ortam değişkenlerini ayarlamak için bir konsol penceresi açın ve işletim sisteminizle geliştirme ortamınıza yönelik yönergeleri izleyin.
- Ortam değişkenini
SPEECH_KEY
ayarlamak için anahtarınızı kaynağınızın anahtarlarından biriyle değiştirin. - Ortam değişkenini
SPEECH_REGION
ayarlamak için bölgenizi kaynağınızın bölgelerinden biriyle değiştirin.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region
Not
Yalnızca geçerli konsoldaki ortam değişkenlerine erişmeniz gerekiyorsa, ortam değişkenini yerine setx
ile set
ayarlayabilirsiniz.
Ortam değişkenlerini ekledikten sonra, konsol penceresi de dahil olmak üzere ortam değişkenlerini okuması gereken tüm programları yeniden başlatmanız gerekebilir. Örneğin, düzenleyici olarak Visual Studio kullanıyorsanız, örneği çalıştırmadan önce Visual Studio'yu yeniden başlatın.
Mikrofondan konuşma çevirme
Yeni bir konsol uygulaması oluşturmak ve Konuşma SDK'sını yüklemek için bu adımları izleyin.
Visual Studio Community 2022'de adlı
SpeechTranslation
yeni bir C++ konsol projesi oluşturun.NuGet paket yöneticisiyle yeni projenize Konuşma SDK'sını yükleyin.
Install-Package Microsoft.CognitiveServices.Speech
öğesinin içeriğini
SpeechTranslation.cpp
aşağıdaki kodla değiştirin:#include <iostream> #include <stdlib.h> #include <speechapi_cxx.h> using namespace Microsoft::CognitiveServices::Speech; using namespace Microsoft::CognitiveServices::Speech::Audio; using namespace Microsoft::CognitiveServices::Speech::Translation; std::string GetEnvironmentVariable(const char* name); int main() { // This example requires environment variables named "SPEECH_KEY" and "SPEECH_REGION" auto speechKey = GetEnvironmentVariable("SPEECH_KEY"); auto speechRegion = GetEnvironmentVariable("SPEECH_REGION"); auto speechTranslationConfig = SpeechTranslationConfig::FromSubscription(speechKey, speechRegion); speechTranslationConfig->SetSpeechRecognitionLanguage("en-US"); speechTranslationConfig->AddTargetLanguage("it"); auto audioConfig = AudioConfig::FromDefaultMicrophoneInput(); auto translationRecognizer = TranslationRecognizer::FromConfig(speechTranslationConfig, audioConfig); std::cout << "Speak into your microphone.\n"; auto result = translationRecognizer->RecognizeOnceAsync().get(); if (result->Reason == ResultReason::TranslatedSpeech) { std::cout << "RECOGNIZED: Text=" << result->Text << std::endl; for (auto pair : result->Translations) { auto language = pair.first; auto translation = pair.second; std::cout << "Translated into '" << language << "': " << translation << std::endl; } } else if (result->Reason == ResultReason::NoMatch) { std::cout << "NOMATCH: Speech could not be recognized." << std::endl; } else if (result->Reason == ResultReason::Canceled) { auto cancellation = CancellationDetails::FromResult(result); std::cout << "CANCELED: Reason=" << (int)cancellation->Reason << std::endl; if (cancellation->Reason == CancellationReason::Error) { std::cout << "CANCELED: ErrorCode=" << (int)cancellation->ErrorCode << std::endl; std::cout << "CANCELED: ErrorDetails=" << cancellation->ErrorDetails << std::endl; std::cout << "CANCELED: Did you set the speech resource key and region values?" << std::endl; } } } std::string GetEnvironmentVariable(const char* name) { #if defined(_MSC_VER) size_t requiredSize = 0; (void)getenv_s(&requiredSize, nullptr, 0, name); if (requiredSize == 0) { return ""; } auto buffer = std::make_unique<char[]>(requiredSize); (void)getenv_s(&requiredSize, buffer.get(), requiredSize, name); return buffer.get(); #else auto value = getenv(name); return value ? value : ""; #endif }
Konuşma tanıma dilini değiştirmek için öğesini desteklenen başka bir dille değiştirin
en-US
. Tam yerel ayarı tire (-
) ayırıcısıyla belirtin. Örneğin,es-ES
İspanyolca (İspanya) için. Varsayılan dil, bir dil belirtmezseniz oluren-US
. Konuşulabilecek birden çok dilden birini belirleme hakkında ayrıntılı bilgi için bkz . Dil belirleme.Çeviri hedef dilini değiştirmek için öğesini desteklenen başka bir dille değiştirin
it
. Birkaç özel durumla, yalnızca yerel ayar tire (-
) ayırıcısının önündeki dil kodunu belirtirsiniz. Örneğin, yerinees-ES
İspanyolca (İspanya) kullanınes
. Varsayılan dil, bir dil belirtmezseniz oluren
.
Mikrofondan konuşma tanımayı başlatmak için yeni konsol uygulamanızı derleyin ve çalıştırın .
İstendiğinde mikrofonunuza konuşun. Konuştuğunuz şey, hedef dilde çevrilmiş metin olarak verilmelidir:
Speak into your microphone.
RECOGNIZED: Text=I'm excited to try speech translation.
Translated into 'it': Sono entusiasta di provare la traduzione vocale.
Açıklamalar
Hızlı başlangıcı tamamladığınıza göre dikkat edilmesi gereken bazı ek noktalar şunlardır:
- Bu örnek, 30 saniyeye kadar veya sessizlik algılanana kadar konuşmaların dökümünü almak için işlemini kullanır
RecognizeOnceAsync
. Çok dilli konuşmalar da dahil olmak üzere daha uzun ses için sürekli tanıma hakkında bilgi için bkz . Konuşmayı çevirme. - Ses dosyasından konuşmayı tanımak için yerine
FromDefaultMicrophoneInput
kullanınFromWavFileInput
:auto audioInput = AudioConfig::FromWavFileInput("YourAudioFile.wav");
- MP4 gibi sıkıştırılmış ses dosyaları için GStreamer'ı yükleyin ve veya
PushAudioInputStream
kullanınPullAudioInputStream
. Daha fazla bilgi için bkz . Sıkıştırılmış giriş sesini kullanma.
Kaynakları temizleme
Oluşturduğunuz Konuşma kaynağını kaldırmak için Azure portalını veya Azure Komut Satırı Arabirimi'ni (CLI) kullanabilirsiniz.
Başvuru belgeleri | Paketi (Go) | GitHub'da ek örnekler
Go için Konuşma SDK'sı konuşma çevirisini desteklemez. Lütfen bu makalenin başından itibaren başka bir programlama dili veya Go başvurusu ve bağlantılı örnekler seçin.
Başvuru belgeleri | GitHub'da ek örnekler
Bu hızlı başlangıçta, konuşmayı bir dilden başka bir dildeki metne çevirmek için bir uygulama çalıştıracaksınız.
İpucu
Visual Studio Code'da örnekleri kolayca derlemek ve çalıştırmak için Azure AI Konuşma Araç Seti'ni deneyin.
Önkoşullar
- Azure aboneliği. Ücretsiz bir tane oluşturabilirsiniz.
- Azure portalında konuşma kaynağı oluşturun.
- Konuşma kaynak anahtarını ve bölgesini alın. Konuşma kaynağınız dağıtıldıktan sonra anahtarları görüntülemek ve yönetmek için Kaynağa git'i seçin.
Ortamı ayarlama
Herhangi bir şey yapabilmeniz için önce Konuşma SDK'sını yüklemeniz gerekir. Bu hızlı başlangıçtaki örnek Java Çalışma Zamanı ile çalışır.
- Apache Maven'ı yükleyin. Ardından başarılı yüklemeyi onaylamak için komutunu çalıştırın
mvn -v
. - Projenizin kökünde yeni
pom.xml
bir dosya oluşturun ve aşağıdakini içine kopyalayın:<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.microsoft.cognitiveservices.speech.samples</groupId> <artifactId>quickstart-eclipse</artifactId> <version>1.0.0-SNAPSHOT</version> <build> <sourceDirectory>src</sourceDirectory> <plugins> <plugin> <artifactId>maven-compiler-plugin</artifactId> <version>3.7.0</version> <configuration> <source>1.8</source> <target>1.8</target> </configuration> </plugin> </plugins> </build> <dependencies> <dependency> <groupId>com.microsoft.cognitiveservices.speech</groupId> <artifactId>client-sdk</artifactId> <version>1.40.0</version> </dependency> </dependencies> </project>
- Konuşma SDK'sını ve bağımlılıkları yükleyin.
mvn clean dependency:copy-dependencies
Ortam değişkenlerini belirleme
Azure AI hizmetlerine erişmek için uygulamanızın kimliğini doğrulamanız gerekir. Bu makalede, kimlik bilgilerinizi depolamak için ortam değişkenlerini nasıl kullanacağınız gösterilmektedir. Ardından uygulamanızın kimliğini doğrulamak için kodunuzdan ortam değişkenlerine erişebilirsiniz. Üretim için kimlik bilgilerinizi depolamak ve erişmek için daha güvenli bir yol kullanın.
Önemli
Kimlik bilgilerini bulutta çalışan uygulamalarınızla depolamaktan kaçınmak için Azure kaynakları için yönetilen kimliklerle Microsoft Entra Id kimlik doğrulaması yapmanızı öneririz.
API anahtarı kullanıyorsanız, bunu Azure Key Vault gibi başka bir yerde güvenli bir şekilde depolayın. API anahtarını doğrudan kodunuzla eklemeyin ve hiçbir zaman herkese açık olarak göndermeyin.
Yapay zeka hizmetleri güvenliği hakkında daha fazla bilgi için bkz . Azure AI hizmetlerine yönelik isteklerin kimliğini doğrulama.
Konuşma kaynak anahtarınız ve bölgeniz için ortam değişkenlerini ayarlamak için bir konsol penceresi açın ve işletim sisteminizle geliştirme ortamınıza yönelik yönergeleri izleyin.
- Ortam değişkenini
SPEECH_KEY
ayarlamak için anahtarınızı kaynağınızın anahtarlarından biriyle değiştirin. - Ortam değişkenini
SPEECH_REGION
ayarlamak için bölgenizi kaynağınızın bölgelerinden biriyle değiştirin.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region
Not
Yalnızca geçerli konsoldaki ortam değişkenlerine erişmeniz gerekiyorsa, ortam değişkenini yerine setx
ile set
ayarlayabilirsiniz.
Ortam değişkenlerini ekledikten sonra, konsol penceresi de dahil olmak üzere ortam değişkenlerini okuması gereken tüm programları yeniden başlatmanız gerekebilir. Örneğin, düzenleyici olarak Visual Studio kullanıyorsanız, örneği çalıştırmadan önce Visual Studio'yu yeniden başlatın.
Mikrofondan konuşma çevirme
Konuşma tanıma için yeni bir konsol uygulaması oluşturmak için bu adımları izleyin.
Aynı proje kök dizininde adlı
SpeechTranslation.java
yeni bir dosya oluşturun.Aşağıdaki kodu içine
SpeechTranslation.java
kopyalayın:import com.microsoft.cognitiveservices.speech.*; import com.microsoft.cognitiveservices.speech.audio.AudioConfig; import com.microsoft.cognitiveservices.speech.translation.*; import java.util.concurrent.ExecutionException; import java.util.concurrent.Future; import java.util.Map; public class SpeechTranslation { // This example requires environment variables named "SPEECH_KEY" and "SPEECH_REGION" private static String speechKey = System.getenv("SPEECH_KEY"); private static String speechRegion = System.getenv("SPEECH_REGION"); public static void main(String[] args) throws InterruptedException, ExecutionException { SpeechTranslationConfig speechTranslationConfig = SpeechTranslationConfig.fromSubscription(speechKey, speechRegion); speechTranslationConfig.setSpeechRecognitionLanguage("en-US"); String[] toLanguages = { "it" }; for (String language : toLanguages) { speechTranslationConfig.addTargetLanguage(language); } recognizeFromMicrophone(speechTranslationConfig); } public static void recognizeFromMicrophone(SpeechTranslationConfig speechTranslationConfig) throws InterruptedException, ExecutionException { AudioConfig audioConfig = AudioConfig.fromDefaultMicrophoneInput(); TranslationRecognizer translationRecognizer = new TranslationRecognizer(speechTranslationConfig, audioConfig); System.out.println("Speak into your microphone."); Future<TranslationRecognitionResult> task = translationRecognizer.recognizeOnceAsync(); TranslationRecognitionResult translationRecognitionResult = task.get(); if (translationRecognitionResult.getReason() == ResultReason.TranslatedSpeech) { System.out.println("RECOGNIZED: Text=" + translationRecognitionResult.getText()); for (Map.Entry<String, String> pair : translationRecognitionResult.getTranslations().entrySet()) { System.out.printf("Translated into '%s': %s\n", pair.getKey(), pair.getValue()); } } else if (translationRecognitionResult.getReason() == ResultReason.NoMatch) { System.out.println("NOMATCH: Speech could not be recognized."); } else if (translationRecognitionResult.getReason() == ResultReason.Canceled) { CancellationDetails cancellation = CancellationDetails.fromResult(translationRecognitionResult); System.out.println("CANCELED: Reason=" + cancellation.getReason()); if (cancellation.getReason() == CancellationReason.Error) { System.out.println("CANCELED: ErrorCode=" + cancellation.getErrorCode()); System.out.println("CANCELED: ErrorDetails=" + cancellation.getErrorDetails()); System.out.println("CANCELED: Did you set the speech resource key and region values?"); } } System.exit(0); } }
Konuşma tanıma dilini değiştirmek için öğesini desteklenen başka bir dille değiştirin
en-US
. Tam yerel ayarı tire (-
) ayırıcısıyla belirtin. Örneğin,es-ES
İspanyolca (İspanya) için. Varsayılan dil, bir dil belirtmezseniz oluren-US
. Konuşulabilecek birden çok dilden birini belirleme hakkında ayrıntılı bilgi için bkz . Dil belirleme.Çeviri hedef dilini değiştirmek için öğesini desteklenen başka bir dille değiştirin
it
. Birkaç özel durumla, yalnızca yerel ayar tire (-
) ayırıcısının önündeki dil kodunu belirtirsiniz. Örneğin, yerinees-ES
İspanyolca (İspanya) kullanınes
. Varsayılan dil, bir dil belirtmezseniz oluren
.
Mikrofondan konuşma tanımayı başlatmak için yeni konsol uygulamanızı çalıştırın:
javac SpeechTranslation.java -cp ".;target\dependency\*"
java -cp ".;target\dependency\*" SpeechTranslation
İstendiğinde mikrofonunuza konuşun. Konuştuğunuz şey, hedef dilde çevrilmiş metin olarak verilmelidir:
Speak into your microphone.
RECOGNIZED: Text=I'm excited to try speech translation.
Translated into 'it': Sono entusiasta di provare la traduzione vocale.
Açıklamalar
Hızlı başlangıcı tamamladığınıza göre dikkat edilmesi gereken bazı ek noktalar şunlardır:
- Bu örnek, 30 saniyeye kadar veya sessizlik algılanana kadar konuşmaların dökümünü almak için işlemini kullanır
RecognizeOnceAsync
. Çok dilli konuşmalar da dahil olmak üzere daha uzun ses için sürekli tanıma hakkında bilgi için bkz . Konuşmayı çevirme. - Ses dosyasından konuşmayı tanımak için yerine
fromDefaultMicrophoneInput
kullanınfromWavFileInput
:AudioConfig audioConfig = AudioConfig.fromWavFileInput("YourAudioFile.wav");
- MP4 gibi sıkıştırılmış ses dosyaları için GStreamer'ı yükleyin ve veya
PushAudioInputStream
kullanınPullAudioInputStream
. Daha fazla bilgi için bkz . Sıkıştırılmış giriş sesini kullanma.
Kaynakları temizleme
Oluşturduğunuz Konuşma kaynağını kaldırmak için Azure portalını veya Azure Komut Satırı Arabirimi'ni (CLI) kullanabilirsiniz.
Başvuru belgeleri | Paketi (npm) | GitHub | Kitaplığı kaynak kodundaki ek örnekler
Bu hızlı başlangıçta, konuşmayı bir dilden başka bir dildeki metne çevirmek için bir uygulama çalıştıracaksınız.
İpucu
Visual Studio Code'da örnekleri kolayca derlemek ve çalıştırmak için Azure AI Konuşma Araç Seti'ni deneyin.
Önkoşullar
- Azure aboneliği. Ücretsiz bir tane oluşturabilirsiniz.
- Azure portalında konuşma kaynağı oluşturun.
- Konuşma kaynak anahtarını ve bölgesini alın. Konuşma kaynağınız dağıtıldıktan sonra anahtarları görüntülemek ve yönetmek için Kaynağa git'i seçin.
Ortamı ayarlama
Herhangi bir işlem gerçekleştirmeden önce JavaScript için Konuşma SDK'sını yüklemeniz gerekir. Yalnızca paket adının yüklenmesini istiyorsanız komutunu çalıştırın npm install microsoft-cognitiveservices-speech-sdk
. Kılavuzlu yükleme yönergeleri için bkz . SDK yükleme kılavuzu.
Ortam değişkenlerini belirleme
Azure AI hizmetlerine erişmek için uygulamanızın kimliğini doğrulamanız gerekir. Bu makalede, kimlik bilgilerinizi depolamak için ortam değişkenlerini nasıl kullanacağınız gösterilmektedir. Ardından uygulamanızın kimliğini doğrulamak için kodunuzdan ortam değişkenlerine erişebilirsiniz. Üretim için kimlik bilgilerinizi depolamak ve erişmek için daha güvenli bir yol kullanın.
Önemli
Kimlik bilgilerini bulutta çalışan uygulamalarınızla depolamaktan kaçınmak için Azure kaynakları için yönetilen kimliklerle Microsoft Entra Id kimlik doğrulaması yapmanızı öneririz.
API anahtarı kullanıyorsanız, bunu Azure Key Vault gibi başka bir yerde güvenli bir şekilde depolayın. API anahtarını doğrudan kodunuzla eklemeyin ve hiçbir zaman herkese açık olarak göndermeyin.
Yapay zeka hizmetleri güvenliği hakkında daha fazla bilgi için bkz . Azure AI hizmetlerine yönelik isteklerin kimliğini doğrulama.
Konuşma kaynak anahtarınız ve bölgeniz için ortam değişkenlerini ayarlamak için bir konsol penceresi açın ve işletim sisteminizle geliştirme ortamınıza yönelik yönergeleri izleyin.
- Ortam değişkenini
SPEECH_KEY
ayarlamak için anahtarınızı kaynağınızın anahtarlarından biriyle değiştirin. - Ortam değişkenini
SPEECH_REGION
ayarlamak için bölgenizi kaynağınızın bölgelerinden biriyle değiştirin.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region
Not
Yalnızca geçerli konsoldaki ortam değişkenlerine erişmeniz gerekiyorsa, ortam değişkenini yerine setx
ile set
ayarlayabilirsiniz.
Ortam değişkenlerini ekledikten sonra, konsol penceresi de dahil olmak üzere ortam değişkenlerini okuması gereken tüm programları yeniden başlatmanız gerekebilir. Örneğin, düzenleyici olarak Visual Studio kullanıyorsanız, örneği çalıştırmadan önce Visual Studio'yu yeniden başlatın.
Konuşmayı dosyadan çevirme
Konuşma tanıma için Node.js bir konsol uygulaması oluşturmak için bu adımları izleyin.
Yeni projeyi istediğiniz yerde bir komut istemi açın ve adlı
SpeechTranslation.js
yeni bir dosya oluşturun.JavaScript için Konuşma SDK'sını yükleyin:
npm install microsoft-cognitiveservices-speech-sdk
Aşağıdaki kodu içine
SpeechTranslation.js
kopyalayın:const fs = require("fs"); const sdk = require("microsoft-cognitiveservices-speech-sdk"); // This example requires environment variables named "SPEECH_KEY" and "SPEECH_REGION" const speechTranslationConfig = sdk.SpeechTranslationConfig.fromSubscription(process.env.SPEECH_KEY, process.env.SPEECH_REGION); speechTranslationConfig.speechRecognitionLanguage = "en-US"; var language = "it"; speechTranslationConfig.addTargetLanguage(language); function fromFile() { let audioConfig = sdk.AudioConfig.fromWavFileInput(fs.readFileSync("YourAudioFile.wav")); let translationRecognizer = new sdk.TranslationRecognizer(speechTranslationConfig, audioConfig); translationRecognizer.recognizeOnceAsync(result => { switch (result.reason) { case sdk.ResultReason.TranslatedSpeech: console.log(`RECOGNIZED: Text=${result.text}`); console.log("Translated into [" + language + "]: " + result.translations.get(language)); break; case sdk.ResultReason.NoMatch: console.log("NOMATCH: Speech could not be recognized."); break; case sdk.ResultReason.Canceled: const cancellation = sdk.CancellationDetails.fromResult(result); console.log(`CANCELED: Reason=${cancellation.reason}`); if (cancellation.reason == sdk.CancellationReason.Error) { console.log(`CANCELED: ErrorCode=${cancellation.ErrorCode}`); console.log(`CANCELED: ErrorDetails=${cancellation.errorDetails}`); console.log("CANCELED: Did you set the speech resource key and region values?"); } break; } translationRecognizer.close(); }); } fromFile();
içinde
SpeechTranslation.js
öğesini kendi WAV dosyanızla değiştirinYourAudioFile.wav
. Bu örnek yalnızca WAV dosyasından konuşmayı tanır. Diğer ses biçimleri hakkında bilgi için bkz . Sıkıştırılmış giriş sesini kullanma. Bu örnek 30 saniyeye kadar sesi destekler.Konuşma tanıma dilini değiştirmek için öğesini desteklenen başka bir dille değiştirin
en-US
. Tam yerel ayarı tire (-
) ayırıcısıyla belirtin. Örneğin,es-ES
İspanyolca (İspanya) için. Varsayılan dil, bir dil belirtmezseniz oluren-US
. Konuşulabilecek birden çok dilden birini belirleme hakkında ayrıntılı bilgi için bkz . Dil belirleme.Çeviri hedef dilini değiştirmek için öğesini desteklenen başka bir dille değiştirin
it
. Birkaç özel durumla, yalnızca yerel ayar tire (-
) ayırıcısının önündeki dil kodunu belirtirsiniz. Örneğin, yerinees-ES
İspanyolca (İspanya) kullanınes
. Varsayılan dil, bir dil belirtmezseniz oluren
.
Bir dosyadan konuşma tanımayı başlatmak için yeni konsol uygulamanızı çalıştırın:
node.exe SpeechTranslation.js
Ses dosyasındaki konuşmanın hedef dilde çevrilmiş metin olarak çıkışı olmalıdır:
RECOGNIZED: Text=I'm excited to try speech translation.
Translated into [it]: Sono entusiasta di provare la traduzione vocale.
Açıklamalar
Hızlı başlangıcı tamamladığınıza göre dikkat edilmesi gereken bazı ek noktalar şunlardır:
Bu örnek, 30 saniyeye kadar veya sessizlik algılanana kadar konuşmaların dökümünü almak için işlemini kullanır recognizeOnceAsync
. Çok dilli konuşmalar da dahil olmak üzere daha uzun ses için sürekli tanıma hakkında bilgi için bkz . Konuşmayı çevirme.
Not
Mikrofondan konuşma tanıma özelliği Node.js desteklenmez. Yalnızca tarayıcı tabanlı bir JavaScript ortamında desteklenir.
Kaynakları temizleme
Oluşturduğunuz Konuşma kaynağını kaldırmak için Azure portalını veya Azure Komut Satırı Arabirimi'ni (CLI) kullanabilirsiniz.
Başvuru belgeleri | Paketi (indirme) | GitHub'da ek örnekler
Objective-C için Konuşma SDK'sı konuşma çevirisini destekler, ancak buraya henüz bir kılavuz eklemedik. Başlamak ve kavramlar hakkında bilgi edinmek için lütfen başka bir programlama dili seçin veya bu makalenin başındaki Objective-C başvurusuna ve bağlantılı örneklere bakın.
Başvuru belgeleri | Paketi (indirme) | GitHub'da ek örnekler
Swift için Konuşma SDK'sı konuşma çevirisini destekler, ancak buraya henüz bir kılavuz eklemedik. Başlamak ve kavramlar hakkında bilgi edinmek için lütfen başka bir programlama dili seçin veya bu makalenin başından itibaren bağlantılı Swift başvurusuna ve örneklerine bakın.
Başvuru belgeleri | Paketi (PyPi) | GitHub'da ek örnekler
Bu hızlı başlangıçta, konuşmayı bir dilden başka bir dildeki metne çevirmek için bir uygulama çalıştıracaksınız.
İpucu
Visual Studio Code'da örnekleri kolayca derlemek ve çalıştırmak için Azure AI Konuşma Araç Seti'ni deneyin.
Önkoşullar
- Azure aboneliği. Ücretsiz bir tane oluşturabilirsiniz.
- Azure portalında konuşma kaynağı oluşturun.
- Konuşma kaynak anahtarını ve bölgesini alın. Konuşma kaynağınız dağıtıldıktan sonra anahtarları görüntülemek ve yönetmek için Kaynağa git'i seçin.
Ortamı ayarlama
Python için Konuşma SDK'sı Python Paket Dizini (PyPI) modülü olarak kullanılabilir. Python için Konuşma SDK'sı Windows, Linux ve macOS ile uyumludur.
- Platformunuz için Microsoft Visual Studio için Visual C++ Yeniden Dağıtılabilir 2015, 2017, 2019 ve 2022'yi yüklemeniz gerekir. Bu paketi ilk kez yüklemek için yeniden başlatma gerekebilir.
- Linux'ta x64 hedef mimarisini kullanmanız gerekir.
Python'ın 3.7 veya sonraki bir sürümünden bir sürümünü yükleyin. Daha fazla gereksinim için önce SDK yükleme kılavuzuna bakın
Ortam değişkenlerini belirleme
Azure AI hizmetlerine erişmek için uygulamanızın kimliğini doğrulamanız gerekir. Bu makalede, kimlik bilgilerinizi depolamak için ortam değişkenlerini nasıl kullanacağınız gösterilmektedir. Ardından uygulamanızın kimliğini doğrulamak için kodunuzdan ortam değişkenlerine erişebilirsiniz. Üretim için kimlik bilgilerinizi depolamak ve erişmek için daha güvenli bir yol kullanın.
Önemli
Kimlik bilgilerini bulutta çalışan uygulamalarınızla depolamaktan kaçınmak için Azure kaynakları için yönetilen kimliklerle Microsoft Entra Id kimlik doğrulaması yapmanızı öneririz.
API anahtarı kullanıyorsanız, bunu Azure Key Vault gibi başka bir yerde güvenli bir şekilde depolayın. API anahtarını doğrudan kodunuzla eklemeyin ve hiçbir zaman herkese açık olarak göndermeyin.
Yapay zeka hizmetleri güvenliği hakkında daha fazla bilgi için bkz . Azure AI hizmetlerine yönelik isteklerin kimliğini doğrulama.
Konuşma kaynak anahtarınız ve bölgeniz için ortam değişkenlerini ayarlamak için bir konsol penceresi açın ve işletim sisteminizle geliştirme ortamınıza yönelik yönergeleri izleyin.
- Ortam değişkenini
SPEECH_KEY
ayarlamak için anahtarınızı kaynağınızın anahtarlarından biriyle değiştirin. - Ortam değişkenini
SPEECH_REGION
ayarlamak için bölgenizi kaynağınızın bölgelerinden biriyle değiştirin.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region
Not
Yalnızca geçerli konsoldaki ortam değişkenlerine erişmeniz gerekiyorsa, ortam değişkenini yerine setx
ile set
ayarlayabilirsiniz.
Ortam değişkenlerini ekledikten sonra, konsol penceresi de dahil olmak üzere ortam değişkenlerini okuması gereken tüm programları yeniden başlatmanız gerekebilir. Örneğin, düzenleyici olarak Visual Studio kullanıyorsanız, örneği çalıştırmadan önce Visual Studio'yu yeniden başlatın.
Mikrofondan konuşma çevirme
Yeni bir konsol uygulaması oluşturmak için bu adımları izleyin.
Yeni projeyi istediğiniz yerde bir komut istemi açın ve adlı
speech_translation.py
yeni bir dosya oluşturun.Konuşma SDK'sını yüklemek için şu komutu çalıştırın:
pip install azure-cognitiveservices-speech
Aşağıdaki kodu içine
speech_translation.py
kopyalayın:import os import azure.cognitiveservices.speech as speechsdk def recognize_from_microphone(): # This example requires environment variables named "SPEECH_KEY" and "SPEECH_REGION" speech_translation_config = speechsdk.translation.SpeechTranslationConfig(subscription=os.environ.get('SPEECH_KEY'), region=os.environ.get('SPEECH_REGION')) speech_translation_config.speech_recognition_language="en-US" to_language ="it" speech_translation_config.add_target_language(to_language) audio_config = speechsdk.audio.AudioConfig(use_default_microphone=True) translation_recognizer = speechsdk.translation.TranslationRecognizer(translation_config=speech_translation_config, audio_config=audio_config) print("Speak into your microphone.") translation_recognition_result = translation_recognizer.recognize_once_async().get() if translation_recognition_result.reason == speechsdk.ResultReason.TranslatedSpeech: print("Recognized: {}".format(translation_recognition_result.text)) print("""Translated into '{}': {}""".format( to_language, translation_recognition_result.translations[to_language])) elif translation_recognition_result.reason == speechsdk.ResultReason.NoMatch: print("No speech could be recognized: {}".format(translation_recognition_result.no_match_details)) elif translation_recognition_result.reason == speechsdk.ResultReason.Canceled: cancellation_details = translation_recognition_result.cancellation_details print("Speech Recognition canceled: {}".format(cancellation_details.reason)) if cancellation_details.reason == speechsdk.CancellationReason.Error: print("Error details: {}".format(cancellation_details.error_details)) print("Did you set the speech resource key and region values?") recognize_from_microphone()
Konuşma tanıma dilini değiştirmek için öğesini desteklenen başka bir dille değiştirin
en-US
. Tam yerel ayarı tire (-
) ayırıcısıyla belirtin. Örneğin,es-ES
İspanyolca (İspanya) için. Varsayılan dil, bir dil belirtmezseniz oluren-US
. Konuşulabilecek birden çok dilden birini belirleme hakkında ayrıntılı bilgi için bkz . Dil belirleme.Çeviri hedef dilini değiştirmek için öğesini desteklenen başka bir dille değiştirin
it
. Birkaç özel durumla, yalnızca yerel ayar tire (-
) ayırıcısının önündeki dil kodunu belirtirsiniz. Örneğin, yerinees-ES
İspanyolca (İspanya) kullanınes
. Varsayılan dil, bir dil belirtmezseniz oluren
.
Mikrofondan konuşma tanımayı başlatmak için yeni konsol uygulamanızı çalıştırın:
python speech_translation.py
İstendiğinde mikrofonunuza konuşun. Konuştuğunuz şey, hedef dilde çevrilmiş metin olarak verilmelidir:
Speak into your microphone.
Recognized: I'm excited to try speech translation.
Translated into 'it': Sono entusiasta di provare la traduzione vocale.
Açıklamalar
Hızlı başlangıcı tamamladığınıza göre dikkat edilmesi gereken bazı ek noktalar şunlardır:
- Bu örnek, 30 saniyeye kadar veya sessizlik algılanana kadar konuşmaların dökümünü almak için işlemini kullanır
recognize_once_async
. Çok dilli konuşmalar da dahil olmak üzere daha uzun ses için sürekli tanıma hakkında bilgi için bkz . Konuşmayı çevirme. - Ses dosyasından konuşmayı tanımak için yerine
use_default_microphone
kullanınfilename
:audio_config = speechsdk.audio.AudioConfig(filename="YourAudioFile.wav")
- MP4 gibi sıkıştırılmış ses dosyaları için GStreamer'ı yükleyin ve veya
PushAudioInputStream
kullanınPullAudioInputStream
. Daha fazla bilgi için bkz . Sıkıştırılmış giriş sesini kullanma.
Kaynakları temizleme
Oluşturduğunuz Konuşma kaynağını kaldırmak için Azure portalını veya Azure Komut Satırı Arabirimi'ni (CLI) kullanabilirsiniz.
Metne konuşma REST API başvurusu | Kısa ses başvurusu için metin REST API'sine konuşma | GitHub'da ek örnekler
REST API konuşma çevirisini desteklemez. Lütfen bu sayfanın üst kısmından başka bir programlama dili veya aracı seçin.
Bu hızlı başlangıçta, konuşmayı bir dilden başka bir dildeki metne çevirmek için bir uygulama çalıştıracaksınız.
İpucu
Visual Studio Code'da örnekleri kolayca derlemek ve çalıştırmak için Azure AI Konuşma Araç Seti'ni deneyin.
Önkoşullar
- Azure aboneliği. Ücretsiz bir tane oluşturabilirsiniz.
- Azure portalında konuşma kaynağı oluşturun.
- Konuşma kaynak anahtarını ve bölgesini alın. Konuşma kaynağınız dağıtıldıktan sonra anahtarları görüntülemek ve yönetmek için Kaynağa git'i seçin.
Ortamı ayarlama
Bu adımları izleyin ve platformunuzun diğer gereksinimleri için Konuşma CLI'sı hızlı başlangıcına bakın.
Konuşma CLI'sını yüklemek için aşağıdaki .NET CLI komutunu çalıştırın:
dotnet tool install --global Microsoft.CognitiveServices.Speech.CLI
Konuşma kaynak anahtarınızı ve bölgenizi yapılandırmak için aşağıdaki komutları çalıştırın. değerini
SUBSCRIPTION-KEY
Konuşma kaynak anahtarınızla, değerini de Konuşma kaynağı bölgenizle değiştirinREGION
.spx config @key --set SUBSCRIPTION-KEY spx config @region --set REGION
Mikrofondan konuşma çevirme
Mikrofondaki konuşmayı İngilizceden İtalyancaya çevirmek için aşağıdaki komutu çalıştırın:
spx translate --source en-US --target it --microphone
Mikrofona konuşun ve çevrilmiş konuşmanızın transkripsiyonunu gerçek zamanlı olarak görürsünüz. Konuşma CLI'si, 30 saniyelik bir sessizlik döneminin ardından veya Ctrl+C tuşlarına bastığınızda durur.
Connection CONNECTED...
TRANSLATING into 'it': Sono (from 'I'm')
TRANSLATING into 'it': Sono entusiasta (from 'I'm excited to')
TRANSLATING into 'it': Sono entusiasta di provare la parola (from 'I'm excited to try speech')
TRANSLATED into 'it': Sono entusiasta di provare la traduzione vocale. (from 'I'm excited to try speech translation.')
Açıklamalar
Hızlı başlangıcı tamamladığınıza göre dikkat edilmesi gereken bazı ek noktalar şunlardır:
- Ses dosyasından konuşma almak için yerine
--microphone
kullanın--file
. MP4 gibi sıkıştırılmış ses dosyaları için GStreamer'ı yükleyin ve kullanın--format
. Daha fazla bilgi için bkz . Sıkıştırılmış giriş sesini kullanma.spx translate --source en-US --target it --file YourAudioFile.wav spx translate --source en-US --target it --file YourAudioFile.mp4 --format any
- Belirli sözcüklerin veya konuşmaların tanıma doğruluğunu geliştirmek için tümcecik listesi kullanın. Satır içi veya metin dosyası içeren bir tümcecik listesi eklersiniz:
spx translate --source en-US --target it --microphone --phrases "Contoso;Jessie;Rehaan;" spx translate --source en-US --target it --microphone --phrases @phrases.txt
- Konuşma tanıma dilini değiştirmek için öğesini desteklenen başka bir dille değiştirin
en-US
. Tam yerel ayarı tire (-
) ayırıcısıyla belirtin. Örneğin,es-ES
İspanyolca (İspanya) için. Varsayılan dil, bir dil belirtmezseniz oluren-US
.spx translate --microphone --source es-ES
- Çeviri hedef dilini değiştirmek için öğesini desteklenen başka bir dille değiştirin
it
. Birkaç özel durumla, yalnızca yerel ayar tire (-
) ayırıcısının önündeki dil kodunu belirtirsiniz. Örneğin, yerinees-ES
İspanyolca (İspanya) kullanınes
. Varsayılan dil, bir dil belirtmezseniz oluren
.spx translate --microphone --target es
- Sesin 30 saniyeden uzun süre sürekli olarak tanınması için şunu ekle:
--continuous
spx translate --source en-US --target it --microphone --continuous
Dosya girişi ve çıkışı gibi ek konuşma çevirisi seçenekleri hakkında bilgi için şu komutu çalıştırın:
spx help translate
Kaynakları temizleme
Oluşturduğunuz Konuşma kaynağını kaldırmak için Azure portalını veya Azure Komut Satırı Arabirimi'ni (CLI) kullanabilirsiniz.