반응형 전체 글68 JSON 모드로는 부족한 이유: Structured Outputs strict 스키마로 LLM 형식 실패 없애기 LLM 에이전트 JSON 모드로는 부족한 이유: Structured Outputs strict 스키마로 LLM 형식 실패 없애기 복잡한 JSON 문서를 LLM에게 받을 때 — 프롬프트로 부탁하는 대신 스키마로 강제하는 법과, 거부의 절반이 검증기 쪽에 있던 이야기 핵심 요약 JSON 모드는 문법적으로 올바른 JSON만 보장한다. 필드 이름·타입·허용 값은 여전히 모델에 달려 있어, 복잡한 문서는 6개 중 2개만 검증을 통과했다. 거부된 4건을 열어 보니 3건은 모델이 아니라 검증기의 결함이었다. JSON에는 정수와 실수의 구분이 없는데, 검증기가 14.0을 "정수가 아니다"로 거부하고 있었다. 검증 코드(Pydantic)에서 JSON 스키마를 생성해 strict로 강제.. 2026. 10. 5. LLM 에이전트 입력 토큰 70% 줄이기: OpenAI 툴 지연 로딩과 한국어 설명의 함정 LLM 에이전트 LLM 에이전트 입력 토큰 70% 줄이기: OpenAI 툴 지연 로딩과 한국어 설명의 함정 툴을 수십 개 가진 챗봇이 인사 한마디에도 수천 토큰을 쓸 때 — 필요한 툴만 싣는 법과, 한국어로 쓴 설명이 비싸게 청구되던 문제 핵심 요약 툴을 쓰는 LLM은 호출할 때마다 모든 툴 정의를 입력으로 보낸다. 툴이 44개인 챗봇은 "안녕" 한마디에도 입력이 약 7,800토큰이었다. 캐시는 단가를 낮출 뿐 토큰 수는 그대로 센다. OpenAI Responses API의 툴 지연 로딩(툴 묶음 + tool_search)은 묶음 이름과 설명만 먼저 보내고, 필요한 묶음만 그 응답 안에서 불러온다. 같은 질문 12개로 재니 입력 합계가 절반으로 줄고 툴 선택은 거의 같았다... 2026. 10. 5. 로컬 LLM 서버가 살아 있는데 틀리게 돌 때: 스트림 오류·빠진 의존성·설정 차이 로컬 LLM 로컬 LLM 서버가 살아 있는데 틀리게 돌 때: 스트림 오류·빠진 의존성·설정 차이 헬스체크는 정상이고 채팅도 되는데 일부 요청만 이상할 때, 서버를 믿기 전에 확인할 것들 핵심 요약 로컬 모델 서버의 실패는 대개 조용하다. 서버는 떠 있고 채팅도 된다. 틀리는 것은 특정 기능, 스트리밍 중 오류, 실행 설정, 모델 버전이다. JSON 형식을 강제하는 기능에 필요한 부가 패키지가 빠져 그 요청만 실패했다. 평범한 채팅은 멀쩡해서 늦게 알았다. 쓰는 기능마다 요청을 하나씩 보내 보는 것이 기동 점검이다. 스트리밍 도중의 실패는 정상 응답(200)이 이미 나간 뒤 본문 안에 온다. 이걸 놓치면 "답이 비었다"로 잘못 읽고 엉뚱한 설정을 고친다. 손으로 띄.. 2026. 9. 26. 추론 모델 에이전트가 느린 이유는 생각 토큰: thinking을 끄기 전에 확인할 것 로컬 LLM 추론 모델 에이전트가 느린 이유는 생각 토큰: thinking을 끄기 전에 확인할 것 여러 역할이 토론하는 에이전트가 한 번에 35분 — 시간이 어디서 새고, 생각을 끄면 무엇을 잃는지 같은 질문으로 비교했다 핵심 요약 느린 에이전트를 줄이려면 먼저 입력을 읽는 시간과 답을 쓰는 시간을 나눠 본다. 이 사례에서는 답을 쓰는 쪽이 86%였다. 프롬프트를 다듬어서 줄일 수 있는 몫은 크지 않았다. 추론형 모델은 답 앞에 생각하는 토큰을 먼저 쓴다. 세어 보니 만든 토큰의 74%가 생각이었다. 짧게 답하는 토론 역할일수록 비율이 높았다. 생각이 길면 느린 것에서 끝나지 않는다. 출력 한도를 생각이 다 써 버려 답이 빈 응답이 온다. 출력 한도와 생각에 쓸 한도를.. 2026. 9. 26. 이전 1 2 3 4 ··· 17 다음 반응형