Files
2nd/10_Wiki/Topics/AI_and_ML/Asset-Specific-Knowledge.md
T
Antigravity Agent f8b21af4be Wiki cleanup: error-doc removal, dedup merge, link normalization
10_Wiki/Topics 대규모 정리:
- 오류 캡처/미완성 stub 문서 227개 제거
- 교차폴더 중복 43클러스터 병합 (63파일 → redirect)
- 링크명 정규화: 깨진 링크 수정·redirect 직결·개념 매핑 ~2,400건
- 카테고리 MOC 6개 신규 생성
- Graph 섹션 미해결 related-keyword 링크 10,058건 제거

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-20 23:52:15 +09:00

7.4 KiB

id, title, category, status, canonical_id, aliases, duplicate_of, source_trust_level, confidence_score, verification_status, tags, raw_sources, last_reinforced, github_commit, tech_stack
id title category status canonical_id aliases duplicate_of source_trust_level confidence_score verification_status tags raw_sources last_reinforced github_commit tech_stack
wiki-2026-0508-asset-specific-knowledge Asset-Specific Knowledge 10_Wiki/Topics verified self
자산 특정적 지식
tacit knowledge
institutional knowledge
tribal knowledge
moat
RAG
none B 0.85 applied
knowledge-management
tacit-knowledge
moat
rag
institutional
onboarding
fine-tuning
2026-05-10 pending
language applicable_to
knowledge management
Custom RAG
Fine-tuning
Onboarding
Documentation

Asset-Specific Knowledge

📌 한 줄 통찰

"매 다른 곳 X 의 나만의 무기". 매 codebase / business / domain 의 deep context. 매 tacit (문서 X) + 매 high replacement cost. 매 modern AI 시대 의 가장 큰 differentiator — 매 generic LLM 의 X 가, 매 RAG / fine-tune 의 internalize.

📖 핵심

매 정의 (Williamson 1985)

  • 매 specific asset 에 의 가치 의 lock-in.
  • 매 site / physical / human / dedicated.
  • 매 transfer cost 의 high.

매 type

  1. Tacit (암묵지): 매 doc X — 매 experience.
  2. Codebase: 매 specific architecture / convention.
  3. Business domain: 매 customer pattern / regulation.
  4. Process: 매 workflow / decision rule.
  5. Relationship: 매 customer / vendor.
  6. Historical: 매 past incident / decision.

매 examples

  • War story: "매 last year 의 deploy 의 X 의 fail 의 이유는..."
  • Convention: "매 우리 team 의 매 React 의 hook 의 이런 식으로..."
  • Customer quirk: "매 client A 의 매 Friday 의 deploy 의 X."
  • Performance: "매 query X 의 매 prod 의 매 slow."
  • Regulation: "매 our market 의 매 GDPR 의 매 X 적용."

매 Williamson 의 economics

  • 매 transaction cost.
  • 매 hold-up problem.
  • 매 vertical integration.
  • 매 firm boundary.

→ 매 economic moat 의 source.

매 challenges

  1. Bus factor: 매 1 person → leave → 매 collapse.
  2. Onboarding: 매 6 month + 매 mentorship.
  3. Documentation: 매 stale.
  4. Knowledge transfer: 매 hard.
  5. Tribal cliques: 매 inclusion 의 X.

매 modern AI 적용

Custom RAG

  • 매 internal docs + 매 LLM.
  • 매 retrieval 의 specificity.
  • 매 GPT 의 generic 의 enhance.

Fine-tuning

  • 매 organization-specific data.
  • 매 LoRA / QLoRA.
  • 매 cost-effective.

Internal LLM

  • 매 self-hosted.
  • 매 data privacy.
  • 매 brand voice.

Agent specialization

  • 매 internal tool API.
  • 매 codebase-specific guideline.
  • 매 history-aware.

매 capture method

  1. Pair programming / shadowing.
  2. Recorded sessions (Loom, Tella).
  3. ADR / RFC.
  4. Postmortem.
  5. War story doc.
  6. AMA / office hours.
  7. LLM-mediated extraction (interview → structured).
  8. Code comments (선별적).

💻 패턴

Internal RAG

from langchain.vectorstores import Chroma
from langchain.embeddings import OpenAIEmbeddings
from langchain.text_splitter import RecursiveCharacterTextSplitter

