
# Inżynieria Promptów dla Wiarygodnych Odpowiedzi AI na Pytania Bezpieczeństwa w Kwestionariuszach

## Wprowadzenie  

Kwestionariusze bezpieczeństwa są wąskim gardłem dla wielu firm SaaS. Jedna ocena dostawcy może obejmować dziesiątki szczegółowych pytań dotyczących ochrony danych, reakcji na incydenty, kontroli dostępu i nie tylko. Ręczne tworzenie odpowiedzi jest czasochłonne, podatne na błędy i często prowadzi do zduplikowanej pracy w różnych zespołach.  

Duże modele językowe (LLM), takie jak GPT‑4, Claude czy Llama 2, potrafią w ciągu kilku sekund przygotować wysokiej jakości narracyjne odpowiedzi. Jednak bezpośrednie wykorzystanie ich mocy w kwestionariuszu rzadko daje wiarygodne wyniki. Surowy output może odejść od języka polityki, pominąć kluczowe klauzule lub „halucynować” dowody, które nie istnieją.  

**Inżynieria promptów** – dyscyplinowane tworzenie tekstu, który steruje LLM – zamyka lukę między surową zdolnością generatywną a rygorystycznymi standardami zgodności wymaganą przez zespoły bezpieczeństwa. W tym artykule przedstawiamy powtarzalny framework inżynierii promptów, który zamienia LLM w godnego zaufania asystenta do automatyzacji kwestionariuszy bezpieczeństwa.  

Omówimy:

* Jak wbudować wiedzę o politykach bezpośrednio w prompt’y  
* Techniki kontroli tonu, długości i struktury  
* Automatyczne pętle weryfikacyjne, które wychwytują niespójności przed ich przekazaniem audytorom  
* Wzorce integracji z platformami takimi jak Procurize, włączając diagram przepływu Mermaid  

Po zakończeniu przewodnika praktycy będą dysponować konkretnym zestawem narzędzi, które można zastosować od razu, aby skrócić czas realizacji kwestionariuszy o 50 % – 70 % przy jednoczesnym zwiększeniu dokładności odpowiedzi.

---

## 1. Zrozumienie Krajobrazu Promptów  

### 1.1 Typy Promptów  

