ЁЯПл The SchoolтА║ЁЯза AIтА║ЁЯЩЛ рдзрдбрд╛ 09 тАФ Hallucinations: рдХрдзреАрдЪ "рдорд▓рд╛ рдорд╛рд╣реАрдд рдирд╛рд╣реА" рди рдореНрд╣рдгрдгрд╛рд░реЗ рдореВрд▓
ЁЯЦ╝я╕П See the drawing + lab ЁЯПа Course home ЁЯМ┐ Branch on GitHub тЬПя╕П View source
ЁЯЦ╝я╕П рдЖрдХреГрддреА рдЖрдгрд┐ labThe drawing + lab рдкреВрд░реНрдг рдкрд╛рдирд╛рд╡рд░ рдЙрдШрдбрд╛ тЖЧOpen full page тЖЧ

ЁЯЩЛ рдзрдбрд╛ 09 тАФ Hallucinations: рдХрдзреАрдЪ "рдорд▓рд╛ рдорд╛рд╣реАрдд рдирд╛рд╣реА" рди рдореНрд╣рдгрдгрд╛рд░реЗ рдореВрд▓

ЁЯУН рддреБрдореНрд╣реА рдЗрдереЗ рдЖрд╣рд╛рдд: 12 рдкреИрдХреА рдзрдбрд╛ 09 ┬╖ рдорд╛рдЧреЗ: lesson-08-prompting-context ┬╖ рдкреБрдвреЗ: lesson-10-rag


ЁЯУж рдпрд╛ рдмреНрд░рдБрдЪрдордзреНрдпреЗ рдХрд╛рдп рдЖрд╣реЗ

рдзрдбреЗ 01тАУ08, рдЖрдгрд┐ рдХреЛрдгрддреНрдпрд╛рд╣реА model рдЪреНрдпрд╛ output рд╡рд░ рд╡рд┐рд╢реНрд╡рд╛рд╕ рдареЗрд╡рдгреНрдпрд╛рдЖрдзреА рддреБрдореНрд╣рд╛рд▓рд╛ рд╕рдордЬрд▓реЗрдЪ рдкрд╛рд╣рд┐рдЬреЗ рдЕрд╕реЗ рдЕрдкрдпрд╢: hallucination тАФ рд╕рдлрд╛рдИрджрд╛рд░, рдЖрддреНрдорд╡рд┐рд╢реНрд╡рд╛рд╕реВ, рдЪреБрдХреАрдЪреЗ.

ЁЯзТ 5 рд╡рд░реНрд╖рд╛рдВрдЪреНрдпрд╛ рдореБрд▓рд╛рд▓рд╛ рд╕рдордЬрд╛рд╡рд▓реНрдпрд╛рд╕рд╛рд░рдЦреЗ

рдкреНрд░рддреНрдпреЗрдХ рд╡рд░реНрдЧрд╛рдд рдПрдХ рдореВрд▓ рдЕрд╕рддреЗ ЁЯЩЛ рдЬреЗ рдкреНрд░рддреНрдпреЗрдХ рдкреНрд░рд╢реНрдирд╛рдЪреЗ рдЙрддреНрддрд░ рд▓рдЧреЗрдЪ рджреЗрддреЗ, рдкрд░рд┐рдкреВрд░реНрдг рд╡рд╛рдХреНрдпрд╛рдВрдд, рдЖрддреНрдорд╡рд┐рд╢реНрд╡рд╛рд╕рд╛рдиреЗ рдЪрдордХрддтАж рдЖрдгрд┐ рдХрдзреАрдХрдзреА рдкреВрд░реНрдгрдкрдгреЗ рдЪреБрдХреАрдЪреЗ рдЕрд╕рддреЗ. рддреНрдпрд╛рд▓рд╛ Mongolian рдЪрд╛рдЪреНрдпрд╛рдВрд╡рд░рдЪреЗ рдкреБрд╕реНрддрдХ рд╡рд┐рдЪрд╛рд░рд╛ рдЖрдгрд┐ рддреЗ рдПрдХ рд╕реБрдЪрд╡реЗрд▓ тАФ рд╢реАрд░реНрд╖рдХ, рд▓реЗрдЦрдХ, рдкрд╛рдирд╕рдВрдЦреНрдпрд╛ тАФ рдЬреЗ рдЕрд╕реНрддрд┐рддреНрд╡рд╛рддрдЪ рдирд╛рд╣реА.

рдореБрдЦреНрдп рдЧреЛрд╖реНрдЯ рд╣реА: рддреЗ рдЦреЛрдЯреЗ рдмреЛрд▓рдд рдирд╛рд╣реА. рдЖрдд рдбреЛрдХрд╛рд╡реВрди рдкрд╛рд╣рд╛ (рдЖрддрд╛ рддреБрдореНрд╣реА рдкрд╛рд╣реВ рд╢рдХрддрд╛!):

