LLM κΈ°λ° μλ μν€ μ»΄νμΌ λꡬ ‘OpenKB’ κΈ°μ λΆμ λ³΄κ³ μ#
1. κ°μ λ° λ°°κ²½#
μ΅κ·Ό λν μΈμ΄ λͺ¨λΈ(LLM)μ νμ©ν μ§μ κ΄λ¦¬ μ루μ μΌλ‘ κ²μ μ¦κ° μμ±(RAG, Retrieval-Augmented Generation)μ΄ κ°κ΄λ°κ³ μμΌλ, μ ν΅μ μΈ RAG μμ€ν μ μ λ³΄κ° νμν λλ§λ€ μ€μκ°μΌλ‘ λ²‘ν° λ°μ΄ν°λ² μ΄μ€μμ κ΄λ ¨ μ²ν¬λ₯Ό κ²μνλ μΌνμ±(Stateless) μν€ν μ²μ μμ‘΄ν¨. μ΄λ‘ μΈν΄ λ€μμ λ¬Έμμ ν©μ΄μ Έ μλ κΈ°μ‘΄ μ§μμ λμ , κ΅μ°¨ μ°Έμ‘°(Cross-reference), μνΈ λͺ¨μλλ μ 보μ μλ μλ³ λ° μ μ κ° μ΄λ ΅λ€λ κ·Όλ³Έμ μΈ νκ³κ° μ‘΄μ¬ν¨.
AI λΆμΌμ μ€νΌλμΈ λ¦¬λμΈ μλλ μΉ΄νμ(Andrej Karpathy)λ μ§μμ μ€μκ°μΌλ‘ λ¨μ κ²μνλ κ²μ λμ΄, μ§μμ μΌλ‘ μν€(Wiki) ννλ‘ μ»΄νμΌνκ³ μ λ°μ΄νΈνλ μμ ꡬ쑰ν λ°©μμ νμμ±μ μ κΈ°ν λ° μμ. μ€νμμ€ μ»€λ§¨λλΌμΈ λκ΅¬μΈ OpenKBλ μ΄λ¬ν μ² νμ μλ²½ν ꡬννμ¬, λ€μν νμμ μ νΒ·λΉμ ν λ¬Έμ μ§ν©μ LLMμ ν΅ν΄ κ°μμ± λμ μμ½ νμ΄μ§, κ°λ νμ΄μ§, μνΈ μ°Έμ‘° λ§ν¬κ° λ΄μ₯λ ‘μνΈμμ©ν μ§μ λ² μ΄μ€(Knowledge Base)‘λ‘ μλ λΉλ λ° μμνν΄ μ£Όλ κΈ°μ νλ μμν¬μ.
2. μ ν΅μ RAG vs OpenKB μν€ μ»΄νμΌ μν€ν μ² λΉκ΅#
| λΉκ΅ νλͺ© | μ ν΅μ RAG (Retrieval-Augmented Generation) | OpenKB μ§μ μ»΄νμΌ (Wiki Compilation) |
|---|---|---|
| μν κ΄λ¦¬ (State) | Stateless (μ§μ μμ λ§λ€ μ€μκ° κ²μ λ° μΌνμ± μ»¨ν μ€νΈ μ 곡) | Stateful (μ§μμ μΌλ‘ λμ λ° μ λ°μ΄νΈλλ κ·Έλν νμ ꡬ쑰ν) |
| κ΅μ°¨ μ°Έμ‘° (Cross-reference) | λΆκ° (λ¬Έμ κ° μ κΈ°μ μ°κ²°μ μν΄ μλ μ²λ¦¬ νμ) | μλ ꡬν (ν΅μ¬ κ°λ
λ³ [[wikilinks]] μμ± λ° μλ°©ν₯ μ°κ²°) |
| μΌκ΄μ± κ²μ¬ (Consistency) | λͺ¨μ κ°μ§ λΆκ° (λμΌ μΏΌλ¦¬μ μλ‘ λ€λ₯Έ μ 보 κ²°ν© λ° μ곑 λ°μ) | μλ κ²μ¬ μ§μ (openkb lintλ₯Ό ν΅ν λ¬΄κ²°μ± λ° λͺ¨μ νμ§) |
| 컨ν μ€νΈ μ°ν (Context Window) | μλ² λ© μ²ν¬ κΈΈμ΄μ μμ‘΄ (μ 체 λ§₯λ½ μ μ€ μν μμ‘΄) | PageIndex νΈλ¦¬λ₯Ό νμ©ν κ³μΈ΅μ μμ½ μ½κΈ° μ²λ¦¬ |
3. ν΅μ¬ λμ μν€ν μ² λ° μ²λ¦¬ λ©μ»€λμ¦#
OpenKBμ ν΅μ¬ νμ΄νλΌμΈμ μ λ ₯ λ¬Έμμ λΆλμ λ°λ₯Έ κ°λ³μ μ²λ¦¬ λ°©μ λ° μμμ μ»΄νμΌ κ΅¬μ‘°λ₯Ό μ·¨ν¨.
3.1 λ©ν°λͺ¨λ¬ λ¬Έμ μμ§ λ° μ μ²λ¦¬#
- λ§μ΄ν¬λ‘μννΈμ
markitdownλΌμ΄λΈλ¬λ¦¬λ₯Ό ν΅ν΄ PDF, Word, Markdown, PPT, HTML, Excel λ± λ€μν μ΄μ’ (Heterogeneous) λ¬Έμλ₯Ό νμ±ν¨. - μ΄λ―Έμ§, ν, λν λ±μ λ€μ΄ν°λΈ λ©ν°λͺ¨λ¬ νλ μμν¬λ₯Ό ν΅ν΄ μΆμννμ¬ νμ€ λ§ν¬λ€μ΄(Markdown) ν¬λ§·μΌλ‘ ν΅μΌν¨.
3.2 λΆλλ³ μ μμ μ²λ¦¬ μν€ν μ² (Adaptive Processing Pipeline)#
- λ¨κΈ° λ¬Έμ (< 20νμ΄μ§): LLMμ΄ μ 체 컨ν μ€νΈλ₯Ό μ§μ λΆμνμ¬ ν΅μ¬ κ°μ²΄λͺ (Entity) λ° κ΄κ³(Relationship)λ₯Ό νμ νκ³ κ°λ μ μΆμΆν¨.
- μ₯κΈ° λ¬Έμ (>= 20νμ΄μ§): ‘PageIndex’ κΈ°λ² κΈ°λ°μ κ³μΈ΅μ μμ½ νΈλ¦¬λ₯Ό ꡬμΆν¨. LLMμ΄ μ΄ νΈλ¦¬λ₯Ό ν‘λ¨ νμνλ λ°©μμΌλ‘ 컨ν μ€νΈ μ°½ μ νμ 극볡νκ³ , ν ν° μλͺ¨λ₯Ό λ°©μ§νλ©΄μ μ νμ±μ ν보ν¨.
3.3 μν 보쑴ν μμμ μ»΄νμΌ (Stateful Incremental Update)#
- μ κ· λ¬Έμ μμ§ μ λ¨μ μλ² λ© λ²‘ν°λ₯Ό μ μ¬νλ λ°©μ λμ , κΈ°μ‘΄μ ‘κ°λ νμ΄μ§’μ ‘μμ½ νμ΄μ§’λ₯Ό λ‘λνμ¬ μμ ·보μνκ±°λ μ κ· λ Έλλ₯Ό μμ±ν¨.
- λ¬Έμ νλκ° μΆκ°λ λλ§λ€ νκ· 10~15κ°μ κ΄λ ¨ μν€ νμ΄μ§κ° μ κΈ°μ μΌλ‘ μ λ°μ΄νΈλλ©°, μ§μ λ€νΈμν¬κ° μ§μ νμ₯λ¨.
[μ΄μ’
λ¬Έμ μμ§ (PDF, DOCX λ±)]
β
βΌ
[Markitdown λ³ν]
β
βββΊ λ¨κΈ° λ¬Έμ (<20p): LLM μ§μ λΆμ λ° Concept μΆμΆ
βββΊ μ₯κΈ° λ¬Έμ (>=20p): PageIndex νΈλ¦¬ ꡬ쑰ν ν κ³μΈ΅μ νμ
β
βΌ
[Incremental Wiki Compilation]
- μμ½ νμ΄μ§ λ³ν© λ° μ κ· μμ±
- κ°λ
λ
Έλ μ
λ°μ΄νΈ
- [[wikilinks]]λ₯Ό ν΅ν κ΄κ³ λ§€ν
β
βΌ
[Obsidian νΈν Markdown λ‘컬 μ μ₯]4. μ£Όμ κΈ°λ₯ μΈν°νμ΄μ€ (CLI)#
OpenKBλ μμ§λμ΄λ§ λ° μ€λ¬΄ νκ²½μμ μ§κ΄μ μΈ μ μ΄κ° κ°λ₯νλλ‘ κ°λ ₯ν CLI λͺ λ Ήμ΄λ₯Ό μ 곡ν¨.
openkb query/openkb chat: μν€ κΈ°λ°μ 1νμ± λλ λ©ν°ν΄(Multi-turn) ꡬ쑰μ λν μν.openkb lint: μ§μ λ² μ΄μ€μ μ ν©μ±μ μ체 κ²μ¦νμ¬ λ°λλ§ν¬(Orphan page), μνΈ λͺ¨μ, μ€λλ μ 보λ₯Ό νμ§ λ° κ΅μ .openkb watch: λ‘μ°(Raw) λλ ν°λ¦¬λ₯Ό μ€μκ°μΌλ‘ κ°μνμ¬ νμΌ μΆκ°/μμ μ μν€λ₯Ό μλμΌλ‘ μ¦κ° κ°±μ .
5. μ°μ μ μμ¬μ λ° νκ³μ #
5.1 λΉμ¦λμ€ μμ¬μ (λ°μ΄ν° μ£ΌκΆ ν보)#
- μ¬λ΄ λ¬Έμ μμ° κ΄λ¦¬ λ°©μμ μλμ μΈ λ¨μ μμΉ΄μ΄λΉμμ μ€μκ° μλ κ°±μ ν μ§μ κ·Έλν κ΅¬μ‘°λ‘ μ ν κ°λ₯ν¨.
- μ΅μ’ μ°μΆλ¬Όμ΄ νΉμ λ²€λμ μ’ μ(Lock-in)λμ§ μλ νμ€ λ§ν¬λ€μ΄ νμΌ κ΅¬μ‘°λ‘ μ μ₯λμ΄, λ‘컬 μ§μ κ΄λ¦¬ λꡬ(Obsidian λ±)μμ νΈνμ±μ΄ λ§€μ° λμΌλ©° κΈ°μ λ΄λΆ λ°μ΄ν° μ£ΌκΆμ μ¨μ ν 보μ₯ν¨.
5.2 κΈ°μ μ νκ³ λ° κ°μ κ³Όμ #
- νμ¬ μμ΄λ₯Ό λΉλ‘―ν λΌν΄ κ³μ΄ λ¬Έμ μμ£Όλ‘ μ€κ³λμ΄ μμ΄ νκ΅μ΄, μ€κ΅μ΄, μΌλ³Έμ΄(CJK) λ± λΉλΌν΄κ³ λ¬Έμ μ²λ¦¬λ₯Ό μν ν ν¬λμ΄μ μ΅μ ν μΈ‘λ©΄μμ μ½μ μ΄ μ‘΄μ¬ν¨.
- κ΅λ΄ λΉμ¦λμ€ μ€λ¬΄μ μ μ©νκΈ° μν΄μλ λ‘컬 ννμ λΆμκΈ°μμ μ°κ³, κ²μ νμ΄νλΌμΈ μ΅μ ν λ± κΈ°μ μ 보μ μμ μ΄ μ νλμ΄μΌ ν¨.
π μλ¬Έ κΈ°μ¬ μΆμ²: PyTorch νκ΅ μ¬μ©μ λͺ¨μ - OpenKB μκ°

