Files
2nd/10_Wiki/Topic_Business/Digests/Topic_Programming--Subsystems.md
T
Antigravity Agent 9148c358d0 docs(10_Wiki): 위키 전체 재구성 — Topic_* 폴더를 4개 카테고리로 통합 + 대규모 중복 제거
Topic_Agent/Topic_Blog/Topics/Topics_Biz/Topics_Meeting/Topics_Rag의 마크다운 지식 문서를
Topic_General/Topic_Programming/Topic_Graphic/Topic_Business 4개 카테고리로 재분류.

- 중복 제거: frontmatter의 status:duplicate/merged + duplicate_of/redirect_to 필드로
  자기 자신을 중복으로 선언한 리다이렉트 stub 1032개 제거, 완전 동일 내용 파일 472개 제거,
  동일 파일명·다른 내용 충돌 시 더 큰(완전한) 버전만 유지(162개 제거) — 총 1639개 중복 제거.
- 분류: 폴더 단위로 명확한 항목(AI_and_ML/Coding/Architecture 등 → Programming,
  Comfyui/Visual_Effects → Graphic, Topics_Biz/Topics_Meeting/사업 등 → Business,
  Poetic_Blog_Writing/창의성/Game_Design 등 → General)은 폴더 우선순위로,
  나머지 혼재 폴더(Topic_Agent/Topic_Blog/Topics 루트/Thinking & Reasoning/Other/UI_UX_Assets)는
  title/tags 키워드 스코어링으로 파일 단위 분류(불명확한 경우 General로 폴백).
  원본 폴더명은 "From_*" 서브폴더로 보존해 추적 가능성 유지.
- 최종 배치: Programming 2784 / General 1608 / Graphic 285 / Business 249 = 4926개 문서.
- 에이전트 운영 상태(.astra/.agent/.obsidian/sessions/memory/_company/docs/lessons/_shared/src)는
  지식 콘텐츠가 아니므로 재분류 대상에서 제외하고 원위치 유지.
- Topics/Topic_email(상위 보호 폴더 Topic_email과 파일명 100% 중복) 삭제 — 보호 폴더 자체는 미변경.
- 완전히 비게 된 Topic_Agent/Topic_Blog/Topics_Biz/Topics_Rag 폴더 제거.
2026-07-05 00:33:48 +09:00

3.8 KiB

type, title, generated_at, sources
type title generated_at sources
digest 소화 노트: Topic_Programming/Subsystems 2026-06-18T18:01:38.365Z
TFIDF_이중언어_스코어링
LLM_프로바이더_추상화
RAG_검색_파이프라인
Agent_오케스트레이터_분해

소화 노트: Topic_Programming/Subsystems

⚙️ 자동 생성 (sleep-time 사전 소화) — 원문이 항상 우선입니다. 소스가 바뀌면 자동 재생성되며, 이 파일은 삭제해도 안전합니다.

예상 질문과 답

  • Q: ConnectAI의 검색 엔진은 어떤 방식으로 작동하나요? — A: 임베딩 엔진 없이도 가벼운 검색이 가능하도록 '좋은 토크나이저'와 'TF-IDF 가중치'를 사용합니다. 한국어/영어 혼합 토크나이저, 불용어 제거, 동의어 확장, 제목 가중치(3배) 등을 적용하여 단순 매칭 이상의 점수를 산출합니다. [TF-IDF 이중언어 스코어링]
  • Q: 다양한 LLM 공급자(Provider)를 하나의 코드로 관리하는 방법은 무엇인가요? — A: '어댑터 패턴'을 사용합니다. Model ID의 접두사(prefix)로 공급자를 결정하는 라우팅 방식을 사용하며, 각 공급자의 API 차이(인증, 바이트 형식 등)는 어댑터가 흡수하고 출력은 OpenAI 호환 SSE 포맷으로 정규화하여 통일합니다. [LLM 프로바이더 추상화]
  • Q: RAG 파이프라인에서 검색된 결과의 우선순위는 어떻게 결정되나요? — A: 소스별로 점수를 0~1로 정규화한 후 소스 우선순위 가중치를 곱합니다. 이후 Actionability(작업 상태 신호)와 Hierarchical(질의/문서 매칭) 지표로 재가중(Re-rank)하여 최종 선택합니다. [RAG 검색 파이프라인]
  • Q: 에이전트 오케스트레이터 설계 시 'God-class' 문제를 어떻게 해결했나요? — A: 거대한 하나의 클래스가 모든 것을 처리하는 대신, 전체 흐름의 골격만 유지하고 세부 구현은 handlePrompt, llm, actions 등의 모듈로 추출하여 위임하는 구조를 가집로 유지보수성을 높였습니다. [Agent 오케스트레이터 분해]

핵심 사실

  • TF-IDF 스코어링: 한글-영문 경계 분리 정규식을 사용하며, 제목 일치 시 본문보다 3배 높은 가중치를 부여합니다. [TF-IDF 이중언어 스코어링]
  • LLM 라우팅: anthropic:, gemini: 등 모델 ID의 접두사(prefix)를 통해 공급자를 결정하며, 로컬 엔진 사용 시에는 접두사가 없는 형태를 따릅니다. [LLM 프로바이더 추상화]
  • RAG 검색 단계: 질의 계획 \rightarrow 다중 소스 병렬 검색 \rightarrow 점수 정규화 및 재가중 \rightarrow 토큰 예산 내 선택 순으로 진행됩니다. [RAG 검색 파이프라인]
  • 멀티에이전트 전략: 단순한 병렬 실행보다 자원 제약에 맞춘 '순차 실행'과 단일 작성자가 여러 역할을 수행하는 'ChunkedWriter' 방식이 더 견고합니다. [Agent 오케스트레이터 분해]

문서 간 연결

  • 공통 주제: 모든 문서는 ConnectAI 시스템의 효율적인 구조 설계(검색, LLM 호출, 에이전트 실행)를 위한 아키텍처 패턴(어댑터, 오케스트레이터 분해, 모듈화)을 다루고 있습니다.
  • 기술적 연결:
    • TF-IDF 스코어링의 토크나이저 기술은 RAG 검색 파이프라인의 첫 단계인 Query Planning과 직접적으로 연결됩니다.
    • LLM 프로바이더 추상화를 통해 정규화된 출력(SSE)은 Agent 오케스트레이터가 사용자에게 진행 상황을 전달하는 메시지 프로토콜(streamChunk 등)의 기반이 됩니다.
    • RAG 파이프라인에서 사용하는 섹션 청킹 기술은 TF-IDF 스코어링의 정밀도를 높이는 요소로 작용합니다.