왜 AI 학습은 방향성을 잃은 듯 느껴지는가 (질서를 보기 전까지)
Source: Dev.to
나는 프롬프트를 이해하면 바로 구축할 준비가 될 거라 생각했다.
나는 다음을 배웠다:
- LLM이 무엇인지
- 트랜스포머가 어떻게 작동하는지(높은 수준에서)
- 프롬프트가 왜 중요한지
- 구조와 제약이 모델 행동을 어떻게 형성하는지
그것은 진전처럼 느껴졌다.
하지만 명확함 대신 더 혼란스러워졌다.
그 이유는 더 많은 개념이 필요해서가 아니라, 그 개념들이 서로 어떻게 연결되는지 이해하지 못했기 때문이다.
🤯 아무도 말하지 않는 이상한 중간 단계
I wasn’t a beginner anymore.
→ 나는 더 이상 초보자가 아니었다.
Beginner tutorials felt repetitive.
→ 초보자 튜토리얼은 반복되는 느낌이었다.
But I also wasn’t confident enough to move forward.
→ 하지만 나는 앞으로 나아갈 만큼 자신감도 없었다.
I remember asking a few friends what I should do next.
→ 다음에 무엇을 해야 할지 몇몇 친구들에게 물어본 기억이 난다.
They said, very reasonably: “Just build projects.”
→ 그들은 꽤 합리적으로 말했었다: “그냥 프로젝트를 만들어라.”
And honestly, they weren’t wrong. That’s solid advice in normal development.
→ 솔직히 그들은 틀리지 않았다. 일반 개발에서는 확실한 조언이다.
But when I tried to move beyond prompting on my own, I froze.
→ 하지만 스스로 프롬프트를 넘어가려고 시도했을 때, 나는 멈춰버렸다.
Not because it was hard.
→ 어려워서가 아니다.
Because I didn’t know where to start.
→ 시작할 곳을 몰라서다.
There was no flow in my head.
→ 머릿속에 흐름이 없었다.
As a frontend developer, I’m used to learning things in a sequence that makes sense:
→ 프론트엔드 개발자로서, 나는 논리적인 순서대로 배우는 것에 익숙하다:
UI → state → API → database.
→ UI → state → API → database.
With AI, it felt like everything was floating.
→ AI와 함께라면 모든 것이 떠다니는 느낌이었다.
🧩 실제 혼란
내가 스스로 배운 것을 적용하려고 할 때, 혼란은 더 미묘했습니다.
RAG가 무엇인지 알고 있었습니다.
파이프라인을 높은 수준에서 이해하고 있었습니다.
튜토리얼을 따라하고 작은 데모도 만들어 본 적이 있었습니다.
하지만 독립적으로 생각하려고 하니 질문이 쌓이기 시작했습니다:
- RAG가 컨텍스트를 검색한다는 것은 알지만, 검색 내부에서는 정확히 무엇이 일어나는 걸까요?
- 청킹(chunking)이란 무엇이며, 언제 중요한가요?
- 알고리즘이 개입되는 건가요, 아니면 단순히 “임베드하고 검색”하는 건가요?
- 실제로 이해했다고 말하려면 얼마나 깊이 파고들어야 할까요?
프롬프트 이후에 무엇이 오는가— 그리고 그 중 얼마나 필요한가?
나는 정의만 필요하지 않았습니다. 구조가 필요했습니다.
그리고 각 레이어가 얼마나 깊게 들어가는지 알아야 했습니다.
더 많은 주제가 필요했던 것이 아니라, 다음에 무엇이 오는지, 그리고 얼마나 깊게 파고들어야 하는지에 대한 명확함이 필요했습니다.
그것이 전환점이었습니다.
🧭 실제 프론트엔드 학습 방식
프론트엔드에서는 진행이 거의 무작위가 아닙니다.
아무도 HTML과 JavaScript를 이해하기 전에 React부터 시작하지 않죠.
학습은 자연스럽게 다음과 같이 진행됩니다:
HTML ➡️ CSS ➡️ JavaScript ➡️ React ➡️ Next.js
React는 JavaScript에 의존하고, JavaScript는 DOM이 어떻게 동작하는지를 이해해야 의미가 있기 때문입니다.
각 단계는 이전 단계 위에 쌓여갑니다.
무작위가 아니라—연결되어 있습니다.
그리고 그 연결이 학습을 구조화된 느낌으로 만들어 줍니다.
🔗 AI에서 같은 패턴을 보기
AI를 다룰 때 처음에는 개별적인 주제만 보였습니다:
- 프롬프트
- RAG
- 에이전트
- 파인‑튜닝
- 벡터 데이터베이스
- 프레임워크
눈에 띄는 진행이 없었습니다.
하지만 이 아이디어들이 서로 어떻게 의존하는지 묻기 시작하니 상황이 명확해졌습니다.
흐름은 다음과 같습니다:
Prompting → Structured Output → Embeddings → Retrieval → RAG → Tool Calling → Agents → Evaluation
버즈워드가 아니라 서로 의존하는 역량들입니다.
🧠 그 진행 단계가 실제 의미하는 바
1️⃣ 프롬프트
시작점. 이해하세요:
- LLM이 어떻게 동작하는지
- 지시가 출력에 어떻게 영향을 미치는지
- 제약 조건과 예시가 출력을 어떻게 형성하는지
- 컨텍스트가 답변에 어떻게 영향을 주는지
이 기반 없이는 다른 모든 것이 의미가 없습니다.
2️⃣ 구조화된 출력
자유 형식 텍스트에서 예측 가능한 형식으로 전환:
- JSON 스키마
- 결정론적 포맷팅
- 출력 검증
도구와 자동화가 예측 가능한 출력에 의존하기 때문에 중요합니다.
3️⃣ 임베딩
유사성이 핵심 문제가 될 때, 임베딩은 텍스트를 벡터로 변환하여 의미를 측정 가능하게 하고 유사성을 계산할 수 있게 합니다.
- 텍스트 → 벡터
- 의미 → 측정 가능
- 유사성 → 계산 가능
이를 통해 검색이 가능해집니다.
4️⃣ 검색
측정 가능한 유사성을 바탕으로 컨텍스트를 의도적으로 가져올 수 있습니다. 중점은:
- 문서 청킹
- Top‑k 검색
- 프롬프트에 컨텍스트 주입
지식이 외부에 있을 때 프롬프트만으로는 충분하지 않기 때문에 검색이 필요합니다.
5️⃣ RAG (검색 강화 생성)
RAG = 프롬프트 + 검색 + 컨텍스트 관리.
외부 지식이 모델의 추론에 포함되어 추상적인 요소들을 실제 시스템으로 전환합니다.
6️⃣ 도구 호출
모델이 이제 행동을 트리거할 수 있으며, 다음과 같은 구조화된 출력에 의존합니다:
- 함수 스키마
- 행동 선택
- API 실행
구조는 언어와 행동 사이의 다리가 됩니다.
7️⃣ 에이전트
도구를 반복적으로 사용하면서 에이전트가 생성됩니다. 초점이 이동하는 영역:
- 계획
- 실행
- 관찰
- 다단계 추론
- 상태 관리
에이전트는 프롬프트, 검색, 도구 사용 위에 구축되며 이를 대체하지 않습니다.
8️⃣ 가드레일 및 평가
시스템이 구축되면 신뢰성이 필수적입니다. 관심이 이동하는 영역:
- 출력 테스트
- 행동 모니터링
- 비용 최적화
- 환각 방지
여기서 실험이 엔지니어링 규율로 전환됩니다.
💡 내 머리 속에 무슨 변화가 있었는가
가장 큰 변화는 새로운 것을 배우는 것이 아니었습니다. 질서를 명확히 보는 것이었습니다.
흐름을 한 번 파악하고 나니, 한 번에 모든 것을 배우려는 압박감을 느끼지 않았습니다.
- 프롬프트를 이해했다면, 다음 자연스러운 단계는 구조화된 출력이었습니다.
- 구조를 이해했다면, 임베딩이 더 의미 있게 다가왔습니다.
- 그 다음은 검색, 그리고 RAG였습니다.
질문은 변하지 않았지만 길이 보이게 되면서, 대부분의 마찰이 사라졌습니다.
🌱 요약
AI가 방향성을 잃은 것은 혼란스러워서가 아니다.
AI가 방향성을 잃은 것은 내가 그 질서를 볼 수 없었기 때문이다.
그것이 명확해지자, 나는 한 번에 모든 것을 배우려는 시도를 멈췄다.
그 명확함이 모든 답을 주지는 않았지만 방향을 제시해 주었다 — 그리고 그것만으로도 계속 나아갈 충분했다.