태그: #python
GPU·LLM·MLOps·쿠버네티스, 그리고 마음가짐에 관한 글 · 55 편
Langfuse SDK 계측 — 무엇이 자동으로 잡히고 무엇을 손으로 넣나
트레이스를 만드는 일은 SDK를 설치하는 일이 아니라 경계를 긋는 일입니다. 이 글은 Langfuse 파이썬 SDK v4를 기준으로 데코레이터, 컨텍스트 매니저, 수동 생성 세 가지 계측 방식이 각각 무엇을 다르게 하는지 정리하고, 속성을 하위로 흘려보내는 propagateattributes가 왜 필요한지, OpenAI와 LangChain 같은 프레임워크 통합이 자동으로 잡아 주는 범위가 어
2026-08-14 · 15 분 읽기 #observability#langfuse#llm-tracing#instrumentation#opentelemetry지금 주목받는 오픈소스 (5) 데이터와 ML 파이프라인
데이터 파이프라인은 스케줄러 하나로 해결되지 않습니다. 적재, 변환, 오케스트레이션, 실행 엔진, 모델 수명 주기, 검색 저장소가 각각 다른 도구의 영역이 되었습니다. 이 층들에서 실제로 쓰이는 오픈소스 11개를 스타 순위가 아니라 담당 구간별로 묶어 소개합니다. 무엇을 대체하는지, 성숙도가 어느 정도인지, 언제 쓰면 안 되는지를 함께 적었고, 저장소 경로와 라이선스, 스타 수, 최근 푸시는
2026-08-12 · 9 분 읽기 #open-source#data-engineering#mlops#python#rust언어와 런타임의 세대교체 — 공식 EOL 공지로 읽는 11개 프로젝트
공식 종료 공지가 남아 있는 언어와 프레임워크, 런타임 11개를 정리합니다. Python 2, AngularJS, Vue 2, Nashorn, 자바 애플릿과 웹 스타트, Mono, Xamarin, PhoneGap, Atom, io.js, jQuery Mobile을 각각 무엇이었나, 왜 그때 옳았나, 무엇이 바뀌었나, 무엇이 그 자리에 왔나, 무엇을 남겼나, 지금도 쓰는 게 맞는 경우로 나눠
2026-08-12 · 20 분 읽기 #open-source#javascript#java#python#frameworkSQL 인젝션과 파라미터 바인딩 — ORM을 써도 뚫리는 지점들
SQL 인젝션 대응책으로 가장 먼저 검색되는 것은 이스케이프 함수지만, 정답은 파라미터 바인딩입니다. 이스케이프는 값을 문자열 리터럴 안에서 안전하게 만들려는 시도이고, 바인딩은 값이 SQL 텍스트에 아예 들어가지 않게 만드는 구조적 분리이기 때문입니다. 이 글은 프리페어드 스테이트먼트가 서버에서 실제로 어떻게 파싱되고 실행되는지 로그로 확인하고, ORM을 쓰는데도 뚫리는 세 가지 지점과 O
2026-07-26 · 26 분 읽기 #security#sql#database#orm#pythonPySpark 4.2, Python UDF가 기본으로 Arrow를 탄다 — 타입 강제 변환 225칸 중 132칸이 바뀌는 이야기
2026년 7월 14일 릴리스된 Apache Spark 4.2.0은 SPARK-54555로 spark.sql.execution.pythonUDF.arrow.enabled 기본값을 false에서 true로 뒤집었습니다. 벤더 블로그는 이걸 "코드 재작성 없이 더 빠른 컬럼 경로"라고 소개하지만, 정작 릴리스 어디에도 Arrow 대 pickle의 속도 수치는 공개돼 있지 않습니다. 그리고 진짜
2026-07-16 · 27 분 읽기 #spark#python#arrow#data-engineeringPython 3.15의 abi3t — free-threaded 빌드용 stable ABI가 푸는 문제와 그 대가
PEP 779로 free-threaded 빌드는 3.14에서 실험 딱지를 뗐지만, 기본 빌드가 되는 Phase III 앞에는 인터프리터 성능 말고 하나가 더 있었습니다 — 배포입니다. free-threaded 빌드에서는 stable ABI(abi3)를 쓸 수 없어서, C 확장 저자들은 파이썬 버전 × 스레딩 모드마다 휠을 따로 찍어야 했습니다. PEP 803은 이 구멍을 abi3t라는 sta
2026-07-16 · 23 분 읽기 #python#free-threaded#cpython#concurrency#pep-703Scarf는 왜 7년 쓴 하스켈을 아쉬워하며 떠났나 — 언어 선택의 진짜 비용
Scarf는 7년간 프로덕션에서 돌리던 하스켈을 파이썬으로 옮기고 있습니다. 흥미로운 건 그 이유입니다. 창업자 Avi Press는 하스켈이 신뢰성·타입 안전성·성능이라는 약속을 대부분 지켰다고 인정하면서도, 결정적 비용은 컴파일 시간과 에코시스템 마찰이었다고 말합니다. 여러 AI 에이전트가 브랜치를 병렬로 탐색하는 개발 방식에서, 콜드 빌드 대기 시간이 사소한 불편에서 가장 큰 비용으로 바
2026-07-11 · 16 분 읽기 #haskell#python#engineering-decisions#compile-times#ai-assisted-developmentLiteLLM 실전 사용법 — 100개 이상 LLM을 하나의 인터페이스로
LiteLLM으로 OpenAI, Anthropic, Gemini, Bedrock, OpenRouter, 로컬 모델까지 동일한 OpenAI 포맷으로 호출하는 실전 퀵스타트. 설치부터 스트리밍, Router, Proxy Server까지 빠르게 정리한다.
2026-07-06 · 15 분 읽기 #litellm#llm#ai-gateway#python#openai-compatibleGo 말고도 — Kopf, Metacontroller, Shell Operator로 Operator 만들기
Operator는 반드시 Go와 kubebuilder로 만들어야 한다는 통념을 깹니다. Python의 Kopf, 선언적 훅 방식의 Metacontroller, shell-operator와 Ansible Operator까지 비-Go 선택지를 코드와 함께 비교합니다. 프로토타이핑과 프로덕션의 경계, 언어 선택 기준, 마이그레이션, 생태계 성숙도와 함정을 다룹니다.
2026-06-15 · 35 분 읽기 #kubernetes#operator#kopf#metacontroller#pythonMCP 서버 만들기 실전 — 내 도구를 모든 AI 에이전트에 연결하는 법
2026년 사실상 표준이 된 MCP(Model Context Protocol) 서버를 직접 만드는 실전 가이드입니다. 사내 위키 검색 서버를 TypeScript와 Python으로 구현하고, 도구 설계 원칙, OAuth 2.1 인증, MCP Inspector 디버깅, 보안 고려사항까지 동작하는 코드와 함께 정리합니다.
2026-06-12 · 29 분 읽기 #mcp#ai-agent#typescript#python#oauth2Python 백엔드 프레임워크 2026 완벽 가이드 — FastAPI · Litestar · Starlette · Sanic · Quart · Robyn · Django Ninja · BlackSheep 심층 분석
2026년 5월 기준 Python 백엔드 프레임워크 생태계를 한 번에 정리합니다. FastAPI·Litestar·Starlette·Sanic·Quart·Robyn·Django Ninja·BlackSheep·Falcon 4 같은 ASGI/WSGI 프레임워크, Python 3.13/3.14의 JIT와 free-threaded 모드, Pydantic 2 / msgspec 검증 엔진, Granian
2026-05-16 · 33 분 읽기 #python#backend#fastapi#litestar#starlette노트북 환경 2026 — Jupyter / Marimo / Quarto / Observable Framework / Deepnote / Hex / Positron 심층 비교
2026년 노트북 생태계는 한 번 더 갈라졌다. Jupyter Lab 5와 Notebook 7이 사실상 표준이 되었지만, Marimo(2024년 6월)의 반응형 모델이 "Hidden state" 문제를 정면으로 깼고, Posit은 RStudio를 Positron으로 다시 태어나게 했다. Quarto는 R·Python·Julia를 하나의 출판 파이프라인으로 묶었고, Mike Bostock의 O
2026-05-16 · 27 분 읽기 #notebook#jupyter#marimo#quarto#observablePython 생태계 2026 완벽 가이드 — Python 3.13 · FastAPI · Django 5 · Litestar · SQLAlchemy 2 · Polars · Pydantic 2 · Ruff · uv · mypy 심층 분석
2026년 5월 기준 Python 생태계 전반을 한 글에 정리합니다. Python 3.13의 free-threaded 빌드와 JIT, FastAPI/Django 5/Litestar/Flask 3/Sanic/Robyn, SQLAlchemy 2와 Polars/DuckDB/pandas 2, Pydantic 2 · msgspec · attrs 검증 엔진, Ruff와 uv가 가져온 도구 통합, myp
2026-05-16 · 33 분 읽기 #python#fastapi#django#litestar#sqlalchemy모던 Python 2026 — Python 3.13 / 3.14 / free-threaded / uv / Ruff / Polars 1.0 / FastAPI / Litestar / Robyn 심층 가이드
2026년의 Python은 30년 만에 처음으로 두 개의 거대한 변곡점을 동시에 통과한 언어가 되었다. 하나는 언어 자체의 변화 — Python 3.13의 free-threaded preview와 JIT preview, 그리고 3.14에서 free-threaded가 stable로 승격되며 비로소 GIL 없는 Python이 프로덕션 옵션이 된 것. 다른 하나는 Astral이 주도한 도구 혁명
2026-05-16 · 43 분 읽기 #python#python-3-13#python-3-14#free-threaded#jitPython 타입 체커 2026 — Mypy·Pyright·Pylance·Pyre·Pyrefly·ty 비교 심층 가이드
Python 타입 체커 전쟁이 2025-2026년에 본격화됐다. Astral(uv·ruff의 회사)이 Rust 기반 ty를 알파로 공개하고, Meta가 Pyre를 Rust로 다시 쓴 Pyrefly를 풀었으며, Mypy는 여전히 표준 구현, Pyright(Pylance)는 IDE 피드백 최강. PEP 695·742·749까지 타입 시스템 PEP 속도도 가속. soundness vs ergono
2026-05-15 · 28 분 읽기 #python#mypy#pyright#pylance#pyrePython 완전 가이드 — FastAPI·AsyncIO·Pydantic·uv·Polars·AI 엔지니어링 (Season 2 Ep 5, 2025)
Python은 "느리고 GIL에 갇힌" 언어였다. 2024~2025년의 Python은 free-threading(No-GIL) 실험, JIT 컴파일러, uv라는 혁명적 패키지 매니저, Polars의 Rust 백엔드 DataFrame, Pydantic v2의 Rust Core, FastAPI의 타입 안전 API, 그리고 LangChain·LangGraph·Pydantic AI로 이어지는 AI
2026-04-15 · 16 분 읽기 #python#fastapi#asyncio#pydantic#uvPython GIL & CPython 내부 완전 가이드 2025: Global Interpreter Lock, Bytecode, No-GIL, Subinterpreters, Async 심층 분석
Python이 왜 스레드에서 느린가? CPython의 bytecode interpreter, GIL의 진짜 이유, asyncio 이벤트 루프, PEP 703 (No-GIL Python), subinterpreters까지 — CPython의 내부를 720줄로 완전 분석한다.
2026-04-15 · 28 분 읽기 #python#cpython#gil#asyncio#no-gilCPython 바이트코드 인터프리터 Deep Dive — ceval.c, Specializing Adaptive, PEP 659, Copy-and-Patch JIT 완전 정복 (2025)
Python의 "느림"은 사실이지만 왜 느린지, 어떻게 빨라지고 있는지는 대부분 개발자가 모릅니다. 이 글은 CPython의 심장인 ceval.c 인터프리터를 처음부터 해부합니다. 소스 → AST → 바이트코드 컴파일, Code/Frame/Cell 객체, 거대한 dispatch 루프, Computed GOTO와 Switch, Python 3.11+의 specializing adaptive 인
2026-04-15 · 37 분 읽기 #python#cpython#bytecode#interpreter#jitPython 3.13과 AI 시대의 부활 — GIL 제거, JIT, Typing, uv/ruff, PyTorch, Mojo까지 완전 정복 (2025)
Python은 어떻게 2008년 2 vs 3 분열 위기에서 2025년 "가장 많이 쓰이는 언어 1위"로 재기했나? CPython의 GIL 역사, 3.13의 실험적 Free-Threaded Python, 3.11의 35% 속도 향상, 3.13 JIT, 타입 힌트와 mypy/pyright/pyrefly, Astral의 uv/ruff가 연 Rust 혁명, PyTorch/JAX/Transformer
2026-04-15 · 20 분 읽기 #python#gil#jit#typing#uv백엔드 개발자를 위한 함수형 프로그래밍 가이드 2025: 불변성, 모나드, 합성, 부수효과 관리
함수형 프로그래밍의 모든 것! 순수 함수, 불변성, 고차 함수, 함수 합성, 모나드(Maybe/Either/IO), 커링/파셜 어플리케이션, 부수효과 관리, TypeScript/Python/Rust FP 패턴, 실전 백엔드 적용.
2026-04-14 · 36 분 읽기 #functional-programming#immutability#monad#composition#pure-function