VibeDaily
← 목록
프롬프트팁트러블슈팅

AI가 없는 함수를 자신 있게 지어낼 때 — 할루시네이션 대처법

2026.07.25👁 5

"이 함수 쓰면 돼요" 하면서 AI가 df.auto_clean() 같은 걸 술술 알려줬는데, 막상 돌려보니 그런 함수가 없다. AI 코딩하다 보면 하루에도 몇 번씩 겪는 일이죠. 오늘은 이 할루시네이션(그럴듯한 거짓말) 을 다루는 법이에요.

AI 할루시네이션 — 왜 없는 걸 지어낼까요

AI는 "정답"을 아는 게 아니라 "이 다음에 올 법한 말" 을 예측해요. 그래서 실제 존재 여부보다 "있을 법함" 에 끌립니다. 특히 마이너한 라이브러리나 아주 최신 버전일수록, 학습에 쓰인 자료가 적어서 더 자주 지어내요.

지어낼 때의 신호 — 이럴 때 의심하세요

경험상 할루시네이션은 특정 상황에 몰려요. 이럴 때 한 번 더 확인하세요.

  • 딱 필요한 이름의 함수가 마침 있다고 할 때 (autoFixEverything() 처럼 너무 편한 이름)
  • 아주 최신 버전의 기능을 물어봤을 때
  • 마이너한 라이브러리의 세부 API를 설명할 때
  • 근거 링크 없이 지나치게 확신할 때

이게 왜 위험하냐면

시간 낭비로 끝나면 다행인데, 보안 문제 로도 번져요. AI가 존재하지 않는 패키지 이름 을 지어내는 경우가 있는데, 공격자가 이 "자주 지어내는 이름" 패턴을 노려 똑같은 이름의 악성 패키지를 미리 올려두는 수법이 있어요. 이걸 '슬롭스쿼팅(slopsquatting)'이라고 불러요. 그래서 AI가 알려준 패키지는 설치 전에 실존 확인 이 필수예요.

설치 전에 '진짜 있는 패키지인지' 확인하기
# AI가 추천한 패키지명을 그대로 설치하지 말고, 레지스트리에 실제 있는지 먼저 확인해요
# ← AI가 알려준 패키지 이름을 여기에 넣어요
PKG="ai-suggested-lib"
 
# npm이면: 버전이 뜨면 실존, 404가 나면 지어낸 이름일 수 있어요
npm view "$PKG" version
 
# 파이썬이면: 후보 버전이 안 뜨면 존재하지 않는 패키지예요
# (pip index는 실험적 명령이라 버전에 따라 안 될 수 있어요)
pip index versions "$PKG"
 
# 위가 안 되면 이 방법으로 — 페이지가 없으면 지어낸 이름이에요
pip download "$PKG" --no-deps -d /tmp/chk

AI 할루시네이션 줄이는 법

  1. 문서를 붙여주세요. "추측하지 말고, 아래 붙인 공식 문서 기준으로만 써줘" 한 줄이면 지어냄이 확 줄어요.
  2. "모르면 모른다고 해" 를 명시하세요. 확신 못 하는 부분을 표시하게 만드는 거예요.
  3. 검증을 시키세요. 에이전트라면 "import해서 실제로 실행되는지 확인하고 알려줘"가 최고예요. 코드는 결국 돌려봐야 진짜인지 압니다.
  4. 스택·버전을 규칙 파일에 고정 하세요. (지난 기사에서 다룬 CLAUDE.md·AGENTS.md가 여기서도 효자예요.)

한 줄 요약

핵심은 하나예요 — AI의 자신감과 정확함은 별개. 술술 말한다고 맞는 게 아니에요. 특히 패키지·최신 API는 꼭 한 번 실물로 확인하고 넘어가세요. 30초 확인이 나중의 몇 시간을 아껴요. 여러분이 겪은 황당한 할루시네이션 사례, 방에 풀어주세요 😅 서로 백신 맞는 셈이에요 ⚡

오늘 글, 도움이 되셨나요?