Speech Generation
ARK Platform Example / Speech Generation
-
import requests ark_api_key = "API_KEY" ark_url = "https://api.ark-labs.cloud/api/v1/audio/speech" voice_pl = "pl_PL-darkman-medium" # get full list at https://huggingface.co/rhasspy/piper-voices/resolve/v1.0.0/voices.json voice_en = "shimmer" # also try "alloy" and other voice names defined by OpenAI voice_de = "de_DE-thorsten-medium" text_pl = """ Duży model językowy – model sztucznej inteligencji umożliwiający generowanie tekstu oraz realizację zadań związanych z przetwarzaniem języka naturalnego. Modele LLM są szkolone w ramach samonadzorowanego lub słabo nadzorowanego uczenia maszynowego z wykorzystaniem dużych ilości danych tekstowych. Proces ten jest intensywny obliczeniowo. Duże modele językowe mogą być wykorzystywane do generowania tekstu poprzez wielokrotne przewidywanie następnego tokenu lub słowa, przez co zaliczane są do generatywnej sztucznej inteligencji. """ text_en = """ Large Language Model (LLM) – an artificial intelligence model capable of generating text and performing tasks related to natural language processing. LLMs are trained using self-supervised or weakly supervised machine learning on large volumes of textual data. This process is computationally intensive. Large language models can generate text by repeatedly predicting the next token or word, which classifies them as part of generative artificial intelligence. """ text_de = """ Großes Sprachmodell (LLM) – ein KI-Modell, das in der Lage ist, Texte zu generieren und Aufgaben im Bereich der Verarbeitung natürlicher Sprache auszuführen. LLMs werden im Rahmen von selbstüberwachtem oder schwach überwachtem maschinellen Lernen mit großen Mengen an Textdaten trainiert. Dieser Prozess ist rechenintensiv. Große Sprachmodelle können Texte erzeugen, indem sie wiederholt das nächste Token oder Wort vorhersagen, wodurch sie zur generativen künstlichen Intelligenz zählen. """ headers = { "Authorization": f"Bearer {ark_api_key}", "Content-Type": "application/json", } params = { "model": "tts-1-hd", # tts-1, tts-1-hd or gpt-4o-mini-tts "input": text_en, # text_pl, text_en, text_de "voice": voice_en, # voice_pl, voice_en, voice_de "response_format": "mp3", # mp3, wav, pcm "stream": True, } response = requests.post( ark_url, headers=headers, json=params, stream=True, ) if response.status_code != 200: try: print("Error response:", response.json()) except Exception as e: print("Failed to parse error response:", e) exit() with open("ark-speech.mp3", "wb") as f: f.write(response.content) print("Audio saved to ark-speech.mp3")