LLM 5

9. Gemini API & LangChain - LLM 활용의 실전

1. 왜 Gemini API인가? (비용 및 성능 우위)주요 LLM API 비교서비스무료 여부무료 제한Google Gemini✅ 무료 Tier신용카드 불필요, 일 250회OpenAI GPT-4o❌ 유료가입 시 소량 크레딧Anthropic Claude❌ 유료-Free Tier 모델모델분당 요청일 요청특징gemini-2.5-flash10250✅ 추천! 빠르고 충분한 성능gemini-2.5-flash-lite151,000가장 빠름, 간단한 과제gemini-2.5-pro5100가장 똑똑함, 제한 빡빡2. Gemini 공식 SDK (google-genai) 기초 실무2025년부터 기존 구버전(google-generativeai)은 Deprecated(비권장)되었으며, 한국어 인코딩 오류 등을 해결한 새로운 공식 ..

8. GPT 모델 — 사전학습, 파인튜닝, 프롬프트

Encoder vs Decoder — BERT와 GPT의 갈림길핵심 차이: Attention의 방향BERT (Encoder) — 양방향: 모든 단어가 모든 단어를 참조"나는 영화를 [MASK] 봤다" ↕ ↕ ↕ ↕ ← 전후 모든 방향으로 참조→ "봤다"를 보고 [MASK] = "재미있게"를 맞출 수 있음→ 미래 단어("봤다")도 참조 가능!BERT는 문장의 일부를 [MASK]로 가리고 주변 문맥을 보고 맞추는 방식으로 학습앞뒤 단어를 모두 볼 수 있으므로 문장을 이해하는 데 강함하지만 텍스트를 순차적으로 생성하는 데는 적합하지 않음.GPT (Decoder) — 단방향: 왼쪽(과거)만 참조"나는 영화를 재미있게" → → → ??? ..

6. 텍스트 분석을 위한 딥러닝 기초

1. 텍스트 분석에 딥러닝이 필요한 이유전통 ML(TF-IDF)의 한계: 단어의 빈도만 보기 때문에 단어 순서를 무시하며("지루하지 않고 재미있다" vs "재미있지 않고 지루하다"), 문맥을 이해하지 못해 다의어("먹는 사과" vs "용서를 구하는 사과")를 구분하지 못함딥러닝의 혁신: 단어를 고차원 실수의 밀집 벡터(임베딩)로 표현하고, 단어의 순서와 주변 문맥을 스스로 파악하여 특성을 자동 학습구분전통 ML (TF-IDF + 분류기)딥러닝 (RNN/Transformer)단어 표현빈도 기반 (희소 벡터)임베딩 (밀집 벡터)단어 순서❌ 무시✅ 반영문맥 이해❌ 불가✅ 가능특성 추출사람이 직접 설계모델이 자동 학습데이터 양적어도 OK많을수록 유리학습 시간빠름느림 (GPU 필요)2. 인공신경망(Neural N..

5. 단어 임베딩 — Word2Vec

1. Word2Vec의 필요성 (TF-IDF의 한계)from sklearn.feature_extraction.text import TfidfVectorizerfrom sklearn.metrics.pairwise import cosine_similarity리뷰1 = "배우의 연기가 정말 훌륭했어요"리뷰2 = "주인공의 연기력이 정말 뛰어났어요" # 사실상 같은 말리뷰3 = "스토리가 지루하고 각본이 허술했어요" # 완전히 다른 내용vec = TfidfVectorizer(analyzer='char_wb', ngram_range=(2,4))X = vec.fit_transform([리뷰1, 리뷰2, 리뷰3])유사도 = cosine_similarity(X)print(f"리뷰1 ↔ 리뷰2 (배우연기 vs 주..

4. 텍스트 분류 — 긍정/부정 자동 판단

1. 텍스트 분류 전체 파이프라인 (STEP 1~6)리뷰 텍스트 ↓ ① 전처리() 특수문자 제거 ↓ ② train_test_split() 훈련 75% / 테스트 25% ↓ ③ TfidfVectorizer char_wb + ngram(2,4) → 수천 개 특성 .fit_transform(훈련) 훈련만 fit! .transform(테스트) 테스트는 변환만! ↓ ④ 모델.fit() 나이브 베이즈 or 로지스틱 회귀 모델.predict() ↓ ⑤ classification_report() 정확도 + Precision + Recall + F1STEP 1. 데이터 준비 및 레이블링데이터: 긍..