--- id: wiki-2026-0508-asset-specific-knowledge title: Asset-Specific Knowledge category: 10_Wiki/Topics status: verified canonical_id: self aliases: [자산 특정적 지식, tacit knowledge, institutional knowledge, tribal knowledge, moat, RAG] duplicate_of: none source_trust_level: B confidence_score: 0.85 verification_status: applied tags: [knowledge-management, tacit-knowledge, moat, rag, institutional, onboarding, fine-tuning] raw_sources: [] last_reinforced: 2026-05-10 github_commit: pending tech_stack: language: knowledge management applicable_to: [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 ```python 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 ```python 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) ```python 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) ```python 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 ```markdown # [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 - 변형: [[Tacit-Knowledge]] · [[Tribal-Knowledge]] - 응용: [[RAG]] · [[Fine-Tuning]] · [[LoRA]] · [[Onboarding]] · [[ADR]] - Adjacent: [[Postmortem]] · [[Moat]] ## 🤖 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. ## 🧪 검증 / 중복 - Verified (Williamson 1985, Polanyi tacit knowledge). - 신뢰도 B. - Related: [[RAG]] · [[Fine-Tuning]] · [[Onboarding]] · [[ADR]] · [[Bus-Factor]]. ## 🕓 Changelog | 날짜 | 변경 | |---|---| | 2026-05-08 | Phase 1 | | 2026-05-10 | Manual cleanup — type + capture method + 매 RAG / LoRA / bus factor code |