| Typ Promptu | Cel | Przykład |
|-------------|------|---------|
| **Prompt kontekstowy** | Dostarcza LLM odpowiednich fragmentów polityk, standardów i definicji | „Poniżej znajduje się fragment naszej polityki [SOC 2](https://secureframe.com/hub/soc-2/what-is-soc-2) dotyczącej szyfrowania spoczynkowego…” |
| **Prompt instrukcyjny** | Mówi modelowi, w jaki sposób ma sformatować odpowiedź | „Napisz odpowiedź w trzech krótkich akapitach, każdy zaczynający się pogrubionym nagłówkiem.” |
| **Prompt ograniczający** | Ustawia sztywne limity, takie jak liczba słów lub zakazane terminy | „Nie przekraczaj 250 słów i unikaj słowa ‘może’.” |
| **Prompt weryfikacyjny** | Generuje listę kontrolną, którą odpowiedź musi spełniać | „Po sformułowaniu odpowiedzi, wypisz wszystkie sekcje polityki, które nie zostały przytoczone.” |

Solidny pipeline odpowiedzi na kwestionariusze zazwyczaj łączy kilka tych typów w jednym żądaniu lub korzysta z podejścia wielostopniowego (prompt → odpowiedź → ponowny prompt).

### 1.2 Dlaczego jednopunktowe prompt’y zawodzą  

Naiwny jednopunktowy prompt, taki jak *„Odpowiedz na następujące pytanie bezpieczeństwa”*, często skutkuje:

* **Pominięciem** – kluczowe odniesienia do polityk nie zostają uwzględnione.  
* **Halucynacją** – model wymyśla kontrolki, które nie istnieją.  
* **Niespójnym językiem** – odpowiedź używa potocznego stylu, niepasującego do tonu firmy.  

Inżynieria promptów łagodzi te ryzyka, dostarczając LLM dokładnie potrzebne informacje oraz prosząc go o samokontrolę wygenerowanego tekstu.

---

## 2. Budowanie Frameworku Inżynierii Promptów  

Poniżej krok‑po‑kroku framework, który można zakodować jako funkcję wielokrotnego użytku w dowolnej platformie zgodności.

### 2.1 Krok 1 – Pobranie Odpowiednich Fragmentów Polityki  

Użyj przeszukiwalnej bazy wiedzy (store wektorowy, grafowa DB lub prosty indeks słów kluczowych), aby wyłuskać najbardziej istotne sekcje polityk.  
*Przykładowe zapytanie*: „szyfrowanie spoczynkowe” + “[ISO 27001](https://www.iso.org/standard/27001)” lub „SOC 2 CC6.1”.

Wynik może wyglądać tak:

```
Fragment Polityki A:
„Wszystkie dane produkcyjne muszą być szyfrowane w spoczynku przy użyciu AES‑256 lub równoważnego algorytmu. Klucze szyfrowania są rotowane co 90 dni i przechowywane w sprzętowym module bezpieczeństwa (HSM).”
```

### 2.2 Krok 2 – Złożenie Szablonu Promptu  

Szablon łączący wszystkie typy promptów:

```
[KONTEKST] 
{Fragmenty Polityki}

[INSTRUKCJA] 
Jesteś specjalistą ds. zgodności, przygotowując odpowiedź na kwestionariusz bezpieczeństwa. Docelowa grupa odbiorców to starszy audytor bezpieczeństwa. Postępuj zgodnie z poniższymi zasadami:
- Używaj dosłownego języka z fragmentów polityki, gdy to możliwe.
- Struktura odpowiedzi: krótki wstęp, szczegółowe rozwinięcie i zwięzłe podsumowanie.
- Cytuj każdy fragment polityki przy pomocy tagu referencyjnego (np. [Fragment A]).

[PYTANIE] 
{Treść pytania bezpieczeństwa}

[OGRANICZENIE] 
- Maksymalnie 250 słów.
- Nie wprowadzaj żadnych kontrolek nie wymienionych w fragmentach.
- Zakończ oświadczeniem, że dowody mogą być dostarczone na żądanie.

[WERYFIKACJA] 
Po udzieleniu odpowiedzi, wypisz wszystkie fragmenty polityki, które nie zostały użyte oraz wszelkie nowe terminy wprowadzone.
```

### 2.3 Krok 3 – Wysłanie do LLM  

Prześlij złożony prompt do wybranego LLM przez jego API. Dla powtarzalności ustaw temperaturę = 0.2 (niska losowość) i max_tokens zgodnie z limitem słów.

### 2.4 Krok 4 – Parsowanie i Weryfikacja Odpowiedzi  

LLM zwraca dwie sekcje: **odpowiedź** oraz **listę kontrolną weryfikacyjną**. Skrypt automatyczny sprawdza:

* Czy wszystkie wymagane tagi fragmentów są obecne.  
* Czy nie pojawiły się nowe nazwy kontrolek (porównaj z białą listą).  
* Czy liczba słów spełnia ograniczenie.

Jeśli jakakolwiek reguła zostanie złamana, skrypt wyzwala **ponowny prompt** z informacją zwrotną:

```
[OPINIA]
Pominąłeś odniesienie do Fragmentu B i wprowadziłeś termin „dynamiczna rotacja kluczy”, który nie występuje w naszej polityce. Proszę o korektę.
```

### 2.5 Krok 5 – Dołączenie Linków do Dowodów  

Po pomyślnej weryfikacji system automatycznie dołącza linki do dowodów (np. logi rotacji kluczy, certyfikaty HSM). Gotowy output jest przechowywany w hubie dowodów Procurize i udostępniany recenzentom.

---

## 3. Diagram Przepływu w Świecie Rzeczywistym  

Poniższy diagram Mermaid wizualizuje pełny przepływ wewnątrz typowej platformy SaaS do zapewniania zgodności.

```mermaid
graph TD
    A["Użytkownik wybiera kwestionariusz"] --> B["System pobiera odpowiednie fragmenty polityki"]
    B --> C["Konstruktor Promptu tworzy wieloczęściowy prompt"]
    C --> D["LLM generuje odpowiedź + listę kontrolną weryfikacyjną"]
    D --> E["Automatyczny walidator analizuje listę kontrolną"]
    E -->|Pass| F["Odpowiedź zapisana, dołączone linki do dowodów"]
    E -->|Fail| G["Ponowny prompt z opinią zwrotną"]
    G --> C
    F --> H["Recenzenci przeglądają odpowiedź w panelu Procurize"]
    H --> I["Audyt zakończony, odpowiedź wyeksportowana"]
```

Wszystkie etykiety węzłów są zamknięte w podwójnych cudzysłowach, zgodnie z wymogiem.

---

## 4. Zaawansowane Techniki Promptów  

### 4.1 Demonstracje Few‑Shot  

Dołączenie kilku *przykładów* Q&A w promptcie może znacząco poprawić spójność. Przykład:

```
Przykład 1:
P: Jak chronicie dane w tranzycie?
O: Wszystkie dane w tranzycie są szyfrowane przy użyciu TLS 1.2 lub wyższego, z szyframi zapewniającymi forward‑secrecy. [Fragment C]

Przykład 2:
P: Opisz swój proces reakcji na incydenty.
O: Nasz plan IR opiera się na frameworku [NIST CSF](https://www.nist.gov/cyberframework) (NIST 800‑61), obejmuje 24‑godzinny czas eskalacji i jest przeglądany co pół roku. [Fragment D]
```

LLM otrzymuje konkretny styl do naśladowania.

### 4.2 Chain‑of‑Thought Prompting  

Zachęć model do myślenia krok po kroku przed odpowiedzią:

```
Zastanów się, które fragmenty polityki mają zastosowanie, wypisz je, a następnie sformułuj odpowiedź.
```

Redukuje to halucynacje i dostarcza przejrzystą ścieżkę rozumowania, którą można zapisać w logach.

### 4.3 Retrieval‑Augmented Generation (RAG)  

Zamiast pobierać fragmenty przed promptem, pozwól LLM zapytać wektorowy store w trakcie generacji. Podejście to sprawdza się, gdy korpus polityk jest bardzo duży i stale się zmienia.

---

## 5. Integracja z Procurize  

Procurize już oferuje:

* **Repozytorium polityk** (centralne, wersjonowane)  
* **Tracker kwestionariuszy** (zadania, komentarze, ścieżka audytu)  
* **Hub dowodów** (przechowywanie plików, automatyczne linkowanie)  

Wbudowanie pipeline’u inżynierii promptów wymaga trzech kluczowych wywołań API:

1. `GET /policies/search` – pobranie fragmentów na podstawie słów kluczowych wyodrębnionych z pytania kwestionariusza.  
2. `POST /llm/generate` – przesłanie złożonego promptu i otrzymanie odpowiedzi + weryfikacji.  
3. `POST /questionnaire/{id}/answer` – zapis zweryfikowanej odpowiedzi, dołączenie linków do dowodów i oznaczenie zadania jako zakończonego.

Lekki wrapper w Node.js może wyglądać tak:

```javascript
async function answerQuestion(questionId) {
  const q = await api.getQuestion(questionId);
  const fragments = await api.searchPolicies(q.keywords);
  const prompt = buildPrompt(q.text, fragments);
  const { answer, verification } = await api.llmGenerate(prompt);
  if (verify(verification)) {
    await api.submitAnswer(questionId, answer, fragments.evidenceLinks);
  } else {
    const revisedPrompt = addFeedback(prompt, verification);
    // rekurencja lub pętla aż do uzyskania akceptacji
  }
}
```

Po podłączeniu do interfejsu UI Procurize, analitycy bezpieczeństwa mogą kliknąć *„Generuj odpowiedź automatycznie”* i obserwować pasek postępu przechodzący przez kroki z diagramu Mermaid.

---

## 6. Mierzenie Sukcesu  

| Metryka | Stan wyjściowy | Cel po zastosowaniu inżynierii promptów |
|--------|----------------|------------------------------------------|
| Średni czas tworzenia odpowiedzi | 45 min | ≤ 15 min |
| Współczynnik korekt ręcznych | 22 % | ≤ 5 % |
| Zgodność z odniesieniami do polityki (tagi) | 78 % | ≥ 98 % |
| Ocena satysfakcji audytora | 3.2/5 | ≥ 4.5/5 |

Dane te można zbierać w pulpicie analitycznym Procurize. Ciągłe monitorowanie umożliwia dopasowywanie szablonów promptów i selekcji fragmentów polityki.

---

## 7. Pułapki i Jak Ich Unikać  

| Pułapka | Objaw | Środek zaradczy |
|---------|--------|-----------------|
| Przeciążanie promptu nieistotnymi fragmentami | Odpowiedź oddala się od tematu, wydłużony czas LLM | Implementuj próg istotności (np. podobieństwo kosinusowe > 0.78) przed dołączeniem |
| Ignorowanie temperatury modelu | Sporadyczne kreatywne, lecz nieprawidłowe wyniki | Ustaw temperaturę na niską wartość (0.1‑0.2) dla zadań zgodności |
| Brak wersjonowania fragmentów polityki | Odpowiedzi odwołują się do przestarzałych klauzul | Przechowuj fragmenty z ID wersji i wymuszaj użycie „tylko najnowszych”, chyba że wyraźnie żądano wersji archiwalnej |
| Poleganie jedynie na pojedynczej weryfikacji | Przegapione przypadki skrajne | Uruchom dodatkową kontrolę regułową (np. wyrażenia regularne na zakazane terminy) po przejściu LLM |

---

## 8. Kierunki Rozwoju  

* **Dynamiczna optymalizacja promptów** – wykorzystanie uczenia ze wzmocnieniem do automatycznej korekty sformułowań promptu na podstawie historycznej skuteczności.  
* **Ensemble modeli** – równoległe zapytania do kilku LLM i wybór odpowiedzi o najwyższym wyniku weryfikacyjnym.  
* **Warstwy Explainable AI** – dołączanie sekcji „dlaczego ta odpowiedź” z dokładnym cytowaniem numerów zdań polityki, co czyni audyt w pełni śledzalnym.  

Te innowacje przesuną automatyzację z poziomu *„szybkiego szkicu”* do *„gotowej do audytu bez ludzkiej ingerencji.”*

---

## Podsumowanie  

Inżynieria promptów nie jest jednorazowym trikiem; to systematyczna dyscyplina, która przekształca potężne LLM w niezawodnych asystentów zgodności. Dzięki:

1. Precyzyjnemu pobieraniu fragmentów polityki,  
2. Tworzeniu wieloczęściowych promptów łączących kontekst, instrukcje, ograniczenia i weryfikację,  
3. Automatyzacji pętli sprzężenia zwrotnego wymuszającej samokorektę modelu, oraz  
4. Bezproblemowej integracji całego procesu z platformą taką jak Procurize,  

organizacje mogą zredukować czas realizacji kwestionariuszy, wyeliminować ręczne błędy i utrzymać rygorystyczne ścieżki śledzenia wymagane przez regulatorów i klientów.  

Rozpocznij od pilotażu frameworku na kwestionariuszu o niskim ryzyku, zbierz KPI, a następnie iteruj szablony promptów. Już w kilka tygodni osiągniesz taką samą precyzję, jaką oferuje doświadczony specjalista ds. zgodności — tylko przy ułamku nakładu pracy.

---  

## Zobacz także  

- Najlepsze praktyki inżynierii promptów dla LLM  
- Retrieval‑Augmented Generation: wzorce projektowe i pułapki  
- Trendy automatyzacji zgodności i prognozy na 2025 rok  
- Przegląd API Procurize i przewodnik integracji