제미나이 3.6 플래시 뜯어보니, 결국 문제는 에이전트 운영비였다

제미나이 3.6 플래시 뜯어보니, 결국 문제는 에이전트 운영비였다 지난주에 LangGraph로 돌리던 멀티 에이전트 파이프라인 하나가 새벽에 갑자기 API 비용을 두 배로 잡아먹은 적이 있다. 원인을 추적해보니 에이전트가 판단을 못 내리고 도구 호출을 반복하면서 토큰을 계속 태운 거였다. 그날 이후로 나는 모델 선택 기준에서 순수 추론 성능보다 토큰 효율과 도구 호출 안정성을 더 위에 두게 됐다. … Read more

멀티모달 RAG란 무엇인가? 이미지 캡셔닝과 벡터 임베딩은 어떻게 다른가

멀티모달RAG

지난달 사내 RAG 시스템에 PDF 하나가 들어왔는데, 절반이 회로도와 표였다. 텍스트만 청킹하던 기존 파이프라인은 그 페이지들을 통째로 건너뛰었고, 사용자가 “이 다이어그램에서 전류 방향이 어떻게 되나요”라고 물었을 때 시스템은 완전히 엉뚱한 답을 내놨다. 그때 처음으로 “멀티모달 RAG를 진지하게 붙여야겠다”는 결심을 했다. 그런데 막상 자료를 찾아보니 다들 멀티모달이라는 단어를 너무 쉽게 쓰고 있었다. 이미지 하나 첨부 가능하게 … Read more

LangGraph에서 에이전트가 멈추는 이유 – Human in the Loop 설계 패턴 정리

langgraph human in the loop

에이전트가 멈춰야 할 때 멈추지 않거나, 멈추지 말아야 할 때 멈추는 문제를 LangGraph로 멀티에이전트 시스템을 운영하면서 꽤 오래 고민했다. 이론적으로 Human-in-the-Loop는 단순하다. 에이전트가 스스로 판단하기 어려운 지점에서 사람에게 확인을 요청하고, 사람의 입력을 받아서 다시 진행하는 것이다. 그런데 실제로 구현해보면 “어느 노드에 interrupt를 거냐”와 “체크포인터를 어떻게 설계하냐”가 에이전트 전체 흐름을 좌우한다는 걸 알게 된다. 이 글은 … Read more

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

rag파이프라인구축

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

MCP 서버를 사내 RAG 시스템에 직접 연결 성공

MCP_RAG

MCP라는 게 처음 나왔을 때는 솔직히 “또 새로운 표준 하나 더 생겼네” 싶었다. 표준이라는 게 너무 많이 생기다 보면 결국 안 쓰게 되는 경우가 많으니까. 그런데 막상 사내 RAG 시스템에 직접 붙여보니까 생각이 달라졌다. 설정 자체는 놀라울 정도로 간단했는데, 프로덕션 환경에 진짜로 올리려고 하니 그제서야 진짜 고민이 시작됐다. 이 글은 그 과정을 정리한 거다. MCP가 … Read more