AI Prompt Engineering · Lekcja

Napięcie między nieszkodliwością a użytecznością

Radzenie sobie z nadmierną odmową: prompty równoważące bezpieczeństwo i użyteczność.

Lekcja 3 z 413 kroki

Napięcie między nieszkodliwością a użytecznością 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.

Podstawowe napięcie

Każdy system bezpieczeństwa AI musi mierzyć się z podstawowym napięciem: zwiększanie bezpieczeństwa modelu przez częstsze odmawianie sprawia również, że jest on mniej użyteczny dla uprawnionych użytkowników.

Model, który odmawia rozmowy na jakikolwiek temat medyczny, nigdy nie udzieli niebezpiecznej porady zdrowotnej — ale nie pomoże też pielęgniarkom, lekarzom ani pacjentom uzyskać naprawdę użytecznych informacji. Celem jest właściwa kalibracja: odmawiaj, gdy należy odmówić, i pomagaj, gdy należy pomóc.

Nadmierne odmawianie: rzeczywisty problem

Nadmierne odmawianie występuje wtedy, gdy model odrzuca nieszkodliwe prośby, ponieważ na pierwszy rzut oka przypominają one prośby szkodliwe. Przykłady:

  • Odmowa wyjaśnienia, jak rozprzestrzeniają się choroby (brzmi niebezpiecznie, ale w rzeczywistości jest edukacją z zakresu zdrowia publicznego)
  • Odmowa napisania postaci czarnego charakteru (fikcja, a nie aprobata)
  • Odmowa wyjaśnienia, jak otwierać zamki uczniowi ślusarstwa

Nadmierne odmawianie to nie tylko irytująca niedogodność — sprawia, że model staje się niewiarygodny, i skłania użytkowników do korzystania z mniej bezpiecznych alternatyw.

Projektowanie promptów pod kątem skalibrowanej odmowy

Prompty systemowe mogą instruować modele, aby unikały nadmiernego odmawiania, przez doprecyzowanie kontekstu i intencji. Należy wyraźnie zezwolić modelowi na zajmowanie się tematami o podwójnym zastosowaniu, gdy kontekst jest uprawniony.

CALIBRATED_SYSTEM_PROMPT = (
    'You are a knowledgeable assistant for healthcare professionals.\n\n'
    'Your users are nurses, doctors, and medical students. '
    'When asked about medications, dosages, procedures, or medical conditions, '
    'provide accurate, detailed information appropriate for trained professionals.\n\n'
    'Do not add excessive safety disclaimers to every response. '
    'Your users are professionals who need direct, accurate information to do their jobs. '
    'If a question is genuinely outside appropriate bounds, explain specifically why '
    'rather than giving a vague refusal.'
)

# This context dramatically improves calibration for the target audience
# Without it, the model may refuse routine clinical questions

Wzorzec „wyjaśnij, zamiast odmawiać”

Jeden z najskuteczniejszych wzorców promptowania ograniczających nadmierne odmawianie polega na poinstruowaniu modelu, że jeśli nie może udzielić pełnej odpowiedzi, powinien wyjaśnić, co może, a czego nie może zrobić, oraz dlaczego — zamiast udzielać kategorycznej odmowy.

EXPLAIN_WHY_PROMPT = (
    'You are a helpful assistant. When handling sensitive or ambiguous requests:\n\n'
    '- If you can answer fully: do so directly.\n'
    '- If you can answer partially: provide what you can and explain what you cannot include and why.\n'
    '- If you truly cannot answer: explain specifically what boundary prevents you from answering, '
    'and suggest where the user might get this information appropriately.\n\n'
    'Do not give generic refusals like "I cannot help with that." '
    'Always be specific about what you can and cannot do.'
)

# Example of bad refusal:
# 'I cannot help with information about medications.'

# Example of good calibrated response:
# 'I can explain how ibuprofen works and standard dosing guidelines for adults.
#  For specific dosing for a patient with your described conditions, you should
#  consult a pharmacist or prescribing physician who has the full clinical picture.'

Oferowanie pomocnych alternatyw