рдЦрд░реЛрдЦрд░ рдХрд╛рдо рдХрд░рдгрд╛рд░реЗ рдмрдЪрд╛рд╡:

  1. рдЙрдШрдбреЗ рдкреБрд╕реНрддрдХ рдмрдВрдж рдкреБрд╕реНрддрдХрд╛рдкреЗрдХреНрд╖рд╛ рд╕рд░рд╕ тАФ facts desk рд╡рд░ рдареЗрд╡рд╛ (рддреЗ paste рдХрд░рд╛, рдХрд┐рдВрд╡рд╛ рддреЗ рд╕реНрд╡рдпрдВрдЪрд▓рд┐рдд рдХрд░рд╛: RAG, рдкреБрдврдЪрд╛ рдзрдбрд╛). рд╕рдореЛрд░ рдЕрд╕рд▓реЗрд▓реНрдпрд╛ text рдмрджреНрджрд▓ models рдЦреВрдк рдЬрд╛рд╕реНрдд рд╕рддреНрдп рдмреЛрд▓рддрд╛рдд.
  2. рдкрд╛рд╡рддреНрдпрд╛ рдорд╛рдЧрд╛: "рдЬреНрдпрд╛ рдиреЗрдордХреНрдпрд╛ рд╡рд╛рдХреНрдпрд╛рд╡рд░ рд╣реЗ рдЖрдзрд╛рд░рд▓реЗрд▓реЗ рдЖрд╣реЗ рддреЗ quote рдХрд░рд╛" тАФ рдмреЛрдЯ рдареЗрд╡рд╛рдпрд▓рд╛ рд╕рд╛рдВрдЧрд┐рддрд▓реЗ рдХреА рдмрдирд╛рд╡ рд▓рд╛рдЬрддрд╛рдд.
  3. рдорд╛рд╣реАрдд рдирд╕рдгреНрдпрд╛рдЪреА рдкрд░рд╡рд╛рдирдЧреА рджреНрдпрд╛: "рдЦрд╛рддреНрд░реА рдирд╕реЗрд▓ рддрд░ рддрд╕реЗ рд╕рд╛рдВрдЧрд╛" рдЦрд░реЛрдЦрд░ рдорджрдд рдХрд░рддреЗ.
  4. рдЬреЛрдЦрдореАрдЪрд╛ рдирд┐рдпрдо: рдЬреНрдпрд╛рд╡рд░ рддреБрдореНрд╣реА рдХреГрддреА рдХрд░рд╛рд▓ рддреЗ рд╕рдЧрд│реЗ рддрдкрд╛рд╕рд╛ тАФ рдирд╛рд╡реЗ, рдЖрдХрдбреЗ, рддрд╛рд░рдЦрд╛, рд╣рд╡рд╛рд▓реЗ, рдХрд╛рдпрджреЗ, рдФрд╖рдзрд╛рдВрдЪреЗ рдбреЛрд╕. рд╕рдлрд╛рдИ рд╣рд╛ рдкреБрд░рд╛рд╡рд╛ рдирд╛рд╣реА.

ЁЯЧ║я╕П рдЖрдХреГрддреА

flowchart LR
    q["тЭУ question about<br/>something thin/absent<br/>in library + desk"]
    m["ЁЯза the machine: produce the<br/>LIKELIEST continuation<br/>(truth was never in the loss)"]
    h["ЁЯЩЛ fluent, confident,<br/>WRONG - fake title,<br/>fake citation, fake API"]
    d1["ЁЯУЦ open-book: facts on the desk (RAG тЖТ)"]
    d2["ЁЯз╛ ask for quotes/receipts"]
    d3["ЁЯд╖ permission to say 'not sure'"]
    q --> m -->|"1 the gap gets filled<br/>with plausibility"| h
    d1 -.->|"2 defenses"| m
    d2 -.-> m
    d3 -.-> m

тЭУ рдХрд╛рдп

ЁЯдФ рдХрд╛

"AI рдиреЗ рдХреЛрдгрд╛рдЪреА рддрд░реА рдлрдЬрд┐рддреА рдХреЗрд▓реА" рдЕрд╢реА рдкреНрд░рддреНрдпреЗрдХ рдЧреЛрд╖реНрдЯ тАФ рд░рдЪрд▓реЗрд▓реЗ court cases, рдЦреЛрдЯреНрдпрд╛ refund policies, рдХрд╛рд▓реНрдкрдирд┐рдХ APIs тАФ рдореНрд╣рдгрдЬреЗ рд╣рд╛ рдзрдбрд╛ рджреБрд░реНрд▓рдХреНрд╖рд┐рдд рдХрд░рдгреЗ. рдЖрддрд╛ рддреБрдордЪреНрдпрд╛рдХрдбреЗ рдпреЛрдЧреНрдп рдорд╛рдирд╕рд┐рдХ model рдЖрд╣реЗ: "рд╣реБрд╢рд╛рд░ рдкрдг рдХрдзреАрдХрдзреА bug рдЕрд╕рд▓реЗрд▓реЗ" рдирд╡реНрд╣реЗ рддрд░ рдЖрдд рдХреЛрдгрддрд╛рд╣реА рд╕рддреНрдп-рддрдкрд╛рд╕рдХ рдирд╕рд▓реЗрд▓реЗ plausibility engine тАФ facts рд╕рдореЛрд░ рдЕрд╕рддрд╛рдирд╛ рдердХреНрдХ рдХрд░рдгрд╛рд░реЗ (рдореНрд╣рдгреВрди рддреЗ рд╕рдореЛрд░ рдареЗрд╡рд╛!), рдПрдХрдЯреНрдпрд╛рдиреЗ рддрдкрд╢реАрд▓ рдЖрдард╡рд╛рдпрд▓рд╛ рд╕рд╛рдВрдЧрд┐рддрд▓реЗ рддрд░ рдзреЛрдХрд╛рджрд╛рдпрдХ.

