Przejdź do treści głównej

Seed Speech 2.0 w dialogach dorosłych bohaterów: głosy, dane wejściowe i koszt

Seed Speech 2.0 czyta jeden głos na żądanie. Zbuduj dialog dwojga dorosłych z osobnych kwestii: dane wejściowe, ID głosów, wskazówki interpretacji i koszt.

Autor
Lydia
Opublikowano
Czas czytania
7 min czytania
Zaktualizowano
Dwoje dorosłych restauratorów zegarów rozmawia obok orzechowego zegara kominkowego i nietkniętego mosiężnego klucza na zielonej filcowej tacy

Seed Speech 2.0 czyta jeden gotowy głos na żądanie, więc rozmowa dwóch dorosłych postaci to jedno zadanie na kwestię, połączone krótkim montażem dźwięku. Każde zadanie kosztuje 0,072 $ za 1000 znaków wypowiadanego tekstu, bez minimum, a wskazówka interpretacji jest bezpłatna.

Model nadaje się do wiadomości głosowych postaci, narracji audiobooków i dialogów, w których chcesz powtórzyć jedną kwestię, nie ruszając drugiej. Jeśli chcesz mieć oba głosy i dźwięk tła w jednym pliku, użyj zamiast tego Seed Audio 1.0.

Co daje jedno żądanie

ElementSeed Speech 2.0
Pole wymaganetext, 1-5000 znaków
GłosJeden voice_id spośród 41 gotowych; domyślnie stokie_en
Wskazówka interpretacjiinstructions, do 1000 znaków; nie jest wypowiadana ani rozliczana
WynikJeden mono MP3 24 kHz lub Ogg Opus (opus); bez czasów słów i napisów
Długość i tempoOkoło 11 znaków na sekundę mowy; około 8 sekund na wygenerowanie 300 znaków
Przechowywanie14 dni, więc pobierz plik
Koszt0,072 $ za 1000 znaków; 5000 znaków to 0,36 $; wygasłe zadanie nie jest rozliczane
NiedostępneWgranie głosu referencyjnego, tablica wielu mówców

Wybierz gotowy głos i wypróbuj kwestię na stronie zadania Seed Speech 2.0. Klonowanie głosu, streaming i rozpoznawanie mowy z szerszej rodziny Seed Speech od BytePlus nie są częścią tego zadania. Żeby najpierw usłyszeć głos, posłuchaj opublikowanej nocnej wiadomości głosowej; używa stokie_en z cichą, intymną wskazówką interpretacji.

Najpierw wypróbuj obie kwestie w Playground

Na tej stronie otwórz zakładkę Playground. Dla każdej kwestii dwojga fikcyjnych dorosłych po randce:

  1. Wklej do pola Text wyłącznie słowa, które mają wybrzmieć. Nie wpisuj imion mówców („Anna:”) ani didaskaliów („uśmiecha się”): zostaną odczytane na głos, a jeśli obie postacie trafią do jednego żądania, jeden głos przeczyta obie kwestie razem z imionami.
  2. Wybierz imię w polu Voice (domyślnie Stokie · English).
  3. Opisz sposób wypowiedzi w polu Delivery instructions; nie jest wypowiadany ani rozliczany.
  4. Zostaw Language na Auto, uruchom zadanie, odsłuchaj wynik i pobierz MP3.

Kwestie i wskazówki pozostają po angielsku, bo Stokie i Tim to angielskie gotowe głosy.

KwestiaGłosTextDelivery instructions
1Stokie (stokie_en)"You don't have to go yet. Stay for another coffee? I like talking to you when we're not watching the clock."Warm and slightly playful. Speak quietly to one adult listener, with a natural question rather than a sales pitch.
2Tim (tim_en)"Then I'll stay. I was hoping you would give me a reason."Low, relaxed and amused. Answer an invitation naturally; do not sound like an announcer.

Połącz oba pobrane pliki w dowolnym edytorze dźwięku, zostawiając krótką przerwę. Aby zautomatyzować łączenie, użyj skryptu poniżej.

Potem zautomatyzuj całą wymianę skryptem

