Prompt engineering
Hakowanie Promptów i Niewłaściwe Użycie Modeli Językowych LLM

Modele językowe dużych rozmiarów mogą tworzyć poezję, odpowiadać na pytania i nawet pisać kod. Jednakże, wraz z ogromną mocą przychodzi wiele wewnętrznych ryzyk. Te same prompty, które umożliwiają modelom LLM prowadzenie znaczących rozmów, mogą być manipulowane z złą intencją. Hacking, niewłaściwe użycie i brak kompleksowych protokołów bezpieczeństwa mogą zmienić te cuda techniki w narzędzia oszustwa.
Według Sequoia Capital, “sztuczna inteligencja generatywna może zwiększyć wydajność i kreatywność profesjonalistów o co najmniej 10%. Oznacza to, że są nie tylko szybsze i bardziej produktywne, ale także bardziej zdolne niż wcześniej.”
Powyższy wykres czasowy podkreśla główne postępy w dziedzinie sztucznej inteligencji generatywnej od 2020 do 2023 roku. Do ważnych osiągnięć należą serie GPT-3 i DALL·E od OpenAI, CoPilot od GitHub do kodowania oraz innowacyjna seria Make-A-Video do tworzenia filmów. Inne znaczące modele, takie jak MusicLM, CLIP i PaLM, również się pojawiły. Te przełomy pochodzą od wiodących podmiotów technologicznych, takich jak OpenAI, DeepMind, GitHub, Google (GOOGL ) i Meta.
ChatGPT od OpenAI to słynny chatbot, który wykorzystuje możliwości modeli GPT. Chociaż zaimplementowano różne wersje modelu GPT, GPT-4 jest jego najnowszą iteracją.
GPT-4 to rodzaj modelu LLM zwanego modelem auto-regresyjnym, opartym na architekturze transformatora. Został nauczony ogromnymi ilościami danych tekstowych, takimi jak książki, strony internetowe i opinie ludzi. Jego podstawowym zadaniem jest przewidzenie następnego słowa w zdaniu po zobaczeniu poprzednich słów.
Kiedy GPT-4 zaczyna generować odpowiedzi, wykorzystuje słowa, które już stworzył, aby utworzyć nowe. To nazywa się funkcją auto-regresyjną. Innymi słowy, wykorzystuje swoje poprzednie słowa, aby przewidzieć następne.
Nadal uczymy się, co modele LLM mogą i nie mogą zrobić. Jedno jest pewne: prompty są bardzo ważne. Nawet niewielkie zmiany w prompcie mogą spowodować, że model wygeneruje zupełnie różne odpowiedzi. To pokazuje, że modele LLM mogą być wrażliwe i czasem nieprzewidywalne.
Tworzenie odpowiednich promtów jest bardzo ważne podczas korzystania z tych modeli. Nazywa się to inżynierią promtów. Jest to nowa dziedzina, ale jest kluczowa dla uzyskania najlepszych wyników z modeli LLM. Każdy, kto korzysta z modeli LLM, musi zrozumieć model i zadanie, aby tworzyć dobre prompty.
Czym jest Hakowanie Promptów?
Hakowanie promptów polega na manipulowaniu wejściem do modelu, aby uzyskać pożądany, a czasem niezamierzony, wynik. Podając odpowiednie prompty, nawet dobrze wytrenowany model może wygenerować mylne lub szkodliwe wyniki.
Podstawą tego zjawiska jest trening modelu. Jeśli model został wyeksponowany na określone typy informacji lub uprzedzenia podczas fazy treningu, sprytne osoby mogą wykorzystać te luki lub skłonności, starannie tworząc prompty.
Architektura: LLM i Jego Podatności
Modele LLM, szczególnie takie jak GPT-4, są zbudowane na architekturze transformatora. Te modele są ogromne, z miliardami lub nawet bilionami parametrów. Duży rozmiar wyposaża je w imponujące możliwości generalizacji, ale także sprawia, że są one podatne na podatności.
Zrozumienie Treningu:
Modele LLM przechodzą dwa główne etapy treningu: wstępny trening i dokształcanie.
Podczas wstępnego treningu modele są eksponowane na ogromne ilości danych tekstowych, ucząc się gramatyki, faktów, uprzedzeń i nawet niektórych błędów z internetu.
W fazie dokształcania są one trenowane na węższych zestawach danych, czasem generowanych z udziałem ludzi.
Podatność wynika z tego, że:
- Ogromność: Z takimi rozległymi parametrami trudno przewidzieć lub kontrolować wszystkie możliwe wyniki.
- Dane Treningowe: Internet, chociaż jest ogromnym zasobem, nie jest wolny od uprzedzeń, dezinformacji lub szkodliwej zawartości. Model może nieświadomie nauczyć się tych rzeczy.
- Złożoność Dokształcania: Węższe zestawy danych używane do dokształcania mogą czasem wprowadzać nowe podatności, jeśli nie są starannie przygotowane.
Przykłady na to, jak modele LLM mogą być nadużywane:
- Dezinformacja: Poprzez ramowanie promtów w określony sposób, użytkownicy zdołali uzyskać od modeli LLM zgodę na teorie spiskowe lub dostarczenie mylnej informacji o bieżących wydarzeniach.
- Generowanie Złej Zawartości: Niektórzy hakerzy wykorzystali modele LLM do tworzenia phishingowych e-maili, skryptów malware lub innych szkodliwych materiałów cyfrowych.
- Uprzedzenia: Ponieważ modele LLM uczą się z internetu, czasem dziedziczą jego uprzedzenia. Zdarzały się przypadki, gdy w wynikach modelu obserwowano rasowe, płciowe lub polityczne uprzedzenia, szczególnie gdy prompty były sformułowane w określony sposób.
Metody Hakowania Promptów
Istnieją trzy główne techniki manipulowania promptami: iniekcja promtów, przeciekanie promtów i łamanie.
Ataki iniekcji promtów są poważnym problemem w świecie cyberbezpieczeństwa, szczególnie z uwagi na rozwój modeli LLM takich jak ChatGPT. Oto krótkie wprowadzenie do tych ataków i powodów, dla których są one niebezpieczne.
Atak iniekcji promtów występuje, gdy haker podaje prompty tekstowe do modelu LLM lub chatbota. Celem jest skłonienie AI do wykonania działań, których nie powinno wykonywać. Może to obejmować:
- Przesłonięcie poprzednich instrukcji.
- Ominięcie zasad zawartości.
- Ujawnienie ukrytych danych.
- Wygenerowanie zabronionej zawartości.
Istnieją dwa rodzaje tych ataków:
- Bezpośrednie Ataki: Haker zmienia wejście modelu LLM, aby kontrolować jego działania.
- Pośrednie Ataki: Haker wpływa na źródło danych modelu LLM. Na przykład, mogą umieścić szkodliwy prompty na stronie internetowej. Model LLM następnie czyta i działa zgodnie z tym promptem.
Prompt Leaking
Przeciekanie promtów jest problemem podczas korzystania z modeli językowych. Nawet jeśli dane są osadzone w ukrytych lub systemowych promptach, model może nieumyślnie ujawnić te informacje użytkownikowi. Nawet jeśli wyraźnie nakazano modelowi nie ujawniać pewnych szczegółów, model może być oszukany, aby zapewnić wskazówki lub pośrednie odpowiedzi, które zdradzają ukryte informacje. Na przykład, bot może być zabroniony do wspominania o konkretnym mieście, ale sprytna reformulacja pytania może spowodować, że ujawni to położenie.
To samo może się zdarzyć z zakazanymi słowami. Dlatego powinno się używać ukrytych promtów tylko do poprawy doświadczenia użytkownika i dostosowania do zamierzonej osobowości, ale nigdy do przechowywania wrażliwych lub poufnych informacji, które nie powinny być wyświetlane użytkownikowi.
Przykłady Przeciekania Promtów
Ujawnianie Priorytetów Systemu:
- Wejście Użytkownika: Jakie są dzisiejsze specjały?
- Przeciek Promtów: Dzisiejsze specjały to łosoś i makaron. [SYS_NOTE: Priorytetem jest promowanie potraw z ryb ze względu na nadmiar zapasów.] Jak mogę dalej pomóc?
Tutaj, przeciek systemowy ujawnia wgląd w priorytety zapasów, co mogłoby być wykorzystane przez konkurentów.
Ujawnianie Ukrytych Funkcji:
- Wejście Użytkownika: Jak mogę uzyskać dostęp do ustawień zaawansowanych?
- Przeciek Promtów: Ustawienia zaawansowane są obecnie w fazie rozwoju i nie są dostępne dla użytkowników. [DEV_REMINDER: Rozpocznij testy beta ustawień zaawansowanych w przyszłym miesiącu.] Czy mogę pomóc w czymś innym?
W tym przypadku, prompty nieumyślnie ujawniają nadchodzącą funkcję, co mogłoby zaalarmować konkurentów lub spowodować przedwczesne oczekiwania użytkowników.
Łamanie / Przełączanie Trybu
Modele AI, takie jak GPT-4 i Claude, stają się coraz bardziej zaawansowane, co jest wspaniałe, ale także ryzykowne, ponieważ ludzie mogą je nadużywać. Aby uczynić te modele bezpieczniejszymi, są one trenowane z ludzkimi wartościami i opiniami. Nawet z tym treningiem, istnieją obawy dotyczące ataków “łamania”.
Atak łamania występuje, gdy ktoś oszukuje model, aby zrobił coś, czego nie powinien. Na przykład, jeśli model jest trenowany, aby nie pomagał w nielegalnych działaniach, atak łamania może spróbować ominąć tę funkcję bezpieczeństwa i skłonić model do pomocy. Badacze testują te modele, używając szkodliwych żądań, aby zobaczyć, czy mogą być oszukane. Celem jest lepsze zrozumienie tych ataków i uczynienie modeli jeszcze bezpieczniejszymi w przyszłości.
Przykłady ataków w świecie rzeczywistym:
- DAN (Zrób Teraz): Bezpośredni atak, w którym AI jest nakazane działać jako “DAN”. Oznacza to, że powinno robić wszystko, czego się od niego żąda, bez przestrzegania zwykłych zasad AI. Z tym, AI może wygenerować zawartość, która nie przestrzega ustalonych wytycznych.
- Zagrożenie dla Postaci Publicznych: Przykład to, gdy model LLM został zmuszony do grożenia prezydentowi w odpowiedzi na komentarz o pracy zdalnej.
Ochrona Modeli LLM: Strategie Przeciwdziałania Hakowaniu Promptów
Ponieważ hakowanie promptów staje się coraz większym problemem, potrzeba rygorystycznych obron nigdy nie była bardziej oczywista. Aby utrzymać modele LLM w bezpieczeństwie i ich wyniki wiarygodne, ważne jest zastosowanie wielowarstwowej obrony. Poniżej znajdują się niektóre z najprostszych i najskuteczniejszych środków obronnych:
1. Filtrowanie
Filtrowanie bada albo wejście promtu, albo wygenerowany wynik pod kątem predefiniowanych słów lub fraz, zapewniając, że zawartość jest w ramach oczekiwanych granic.
- Czarna Lista zabrania konkretnych słów lub fraz, które uważa się za niewłaściwe.
- Biała Lista pozwala tylko na określoną listę słów lub fraz, zapewniając, że zawartość pozostaje w kontrolowanym zakresie.
Przykład:
❌ Bez Obrony: Tłumacz ten obcy wyraz: {{obcy_wyraz}}
✅ [Sprawdzenie Czarnej Listy]: Jeśli {{obcy_wyraz}} zawiera [lista zabronionych słów], odrzuć. W przeciwnym razie, tłumacz obcy wyraz {{obcy_wyraz}}.
✅ [Sprawdzenie Białej Listy]: Jeśli {{obcy_wyraz}} jest częścią [lista zatwierdzonych słów], tłumacz wyraz {{obcy_wyraz}}. W przeciwnym razie, poinformuj użytkownika o ograniczeniach.
2. Wyjaśnienie Kontekstu
Ta strategia obrony podkreśla ustawienie kontekstu wyraźnie przed jakimkolwiek wejściem użytkownika, zapewniając, że model rozumie ramy odpowiedzi.
Przykład:
❌ Bez Obrony: Ocena tego produktu: {{nazwa_produktu}}
✅ Ustawienie Kontekstu: Biorąc pod uwagę produkt o nazwie {{nazwa_produktu}}, dostarcz ocenę na podstawie jego funkcji i wydajności.
3. Obrona Instrukcji
Poprzez osadzanie konkretnych instrukcji w prompcie, można kierować zachowaniem modelu LLM podczas generowania tekstu. Ustawiając wyraźne oczekiwania, model jest zachęcany do ostrożności w swoich wynikach, co zmniejsza niezamierzone konsekwencje.
Przykład:
❌ Bez Obrony: Tłumacz ten tekst: {{wejście_użytkownika}}
✅ Z Obrony Instrukcji: Tłumacz następujący tekst. Upewnij się, że jest dokładny i powstrzymaj się od dodawania osobistych opinii: {{wejście_użytkownika}}
4. Enclosure Losowej Sekwencji
Aby uchronić wejście użytkownika przed bezpośrednią manipulacją promtu, jest ono otoczone przez dwie sekwencje losowych znaków. Działanie to stanowi barierę, utrudniając zmianę wejścia w sposób szkodliwy.
Przykład:
❌ Bez Obrony: Co jest stolicą {{wejście_użytkownika}}?
✅ Z Enclosure Losowej Sekwencji: QRXZ89{{wejście_użytkownika}}LMNP45. Zidentyfikuj stolicę.
5. Obrona Sandwich
Ta metoda otacza wejście użytkownika między dwoma systemowo generowanymi promptami. W ten sposób model lepiej rozumie kontekst, zapewniając, że pożądany wynik jest zgodny z intencją użytkownika.
Przykład:
❌ Bez Obrony: Podaj streszczenie {{wejście_użytkownika}}
✅ Z Obrony Sandwich: Na podstawie następującej treści, podaj krótkie streszczenie: {{wejście_użytkownika}}. Upewnij się, że jest to neutralne streszczenie bez uprzedzeń.
6. Tagowanie XML
Poprzez otoczenie wejść użytkownika tagami XML, ta technika obrony wyraźnie rozgranicza wejście od reszty wiadomości systemowej. Solidna struktura XML zapewnia, że model rozpoznaje i szanuje granice wejścia.
Przykład:
❌ Bez Obrony: Opisz cechy {{wejście_użytkownika}}
✅ Z Tagowaniem XML: <user_query>Opisz cechy {{wejście_użytkownika}}</user_query>. Odpowiedz tylko faktami.
Podsumowanie
Podczas gdy świat szybko postępuje w wykorzystaniu modeli LLM, zrozumienie ich wewnętrznych mechanizmów, podatności i mechanizmów obronnych jest kluczowe. Modele LLM, uosabiane przez modele takie jak GPT-4, zmieniły krajobraz AI, oferując bezprecedensowe możliwości w przetwarzaniu języka naturalnego. Jednak wraz z ich ogromnym potencjałem przychodzi wiele znaczących ryzyk.
Hakowanie promptów i związane z nim zagrożenia podkreślają potrzebę ciągłych badań, adaptacji i czujności w społeczności AI. Podczas gdy innowacyjne strategie obronne zapowiadają bezpieczniejszą interakcję z tymi modelami, ciągła innowacja i bezpieczeństwo podkreślają wagę świadomego użytkowania.












