Task #57
KG Entity μ€λͺ μμ± β μ΅μ’ λ³΄κ³ μ
μμ λͺ λ Ήμ΄
[π‘ NORMAL] ## KG Entity μ€λͺ
μμ± β Task #56 νμ (μ€μ μ€ν)
### λ°°κ²½
Task #56μμ μ§λ¨ μλ£λ¨:
- Neo4j: Docker λ‘컬 (bolt://localhost:7687), .envμμ λΉλ°λ²νΈ λ‘λ
- Ollama: qwen3.5:4b (think=False λͺ¨λ)
- summary μλ Entity λ
Έλ: 26κ° (US μ€λ³΅ 6κ° μ μΈ)
### μ²λ¦¬ λμ μν°ν° (μ νν μ΄λ¦)
1. Bulgaria (Location)
2. Circuit Breaker (Concept)
3. Class struggle (Concept)
4. Corporate Governance (Concept)
5. Democratic governance (Policy)
6. Foreign Investment (Concept)
7. Hanbok (Asset)
8. Hanji (Asset)
9. Historical materialism (Concept)
10. Iran-Israel war (Campaign)
11. Kazakh language (Concept)
12. Minab (Location)
13. Minister of Planning and Budget (Person)
14. No Kings Protests (Campaign)
15. President Jer (Person)
16. Quantum Computing (Asset)
17. Russian language (Concept)
18. Saudi military base (Location)
19. Ultra-imperialism (Concept)
20. cyber domains (Concept)
21. household debt (Concept)
22. labor environment (Concept)
23. like-minded nations (Organization)
24. liquefied natural gas (LNG) (Asset)
25. military domains (Concept)
26. myocardial infarction (Concept)
### μ€ν λ°©λ²
**Step 1**: .env νμΌμμ Neo4j λΉλ°λ²νΈ λ‘λ
```python
from dotenv import load_dotenv
import os
load_dotenv()
NEO4J_URI = os.getenv("NEO4J_URI", "bolt://localhost:7687")
NEO4J_USER = os.getenv("NEO4J_USER", "neo4j")
NEO4J_PASSWORD = os.getenv("NEO4J_PASSWORD")
```
**Step 2**: Ollamaλ‘ κ° μν°ν° μ€λͺ
μμ±
- URL: http://localhost:11434/api/chat
- λͺ¨λΈ: qwen3.5:4b
- think: False (μ€μ! /api/chatμμ optionsμ λ£μ§ λ§κ³ μ΅μμμ "think": false)
- μΈμ΄: νκ΅μ΄, 2-3λ¬Έμ₯
**Step 3**: Neo4jμ summary νλ μ
λ°μ΄νΈ
```cypher
MATCH (n:Entity {name: $name}) SET n.summary = $summary
```
**Step 4**: κ²°κ³Όλ₯Ό temp_dev/kg_enricher_κ²°κ³Ό.jsonμ μ μ₯
### μ£Όμμ¬ν
- US μ€λ³΅ λ
Έλ(6κ°)λ 건λλ¦¬μ§ λ§ κ²
- think: False νλΌλ―Έν°λ λ°λμ μ΅μμ λ 벨μ μμΉ (options μμ΄ μλ)
- Ollama ν둬ννΈ: "λ€μ κ°λ
/μν°ν°μ λν΄ νκ΅μ΄λ‘ 2-3λ¬Έμ₯μ κ°κ²°ν μ€λͺ
μ μμ±ν΄μ€. μ§μ νμ /μμ¬μ λ§₯λ½μ ν¬ν¨ν κ². μν°ν°: {name} (νμ
: {label})"
- κ° μν°ν° μ²λ¦¬ ν μ¦μ Neo4j μ
λ°μ΄νΈ (λ°°μΉ μλ μ€μκ°)
- μ€ν¨ν κ²λ€μ μλ¬ λ‘κ·Έμ κΈ°λ‘
### μλ£ μ‘°κ±΄
26κ° μν°ν° λͺ¨λ summary νλκ° μ±μμ§ μνλ‘ Neo4jμ μ μ₯λ¨