직접 띄운 LLM 에이전트가 같은 말만 반복했다

에이전트가 같은 말을 반복하기 시작했을 때 처음에는 요청이 먹통이 된 줄 알았습니다. 툴 콜(tool call)이 나와야 할 자리에 모델이 max_tokens 제한까지 줄기차게 같은 문장만 반복하거나, 툴 콜에 필요한 JSON 형식을 끝내 완성하지 못한 채 의미 없는 잡담만 늘어놓고 있었거든요. 어느 쪽이든 토큰 예산만 낭비하고 가끔은 타임아웃까지 발생하며 에이전트 루프 전체를 말아먹기 일쑤였습니다. 당시 저는 B2B로 납품하는 비즈니스 인텔리전스(BI) AI를 만들고, 그 위에 에이전트를 얹는 일을 하고 있었습니다. 고객사 데이터가 외부로 나갈 수 없어서 클라우드 API는 쓸 수가 없었습니다. OpenAI도 Anthropic도 안 됐죠. 모델을 우리 하드웨어에 직접 띄워 서빙하거나, 아니면 기능을 포기하거나, 둘 중 하나였습니다. 이렇게 직접 서빙하면 클라우드 API가 알아서 처리해 주던 양자화(quantization), 서빙 프레임워크, 추측 디코딩(speculative decoding)을 전부 손수 다뤄야 합니다. 설정값 하나하나가 다 제 몫이고, 그만큼 제가 망가뜨릴 여지도 컸습니다. ...

June 23, 2026 · nbdawn

LLM: 우리가 놓치고 있었던 것들

LLM: 우리가 놓치고 있었던 것들 “지금 Temperature 값을 몇으로 쓰고 계신가요?” 누군가 이렇게 물어보면 뭐라고 답하시나요? “기본값요”, “0.7이요”, 아니면 “글쎄요, 그게 중요한가요?” 보통 이 세 가지 답변 중 하나일 겁니다. 그리고 왜 그 값을 쓰는지 정당화하려 하면 금세 말문이 막히곤 하죠. 우리는 지금 LLM을 딱 이 정도로 사용하고 있습니다. 매일 API를 호출하고, 프롬프트를 messages에 담아 보내고, 응답을 받아오죠. 하지만 “Temperature는 실제로 어떤 역할을 하지?”, “Top-P는 Temperature랑 뭐가 다른 거지?”, “Prompt Caching은 켜기만 하면 알아서 작동하나?”, “모델을 더 좋은 걸로 바꾸면 환각(hallucination) 현상이 사라질까?” 같은 질문이 나오면 답변이 모호해집니다. ...

April 12, 2026 · nbdawn