[AI 기초] SDD (Spec-Driven Development) - 스펙 주도 개발 방법론
1. SDD란 무엇인가 정의 SDD(Spec-Driven Development, 스펙 주도 개발)는 명세(Spec)를 완벽하게 작성하면, AI가 구현(Implementation)을 담당하는 개발 방법론. 핵심 원리: 자연어 명세(Markdown)와 테스트 시나리오를 먼저 작성 → AI에게 구현 위임 비유: PM(인간)과 시니어 개발자(A...
[AI 실전] System Prompting과 자동화 - .cursorrules 설정
1. System Prompt의 필요성 문제 상황 매번 프롬프트에 반복 지시 필요 “자바 전문가처럼 말해줘” “코드 짜면 커밋해줘” “해요체 사용해줘” 토큰 낭비 및 시간 소모 일관성 유지 어려움 해결책: System Prompt 전역 설정(Global Configuratio...
[AI 실전] Zero-shot, Few-shot, CoT 비교 및 선택 가이드
1. 기법 비교 요약 구분 Zero-shot Few-shot Chain of Thought (CoT) 특징 빠르고 간단함 출력 형식 준수 필요, 일관성 유지 논리적 추론 필요, 복잡한 계산 예...
[AI 실전] Few-Shot Learning과 Chain of Thought (CoT) - 고급 기법
1. Few-Shot Prompting 개념 모델에게 원하는 입력과 출력의 패턴(Pattern)을 미리 보여주는 기법 비유: Unit Test Code 또는 Mock Data “이 함수는 입력이 ‘A’일 때 ‘B’를 뱉어야 해”라고 assertEquals(A, B)를 보여주는 것과 동일 활용: JSON ...
[AI 실전] 프롬프트 설계 - Temperature, Persona, 함수 호출 관점
1. 프롬프트 = 함수 설계 프롬프트는 함수 호출과 동일함. 모호한 입력은 Garbage Output을 생성함. 함수 시그니처 비교 // Bad: 타입 불명확, 제약조건 없음 Object generate(String prompt); // Return type: Object (Unknown) // Good: 명확한 타입과 제약조건 Respons...
[AI 실전] 프롬프트 엔지니어링 기초 - P.C.T.O 프레임워크
1. 프롬프트 = 함수 설계 프롬프트는 함수 호출과 동일함. 모호한 입력은 Garbage Output을 생성함. 함수 시그니처 비교 // Bad: 타입 불명확, 제약조건 없음 Object generate(String prompt); // Return type: Object (Unknown) // Good: 명확한 타입과 제약조건 Respons...
[AI 기초] Transformer 아키텍처 - Self-Attention과 DB Self Join 비유
1. Transformer 개요 아키텍처 구조 Embedding Layer: 토큰을 벡터로 변환 Self-Attention: 모든 토큰 간 관계 계산 Feed Forward Network: 비선형 변환 DB 쿼리 관점에서의 Transformer -- Transformer = 복잡한 SELECT 쿼리 WITH token_embedd...
[AI 기초] Context Window와 RAG - LLM 메모리 구조 및 Stateless 특성
1. Stateless 특성: REST API와 동일한 구조 개념 정의 LLM은 상태를 저장하지 않음 이전 대화를 기억하지 못함 REST API와 동일한 Stateless 아키텍처 REST API와의 비교 // REST API: Stateless @RestController public class UserController { ...
[AI 도구] Cursor IDE - 설치 및 Codebase 인덱싱 설정
1. 프롬프트 엔지니어링의 핵심: Context Garbage In, Garbage Out 원칙 LLM은 입력된 맥락(Context)에 기반하여 답변 생성 부정확하거나 불충분한 맥락 → 부정확한 답변 충분하고 정확한 맥락 → 정확하고 실행 가능한 답변 맥락 제공의 중요성 예시: 코드 리뷰 요청 ❌ 맥락 없음 "UserServic...
[AI 기초] LLM 작동 원리 - Token, Next Token Prediction, Hallucination
1. Token (토큰) 1.1. 개념 LLM은 텍스트를 char[] 단위가 아닌 Token 단위로 처리함 의미 있는 단위로 묶어서 처리함으로써 계산 비용 절감 // 문자 단위 처리 (비효율) String text = "안녕하세요"; char[] chars = text.toCharArray(); // ['안', '녕', '하', '세'...