aiohttp
-
로컬 챗봇 시리즈 #1 — 메시지 편집은 왜 그렇게 단순해야 하나: 컨텍스트 엔지니어링 관점에서IT 2026. 5. 8. 21:00
들어가며 — 메시지 편집이 가장 재미있는 기능이었다집에 띄워둔 로컬 LLM 챗봇에 ChatGPT/Claude.ai 수준 UX를 한 묶음으로 채워넣었다. 풀텍스트 검색, Custom Instructions, Cmd-K 팔레트, 대화 export. 다 들어가니 챗봇이 "쓸 만한" 인상을 풍긴다.그중에서 가장 단순해 보이는데 가장 재미있었던 것이 메시지 편집이다. 사용자가 과거 자기 메시지의 ✎를 누르고 한 줄 고쳐서 다시 보내는 그것. 막상 만들어보니 "챗봇의 기억이란 무엇인가"라는 본질적 질문에 닿았다. 이번 글은 그 메서드 한 개와 그 너머의 의미를 풀어 쓴다.1. 사용자가 ✎를 누를 때 무엇이 일어나야 하나요구사항은 직관적이다.과거 user 메시지에 마우스 올리면 ✎ 버튼 노출클릭 → 그 자리에서 te..
-
mypy로 파이썬 프로젝트 5개에 타입 에러 0 만들기 — 단계적 도입과 Hook 강제IT 2026. 4. 28. 23:00
ruff는 깔았는데, 왜 또 타입 체크인가며칠 전 프로젝트 10여 개에 ruff 린트를 돌려 경고 0을 만들었다. 쓰지 않는 import, 오타, 중복 키 — 테스트 통과와 무관하게 조용히 썩고 있던 것들이 드러났다. 그래도 한 가지는 여전히 남아 있었다.타입은 검증되지 않고 있었다. 타입 힌트는 힌트일 뿐, 실제로 맞게 썼는지는 아무도 안 본다. 런타임에서 터지기 전까지는.먼저 현황부터 — baseline mypy12개 Python 프로젝트 전체에 mypy --ignore-missing-imports .를 돌렸다. 결과는 프로젝트별로 의존성과 동적 패턴에 따라 크게 갈렸다.난이도특징대략의 프로젝트 수용이타입힌트 50% 이상 + 의존성 단순(aiohttp 정도)4~5개중간getattr/importlib ..