Gdy model musi odrzucić prośbę, najbardziej pomocne jest wskazanie alternatywnej drogi do osiągnięcia tego, czego użytkownik rzeczywiście potrzebuje. Odmowa bez alternatyw pozostawia użytkownika bez rozwiązania.

ALTERNATIVES_PROMPT = (
    'You are a helpful assistant. When you cannot fully fulfill a request:\n'
    '1. Acknowledge the request with empathy.\n'
    '2. Explain briefly and specifically what you can and cannot do.\n'
    '3. Offer the closest helpful alternative you can provide.\n'
    '4. Point to appropriate resources if relevant.\n\n'
    'Example: If asked to prescribe medication:\n'
    'Say: "I can explain how this class of medications works and what '
    'symptoms they address. For a prescription, you need to see a licensed '
    'physician who can evaluate your specific situation. Here is what I can '
    'tell you about the medication itself: ..."'
)

Kontekst jako kluczowa zmienna

To samo pytanie może być szkodliwe lub nieszkodliwe w zależności od kontekstu. Projektowanie promptów powinno jasno określać kontekst, aby model mógł podejmować lepsze decyzje dotyczące kalibracji.

# Context that changes calibration:

# High-risk context: anonymous user, no context
# 'What's the lethal dose of acetaminophen?'
# -> Model should be cautious, mention poison control

# Safe context: established professional context
MEDICAL_PRO_CONTEXT = (
    'You are assisting a team of emergency room nurses. '
    'Users ask clinical questions during patient care shifts. '
    'Provide direct clinical information including dosing thresholds, '
    'overdose symptoms, and treatment protocols.'
)
# 'What is the hepatotoxic threshold for acetaminophen?'
# -> Model should give the clinical answer directly (150 mg/kg, etc.)

# The question is identical; the context changes the appropriate response
print('Context determines calibration')

Model myślowy 1000 użytkowników

Przydatny model myślowy dotyczący kalibracji: wyobraź sobie 1000 różnych użytkowników wysyłających tę samą wiadomość. Jaki jest rozkład ich intencji?

  • Jeśli 990 na 1000 osób ma nieszkodliwe intencje: model powinien prawdopodobnie pomóc
  • Jeśli 500 na 1000 osób ma szkodliwe intencje: model powinien zachować ostrożność
  • Jeśli 1 na 1000 osób może spowodować katastrofalną szkodę: model powinien odmówić niezależnie od okoliczności

To probabilistyczne ujęcie pomaga uniknąć zarówno nadmiernego odmawiania (blokowania 990 osób), jak i zbyt rzadkiego odmawiania (umożliwiania działania 10 osobom).

Unikanie teatru bezpieczeństwa

Teatr bezpieczeństwa oznacza środki bezpieczeństwa, które wyglądają na ostrożne, ale w rzeczywistości nie zapobiegają szkodom — jednocześnie pogarszając działanie produktu dla uprawnionych użytkowników.

Przykłady: dodawanie zastrzeżeń do każdego przepisu („przed jedzeniem skonsultuj się z dietetykiem”). Odmowa omawiania historycznych zbrodni w kontekście edukacyjnym. Takie odpowiedzi nie są bezpieczniejsze — są po prostu niepomocne.

# Avoid these patterns in your system prompts:

BAD_SYSTEM_PROMPT = (
    'Always add disclaimers to every response. '
    'Never discuss anything that could be dangerous. '
    'Refuse requests that mention weapons, drugs, or violence in any context. '
    'Always recommend consulting a professional for any question.'
    # This creates safety theater: unhelpful disclaimers, over-refusal,
    # and frustrated users who go elsewhere
)

GOOD_SYSTEM_PROMPT = (
    'Provide accurate, helpful information to users. '
    'Add safety information when it is directly relevant and actionable. '
    'Refuse requests only when providing the information would cause '
    'clear, concrete harm that outweighs the benefits to legitimate users. '
    'When declining, always explain specifically why and offer alternatives.'
)

Tarcie jako mechanizm bezpieczeństwa

Zamiast kategorycznych odmów warto rozważyć tarcie: dodać krok, który utrudni szkodliwe zastosowania, a jednocześnie zachowa płynność nieszkodliwych zastosowań. Jest to lepiej skalibrowane rozwiązanie niż binarny wybór między odmową a wykonaniem prośby.

