AI 크롤러를 robots.txt로 제대로 제어하기 — 학습은 막고 인용은 허용하는 2026 전략
GPTBot 한 줄 막고 "AI 차단 끝"이라 믿는 사이트가 많다. 학습·검색·사용자요청 크롤러를 분리 제어하는 robots.txt를 직접 만들고 표준 파서로 검증했다. Google-Extended가 AI Overviews를 못 막는 함정과 llms.txt의 정직한 현황까지.
archive
356 · 페이지 6
GPTBot 한 줄 막고 "AI 차단 끝"이라 믿는 사이트가 많다. 학습·검색·사용자요청 크롤러를 분리 제어하는 robots.txt를 직접 만들고 표준 파서로 검증했다. Google-Extended가 AI Overviews를 못 막는 함정과 llms.txt의 정직한 현황까지.
가상의 베이커리 랜딩 페이지를 Lighthouse 접근성 감사에 돌려 55점을 받았다. 색상 대비부터 폼 레이블과 ARIA 속성까지 6개 WCAG 위반을 하나씩 직접 고쳐 100점으로 만든 실측 로그와, 자동 감사 도구가 놓친 키보드 내비게이션 함정까지 단계별로 정리했다.
서브에이전트를 병렬로 돌리면 로컬 모델도 그만큼 빨라질 줄 알았다. 직접 재보니 기본 Ollama는 요청을 한 줄로 세워 처리해서 8개를 붙여도 총 처리량이 그대로였다. OLLAMA_NUM_PARALLEL을 올렸을 때의 처리량 이득과 VRAM 대가를 M1 맥북 16GB에서 실측했다.
매장 검색 페이지의 LocalBusiness JSON-LD를 JavaScript로 주입하면 원시 HTML엔 구조화 데이터 블록이 0개로 잡힌다. 서버사이드 렌더링 출력과 직접 비교하고, Google 공식 견해와 리치 결과·검색 순위에 미치는 한계까지 실측으로 정리했다.
gemma4:12b의 빈 응답을 패키징 버그로 단정했다가 사실은 추론(thinking) 모델이었음을 뒤늦게 알았다. 추론 ON/OFF로 13문제를 돌려보니 정답은 1개 더 맞혔지만 출력 토큰을 68배, 시간을 19배 더 썼다. 에이전트에서 추론을 언제 켜고 끌지 실측으로 정리한다.
로컬 에이전트가 긴 대화에서 갑자기 지시를 무시하길래, 프롬프트 맨 앞에 비밀 코드를 숨기고 길이를 늘여가며 recall을 측정했다. num_ctx를 넘기면 Ollama는 에러 없이 프롬프트 앞쪽을 잘라낸다. 그리고 기본값이 4096이라는 통설도 내 맥북에선 사실과 달랐다.
잠깐 쉬었다가 에이전트를 다시 부르면 첫 응답이 유독 굼떴다. Ollama가 응답마다 주는 load_duration을 모델 크기별로 뜯어보니 2GB는 1.5초, 9.6GB는 최대 9.7초였다. keep_alive 하나로 이 콜드 스타트 비용이 어떻게 갈리는지 직접 측정해 정리했다.
같은 9,700토큰 프롬프트가 내 노트북에서 첫 토큰까지 55초 걸렸는데, 두 번째 호출은 65밀리초였다. Ollama 타임스탬프를 뜯어 prefill과 generation을 분리 측정하고, prefix 캐시가 왜 396배 빨랐는지, 에이전트 컨텍스트 설계에 어떻게 적용할지 정리했다.
같은 글을 ko/ja/en/zh 네 언어로 내는 내 블로그 285편을 실제 토크나이저 세 개로 토큰화해 비영어 토큰 비용을 측정했다. 한국어는 영어의 1.38배, 일본어 1.34배, 그리고 토크나이저 세대 교체가 사실상 비영어 할인이었다는 것까지 실측 데이터로 직접 확인했다.
같은 프롬프트를 로컬 Gemma 4에 수십 번 던져 LLM 출력 재현성을 직접 측정한 실험 기록이다. temperature=0은 완전히 결정적이었고, 온도를 올려도 seed를 고정하면 출력이 한 줄로 수렴했다. 평가와 CI 테스트에 바로 적용할 결론과 권장 설정값까지 정리한다.
같은 50개 레코드를 JSON·YAML·CSV·TSV 등 9가지 포맷으로 직렬화해 tiktoken으로 토큰을 측정했다. 평탄한 데이터는 TSV가 pretty JSON 대비 62% 저렴했고, 중첩 데이터는 compact JSON으로 결론이 뒤집힌다. 포맷 하나가 토큰 비용을 가른다.
@modelcontextprotocol/sdk v1.29.0을 직접 설치해 TypeScript MCP 클라이언트를 만들어봤다. Claude Desktop 없이 MCP 서버의 tool을 프로그래밍으로 호출하고 resource를 읽는 실전 가이드. 실제 실행 로그와 에러 처리 패턴 포함.