aiagent 11

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

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

7. Transformer — Attention Is All You Need

1. LSTM의 한계와 트랜스포머(Transformer)의 등장LSTM의 한계:단어를 한 개씩 순서대로 읽는 순차 처리 방식이라 GPU의 병렬 연산을 쓰지 못해 속도가 느림문장이 길어질수록 앞쪽 정보가 희석되는 장거리 의존성 문제가 여전히 존재트랜스포머의 혁신:모든 단어를 동시에 연결하는 병렬 처리 도입긴 문장이라도 모든 단어가 서로를 1스텝(직접 참조)만에 찾아가므로 정보 손실이 없고 학습 속도가 압도적으로 빠름비교LSTMTransformer처리 방식순차적 (한 단어씩)병렬 (모든 단어 동시)장거리 의존성어려움 (정보가 여러 셀을 거침)쉬움 (모든 단어가 직접 연결)학습 속도느림빠름 (GPU 병렬 처리)"배우"→"재미있었다" 거리10 스텝1 스텝 (직접 참조)핵심 메커니즘게이트 (망각/입력/출력)Sel..

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. 데이터 준비 및 레이블링데이터: 긍..

9. LangGraph 기초4 RAG와 연동

RAG를 LangGraph으로 구현해 봅시다.Case1 : 간단한 RAGLangChain의 RetrievalQA 함수로 구현된 RAG를 LangGraph로 구성Case2 : Vector DB를 tool로 사용Vector DB를 tool로 지정해서 RAG를 LangGraph로 구성Case1 : 간단한 RAGVector DB# CSV 파일 로드csv_path = "sample.csv"csv_loader = CSVLoader(file_path= path+csv_path)documents_csv = csv_loader.load()# 벡터 DB 정의embedding = OpenAIEmbeddings(model="text-embedding-ada-002")vectorstore = Chroma.from_documen..

8. LangGraph 기초3 메모리

Short-term memory : MemorySaverMemory SaverLangGraph에서 제공하는 체크포인트(Checkpoint) 저장소그래프 실행 중 생성되는 상태(state)를 자동으로 저장하고 필요 시 복원할 수 있게 해주는 메모리 기반 저장소주요 특징용도 : 그래프의 실행 상태(state)를 저장하고 복원저장 위치 : Python의 메모리(RAM)안에 저장(디스크 X)사용 방식 : LangGraph compile() 시 checkpointer로 넘김이어서 실행 : 이전 실행의 마지막 상태부터 재실행 가능한계 : 세션이 종료되면 저장된 상태는 사라짐(휘발성)메모리 세팅 절차메모리 준비from langgraph.checkpoint.memory importMemorySaver # MemoryS..

7. LangGraph 기초2 도구

AI Agent의 일반적인 구조LLM은 사용자의 입력을 받아 응답을 생성필요 시외부에서 정보를 검색하거나(Retrieval)툴을 사용하거나(Tool)메모리를 읽고 쓰며(Memory)결과를 종합해서 응답을 생성AI Agent : 간단한 Chatbot 만들기State 정의LangGraph에서 LLM 메시지 히스토리를 자동으로 관리하기 위한 방식목록이 업데이트될 때 덮어쓰지 않고 새롭게 추가class State(TypedDict): messages: Annotated[list, add_messages]Node 정의언어 모델을 gpt-4.1-mini로 설정응답을 다시 리스트에 감싸서 “messages”에 넣어 반환llm = ChatOpenAI(model="gpt-4.1-mini")def chatbot(state..

6. LangGraph 기초1 기본 그래프2

간단한 그래프그래프 실행입력 : State 딕셔너리 형식. 특정 키만 입력출력 : STate 딕셔너리 형식State 다루기State 정의State는 Agent의 각 단계에서 주고 받는 정보State의 구조를 설계하고 정보를 기록하는 일은 매우 중요합니다class State(TypedDict): text: str user_id: str step: int history: list[str]Node 정의text에 값 붙이기step에 값 증가history 리스트에 값 추가def node_1(state: State): print("node_1 실행 전 상태:", state) state["text"] += " → node_1 처리 완료" state["step"] += 1 state["history"].append(..

5. LangGraph 기초1 기본 그래프

AI Agent란?스스로 의사 결정하며, 도구를 사용하여, 목표를 달성하는 시스템도구 사용이나 다단계 추론을 활용LLM을 중심으로 다양한 외부 도구를 연결하여 구축AI Agent = GPT + Tool 사용 능력 + 상태 유지문제를 스스로 해결하는 시스템주요 구성 요소Goal : “무엇을 해야 할까?” - 사용자의 요청이나 해결할 문제Reasoning Engine : GPT 같은 모델 → 계획을 세움Toolset : 외부 기능(검색, 계산 API 등)Memory / State : 이전 정보 저장, 진행 상황 추적LangGraph란?LangGraphAI Agent 간의 협업을 그래프 기반으로 설계하는 프레임워크워크플로우(Workflow) : AI 에이전트들이 특정 목표를 위해 수행하는 일련의 과정 의미복잡..