Zainstaluj SDK Pythona (pip install spicyapi) oraz ffmpeg, ustaw SPICY_API_KEY i uruchom poniższy kod. Wysyła jedno zadanie na kwestię, pobiera każdy plik MP3, a następnie łączy je z 0,35 s ciszy po każdej kwestii i wyrównanym poziomem głośności.

python
import subprocess, urllib.request
from spicyapi import SpicyClient, output_assets

client = SpicyClient()  # reads SPICY_API_KEY from the environment
GAP = 0.35  # seconds of silence after each turn
TURNS = [
    {"text": "You don't have to go yet. Stay for another coffee? I like talking to you when we're not watching the clock.",
     "voice_id": "stokie_en",
     "instructions": "Warm and slightly playful. Quiet, to one adult listener."},
    {"text": "Then I'll stay. I was hoping you would give me a reason.",
     "voice_id": "tim_en",
     "instructions": "Low, relaxed and amused. Answer naturally, not like an announcer."},
]

files = []
for i, turn in enumerate(TURNS, 1):
    task = client.create_task(
        model="bytedance/seed-speech-2.0/text-to-speech",
        input_data=dict(turn, language="en", output_format="mp3"),
        idempotency_key=f"dialogue-take-1-turn-{i}",  # new keys for a new take
    )
    final = client.wait_for_terminal(task["taskId"])
    if final["state"] != "succeeded":
        raise RuntimeError(f"Turn {i} ended as {final['state']}")
    files.append(f"turn-{i:02d}.mp3")
    urllib.request.urlretrieve(output_assets(final)[0]["url"], files[-1])

cmd = ["ffmpeg", "-y"] + [x for f in files for x in ("-i", f)]
chains = [f"[{i}:a]loudnorm=I=-18,apad=pad_dur={GAP}[a{i}]" for i in range(len(files))]
graph = ";".join(chains) + ";" + "".join(f"[a{i}]" for i in range(len(files))) + f"concat=n={len(files)}:v=0:a=1"
subprocess.run(cmd + ["-filter_complex", graph, "-ar", "24000", "-b:a", "128k", "dialogue.mp3"], check=True)

Dostrajaj GAP, aż odpowiedź zabrzmi naturalnie. Jeśli kwestia ma niezręczny początek, wygeneruj ponownie całe zdanie zamiast łatać jedno słowo i zbuduj plik od nowa. Oczekiwanie, ponowienia i błędy opisują dokumentacja SDK Pythona i przewodnik po zadaniach asynchronicznych; odzyskiwanie po awariach w większej skali jest tematem artykułu na blogu o pollingu kontra webhooki.

Albo pozwól działać agentowi

Jeśli asystent ma przeczytać scenariusz na głos, daj mu CLI lub serwer MCP. Oba pokazują cenę i proszą o potwierdzenie przed płatnym wywołaniem. Skill dodaje instrukcje do jednego i drugiego.

  • CLI. spicyapi uruchamia jedną kwestię na wywołanie (npx @spicyapi/cli działa bez instalacji). Umieść obiekt input kwestii w pliku turn-1.json:

``bash spicyapi tasks create --model bytedance/seed-speech-2.0/text-to-speech \ --input-file turn-1.json --idempotency-key dialogue-take-1-turn-1 --wait ``

  • Serwer MCP. Dodaj serwer MCP do asystenta i poproś: „Read these two lines with Seed Speech 2.0, stokieen then timen, and join them with a short gap.” Dla każdej kwestii wywołuje spicyapi_task_create (zatrzymuje się na potwierdzenie ceny) i spicyapi_task_wait.
  • Skill. npx skills add spicyapi-ai/spicy-skill instaluje Agent Skill, który uczy asystenta programisty czytać aktualny schemat i ponownie używać kluczy idempotentności. Sam nie uruchamia zadań, więc używaj go razem z CLI lub MCP.

Wybieraj głosy i język razem

Przyrostek każdego ID głosu wymienia języki, do których jest przeznaczony. Angielskie gotowe głosy to m.in. stokie_en, dacey_en i tim_en. Inne obejmują japoński (minimi_ja), niemiecki (sven_de), francuski (usseau_fr), koreański (shane_ko) i hiszpański (felipe_es); jess_ja_es_id_pt_en_zh mówi w sześciu językach. Lista nie podaje, które głosy są męskie, a które żeńskie, więc zrób przesłuchanie: ta sama kwestia o długości 100 znaków przepuszczona przez pięciu kandydatów kosztuje łącznie około 0,036 $. Zachowaj zwycięski voice_id i instructions dla każdej kolejnej kwestii tej postaci.

