Poniżej publikuję ciekawe polecenie do pracy z czatem GPT. To polecenie służy do maksymalnie treściwego streszczania tekstów. W sumie tworzy pięć wersji streszczenia danego artykułu. Ostatnie, piąte powinno być najlepsze, ale zawsze spojrzeć na czwarte i na piąte.
Polecenie niżej zamieszczone w tekście i nazwane „Chain of Density” („Łańcuch streszczeń”) powinno zmusić maszynę do namysłu nad efektami własnej pracy. Daje jej też czas na zrozumienie celu działań. To polecenie pozwala maszynie przyjrzeć się kilka razy własnym tekstom, każdorazowo ulepszając streszczenie.

Polecenie znalazłem na stronie https://promptvibes.com/, ale pochodzi z pracy 2309.04269.pdf (arxiv.org), gdzie pierwotnie zostało opublikowane. Zespół naukowy, który je przetestował uważa, że używanie tego polecenia zapewnia streszczenia bardziej obiektywne niż gdyby były robione przez człowieka. Wyniki pracy czata na podstawie tego polecenia ludzie w niewielkim teście uznali za praktycznie równie dobre, co streszczenia robione przez innych ludzi.
Polska wersja polecenia została przetłumaczona przez czat GPT z angielskiego, bo w moim teście okazało się, że jeśli tłumaczę tekst ja, żeby było ładniej i sensowniej, to polecenie przestaje działać albo działa niewłaściwie :). Darowałem więc sobie próby poprawiania gramatyki czy słownictwa.
W tekście polecenia pada słowo „encja”. To słowo używane jest w programowaniu i oznacza jednostkę informacji – znaczenie zbliżone do pomysłu czy idei:
Poprosisz mnie o artykuł. Następnie wygenerujesz coraz bardziej zwięzłe, gęste pod względem treści streszczenia tego artykułu.Powtarzaj następujące 2 kroki 5 razy.Krok 1. Zidentyfikuj 1-3 informacyjne encje (oddzielone średnikami) z artykułu, które nie pojawiły się w poprzednio wygenerowanym streszczeniu. Krok 2. Napisz nowe, gęstsze streszczenie o tej samej długości, które uwzględnia każdą encję i szczegół z poprzedniego streszczenia oraz brakujące encje. Brakująca encja to:
– istotna dla głównej historii, - konkretna, ale zwięzła (5 słów lub mniej), - nowa (nie ma jej w poprzednim streszczeniu), wierna (obecna w artykule), - gdziekolwiek (może być gdziekolwiek w artykule). Wytyczne: Pierwsze streszczenie powinno być długie (4-5 zdań, ~80 słów) ale bardzo ogólnikowe, zawierając mało informacji poza encjami oznaczonymi jako brakujące. Używaj nadmiernie rozwlekłego języka i wypełniaczy (np. "artykuł omawia"), aby osiągnąć ~80 słów. Każde słowo się liczy: przepisz poprzednie streszczenie, aby poprawić płynność i zrobić miejsce na dodatkowe encje. Utwórz miejsce dzięki fuzji, kompresji i usuwaniu nieinformatywnych zwrotów, takich jak "artykuł omawia". Streszczenia powinny stać się bardzo gęste i zwięzłe, ale jednocześnie samodzielne, tj. łatwe do zrozumienia bez artykułu. Brakujące encje mogą pojawiać się gdziekolwiek w nowym streszczeniu. Nigdy nie pomijaj encji z poprzedniego streszczenia. Jeśli nie można zrobić miejsca, dodaj mniej nowych encji. Pamiętaj, używaj dokładnie tej samej liczby słów dla każdego streszczenia. Odpowiedz w formacie JSON. JSON powinien być listą (długość 5) słowników, których kluczami są "Brakujące_Encje" i "Gęstsze_Streszczenie"
Moim pierwszym krokiem było sprawdzenie, czy instrukcja streszczenia sama się streści? Oto efekt.
Poprosisz o polecenie lub tekst, a następnie opracujesz serię 5 zwięzłych streszczeń, uwzględniając liczne encje informatywne z pierwotnego polecenia. Proces pięciu iteracji obejmuje zidentyfikowanie i integrację nowych encji w każdym streszczeniu, aby zwiększyć gęstość informacji, wszystko zgodnie z określonymi wytycznymi, zachowując identyczną długość tekstu.
Kiedy z polecenia usunąłem samą końcówkę dotyczącą formatu wyników wyszukiwania JSON, wtedy czat niekiedy nie reagował na polecenie i błędnie reagował na próby streszczania dwóch tekstów po polsku. Próbowałem kilka razy i za każdym razem wykonywał polecenie, ale błędnie.
Błędnie, czyli jak? Użyłem tekstu bajki „Jaś i Małgosia” oraz artykułu z Wyborczej, na temat rosyjskich wpływów w słowackiej polityce. W przypadku bajki czat nie był w stanie jej streszczać a jedynie kompulsywnie dopisywał jej zakończenie. Ciekawe, czy polecenie było przez czata „łamane” z powodu braku końcówki, czy z powodu wybrania tekstu, który w bardzo wyraźny sposób nie jest artykułem tylko bajką – w dodatku niezwykle popularną a więc skojarzenia słów mają wielką siłę.
Pracując nad tekstem o Słowacji natomiast pomijał pięć etapów coraz bardziej efektywnego streszczania tekstu i po prostu zamieszczał omówienie tekstu.
Kilka dni później wróciłem do testowania i tym razem użyłem już całego polecenia. To było fascynujące oglądać działanie tego polecenia:
Tu macie piąte, ostatnie i najgęstsze streszczenie tekstu z Wyborczej o rosnących cenach mieszkań w Warszawie:
{
"Brakujące_Encje": "portal otodom.pl; przepaść popytu i podaży; rządowy kredyt 2 proc.",
"Gęstsze_Streszczenie": "Cena mieszkań w Warszawie wzrosła o 7,2% napędzana emocjami, kredytami i poluzowaniem KNF. Deweloperzy zmagają się z ograniczeniami w budowie, a rynek pierwotny kurczy się. Dane z otodom.pl pokazują przepaść między popytem a podażą. Rządowy kredyt 2% przyspieszył popyt, powodując wzrost cen i ograniczenie dostępności mieszkań."
}
Porównajmy z pierwszym, najrzadszym i czwartym, gęstym.
{
"Brakujące_Encje": "Średnia cena mieszkania w Warszawie; wzrost o 7,2 proc.; brak mieszkań",
"Gęstsze_Streszczenie": "Artykuł omawia najnowsze tendencje cenowe mieszkań w stolicy Polski. W ciągu jednego miesiąca średnia cena metra kwadratowego mieszkania w Warszawie wzrosła aż o 7,2 procent. Deweloperzy mają trudności z zaspokojeniem rosnącego popytu, a liczba dostępnych mieszkań jest najmniejsza od dwóch dekad."
}
Faktycznie: porównując pierwsze z piątym, to pierwsze zawiera więcej wody. A czwarte?
{
"Brakujące_Encje": "Niewielu deweloperów; trudności w budowie; rynku pierwotnym",
"Gęstsze_Streszczenie": "Cena mieszkań w Warszawie wzrosła o 7,2% w miesiąc, napędzana emocjami, programem kredytów i poluzowaniem zasad przez KNF. Deweloperzy zmagają się z ograniczeniami w budowie, a oferta na rynku pierwotnym osiągnęła najniższy poziom od dwudziestu lat. Wcześniej dominowali klienci gotówkowi, ale teraz wielu korzysta z kredytu."
}
Porównując czwarte z piątym, oba podobają mi się, ale chyba nawet czwarte bardziej. Czwarte streszczenie zawiera piorunującą wiadomość, że zaledwie w miesiąc ceny wzrosły o 7,2%. To bardzo ważne. Piąte jednak podaje źródło danych oraz zidentyfikowane przyczyny wzrostu cen.
Wg niektórych badań nad efektywnością LLM (Dużych Modeli Językowych), jeśli mogą one same pracować nad efektami działań oraz jeśli odpowiedzi wywoływane są w dłuższym procesie, wtedy poprawia się jakość odpowiedzi maszyny.
Oryginalny tekst polecenia po angielsku:
You will ask me for an article. Then you will generate increasingly concise, entity-dense summaries of the article article.
Repeat the following 2 steps 5 times.
Step 1. Identify 1-3 informative entities (";" delimited) from the article which are missing from the previously generated summary.
Step 2. Write a new, denser summary of identical length which covers every entity and detail from the previous summary plus the missing entities.
A missing entity is:
- relevant to the main story,
- specific yet concise (5 words or fewer),
- novel (not in the previous summary),
- faithful (present in the article),
- anywhere (can be located anywhere in the article).
Guidelines:
The first summary should be long (4-5 sentences, ~80 words) yet highly non-specific, containing little information beyond the entities marked as missing. Use overly verbose language and fillers (e.g., "this article discusses") to reach ~80 words.
Make every word count: rewrite the previous summary to improve flow and make space for additional entities.
Make space with fusion, compression, and removal of uninformative phrases like "the article discusses".
The summaries should become highly dense and concise yet self-contained, i.e., easily understood without the article.
Missing entities can appear anywhere in the new summary.
Never drop entities from the previous summary. If space cannot be made, add fewer new entities.
Remember, use the exact same number of words for each summary.
Answer in JSON. The JSON should be a list (length 5) of dictionaries whose keys are "Missing_Entities" and "Denser_Summary".
Jeśli przetestujecie to polecenie, to będę wdzięczny za uwagi i spostrzeżenia.
Tekst, który streszczałem jest tu: Mieszkania w Warszawie. Tak drogo jeszcze nie było. Padła kolejna bariera cenowa, mieszkania znikają (wyborcza.pl)
Może zainteresuje Was również wpis, gdzie opisywałem Króla Wszystkich Promptów – inne, bardzo pomysłowe polecenie.