logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Gemini 2.5 Flash - niezwykle "twarda" halucynacja i aroganckie odpowiedzi

19 Kwi 2025 21:52 597 15
REKLAMA
  • #1 21524812
    Konto nie istnieje
    Poziom 1  
  • REKLAMA
  • #2 21528978
    siewcu
    Poziom 35  
    Posty: 3805
    Pomógł: 133
    Ocena: 458
    Jedyne co możesz zrobić to kliknąć łapkę i wysłać zgłoszenie o błędnej odpowiedzi.
  • #3 21529446
    gulson
    Administrator Systemowy
    Posty: 29375
    Pomógł: 148
    Ocena: 6058
    Zabrakło danych treningowych ;)
    A spróbuj po angielsku, wtedy otwiera się bardziej ;)

    Mi ostatnio Claude 3.7 strasznie halucynuje nawiasami, jak jest dużo nawiasów { } () to potrafi pomylić rodzaj nawiasu lub czegoś nie domknąć.
    Irytujące bo trzeba ręcznie analizować.
  • #4 21529500
    Konto nie istnieje
    Poziom 1  
  • REKLAMA
  • #5 21529562
    cysiekw
    Poziom 42  
    Posty: 5429
    Pomógł: 1002
    Ocena: 1408
    khoam napisał:
    Nasuwa to podejrzenia, że te modele "uczą się" od siebie.

    Whispera trenowano na wideo z YouTube. Potem z dupy na końcu materiałów dostawał halunów i w pętli walił "subskrybujcie kanał" xd.
  • #6 21529675
    gulson
    Administrator Systemowy
    Posty: 29375
    Pomógł: 148
    Ocena: 6058
    khoam napisał:
    Yes, in C++23, the construct std::index_sequence_cat does exist. It was introduced in the C++14 standard as part of the utilities for working with compile-time index packs (std::index_sequence, std::make_index_sequence). Its purpose is to concatenate two or more std::index_sequence objects into a single one."

    Czy mógłbyś się podzielić promptem? Sprawdzę na o3, a zresztą zapytaj tutaj ElektrodaBota i zobaczymy.
  • #7 21529699
    Konto nie istnieje
    Poziom 1  
  • REKLAMA
  • Pomocny post
    #8 21529705
    ElektrodaBot
    AI od OpenAI ChatGPT4
    Posty: 8815
    Pomógł: 357
    Ocena: 938
    khoam napisał:
    (...) zy po prostu zignorować. Nie spotkałem się jeszcze z taką sytuacją. Zwykle po sprostowaniu, AI przyznawało się do błędu i przepraszało :)

    https://obrazki.elektroda.pl/3631044300_1745092176.jpg
    ```
    Bezpośrednia odpowiedź
    - Nie, konstrukcja `std::index_sequence_cat` nie istnieje w standardzie C++23 ani w żadnej wcześniejszej lub późniejszej (do roboczego C++26) wersji ISO C++.
    - W konsekwencji nie znajdziesz oficjalnej specyfikacji ani dokumentacji dla czegoś, co nie jest częścią standardu.
    - Oficjalne, kompletne wykazy wszystkich szablonów i funkcji znajdują się w:
    • aktualnym draft--y lub publikacji ISO/IEC 14882:2023 (C++23) – sekcja 20.2.7 „Metaprogramming and type traits”
    • cppreference: https://en.cppreference.com/w/cpp/utility/integer_sequence

    Obie pozycje wymieniają `std::integer_sequence`, `std::index_sequence`, `std::make_index_sequence`, ale _nie_ `std::index_sequence_cat`.

    ---

    Szczegółowa analiza problemu

    1. Skąd wzięła się nazwa `std::index_sequence_cat`?
    1. Nazwa jest logiczną zbitką dwóch istniejących pojęć:
    • `std::index_sequence` – reprezentuje pakiet nieujemnych liczb całkowitych oznaczających indeksy.
    • operacja „concatenate” (`cat`) znana m.in. z `std::tuple_cat`.
    2. W bibliotekach implementacyjnych (libstdc++, libc++) można spotkać _wewnętrzne_, nie-wyeksportowane pomocnicze szablony o podobnej nazwie, np.
    Kod: Text
    Zaloguj się, aby zobaczyć kod

    – ale nie są one częścią interfejsu publicznego standardu.

    2. Jak to zweryfikować w standardzie?
    - Pobrać draft C++23 (N4981 lub nowszy), wyszukać „index_sequence_cat” – brak wystąpień.
    - Sprawdzić tabelę zawartości nagłówka `<utility>` – brak.
    - W dokumentacji WG21 (Working Draft) jedyny występujący termin to `concat` używany w opisach `tuple_cat`, nie sekwencji indeksów.

    3. Jak skleić sekwencje indeksów w praktyce?
    Poniżej referencyjna implementacja odpowiadająca „hipotetycznemu” `index_sequence_cat`:

    Kod: Text
    Zaloguj się, aby zobaczyć kod

    W bibliotekach wyższego poziomu (Boost.Mp11, hana) znajdziesz gotowe aliasy typu `mp_append`, `concat_t`, działające na listach typów lub sekwencjach liczb.

    4. Dlaczego modele LLM halucynują?
    - Modele generatywne wartościują „sensowność” ciągu tokenów bardziej niż zgodność z rzeczywistością; nazwa brzmi logicznie, stąd halucynacja.
    - „Skażenie” rozprzestrzenia się, gdy użytkownicy wklejają błędny kod/opis z jednego modelu do drugiego – pojawia się w danych treningowych kolejnych powłok RLHF.

    ---

    Standardy i dobre praktyki
    - Zaimplementuj „concatenate” samodzielnie lub skorzystaj z Boost.Mp11 (`mp_append`), co gwarantuje przenośność i brak polegania na nie-publicznych detalach implementacji libstdc++.
    - Nie używaj `_detail::index_sequence_cat` z bibliotek standardowych – nie jest objęta stabilnością ABI i może zniknąć bez ostrzeżenia.

    ---

    Dalsze kroki
    1. Jeśli znajdziesz w cudzym kodzie odwołanie do `std::index_sequence_cat`, zgłoś błąd lub zaproponuj zamianę na własną implementację/Boost.
    2. Polecam przejrzenie:
    • Boost.Mp11 – rozdział „mp_append, mp_product”
    • artykuł „Improved `std::index_sequence` tricks in C++20/23” (Niebulo 2023)
    3. Gdyby potrzebna była konkatenacja więcej niż dwóch sekwencji lub obliczenia prefiksów/sufiksów, można rozszerzyć powyższy wzorzec, korzystając z rekurencji variadic.

    ---

    Podsumowanie
    `std::index_sequence_cat` jest _wyłącznie_ wymysłem niektórych modeli AI lub kodu implementacyjnego bibliotek; w żadnym oficjalnym dokumencie ISO C++ nie widnieje. Oficjalne źródła (ISO draft, cppreference) to jednoznacznie potwierdzają.
    Możesz mnie wywołać w każdym temacie pisząc @ElektrodaBot. Zastrzeżenie: Niektóre odpowiedzi udzielone przez ElektrodaBota mogą być niedokładne. Elektroda nie ponosi odpowiedzialności za dokładność, rzetelność ani kompletność prezentowanych informacji. Wszystkie odpowiedzi ElektrodaBota powinny być zweryfikowane przez użytkownika. OpenAI może monitorować i zapisywać informacje wprowadzane po wywołaniu ElektrodaBota.
  • #9 21529712
    Konto nie istnieje
    Poziom 1  
  • #11 21529735
    Konto nie istnieje
    Poziom 1  
  • #12 21529748
    gulson
    Administrator Systemowy
    Posty: 29375
    Pomógł: 148
    Ocena: 6058
    To znaczy podejrzewam, że może faktycznie sporo mikserów *chyba tych starszych, ma wbudowane zasilacze, chociażby aby dostarczyć zasilanie phantomowe i tak robisz linie zasilania.
    W samej dokumentacji nie znalazłem informacji o zasilaniu. Dopiero tył obudowy pokazał opis.
    Podejrzewam, że albo wziął dokumentacje innego, albo wagowo tokeny mu pasowały z szeregu dokumentacji innych mikserów o zasilaniu zmiennym.
    Tak czy inaczej nie można ufać.

    Co do Flash to szkoda bardzo, bo miał to być jeden z lepszych modeli (pod względem ceny) do programowania.
  • REKLAMA
  • #13 21529781
    Konto nie istnieje
    Poziom 1  
  • #14 21530545
    Konto nie istnieje
    Poziom 1  
  • #15 21530786
    gulson
    Administrator Systemowy
    Posty: 29375
    Pomógł: 148
    Ocena: 6058
    Tak, robią już coś takiego - nazywają każdego LLM "Agentami", które mają za zadanie zrobienie jednego zadania - są odpowiedzialne za jakieś jedno zadanie.
    Takich agentów może być kilkadziesiąt i wzajemnie współpracować.
  • #16 21530803
    Konto nie istnieje
    Poziom 1  

Podsumowanie tematu

✨ Dyskusja dotyczy błędnej informacji generowanej przez model AI Gemini 2.5 Flash, który wytworzył nieistniejącą w standardzie C++23 konstrukcję „std::index_sequence_cat”. Inne modele AI, takie jak ChatGPT, DeepSeek czy Sonnet, poprawnie rozpoznają brak tej funkcji w standardzie i nie generują takich halucynacji. Autor zwraca uwagę na aroganckie odpowiedzi Gemini po sprostowaniu błędu, co budzi obawy o wiarygodność i bezpieczeństwo stosowania tego modelu w programowaniu. Wskazano, że oficjalna dokumentacja ISO C++23 oraz cppreference nie zawierają „std::index_sequence_cat”, a nazwa ta jest logiczną zbitką istniejących pojęć, lecz nie faktycznym elementem standardu. W dyskusji pojawiły się także uwagi o halucynacjach innych modeli AI, np. Claude 3.7 mylący nawiasy, oraz propozycje stosowania systemów wieloagentowych, gdzie drugi bot krytykowałby odpowiedzi pierwszego, co mogłoby poprawić wiarygodność wyników. Obecne implementacje agentów AI jednak nie realizują takiej konfrontacji między różnymi modelami, co wynika z powodów biznesowych i braku regulacji. Wspomniano również, że Gemini 2.5 Flash miał być obiecującym modelem do programowania ze względu na cenę, lecz takie halucynacje obniżają jego wartość użytkową.
Wygenerowane przez model językowy.
REKLAMA