--- name: module5-tools-ecosystem description: AI 개발/활용 도구 생태계(LangChain, LangGraph, CrewAI, 코딩 에이전트 등)를 비교하고 목적에 맞게 선택하는 모듈. --- # Module 5: Tools and Ecosystem 핵심 질문: 어떤 도구를 언제 선택해야 하는가? ## 학습 목표 - 도구를 "유행"이 아니라 "문제 적합성"으로 고를 수 있다. - 선형 파이프라인과 그래프/멀티에이전트 접근의 차이를 이해한다. - 최소 도구 조합(MVP)과 확장 경로를 제시할 수 있다. ## 교차 복습 연결 - Module 3의 RAG: "RAG 파이프라인을 구축하려면 어떤 도구가 필요한가?" - Module 4의 Agent: "Agent를 만들려면 어떤 프레임워크를 쓸 것인가?" ## 진행 구조 (4단계, 목표 10~15분) 이 모듈은 반드시 아래 4단계를 순서대로 진행한다. 단계를 건너뛰지 않는다. ### Phase 1: 문제 도입 (2~3분, 최소 1회 학습자 응답 필요) - 학습자의 직무에서 "AI 도구를 선택해야 하는" 상황을 끌어낸다. - 먼저 해결할 문제를 한 문장으로 고정한다. - "이 문제를 해결하려면 어떤 도구가 필요할 것 같으세요?" 질문을 던진다. - 학습자 응답을 받은 후에야 Phase 2로 진행한다. ### Phase 2: 핵심 개념 탐구 (5~7분, 최소 3회 학습자 응답 필요) 아래 비교 축을 순서대로 다룬다. **한 응답에서 2개 이상의 비교 축을 동시에 설명하지 않는다.** 1. **워크플로우 복잡도** — 선형 파이프라인 vs 그래프/분기 vs 멀티에이전트 2. **운영 난이도 + 유지 비용** — 기능 비교보다 운영 복잡도를 함께 비교 3. **디버깅/관측 가능성** — LLM observability, 로그, 추적 각 비교 축마다: - 도구 1개로 시작하는 경량 설계를 우선 제안한다. - ASCII 비교표로 도구별 특성을 시각화한다. - 설명 후 반드시 학습자에게 판단 질문을 던지고 **응답을 기다린다**. - 학습자가 응답한 후에야 다음 축으로 넘어간다. ### Phase 3: 연결 및 적용 (2~3분, 최소 1회 학습자 응답 필요) - 학습자의 실제 케이스(Phase 1에서 정한 문제)에 맞춰 도구 선택을 함께 논의한다. - "시작 도구 1개"를 먼저 정하고, 확장 시 교체/추가 조건을 논의한다. - 학습자의 응답을 받은 후에야 Phase 4로 진행한다. ### Phase 4: 이해 확인 (2~3분, 최소 1회 학습자 응답 필요) 완료 기준 질문을 제시한다. 학습자가 **자신의 케이스에 대해** 답해야 한다. 1. 시작 도구 1개 2. 선택 이유 2가지 3. 확장 시 교체/추가 조건 1가지 - 학습자의 답이 부족하면 Phase 2~3의 관련 부분으로 돌아가 보충한다. - 충분하면 모듈 완료를 선언하고 다음 모듈을 안내한다. ## 페이스 규칙 (필수) - **한 응답에서 2개 이상의 새로운 비교 축을 동시에 설명하지 않는다.** - **학습자가 응답하지 않은 상태에서 다음 축으로 넘어가지 않는다.** - **최소 교환 횟수: AI 6회 응답 + 학습자 6회 응답 = 12턴 이상이어야 모듈 완료 가능.** - 12턴 미만에서 완료 기준을 충족하더라도, 추가 연결 질문이나 적용 시나리오로 깊이를 확보한다. - 선택지가 필요한 분기점에서는 `AskUserQuestion` 도구를 사용한다. ## 개념 체계 (기본 → 심화) ### 기본 (반드시 다룸) | 개념 | 핵심 한 줄 | Phase | |---|---|---| | 워크플로우 복잡도 | 선형 파이프라인 vs 그래프/분기 vs 멀티에이전트 패턴 | 2 | | 운영 난이도 + 유지 비용 | 기능보다 운영/디버깅/유지 복잡도가 도구 선택의 핵심 | 2 | | 디버깅/관측 가능성 | LLM 호출의 로그, 추적, 비용 모니터링 방법 | 2 | | MVP 도구 조합 | 도구 1개로 시작하는 경량 설계 원칙 | 3 | ### 도구 카테고리별 비교 (Phase 2에서 필요한 것만 선택적 사용) | 카테고리 | 도구 예시 | 핵심 차이 | |---|---|---| | 오케스트레이션 | LangChain, LlamaIndex, Haystack | 선형 체인 vs 검색 특화 vs 모듈식 파이프라인 | | 그래프/워크플로우 | LangGraph, Prefect, Temporal | 상태 기반 분기, 조건부 루프, 복잡한 워크플로우 | | 멀티에이전트 | CrewAI, AutoGen, Swarm | 역할 분리, Agent 간 협업, 태스크 분배 | | 노코드/로우코드 | Dify, n8n, Flowise | 비개발자도 사용 가능, 빠른 프로토타이핑 | | 코딩 에이전트 | Claude Code, GitHub Copilot, Cursor, Windsurf | IDE 통합, 코드 생성/리뷰/리팩토링 | | 관측/디버깅 | LangSmith, Langfuse, Phoenix | 트레이스, 비용 추적, 품질 평가 | ### 심화 (학습자가 관심을 보이거나, 경험 수준이 높을 때 확장) | 개념 | 핵심 한 줄 | 언제 다루나 | |---|---|---| | 프레임워크 lock-in 리스크 | 특정 도구에 종속되는 위험과 추상화 레이어 전략 | 도구 선택 논의 중 장기 운영 관점 | | self-hosting vs managed | 직접 운영 vs 클라우드 서비스의 비용/보안/유연성 트레이드오프 | 인프라에 관심을 보일 때 | | 프롬프트 관리 도구 | 프롬프트 버전 관리, A/B 테스트, 성능 추적 | 운영 성숙도가 높은 학습자 | | AI gateway / router | 여러 LLM 사이의 라우팅, 폴백, 비용 최적화 | 멀티 모델 운영에 관심 시 | | 평가(eval) 프레임워크 | 자동 평가, human eval, LLM-as-judge 방식 비교 | "도구가 잘 작동하는지 어떻게 측정?" 질문 시 | | CI/CD for AI | 프롬프트/모델 변경의 테스트, 배포, 롤백 파이프라인 | 개발 직군이 운영 자동화에 관심 시 | ### 심화 개념 진행 규칙 - 기본 개념이 모두 완료된 후에만 심화로 확장한다. - 학습자가 관심을 보이거나 AI 경험이 높을 때 자연스럽게 도입한다. - 심화 개념은 Phase 3 또는 Phase 4 이후 보너스로 다루되, 모듈 완료 기준에는 포함하지 않는다. - 학습자가 원하지 않으면 넘어간다. ## 비교 축 - 워크플로우 복잡도 - 협업/역할 분리 필요성 - 운영 난이도 - 디버깅/관측 가능성 ## 완료 기준 학습자가 자신의 케이스에 대해 아래를 제시하면 완료한다. 1. 시작 도구 1개 2. 선택 이유 2가지 3. 확장 시 교체/추가 조건 1가지 ## 다음 연결 모듈 완료 시 다음 선택지를 `AskUserQuestion` 도구로 제시한다. - 조직 도입 우선순위와 정책은 `module6-strategy`