language przyjmuje zh, en, ja, es-mx, id, pt-br, ko, it, de i fr. Pomiń je, by włączyć automatyczne wykrywanie, a ustaw, gdy krótka lub wielojęzyczna kwestia jest czytana w złym języku. Hiszpański to es-mx, a portugalski pt-br. Pole niczego nie tłumaczy: napisz kwestię w języku docelowym.

Scenariusze dla dorosłych i dźwięki niewerbalne

Według naszych testów z września 2026 SpicyAPI nie dodaje do tego modelu żadnego filtra treści, a bezpośrednie i audiobookowe fragmenty dla dorosłych wróciły słowo w słowo, a tekst wskazówek nigdy nie został wypowiedziany. Fragment nasycony wskazówkami zachował słownictwo, ale sam dodał wokalizacje bez słów. Zadanie nie ma pola na znaczniki dźwięków: zapisz dźwięk jako słowo („Mm...”, „Ah...”), a oddech lub ton opisz w instructions. Jeśli scena zależy od odgrywanych oddechów i jęków, Gemini 3.8 Flash, Grok i MiniMax odgrywają wskazówki wpisane w tekst jako dźwięki; Seed Speech tego nie robi.

Ustawienia, które rozwiązują realny problem

UstawienieZakresUżyj, gdy
speed0,5-2, domyślnie 1Kwestia brzmi pospiesznie: spróbuj 0,9. Jeśli pospieszna jest tylko jedna fraza, skróć zdanie lub dodaj kropkę
pitchod -12 do +12 półtonówNiewielka korekta po obsadzeniu; dla innej postaci zmień gotowy głos
volume0,5-2, domyślnie 1Kwestia zastępcza jest głośniejsza lub cichsza od sąsiednich
sample_rateod 8000 do 48 000 HzTwój projekt montażowy wymaga innej częstotliwości niż 24 kHz
output_formatmp3 lub opusOpus dla mniejszych plików, jeśli odtwarzacz obsługuje Ogg Opus; WAV nie jest dostępny, więc skonwertuj lokalnie

Kwestia, która brzmi teatralnie, ma zwykle zbyt długą wskazówkę: zastąp ją frazą „Quiet, natural conversational delivery.” Głos o niewłaściwym podstawowym charakterze wymaga innego gotowego głosu, zanim zaczniesz zmieniać wysokość. Nietypowe imię bywa źle wymawiane, a słownika wymowy nie ma, więc zapisz je w text tak, jak brzmi.

Napisy wymagają dopasowania do gotowego pliku, ponieważ zadanie nie zwraca znaczników czasu.

Zaplanuj budżet scenariusza razem z poprawkami

Cena zależy od znaków w text, wliczając spacje, interpunkcję i podziały wierszy; instructions jest bezpłatne, a wycena pokazana przed uruchomieniem jest ostateczna. Kwestia o długości 200 znaków kosztuje 0,0144 $ i daje około 18 sekund mowy; scena o długości 2000 znaków między oboma mówcami kosztuje 0,144 $, a trzy pełne ujęcia kosztują 0,432 $. Dwóch mówców nie oznacza dopłaty. Zastąpienie jednej odpowiedzi o długości 200 znaków kosztuje 0,0144 $, czyli znacznie mniej niż ponowne generowanie sceny, więc przy poprawce zachowaj ten sam gotowy głos i te same ustawienia.

Wybierz Seed Speech dla przystępnych cenowo gotowych głosów i kwestii, które możesz powtarzać pojedynczo; wybierz Seed Audio 1.0, gdy chcesz mieć oba głosy i tło w jednym pliku.

Także w językach English · 日本語 · 한국어 · Deutsch · Français · Español · Português (Brasil) · Русский · Italiano

Wypróbuj samodzielnie

Płacisz tylko za to, co uruchomisz — bez planów i subskrypcji.

Zrobione w MiniMax H3 · ByteDance Seedance 2.0 Fast