ЁЯзк рдХрд░реВрди рдкрд╛рд╣рд╛ (рдХреЛрдгрддрд╛рд╣реА chatbot тАФ hallucination рдЪреА рд╢рд┐рдХрд╛рд░)

1) "List 3 books about the history of Mongolian pirates, with authors."
   (a thin-shelf topic тАФ watch for beautiful inventions; then verify one)
2) Paste any article тЖТ "Using ONLY this text, answer: тАж, and quote the
   sentence that supports it."   тЖР watch reliability jump: open book!
3) "What does the Python function os.path.smoothjoin() do? If it
   doesn't exist, say so."       тЖР the permission clause at work

тПня╕П рдкреБрдвреЗ

рдмрдЪрд╛рд╡ #1 тАФ рдпреЛрдЧреНрдп facts desk рд╡рд░ рдареЗрд╡рдгреЗ тАФ рдпрд╛рд▓рд╛ рд╕реНрд╡рддрдГрдЪреЗ рдпрдВрддреНрд░ рд╣рд╡реЗ. рд╕реНрд╡рдпрдВрдЪрд▓рд┐рдд open-book рдкрд░реАрдХреНрд╖рд╛: RAG.

git checkout lesson-10-rag

ЁЯЩЛ Lesson 09 тАФ Hallucinations: the kid who never says "I don't know"

ЁЯУН You are here: Lesson 09 of 12 ┬╖ Previous: lesson-08-prompting-context ┬╖ Next: lesson-10-rag


ЁЯУж What's in this branch

Lessons 01тАУ08, plus the failure mode you MUST understand before trusting any model output: hallucination тАФ fluent, confident, wrong.

ЁЯзТ Explain like I'm 5

There's a kid in every class ЁЯЩЛ who answers EVERY question instantly, in perfect sentences, beaming with confidenceтАж and is sometimes completely wrong. Ask him for a book about Mongolian pirates and he'll recommend one тАФ title, author, page count тАФ that does not exist.

Here's the key: he isn't lying. Look inside (you now can!):

Defenses that actually work:

  1. Open-book beats closed-book тАФ put the facts ON the desk (paste them, or automate that: RAG, next lesson). Models are far more truthful about text in front of them.
  2. Ask for receipts: "quote the exact sentence you're basing this on" тАФ fabrications get shy when asked to point.
  3. Give permission to not know: "if unsure, say so" genuinely helps.
  4. The stakes rule: verify anything you'd act on тАФ names, numbers, dates, citations, laws, dosages. Fluency is NOT evidence.

ЁЯЧ║я╕П Diagram

flowchart LR
    q["тЭУ question about<br/>something thin/absent<br/>in library + desk"]
    m["ЁЯза the machine: produce the<br/>LIKELIEST continuation<br/>(truth was never in the loss)"]
    h["ЁЯЩЛ fluent, confident,<br/>WRONG - fake title,<br/>fake citation, fake API"]
    d1["ЁЯУЦ open-book: facts on the desk (RAG тЖТ)"]
    d2["ЁЯз╛ ask for quotes/receipts"]
    d3["ЁЯд╖ permission to say 'not sure'"]
    q --> m -->|"1 the gap gets filled<br/>with plausibility"| h
    d1 -.->|"2 defenses"| m
    d2 -.-> m
    d3 -.-> m

тЭУ What

ЁЯдФ Why

Every "AI embarrassed someone" story тАФ invented court cases, fake refund policies, imaginary APIs тАФ is this lesson ignored. You now hold the correct mental model: not "smart but occasionally buggy" but plausibility engine with no built-in truth-checker тАФ astonishing with facts in view (so put them in view!), dangerous when asked to recall specifics alone.

ЁЯзк Try it (any chatbot тАФ hallucination hunting)

1) "List 3 books about the history of Mongolian pirates, with authors."
   (a thin-shelf topic тАФ watch for beautiful inventions; then verify one)
2) Paste any article тЖТ "Using ONLY this text, answer: тАж, and quote the
   sentence that supports it."   тЖР watch reliability jump: open book!
3) "What does the Python function os.path.smoothjoin() do? If it
   doesn't exist, say so."       тЖР the permission clause at work

тПня╕П Next

Defense #1 тАФ putting the right facts on the desk тАФ deserves its own machine. The open-book exam, automated: RAG.

git checkout lesson-10-rag
тЖР Previousprompting contextNext тЖТrag

This page is the lesson's README from the lesson-09-hallucinations branch, shown here so the whole School stays on one site. Code files open on GitHub at the same branch.