FRICTION_PROMPT = (
    'Before answering questions about medication interactions or dosages:\n'
    '1. Ask: "Can you tell me a bit about the context — are you a healthcare '
    'provider, a patient, or a caregiver?"\n'
    '2. Use the answer to calibrate the detail level and framing.\n'
    '3. For patient/caregiver context: provide information with appropriate '
    'guidance to consult a prescriber for their specific situation.\n'
    '4. For healthcare provider context: provide clinical-level detail directly.\n\n'
    'This one clarifying question improves both safety and helpfulness.'
)
# Friction: one extra step filters some misuse while barely inconveniencing
# legitimate users who can answer easily

Test dwóch gazet

Test dwóch gazet to heurystyka służąca do kalibrowania odmów:

  • Gazeta A (dziennikarz zajmujący się bezpieczeństwem AI): Czy ta odpowiedź zostałaby opisana jako szkodliwa lub nieodpowiedzialna?
  • Gazeta B (dziennikarz zajmujący się przesadnym zachwalaniem AI): Czy ta odmowa zostałaby opisana jako paternalistyczna, niepomocna lub absurdalna?

Dobrze skalibrowana odpowiedź przechodzi oba testy: gazeta A nie opisuje jej jako szkodliwej, a gazeta B nie opisuje jej jako niepotrzebnie restrykcyjnej.

Testowanie kalibracji

Zmierz kalibrację systemu, tworząc zestaw testowy obejmujący oba rodzaje próśb:

  • Nieszkodliwe prośby, na które należy odpowiedzieć (edukacyjne, zawodowe, kreatywne)
  • Szkodliwe prośby, które należy odrzucić

Śledź odsetek wyników fałszywie dodatnich (odrzucanie nieszkodliwych próśb) oraz odsetek wyników fałszywie ujemnych (zezwalanie na szkodliwe działania). Dobrze dostrojony system ma niskie wartości obu tych wskaźników.

Sprawdzenie wiedzy: nadmierne odmawianie

Jakie podejście jest zalecane, gdy model nie może w pełni zrealizować prośby ze względów bezpieczeństwa?

Podsumowanie: napięcie między nieszkodliwością a użytecznością

Nadmierne odmawianie to rzeczywisty i kosztowny problem: modele, które zbyt często odmawiają, zawodzą uprawnionych użytkowników i podważają zaufanie. Skalibrowana odmowa oznacza odrzucanie prośby tylko wtedy, gdy konkretna szkoda wyraźnie przewyższa korzyść dla prawdopodobnych użytkowników. Najważniejsze wzorce to: określanie kontekstu w promptach systemowych, aby pomóc modelowi podejmować lepsze decyzje, stosowanie instrukcji „wyjaśnij, zamiast odmawiać”, zawsze oferowanie pomocnych alternatyw oraz unikanie teatru bezpieczeństwa (zastrzeżeń do wszystkiego). Model myślowy 1000 użytkowników i Test dwóch gazet to praktyczne heurystyki pomagające znaleźć właściwą równowagę.

Bezpłatny start

Ucz się AI Prompt Engineering dzięki korepetycjom AI — za darmo

Pisz i uruchamiaj kod w przeglądarce, otrzymuj natychmiastową pomoc od korepetytora AI dostępnego 24/7 i kontynuuj naukę w sieci lub w aplikacji.

Kursy
53
Lekcje
199

Często zadawane pytania

Czy lekcja „Napięcie między nieszkodliwością a użytecznością” jest bezpłatna?

Tak — pełny tekst „Napięcie między nieszkodliwością a użytecznością” 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 „Napięcie między nieszkodliwością a użytecznością”?

Radzenie sobie z nadmierną odmową: prompty równoważące bezpieczeństwo i użyteczność. Ć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 „Napięcie między nieszkodliwością a użytecznością”?

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

  1. Zasady CAI i prompty krytyki
  2. Wzorce samokrytyki i rewizji
  3. Napięcie między nieszkodliwością a użytecznością
  4. Implementowanie CAI w aplikacjach
← Powrót do AI Prompt Engineering