| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 |
- REST API
- electron
- Vite
- github actions
- 상태관리
- typescript
- 인증
- React
- Kotlin
- 크롤링
- playwright
- 마이그레이션
- contextBridge
- 도메인설계
- sqlite
- FastAPI
- 배포
- 백엔드
- 아키텍처
- 소셜로그인
- php
- 보안
- javascript
- 온디바이스AI
- 메일자동화
- next.js
- 프론트엔드
- Android
- JWT
- python
- Today
- Total
목록2026/06/18 (6)
HM소프트
공개 경매 데이터 수십만 건을 상대 서버 부담 없이 끝까지 긁는 분산 크롤러 인프라를 설계했다. HTML 대신 검색 인덱스를 페이지 컨텍스트에서 직접 질의하고, 1000건 한계는 적응형 재귀 분할로 우회했다. 적응형 레이트 리미팅, 체크포인트 재시작, 14대 VM 분산과 차단 시 자동 지역 이전까지 다룬다.수십만 건을, 남의 서버를 괴롭히지 않고, 끝까지한 해외 미술품 경매 데이터 플랫폼에 공개되어 있는 출품작 기록을 대규모로 수집하는 파이프라인을 만들었다. 한 건의 출품 기록에는 제목·설명·카테고리 계층·경매사·낙찰가·추정가·작가·이미지가 들어 있고, 이걸 전수에 가깝게 모아 분석에 쓰는 게 목적이었다. 데이터는 외부 공개 사이트에 있으니 가져오는 일 자체는 불법도 비밀도 아니다. 진짜 어려운 건 따로..
관리자 콘솔을 받치는 인증·역할·보안을 다진다. 신뢰 경계를 사람 세션 쿠키와 머신 API 키로 가르고, owner/reception 역할과 테넌트 격리를 의존성 계층으로 쌓았다. 1회용 부트스트랩 토큰, 보안 리뷰에서 깨진 기본 시크릿·서버측 세션 폐기, scrypt·HMAC 표준 라이브러리 해시까지 기록한다.AI보다 콘솔이 먼저 팔린다1편은 음성 런타임, 2편은 AI 두뇌(예약 tool-call·RAG·가드레일)였다. 마지막 3편은 그걸 운영 가능하게 만드는 일이다. 사실 이 단계가 체감상 가장 "제품"에 가까웠다. 한 의료기관 입장에서 매일 들여다보는 화면은 AI 내부가 아니라 관리자 콘솔이기 때문이다. 승인 대기 예약을 처리하고, 통화 로그를 확인하고, 시술과 가드레일을 설정하는 그 화면이 곧 제..
음성 AI의 출력을 실제 데이터에 묶는 두뇌 층을 만든다. 예약은 LLM 자유 생성이 아닌 tool-call 두 개로 고정하고 판정은 백엔드가, 더블부킹은 구간 겹침과 상태머신으로 막았다. 좀비 슬롯 만료 스윕, RAG 근거를 콘솔 입력 시술 DB로 교체한 테넌트 격리, 설정형 가드레일까지 다룬다.AI가 멋대로 말하면 안 되는 도메인1편에서 음성 런타임의 골격을 만들었다. 오디오가 들어와 응답 음성으로 나가는 파이프라인이다. 이번 2편은 그 위에 올라가는 "두뇌" 쪽 이야기다. 한 의료기관의 상담 전화를 받는 AI에서 가장 어려운 지점은 정확도가 아니라 신뢰 경계다. 일반 챗봇이 그럴듯하게 지어낸 답은 애교지만, 여기서는 사고가 된다. 그 기관에 없는 시술을 추천하거나, 비어 있지 않은 시간에 예약을 잡..
온프레미스 음성 AI의 오디오 한 턴이 들어와 응답 음성으로 나가는 런타임을 다룬다. STT·LLM·TTS·RAG를 Protocol 계약으로 먼저 못 박고 mock을 기본 어댑터로 두어 GPU 없이 엔드투엔드를 돌렸다. 첫 음성 KPI 시뮬레이션, lazy import seam, 응급은 LLM을 우회하는 오케스트레이터까지 기록한다.시리즈를 시작하며전화로 걸려 오는 문의를 자연어로 알아듣고, 그 기관이 보유한 데이터에 근거해 적절한 안내를 하고, 예약 신청까지 이어 주는 음성 AI 상담 시스템을 만들고 있다. 한 의료기관의 상담 전화를 사람 대신 받아 1차 응대를 하는 제품이라고 보면 된다. 특이한 제약이 하나 붙는다 — STT(음성 인식)·LLM·TTS(음성 합성)·RAG(검색)가 전부 기관 내부 서버에..
Playwright MCP 위에 시니어 QA의 판단력을 얹은 자율 웹 QA 플러그인을 만들었다. 페르소나 시스템 프롬프트, 6단계 작업 루프, 입력값 엣지 케이스 체크리스트, 증상-원인 진단 테이블, 그리고 파괴적 액션 강제 확인과 stale ref 금지 같은 자율 에이전트 안전장치를 코드 근거로 풀어낸다."코드는 멀쩡한데 왜 안 되죠"에서 출발배포를 끝낸 뒤 누군가 "이거 잘 되는지 한번 봐줘"라고 부탁할 때마다 나는 매번 같은 한계에 부딪혔다. 코드 리뷰 도구는 코드를 읽고, 단위 테스트는 함수를 호출한다. 둘 다 정적 분석의 영역이다. 그런데 정작 사용자가 겪는 문제는 거기에 없다. 버튼 핸들러 코드가 흠잡을 데 없어도 그 버튼이 실제로 눌리는지는 별개고, 업로드 로직이 깔끔해도 운영 서버가 422..
제안서·견적서·개발계획서를 코드처럼 빌드한다. 코딩 에이전트 플러그인의 커맨드·스킬·훅을 생성 진입점·규칙 엔진·검증 게이트로 매핑하고, 디자인·표현·가격 규칙을 단일 스킬로 추출했다. PowerShell 비차단 검증 훅의 3중 필터와 금칙어 정규식, UTF-8 인코딩 함정까지 다룬다.문서 작업도 코드처럼 — 산출물 하네스를 만들기로 했다외주 개발을 1인 작업실 규모로 하다 보면, 의외로 코드만큼 자주 만드는 게 문서다. 제안서, 견적서, 개발계획서. 새 프로젝트 문의가 들어올 때마다 이 세 가지를 한 세트로 토해낸다. 그런데 코드에는 린터와 타입체커와 CI가 붙어 있는 반면, 정작 고객에게 직접 나가는 문서에는 아무런 안전장치가 없었다.증상은 늘 똑같았다. 지난번 제안서를 복사해서 이번 프로젝트에 맞게..