RAG 파이프라인 구축부터 운영까지! 실무에서 쌓은 것들 한방에 정리!

rag파이프라인구축

어느 순간부터 RAG 파이프라인을 짜는 것보다 운영하는 게 더 어렵다는 걸 알게 됐다. 처음에는 임베딩 모델을 골라서 벡터 DB에 인덱싱하고, 유사도 검색으로 컨텍스트를 뽑아서 LLM에 넘기면 끝이라고 생각했다. 실제로 돌려보기 전까지는 그렇게 생각했다. 그런데 막상 프로덕션에 올리면 다른 세계가 펼쳐진다. 검색 정확도가 쿼리 유형마다 들쭉날쭉하고, FastAPI 서버는 동시 요청 몇 개에 응답이 뭉개지고, 벡터 DB … Read more

FastAPI RAG 서버가 느려진 이유! 비동기인데 왜 막히나 싶었던 디버깅 기록

fastapi_rag_비동기

분명히 비동기로 짰는데 왜 느려지는 거지. RAG 서버 운영하면서 가장 많이 했던 생각이 이거다. FastAPI는 처음부터 async를 전제로 설계된 프레임워크다. 동시성 처리에 강하다는 게 거의 상식처럼 통한다. 그런데 실제로 RAG 파이프라인을 얹어서 운영해보면, “비동기로 썼다”는 사실 자체가 성능을 보장해주지 않는다는 걸 몸으로 배운다. 이 글은 내가 운영하던 RAG API가 동시 요청 몇 개만 들어와도 응답 … Read more

Qdrant vs PostgreSQL, RAG 검색 인프라 두 가지 다 운영해본 결론

Qdrant vs PostgreSQL

얼마 전에 새 RAG 파이프라인을 설계할 일이 있었다. 기존에 운영하던 시스템은 PostgreSQL에 pgvector를 얹어서 벡터 검색까지 한 곳에서 처리하는 구조였다. 그런데 이번에는 검색 정확도 요구사항이 더 높았고, 팀 내부에서 “Qdrant로 가야 하지 않냐”는 의견이 나왔다. 그래서 결국 둘 다 직접 붙여보고 비교하게 됐다. 이 글은 그 과정에서 겪은 걸 정리한 글이다. 어느 쪽이 “더 좋다”는 … Read more

판별 AI, 생성 AI, 판단 AI의 결정적 차이와 GraphRAG가 떠오르는 진짜 이유

판별AI_생성AI_판단AI_GraphRAG

며칠 전 한 컨퍼런스 자료를 정리하다가 한 장의 슬라이드 앞에서 한참을 멈췄다. 판별 AI(Discriminative AI), 생성 AI(Generative AI), 판단 AI(Decisive AI)를 한 표에서 직접 비교한 슬라이드였다. 주요 역할, 기술적 특징, 데이터 의존성, 협업 방식, 한계까지 모두 나란히 놓고 보여주는데, 이 표가 흥미로웠던 이유는 그동안 머릿속에서 흩어져 있던 개념들이 한 그림으로 정렬됐기 때문이다. 한 줄로 표현하면 … Read more

동적 온톨로지와 판단 AI, 환각을 넘어선 다음 세대 엔터프라이즈 AI의 진짜 좌표

동적온톨로지

작년부터 고객사 PoC에 들어갈 때마다 같은 장면이 반복된다. “저희도 RAG 한번 깔아봤는데, 답을 너무 자주 지어내요.” 이 말을 듣는 빈도가 한 달이 멀다 하고 늘어났다. 얼마 전에는 한 제조 대기업 IT 본부장이 더 솔직한 표현을 던졌다. “이거 자료에서 직접 가져온 답인지, GPT가 그럴듯하게 만든 답인지 내가 판별할 수 없으면 임원 보고에 못 올려요.” 그분 입장이 … Read more