전체 글(208)
-
102줄짜리 LLM 관문에 들어간 동시성 기법 6가지
화면 뒤의 데이터 판단 · 아키텍처 · processor/llm_gate.pyprocessor/llm_gate.py — 102줄짜리 LLM 관문에 들어간 동시성 기법 6가지Passive 에서 AI 가 쓰는 글(뉴스 브리핑·증권가 리포트 종합·종목 요약)은 전부 무료 LLM API 로 만듭니다. 무료라서 한도가 빡빡하고, 여러 파일이 같은 한도를 나눠 씁니다. llm_gate.py 는 그 파일들이 LLM 을 부르기 직전에 꼭 거치는 관문입니다. 102줄밖에 안 되지만 세마포어·컨텍스트 매니저·ContextVar·circuit breaker·단조 시계까지, 현업에서 자주 쓰는 동시성 기법이 압축돼 있습니다. 이 글은 그 여섯 부분을 하나씩 뜯어봅니다.1. 왜 따로 뺀 모듈인가 — 공유 상태 모듈📍 적용 화..
2026.10.30 -
무료 LLM 한도로 AI 글 네 종류를 굴리는 법
화면 뒤의 데이터 판단 · 아키텍처 · processor/llm_gate.py 외 3개processor/llm_gate.py · market_brief.py · analyst_outlook.py · stock_ai_brief.py — 무료 LLM 한도로 AI 글 네 종류를 굴리는 법Passive 의 홈 화면에는 AI 가 쓴 글이 네 군데 나옵니다. 오늘 시장 한 줄, 뉴스 브리핑, 증권가 리포트 종합, 종목별 핵심 이슈입니다. 이 글들은 전부 무료 LLM API(NVIDIA NIM·Gemini·Groq·Cerebras 등)로 만듭니다. 무료라서 분당 호출 한도가 빡빡하고, 응답이 1분 가까이 걸리기도 합니다. 이 글은 그 제약 안에서 네 파일이 어떻게 역할을 나눴는지, 각 부분에 어떤 코드 구조를 썼는지..
2026.10.30 -
"이 데이터, 오늘 것 맞나?"를 69줄로 판정하기
화면 뒤의 데이터 판단 · 아키텍처 · processor/freshness.pyprocessor/freshness.py — "이 데이터, 오늘 것 맞나?"를 69줄로 판정하기Passive 의 화면 대부분은 하루 한 번 배치가 계산해 둔 값을 읽습니다. 그런데 배치가 실패하면 화면은 에러 없이 어제 값을 그대로 보여 줍니다. 겉으로는 멀쩡하니 아무도 모릅니다. processor/freshness.py 는 이 문제를 "데이터의 날짜가, 지금쯤 나와 있어야 할 최신 영업일보다 옛날인가?"라는 질문 하나로 바꿔 판정하는 69줄짜리 파일입니다.1. 흐름의 어디에 있나📍 적용 화면 — 화면에 직접 노출되지 않음(API·스케줄러·감시 페이지가 공통으로 부르는 판정기).① 지수 시세 테이블 · index_price_..
2026.10.28 -
모델 결과 테이블: 무거운 계산과 화면 사이의 보관함
화면 뒤의 데이터 판단 · 아키텍처 · database/repositories.pydatabase/repositories.py — 모델 결과 테이블: 무거운 계산과 화면 사이의 보관함Passive 아키텍처 도식에서 "결과 테이블" 상자는 파일이 아니라 Supabase(PostgreSQL) 안의 테이블 묶음입니다. 여러 모델이 계산한 결과를 여기 저장해 두고, 점수 엔진과 API 는 이 저장값만 꺼내 씁니다. 이 글은 그 상자 안에 실제로 어떤 테이블이 있고, 누가 넣고 누가 꺼내는지를 코드 기준으로 따라갑니다.1. 결과 테이블은 흐름의 어디에 있나📍 적용 화면 — 화면에 직접 노출되지 않음(모델과 화면 사이의 저장 단계).① 수집기 원시 테이블 · 시세·지표 원본 시계열↓ 원시 시계열② 모델들 · 국면..
2026.10.27 -
SELECT COUNT(*) 는 왜 느려지고, 무엇으로 대신하나
강의 정리 · Hussein Nasser — SELECT COUNT(*) can impact your Backend Application Performance (10분 37초) SELECT COUNT(*) 는 왜 느려지고, 무엇으로 대신하나"몇 개인지 세기"는 쉬워 보이지만 DB 입장에선 줄을 하나하나 확인하는 일입니다. 6천만 줄짜리 grades 테이블로 PostgreSQL 이 COUNT 를 어떻게 처리하는지 따라가고, 정확한 수가 필요 없을 때 쓰는 추정치까지 정리합니다.① COUNT(g)→② COUNT(*)→③ 수정 후→④ 범위 확대→⑤ 추정치※ 강사는 영상 속 실행 시간이 컨테이너·캐시 환경이라 의미가 없고, 실행 계획(plan)을 읽는 것이 핵심이라고 강조합니다.1. COUNT(g) — 색인을 ..
2026.10.27 -
Passive 에서의 시장예측 모델링
화면 뒤의 데이터 판단 · 방향예측 모델pattern_demo/kr_dir5_v3.py — "5일 뒤 오를까"를 0~100점으로 만드는 과정정답 정하기 → 재료 손질 → 학습 → 섞기·보정 → 점수, 그리고 20일 모델은 무엇이 다른가Passive 홈의 기간별 예측점수는 "앞으로 5일·20일·60일 동안 시장이 오를 가능성"을 0~100점으로 보여 줍니다. 이 글은 그중 국내 5일 점수를 만드는 모델이 어떤 순서로 만들어졌는지를 실제 코드와 모델 파일(models/*.pkl, *_meta.json) 기준으로 따라갑니다.1. 지금 운영 중인 모델적용 화면 — 홈 › 기간별 예측점수 세 칸(5일·20일·60일). 5일 칸은 서버가 바로 채우고, 20·60일 칸은 /api/horizon-scores 가 채웁니..
2026.10.23