# 매 internal sources
sources = [
    'wiki/*.md',
    'adr/*.md',
    'postmortem/*.md',
    'codebase/README.md',
    'slack/threads.json',  # 매 sanitized
]

splitter = RecursiveCharacterTextSplitter(chunk_size=1000, chunk_overlap=200)
docs = []
for source in sources:
    for doc in load(source):
        docs.extend(splitter.split_documents([doc]))

vectorstore = Chroma.from_documents(
    docs,
    embedding=OpenAIEmbeddings(),
    persist_directory='./internal_kb',
)

def ask_internal(question):
    relevant = vectorstore.similarity_search(question, k=5)
    context = '\n\n'.join(d.page_content for d in relevant)
    return llm.generate(f"""Use this internal knowledge:
{context}

Question: {question}
Answer with citations to the source docs.""")

Bus-factor mitigation

def bus_factor_audit(repo):
    blame_data = get_git_blame_stats(repo)
    
    high_risk = []
    for file_path, contributors in blame_data.items():
        if not contributors: continue
        top_share = contributors[0].lines / sum(c.lines for c in contributors)
        if top_share > 0.8 and len(contributors) <= 2:
            high_risk.append({
                'file': file_path,
                'owner': contributors[0].name,
                'share': top_share,
            })
    return sorted(high_risk, key=lambda x: -x['share'])

→ 매 high bus-factor file 의 pair programming target.

War story extraction (LLM-mediated)

def extract_war_story(slack_thread):
    prompt = f"""Extract a structured "war story" from this Slack incident thread.

Format:
- Trigger: what initially failed
- Diagnosis: how it was identified
- Fix: what resolved it
- Lesson: non-obvious learning
- Tags: [domain, tech]

Thread:
{slack_thread}"""
    return structured_llm.generate(prompt)

LoRA fine-tune (organization)

from peft import LoraConfig, get_peft_model
from transformers import AutoModelForCausalLM, AutoTokenizer
from trl import SFTTrainer

base = AutoModelForCausalLM.from_pretrained('meta-llama/Llama-3-8B')
tokenizer = AutoTokenizer.from_pretrained('meta-llama/Llama-3-8B')

lora = LoraConfig(r=16, lora_alpha=32, target_modules=['q_proj', 'v_proj'], lora_dropout=0.05)
model = get_peft_model(base, lora)

# 매 org-specific Q&A pairs
trainer = SFTTrainer(model=model, train_dataset=org_dataset, tokenizer=tokenizer)
trainer.train()

# 매 tiny LoRA adapter (50MB) — 매 portable, 매 swappable.

Onboarding doc template

# [Service Name] Onboarding

## 30-second pitch
[1 sentence]

## Why it exists
[origin story + alternative considered]

## Key concepts
- [domain term 1]: meaning + when to use
- [domain term 2]: ...

## Common pitfalls
- [war story 1]: don't do X because Y happened
- [war story 2]: ...

## Who to ask
- [Topic A]: @person
- [Topic B]: @team

## Reading list (priority)
1. [link] — 30min
2. [link] — 1h

🤔 결정 기준

상황 Strategy
Generic question Public LLM
Codebase-specific Internal RAG
Domain expert simulation Fine-tune
Privacy-critical Self-hosted LLM
Bus-factor risk Pair programming + record
Onboarding RAG + structured doc
War story LLM extract + curate

기본값: Internal RAG 의 baseline. 매 high-volume specific = LoRA. 매 critical = self-host.

🔗 Graph

🤖 LLM 활용

언제: 매 internal RAG 설계. 매 onboarding system. 매 war story 의 extract. 매 organization-specific tool. 언제 X: 매 generic / public knowledge. 매 single-person consumption.

안티패턴

  • No documentation: 매 leave → 매 collapse.
  • All in one head: 매 bus factor 1.
  • Generic LLM 의 internal task: 매 hallucination.
  • RAG 의 stale: 매 outdated.
  • Fine-tune 의 small data: 매 overfit.
  • No audit / curation: 매 outdated war story.
  • Tribal exclusion: 매 newcomer 의 onboard X.

🧪 검증 / 중복

🕓 Changelog

날짜 변경
2026-05-08 Phase 1
2026-05-10 Manual cleanup — type + capture method + 매 RAG / LoRA / bus factor code