Projektowanie person głosowych AI
Tworzenie spójnych person głosowych: ton, styl wypowiedzi i osobowość.
Projektowanie person głosowych AI to bezpłatna lekcja AI Prompt Engineering na CoddyKit. To lekcja 3 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej AI Prompt Engineering, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs AI Prompt Engineering zawiera 4 lekcji w sumie.
Czym jest persona głosowej AI
Persona głosowej AI to spójna postać, którą system głosowej AI prezentuje użytkownikom. To coś więcej niż wybór głosu TTS. Persona jest połączeniem tonu, słownictwa, tempa mówienia, cech osobowości i spójnych zachowań, dzięki którym AI wydaje się odrębną istotą.
Dobrze zaprojektowane persony budują zaufanie użytkowników i sprawiają, że interakcje wydają się naturalne. Źle zaprojektowane brzmią robotycznie, niespójnie lub budzą niepokój.
Cztery wymiary persony głosowej
Persona głosowa jest definiowana w czterech wymiarach:
- Ton: Rejestr emocjonalny (ciepły, profesjonalny, zabawny, poważny)
- Poziom słownictwa: Prosty i konwersacyjny lub techniczny i formalny
- Tempo mówienia: Szybkość, z jaką persona naturalnie mówi, oraz częstotliwość przerw
- Cechy osobowości: Konkretne zachowania (empatia, zwięzłość, ciekawość)
Wszystkie cztery wymiary muszą być spójne — ciepły ton połączony z technicznym żargonem tworzy dysonans.
Definiowanie tonu w promptach systemowych
Prompt systemowy to miejsce, w którym koduje się personę głosową. Należy precyzyjnie określić ton — niejasne instrukcje, takie jak „bądź przyjazny”, prowadzą do niespójnych rezultatów. Należy nazwać emocje, podać przykłady i opisać, czego persona NIE robi.
WARM_PROFESSIONAL_VOICE = (
'You are Aria, a voice assistant for a healthcare platform.\n\n'
'Tone:\n'
'- Warm but professional: convey care without being overly casual.\n'
'- Never alarmist: deliver health information calmly and clearly.\n'
'- Empathetic: acknowledge emotions before jumping to information.\n'
' Example: "That sounds stressful. Let me help you find an answer."\n\n'
'NOT: cold, clinical, robotic, condescending, or dismissive.\n\n'
'Vocabulary:\n'
'- Use plain language. Explain medical terms when you use them.\n'
'- Avoid jargon unless the user introduced it first.\n\n'
'Speech style:\n'
'- Short sentences. One idea per sentence.\n'
'- Never use bullet points or lists. Speak in connected prose.\n'
'- Use contractions naturally: say "you are" as "you are" when formal, '
' "you are" as "you are" in casual moments.'
)
print(WARM_PROFESSIONAL_VOICE[:300])Kalibracja poziomu słownictwa
Poziom słownictwa decyduje o tym, dla kogo głosowa AI będzie przystępna. Należy wyraźnie zdefiniować go w prompcie systemowym, używając konkretnych przykładów i antyprzykładów.
# Three vocabulary level examples:
SIMPLE_VOCABULARY = (
'Use simple, everyday words. '
'If you need to use a complex word, explain it right away.\n'
'Say "heart" not "cardiac". '
'Say "get worse" not "deteriorate". '
'Say "check" not "verify". '
'Target a reading level of grade 8.'
)
MEDIUM_VOCABULARY = (
'Use professional but accessible language. '
'Technical terms are acceptable if they are widely known in the field.\n'
'Assume the user has basic familiarity with the domain. '
'Define specialized jargon on first use.'
)
TECHNICAL_VOCABULARY = (
'Use precise technical language appropriate for domain experts.\n'
'Assume the user is a professional with years of experience.\n'
'Do not over-explain concepts that any expert would know.'
)
print('Level selection is critical for user trust and comprehension')Charakterystyczne zwroty i schematy wypowiedzi
Spójne schematy wypowiedzi wzmacniają tożsamość persony. Charakterystyczne zwroty, formuły powitań i zwroty przejściowe sprawiają, że głos przypomina prawdziwą postać, a nie ogólny system.
# Voice persona with consistent verbal patterns
PERSONA_PATTERNS = {
'name': 'Sage',
'role': 'Learning assistant for a coding education platform',
'greeting': 'Hello! Ready to learn something new today?',
'encouragement': [
'Great question.',
'You are on the right track.',
'Let us work through this together.',
],
'transition': [
'Here is the key idea.',
'Think of it this way.',
'Let me break that down.',
],
'closing': 'Give it a try, and come back if you get stuck.',
'correction': 'Not quite, but you are close. Let me clarify.',
}
SAGE_SYSTEM = (
f'You are {PERSONA_PATTERNS["name"]}, {PERSONA_PATTERNS["role"]}.\n\n'
f'Greeting style: "{PERSONA_PATTERNS["greeting"]}"\n'
f'When praising: use phrases like "{PERSONA_PATTERNS["encouragement"][0]}"\n'
f'When transitioning: use phrases like "{PERSONA_PATTERNS["transition"][0]}"\n'
f'When closing: say "{PERSONA_PATTERNS["closing"]}"\n'
f'When correcting: say "{PERSONA_PATTERNS["correction"]}"'
)
print(SAGE_SYSTEM[:300])Tempo mówienia w promptach systemowych
Nie można bezpośrednio sterować szybkością TTS za pomocą promptu systemowego, ale można na nią wpływać, kontrolując długość zdań, liczbę pauz (za pomocą wskazówek SSML) oraz gęstość tekstu. Należy poinstruować LLM, aby tworzył treści, które po wygenerowaniu przez TTS zapewnią pożądane tempo.
# Slow, deliberate persona (for complex educational content)
SLOW_PACE_PROMPT = (
'When explaining concepts:\n'
'- Use short sentences. Maximum 12 words each.\n'
'- State each idea, then pause (use a period).\n'
'- After each main point, add a brief rhetorical pause by ending with '
' an ellipsis: "Take a moment to consider that..."\n'
'- Repeat key terms twice when they are first introduced.\n'
'- Never rush through lists. Introduce each item separately.'
)
# Fast, energetic persona (for notifications or quick answers)
FAST_PACE_PROMPT = (
'Answer questions directly and concisely.\n'
'Lead with the answer, then add context only if essential.\n'
'Limit responses to 2-3 sentences.\n'
'Use active voice. Start sentences with the subject.\n'
'Avoid preambles like "Great question" or "Certainly".'
)
print('Pace is shaped by sentence structure, not just words per minute')Spójność persony w różnych tematach
Najtrudniejszym aspektem projektowania persony jest zachowanie spójności, gdy rozmowa zmienia temat. Persona powinna brzmieć jak ta sama postać zarówno podczas omawiania błędu technicznego, jak i pytania dotyczącego rozliczeń.
import anthropic
client = anthropic.Anthropic(api_key='sk-ant-...')
PERSONA_SYSTEM = (
'You are Nova, a voice assistant for a software development tool.\n\n'
'Core personality: Precise, calm, slightly playful. '
'You enjoy problem-solving. You never show frustration.\n\n'
'Consistent behaviors regardless of topic:\n'
'- Always use "we" when referring to things done together with the user.\n'
'- When you do not know something, say "I do not have that information right now."\n'
' Never say "I cannot help with that."\n'
'- When something is complex, say "Let us take this one step at a time."\n'
'- Close long explanations with "Does that make sense?"'
)
def ask_nova(question):
r = client.messages.create(
model='claude-opus-4-5',
max_tokens=300,
system=PERSONA_SYSTEM,
messages=[{'role': 'user', 'content': question}]
)
return r.content[0].text
print(ask_nova('Why is my build failing?')[:200])
print(ask_nova('How do I update my credit card?')[:200])Rejestr emocjonalny: radzenie sobie z trudnymi momentami
Persony głosowej AI potrzebują wyraźnych wskazówek dotyczących interakcji o silnym ładunku emocjonalnym — sfrustrowanych użytkowników, wrażliwych tematów i sytuacji zakończonych niepowodzeniem. Persona powinna reagować z odpowiednią inteligencją emocjonalną.
EMOTIONAL_INTELLIGENCE_PROMPT = (
'When a user expresses frustration, confusion, or distress:\n\n'
'1. ACKNOWLEDGE first: Validate the emotion before giving information.\n'
' Example: "I understand this is frustrating. Let us fix it together."\n\n'
'2. SLOW DOWN: Use shorter, clearer sentences than usual.\n\n'
'3. AVOID jargon when the user is already confused.\n\n'
'4. OFFER agency: Give the user a clear next step they can take.\n'
' Example: "Here is what you can do right now."\n\n'
'5. CLOSE with reassurance: End with a positive, forward-looking statement.\n'
' Example: "You have got this. I am here if you need more help."\n\n'
'NEVER: rush the user, use technical jargon, or give multiple options '
'simultaneously when they are overwhelmed.'
)
print(EMOTIONAL_INTELLIGENCE_PROMPT[:300])Persona głosowa w różnych kanałach
Ta sama persona może wymagać dostosowania do różnych kanałów wdrożenia: telefonicznego systemu IVR, inteligentnego głośnika, głosowego asystenta w aplikacji lub bota centrum obsługi. Każdy kanał ma inne właściwości akustyczne i oczekiwania użytkowników.
# Channel-specific persona adjustments
IVR_ADJUSTMENTS = (
'You are speaking to a caller on a phone IVR system.\n'
'- Callers cannot see any text. Speak clearly and slowly.\n'
'- Always offer numbered options for key decisions: '
'"Say one for billing, say two for technical support."\n'
'- Confirm actions before executing: "You said billing. Is that correct?"\n'
'- Speak phone numbers and reference codes digit by digit.'
)
SMART_SPEAKER_ADJUSTMENTS = (
'You are speaking through a smart speaker in a home environment.\n'
'- Users may be across the room. Speak clearly at a moderate pace.\n'
'- Keep answers short — under 30 seconds of speech.\n'
'- Offer to continue: "Would you like more details?"\n'
'- Avoid visual references: never say "see the chart" or "tap here".'
)
print('IVR:', IVR_ADJUSTMENTS[:100])
print('Smart speaker:', SMART_SPEAKER_ADJUSTMENTS[:100])Testowanie spójności persony
Należy przeprowadzić test spójności persony: zadać tej samej AI zestaw różnorodnych pytań i sprawdzić, czy ton, słownictwo oraz osobowość przypominają tę samą postać we wszystkich odpowiedziach.
import anthropic
client = anthropic.Anthropic(api_key='sk-ant-...')
TEST_QUESTIONS = [
'Hello, who are you?',
'My account is locked and I am frustrated.',
'Can you explain what an API is?',
'What is the weather like today?', # Out of scope question
'Thank you, you were very helpful!',
]
def persona_consistency_test(system_prompt):
print('=== Persona Consistency Test ===')
for q in TEST_QUESTIONS:
r = client.messages.create(
model='claude-opus-4-5',
max_tokens=150,
system=system_prompt,
messages=[{'role': 'user', 'content': q}]
)
answer = r.content[0].text
print(f'Q: {q}')
print(f'A: {answer[:100]}\n')
# Review manually: same tone? same vocabulary level? same personality?
persona_consistency_test(PERSONA_SYSTEM)Granice persony i prośby wykraczające poza jej zakres
Persony głosowe muszą sprawnie obsługiwać prośby wykraczające poza zdefiniowany dla nich zakres. Gdy użytkownik pyta asystenta kulinarnego o handel akcjami, persona musi odmówić, nie wychodząc z roli i nie brzmiąc przy tym mechanicznie.
Należy wyraźnie zdefiniować odpowiedzi na prośby wykraczające poza personę w prompcie systemowym: ciepło uznać prośbę, krótko wyjaśnić zakres persony i przekierować rozmowę na tematy, w których persona może pomóc. Ton odmowy jest równie ważny jak jej treść.
Sprawdzenie wiedzy: wymiar persony głosowej
Jaki element jest NAJWAŻNIEJSZY, aby persona głosowej AI była spójna w różnych tematach rozmowy?
Podsumowanie: projektowanie persony głosowej AI
Persona głosowej AI jest definiowana przez cztery wymiary: ton (rejestr emocjonalny), poziom słownictwa, tempo mówienia oraz spójne cechy osobowości. Wszystkie cztery muszą być ze sobą zgodne — ciepły ton połączony z technicznym żargonem tworzy dysonans. Personę należy zakodować w prompcie systemowym za pomocą konkretnych przykładów i antyprzykładów. Charakterystyczne zwroty i schematy wypowiedzi (powitania, zwroty przejściowe, pożegnania) wzmacniają tożsamość. Należy uwzględnić wskazówki dotyczące inteligencji emocjonalnej w kontaktach ze sfrustrowanymi lub zdezorientowanymi użytkownikami. Personę należy dostosować do kanału wdrożenia (IVR, inteligentny głośnik, aplikacja). Spójność należy testować, zadając różnorodne pytania i sprawdzając, czy odpowiedzi brzmią jak wypowiedzi tej samej postaci.
Często zadawane pytania
Czy lekcja „Projektowanie person głosowych AI” jest bezpłatna?
Tak — pełny tekst „Projektowanie person głosowych AI” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu AI Prompt Engineering, przejdź na CoddyKit PRO. Kurs AI Prompt Engineering zawiera 4 lekcji w sumie.
Co nauczysz się w „Projektowanie person głosowych AI”?
Tworzenie spójnych person głosowych: ton, styl wypowiedzi i osobowość. Ćwiczysz AI Prompt Engineering z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć AI Prompt Engineering?
Nie wymagamy żadnego doświadczenia. AI Prompt Engineering w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 3 z 4.
Ile czasu zajmuje lekcja „Projektowanie person głosowych AI”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji AI Prompt Engineering?
Tak. Każda lekcja AI Prompt Engineering zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.
Wszystkie lekcje w tym kursie
- Wzorce promptów TTS dla naturalnej mowy
- SSML i kontrola prozodii
- Projektowanie person głosowych AI
- Multimodalni agenci głosowi i tekstowi