<aside> 🎴 이 실습은 코드를 직접 작성하지 않습니다. AI에게 무엇을 만들지 설명하면, AI가 코드를 짜줍니다. 여러분은 개념을 이해하고, AI에게 정확히 요청하고, 결과를 비교하는 것이 목표입니다.
</aside>
<aside> 🗺️ 5단계에 걸쳐 타로 해석 AI 앱을 점점 발전시킵니다. 매 단계마다 Claude에게 요청 → 앱 실행 → 이전 결과와 비교하는 사이클을 반복합니다.
</aside>
Step 1 🔵 Zero-shot → 카드 이름만 줘서 해석 요청 (베이스라인)
Step 2 🟡 RAG Basic → 카드 의미 DB를 검색해서 LLM에 전달
Step 3 🟢 RAG + CoT → 역할 부여 + 단계별 추론 + 형식 지정
Step 4 🟣 Few-shot → 예시를 보여주며 스타일 제어
Step 5 🏆 4가지 비교 → 한 화면에서 모든 결과 동시 비교
pip install gradio sentence-transformers faiss-cpu huggingface_hub pillow -q
<aside> ✅ 준비 완료 확인: ✅ tarot/data/tarot_cards.json 파일이 있나요? ✅ tarot/data/iimg/ 폴더에 카드 이미지가 있나요? ✅ HuggingFace 토큰이 있나요? (hf_로 시작)
</aside>
LLM(언어 모델)에게 타로 카드 이름만 알려주고 해석을 부탁합니다.
마치 처음 만난 점술사에게 '이 카드 3장이 나왔는데 해석해줘' 라고 말하는 것과 같습니다.
LLM이 이미 타로 카드를 알고 있다면 잘 답하겠지만, 상세한 의미는 모를 수도 있습니다.
<aside> 🔵 Zero-shot = 예시나 추가 정보 없이, 지시만으로 AI를 동작시키는 방식 "zero"는 예시가 0개라는 뜻입니다.
→ 이 단계의 결과가 베이스라인입니다. 이후 단계에서 얼마나 좋아지는지 비교하세요.
</aside>
<aside> 📋 아래 내용을 그대로 복사해서 AI에게 붙여넣으세요.
</aside>
타로 카드 해석 Gradio 앱을 만들어줘.
조건:
- data/tarot_cards.json 에서 카드 데이터를 불러와
- HuggingFace Inference API로 Qwen/Qwen3-8B 모델을 사용해
- 사용자가 고민을 입력하면 카드 3장을 랜덤으로 뽑아 정방향/역방향을 정해
- data/iimg/ 폴더에서 카드 이미지를 불러와서 표시해 (역방향은 180도 회전)
- 프롬프트는 카드 이름과 방향만 LLM에 전달하는 Zero-shot 방식으로 만들어
- Gradio UI는 왼쪽에 고민 입력+토큰 입력, 오른쪽에 카드 이미지 3장+해석 결과
- 파일명은 step1_zero_shot.py 로 저장해줘