본문 바로가기

전체 글71

UUIDv7 정말 시간순일까? PostgreSQL 18과 Python 3.14로 직접 확인해 봤습니다 HN에서 화제가 된 Robert Alexander의 글은 10월 19일 공개한 “UUIDv7 doesn't have the properties you think it does”로,UUIDv7을 둘러싼 단조 증가, 생성 시각, 추측 불가라는 세 가지 통념을 짚습니다.시간순이라 기본키에 좋다는 설명이 어디까지 맞는지 확인하려면,정렬에 유리한 구조와 실제 생성 순서를 보장하는 범위를 나눠 살펴봐야 합니다. 결론부터정렬 범위: 한 생성기 안에서는 생성 순서와 정렬 순서가 잘 맞음인덱스 효과: 실습에서 v7의 INSERT 시간이 약 27% 짧고 기본키 인덱스가 약 20% 작음시간 해석: UUID에서 꺼낸 타임스탬프만으로 실제 생성 시각을 입증할 수 없음여러 생성기: 같은 밀리초 안에서는 순서가 섞이고, 추측 불가.. 2026. 10. 24.
[책리뷰] 핸즈온 머신러닝, 이번엔 파이토치로 LLM 내부까지 요즘은 API 키 하나로 LLM 서비스를 만들 수 있습니다.그런데 vLLM 설정을 만지다 KV 캐시라는 말이 나오고,파인튜닝 문서를 열면 LoRA, MoE, 플래시 어텐션이 쏟아지면이게 정확히 무슨 일을 하는지 막히는 순간이 옵니다. 오늘 소개할 책은 한빛미디어의 "핸즈온 머신러닝 with 사이킷런, 파이토치" 입니다.주황색 원숭이 표지로 유명한 시리즈가이번에는 텐서플로 대신 파이토치로 새로 쓰였습니다.부제도 "머신러닝 기본기부터 트랜스포머·LLM까지 직접 구현하며 배우기"입니다. 한눈에 보기저자 / 역자 : 오렐리앙 제롱 / 박해선출간 : 2026년 9월, 1,112쪽, 난이도 초중급구성 : 1부 머신러닝(사이킷런) 8장, 2부 신경망과 딥러닝(파이토치) 11장, 부록 5개실습 : 주피터 노트북 제공.. 2026. 10. 23.
OpenShell 사용법, 엔비디아가 만든 AI 에이전트 샌드박스에 직접 가둬 봤습니다 (API 키 없이) AI 에이전트가 파일과 네트워크에 넓게 접근하면,잘못 실행한 명령이 소스 코드 유출이나 API 키 노출로 이어질 수 있습니다.NVIDIA OpenShell은 에이전트가 접근할 수 있는 범위를 Policy로 제한하는 런타임입니다.이번 실습에서는 API 키 없이 curl을 실행해 기본 차단과 허용 후 동작을 직접 확인했습니다. 결론부터OpenShell의 네트워크 접근은 default-deny에서 출발합니다.허용 규칙이 없는 상태에서는 GitHub API에 연결하지 못했고,특정 호스트를 허용한 뒤에는 같은 curl 요청이 정상 응답을 받았습니다. 호스트를 열었다고 모든 요청이 통과하지는 않았습니다.이번에 적용한 read-only 규칙에서는 GET이 통과했지만,이슈를 만드는 POST는 L7에서 차단됐습니다.다른.. 2026. 10. 23.
LiteLLM 악성코드 사태, pip install 한 번에 키가 털리는 원리와 내 파이썬 환경 점검법 LLM 프록시로 많이 쓰는 LiteLLM의 PyPI 1.107.0에 자격 증명 탈취 코드가 들어갔습니다.문제는 LiteLLM을 import하지 않아도 파이썬을 시작하면 실행됐다는 점입니다.악성 패키지는 내려받거나 설치하지 않고,안전한 예제로 실행 원리와 환경 점검, 예방 설정을 직접 돌려봤습니다. 결론부터인터넷에 연결된 환경에 1.107.0을 설치했다면 감염된 것으로 보고,깨끗한 환경에서 자격 증명을 폐기하고 교체하는 작업부터 진행해야 합니다.패키지만 지워서는 이미 전송된 비밀값이나 실행 중인 백도어를 해결할 수 없습니다. 실행 조건: .pth의 import 줄은 파이썬 시작만으로 실행됨대응 우선순위: 노출 가능한 키 교체와 감염 환경 격리예방 설정: 명시적 버전 고정, 해시 검증, 업로드 대기 함께 적.. 2026. 10. 22.
tsrs 사용법, Rust로 옮긴 TypeScript가 tsc보다 정말 빠른지 직접 재봤습니다 타입스크립트 컴파일 속도가 느려지면,코드를 수정한 뒤 결과를 기다리는 시간도 길어집니다.타입 연산이 많은 라이브러리에서는 타입 체크 속도가 개발 흐름에 직접 영향을 줍니다. Cloudflare가 공개한 tsrs는 TypeScript 7 타입 검사기를 러스트(Rust)로 옮긴 도구입니다.zod와 hono에서 실행 시간과 메모리를 측정하고,오류 메시지와 빌드 통과 여부까지 비교했습니다. 결론부터zod 기본 설정에서 tsrs는 tsc 7.0.2보다 7.0배 빨랐습니다.최대 상주 메모리(Max RSS)는 1,865MB에서 496MB로 줄었습니다.검사 작업자(Type Check Worker)를 4개로 맞춰도 4.9배,단일 스레드(Single Thread)에서도 4.2배 차이가 났습니다. 다만 tsrs로 교체하면서.. 2026. 10. 21.
Timestral 사용법, 미스트랄 시계열 예측 모델을 CPU에서 ARIMA와 직접 비교했습니다 ARIMA 같은 기존 모델로 시계열을 예측하려면,데이터가 몇 개월 주기로 반복되는지(Seasonality)와 로그 변환 같은 전처리를 사람이 먼저 정해야 합니다.시계열 Foundation Model은 이런 설정 없이 과거 값만 넣어 예측하므로,이 과정을 얼마나 줄여 주는지 궁금했습니다. 미스트랄(Mistral)의 Timestral을 CPU에서 실행하고,월별 항공 승객 시계열 데이터로 ARIMA와 비교했습니다.평균 오차뿐 아니라 예측 구간이 실제 값을 얼마나 포함하는지도 확인했습니다. 결론부터이번 실습에서는 Timestral-209M의 예측 오차가 가장 작았습니다.MAE는 34.10천 명으로,Seasonality를 반영한 SARIMA(log)의 39.44천 명보다 약 13.5% 낮았습니다.모델 차수나 로그.. 2026. 10. 20.
Graphify 사용법, 코드베이스를 지식그래프로 만들어 직접 질문해 봤습니다 (API 키 없이) 낯선 저장소를 읽을 때는 클래스 이름을 검색한 뒤,호출하는 함수와 상속 관계를 따라 여러 파일을 오가게 됩니다.검색 결과는 많지만,서로 어떤 관계인지 파악하는 데 시간이 걸립니다. Graphify는 이런 연결을 코드 지식그래프로 만드는 도구입니다.httpx 저장소를 대상으로 그래프를 만들고,Client의 연결과 요청 처리 경로를 직접 질의했습니다.API 키 없이 어디까지 확인할 수 있는지와 검색 도구 대비 차이를 살펴봤습니다. 결론부터코드 구조를 그래프로 만들고 질의하는 작업은 API 키 없이 가능했습니다.이번 실습에서는 대규모 언어 모델(LLM)을 끈 상태로,노드 2,258개와 엣지 4,574개를 만들었습니다.첫 생성에는 1.805초가 걸렸습니다. 다만 그래프의 최단 경로가 실제 실행 순서를 뜻하지는 .. 2026. 10. 19.
API 키 유출, 내 깃 저장소도 안전할까? gitleaks로 직접 점검해 봤습니다 (OpenCode 사고 정리) AI 코딩 도구에 외부 서비스 키를 연결하거나,프로젝트의 .env에 키를 넣어 사용하는 일이 많아졌습니다.설정할 때는 편리하지만,API 키 유출 소식을 접하면 서비스에 등록한 키와 저장소에 남긴 키를 함께 돌아보게 됩니다. 10월 18일(KST)에 공개된 OpenCode/오픈코드 보안 공지를 정리하고,gitleaks로 파일 삭제 이후에도 키가 발견되는지 직접 확인했습니다.실습에는 실행 시 무작위로 생성한 가짜 값만 사용했습니다. (실제 인증 키 사용 없음) 결론부터키가 노출됐다면 파일 삭제/히스토리 정리보다 키 폐기 후 재발급(rotate)이 먼저입니다.그다음 사용량/청구 내역을 확인하고,이후 gitleaks로 저장소를 점검해 재발을 막는 순서입니다. 파일을 지우는 작업은 저장소 내용을 바꾸지만,이미 복.. 2026. 10. 18.
이미지 용량 줄이기, AVIF/WebP/JPEG XL 직접 변환해 비교했습니다 이미지 용량 줄이기는 확장자만 바꾸는 작업처럼 보이지만,사진과 글자가 많은 화면에서는 결과가 달라집니다.사진 두 장과 어두운 터미널 스크린샷을 직접 변환해,JPEG 기준 화질을 넘긴 파일의 크기와 브라우저 표시 결과를 비교했습니다. 결론부터사진 전송: AVIF 우선 / WebP와 JPEG 대체(fallback) 준비기존 JPEG 보관: 추가 손실 없는 JPEG XL 재압축 검토스크린샷: PNG 원본과 변환본의 크기/글자 선명도 확인 필요사진 용량 줄이기를 처음 시도한다면,AVIF 변환부터 적용하고 WebP 변환을 대체 경로로 두는 구성이 출발점입니다.이번 사진 두 장에서도 AVIF가 가장 작았습니다. 기존 JPEG를 손실 없이 줄이는 작업은 별도로 봐야 합니다.JPEG XL은 이미 생긴 JPEG 손실을 .. 2026. 10. 18.
RTK로 AI 에이전트 토큰 줄이기, git status/테스트 출력 직접 재봤습니다 AI 코딩 에이전트가 코드를 수정하는 동안,터미널에는 변경 파일 목록과 커밋 기록/테스트 결과가 계속 쌓입니다.사람이라면 필요한 부분만 훑고 넘어가지만,에이전트에는 이런 출력도 읽어야 할 입력이 됩니다. RTK는 이 지점에서 명령 출력을 압축하는 도구입니다.출력이 짧아지는 것만큼 중요한 것은 실패 원인을 찾을 정보가 남는지입니다.Git 명령 세 가지와 Go 테스트를 대상으로,원본과 RTK 출력의 바이트 수/줄 수를 비교했습니다. 에이전트가 읽기 전에 출력을 줄이는 RTKRTK 저장소의 RTK는 Rust Token Killer의 약자이며,10월 16일(KST) 기준 별표는 약 8만 3,500개입니다.Rust로 만든 단일 바이너리 명령줄 도구(CLI)로,셸 명령을 재작성하고 출력을 압축해 AI 코딩 에이전트.. 2026. 10. 16.