블로그 글 목록
2026-10 10편
-
벡터 삽입 후 HNSW 검색 재현율은 어떻게 달라질까? (100만+100만)
pgvector와 Qdrant에 신규 벡터 100만 개를 추가하고, 삽입 순서·분할과 fresh 인덱스의 Recall 차이를 측정했습니다. 실제 세그먼트 기록과 소스 코드로 서로 다른 거동을 해석합니다.
-
벡터 삽입 후 HNSW 검색 재현율은 어떻게 달라질까? (1만+1만)
pgvector와 Qdrant에서 벡터 1만 개를 추가한 전후와 동일한 최종 데이터의 fresh·증분 인덱스를 비교했습니다.
-
LLM이 지우는 소수자의 삶
김수민·팽은지·김승섭의 「침묵의 설계자」가 제기한 LLM 기반 설문조사의 문제점을 소개하고, 이를 바탕으로 진행한 독자연구를 소개합니다.
-
Managed Agents는 에이전트를 어떻게 분해했나: 뇌, 손, 세션
Anthropic이 에이전트를 세션, 하니스, 샌드박스로 나눈 설계 논리와, 공식 워크숍 저장소의 네 부분(커스텀 도구, 멀티에이전트, 메모리, 파일 출력)을 모두 실행해 확인한 동작을 정리한다
-
작업공간을 갖춘 범용 작업자: Managed Agents와 OpenAI Agents API
Anthropic Managed Agents와 OpenAI Agents API가 제품군에 더한 층이 무엇인지, 두 런타임 API가 어떤 추상화로 수렴했는지, 같은 작업을 두 API에서 실행한 기록과 함께 로컬 하니스와 클라우드 코딩 제품까지 비교한다
-
Claude 구독 크레딧으로 API를 쓰는 법
Max·Team 구독의 월 API 크레딧이 어떤 과금 경로에 적용되는지, 조직 연결과 키 관리, Python SDK·ant CLI·Batch API 호출, 차감과 지출 상한의 동작을 정리한다
-
에이전트 시대, 전문 소프트웨어 공급자가 고를 수 있는 범위
연재 4편. 에이전트 기능을 전용 에이전트 안에 묶을지, 어떤 작업자든 쓸 수 있는 도구와 업무 자산으로 내놓을지가 공급자가 팔 수 있는 범위를 가릅니다
-
씨앗과 발아: 현장에서 진화하는 소프트웨어
연재 3편. 사람과 에이전트가 제품을 고객 현장에 맞추는 일, 제품이 실행 중 환경 차이에 대응하는 구조, 현장 경험을 다음 버전에 돌려주는 방법
-
모든 조직은 에이전트 실행환경을 가져야 한다
연재 2편. 분리망 조직도 결국 업무용 PC에 범용 에이전트 런타임을 두게 되는 이유와, 이를 조직의 모델과 도구에 연결하는 방법
-
작업자와 도구의 분리
연재 1편. 업무가 여러 제품에 걸치면서 범용 에이전트가 작업자가 되고 제품은 그 도구가 됩니다. 전문 소프트웨어가 내놓을 것과 남는 가치를 다룹니다
2026-09 2편
-
tgrep·CodeGraph·Mantic·ripwire는 ripgrep을 대신할 수 있나
저장소 8개에서 측정해 보니 tgrep은 쿼리, CodeGraph는 언어 커버리지, Mantic은 파일 이름, ripwire는 질문 방식이 성패를 갈랐습니다
-
ego-browser와 Aside는 다르게 실패한다
ego-browser는 에이전트 탭을 따로 두고 Aside는 사용자의 실제 탭을 씁니다. ego는 빗나간 클릭에도 성공을 반환했고 Aside는 오류로 멈췄습니다
2026-07 2편
-
colab CLI로 무료 GPU 원격 조종
google-colab-cli로 랩탑에서 무료 Colab GPU를 원격 조종하는 법. T4에 PaddleOCR-VL을 띄워 인보이스를 OCR하는 예제 포함
-
codex CLI에 로컬 Qwen 물리기 — ollama·vLLM 배선기
codex를 ollama·vLLM 로컬 모델에 연결. ollama는 config.toml 하나, vLLM은 developer 롤 오류를 패치나 프록시로 해결
2026-06 1편
-
MTP와 diffusion으로 LLM 추론 가속하기
Gemma 4·Qwen 3.6 H100 fp8 측정. MTP는 정확도를 거의 유지하며 1.43~2.62배, diffusion은 약 4배 빠르나 정확도가 낮았습니다
2026-05 29편
-
잠재상태로서의 요구사항
요구사항의 실체는 문장이 아니라 잠재 상태이고 자연어는 그 관측값이다. 이 관점에서 EARS, 스펙 기반 개발, 하네스, 에이전트가 질문할 시점을 다룬다
-
스킬과 하네스
스킬은 어떻게 행동할지를 압축하고, 하네스는 그 행동이 목표에 가까워졌는지 판단하는 구조를 짠다. 그런데도 구현에서 둘이 서로를 품는 이유
-
환경으로서의 하네스
벡터 DB에 경험을 수천 건 채워도 에이전트는 달라지지 않는다. 무엇을 바꿀지, 성공을 어떻게 판별할지, 실패하면 어디까지 되돌릴지 정하는 하네스가 필요하다
-
적응으로서의 기억
장기 실행 에이전트에서 메모리가 working·episodic·semantic·procedural로 나뉘고 RAG 저장소에서 정책 적응의 기반이 된 이유
-
Weights, Prompts, Codes as Parameters
에이전트 문제를 넓은 의미의 POMDP로 보면 가중치, 프롬프트, 코드는 한 정책 공간의 서로 다른 층위 파라미터다. 세 층위가 이 순서로 열린 이유도 다룬다
-
LightRAG 계열 4종 비교 — 같은 뿌리, 다른 프로덕션화 전략
LightRAG 파생 3종 소스 비교: RAG-Anything은 멀티모달, ApeRAG는 플랫폼화(multi-hop 없음), EdgeQuake는 Rust 재구현
-
PostgreSQL Lakehouse (2/2) — 분산 처리와 Citus 통합
분산 처리(Ray·Daft·Smallpond) 비교와 Citus·pg_lake postgres_fdw 통합
-
PostgreSQL Lakehouse (1/2) — DuckLake가 막힌 자리에 pg_lake가 있었다
DuckLake의 libpq 충돌을 거쳐 pg_lake로 이어진 8개 Phase Lakehouse 실험
-
PG-Strom SSB 벤치마크 — GPU보다 Arrow FDW가 먼저다
테스트 555건에서 Arrow FDW 없는 GPU는 1.6배였고 wide table에서는 CPU보다 느렸습니다. Arrow FDW를 쓰면 SF=100에서 10배
-
GraphDB 8종 벤치마크 (2/2) — 워크로드 매트릭스와 최종 선택 기준
그래프 엔진 8종을 OLTP, 메모리, 분석, 차별화 쿼리로 측정. OLTP는 RCTE와 MemGraph가 22.5K RPS로 동률이었고 워크로드별 선택표로 정리
-
PDF-Markdown 변환 도구 5종 비교
학술 논문 PDF 변환 도구 5종을 100점 만점 루브릭으로 평가했습니다. 수식과 표를 살린 mineru가 92점, markitdown은 14점
-
마크다운 슬라이드·PDF 변환 파이프라인
마크다운 한 파일을 pandoc·XeLaTeX으로 Beamer 슬라이드나 A4 문서 PDF로 만드는 zsh 함수 두 개와 macOS 스크린샷 설정 함수 하나
-
Claude Code 세션 공유 — .jsonl 심볼릭 링크
여러 Claude Code 계정에서 같은 세션을 재개하는 셋업 — projects 디렉토리를 공유 물리 경로로 매핑
-
Apple Silicon LLM 추론 백엔드 5종 벤치마크
Qwen3.5-9B를 백엔드 5종으로 측정했습니다. 단일 요청은 MLX가 25 tok/s로 가장 빨랐고, 동시 요청을 batching한 것은 omlx뿐이었습니다
-
Apache AGE 없이 LightRAG — Recursive CTE로 그래프 저장소 구현
LightRAG의 BaseGraphStorage를 plain PostgreSQL + RCTE로 구현. 1-hop lookup 중심의 retrieval 패턴이 평면 SQL과 잘 맞는 이유
-
Codex App Server Python SDK — JSON-RPC v2 stdio 호출
codex app-server를 호출하는 Python SDK — 설치, 첫 호출, thread 모델, 주요 메서드
-
같은 PC에서 Claude Code 계정 여러 개 동시에 돌리기
CLAUDE_CONFIG_DIR 환경변수와 쉘 함수 한두 개로 회사·개인·실험·고객 Claude Code 계정을 같은 머신에서 독립 운영하는 셋업
-
긴 컨텍스트 평가의 진짜 질문 — NIAH와 Lost in the Middle
NIAH 벤치마크의 한계, Lost in the Middle 현상, 대안 벤치마크, 4모드 측정 결과
-
데이터베이스에서 AI까지 떠맡아야 할까
Oracle 23ai · EDB AIDB · PostgresML · Timescale pgai · pg_aidb — 다섯 시스템 비교와 추상화 경계 논의
-
autocorrect.zsh — 167줄짜리 명령어 자동 정정 zsh 스크립트
Gemini Flash structured output + zsh preexec/precmd 훅 — 실패한 명령어를 그 자리에서 정정합니다
-
PostgreSQL로 Elasticsearch 대체하기
PostgreSQL만으로 Elasticsearch를 대체할 수 있는지 한국어 검색으로 8단계 측정했다. 품질은 동등했고 단일 노드 latency는 2~5배 빨랐다
-
NVIDIA NIM API — GLM·Kimi·Nemotron·Gemma 4 무료 추론
build.nvidia.com의 오픈소스 모델 100개 이상을 무료로 쓰는 OpenAI 호환 API. 최대 40 RPM, Claude Code·Cursor 연결법
-
GraphDB 8종 벤치마크 (1/2) — RCTE 290x 격차의 원인 분해
엣지 114만 개 그래프에서 RCTE 처리량이 Apache AGE의 290배였습니다. 원인은 호출당 13ms인 cypher() wrapper와 plan 생성 비용
-
디스크 유틸 — zsh alias와 Claude Skill 두 인터페이스
디스크 셸 함수를 zsh alias(dh, dgh, dol)와 Claude Skill로 노출하고 stale-while-revalidate 캐시를 붙인 구성
-
Claude Code 설정 동기화와 트러블슈팅
여러 Claude Code 계정 사이의 설정 동기화 매트릭스, 마이그레이션 절차, 자주 발생하는 문제와 진단 명령
-
초간단 벤치마크로 본 OpenAI 모델 10종
OpenAI 모델 10종을 추론 문제 3종으로 30회씩 실험했다. gpt-5-nano minimal은 4.4%, o1은 47.8%로 gpt-4o보다 낮았다
-
GitHub Models Inference API — 무료 모델 추론 실험
GitHub 개인 액세스 토큰과 OpenAI SDK로 GitHub Models의 GPT-4.1, DeepSeek R1 등을 무료로 호출하는 방법과 사용 한도
-
GPT-5 Responses API 웹 검색 도구 실험
GPT-5 Responses API의 웹 검색은 gpt-5에서 동작했고 gpt-5-chat-latest에서는 400 오류가 났다. 파라미터별 관찰도 정리했다
-
인공생명의 세계 — Life As It Could Be
Alife 2025 컨퍼런스 전시에서 소개된 인공생명(Artificial Life)의 세계에 대한 안내
맞는 글이 없습니다.