MADKE: 지식 강화 다중 에이전트 토론
Multi-Agent Debate에 공유 지식 풀을 도입하여 토론 품질을 향상시킵니다
2026년 2월 1일·5 min read·
ai
ai-agent
llm
multi-agent
knowledge
debate
Multi-Agent Debate with Knowledge Enhancement
개념
MADKE는 Multi-Agent Debate의 발전 버전입니다. 공유 지식 풀을 도입하여 토론 품질을 향상시킵니다.
기존 Multi-Agent Debate의 문제
- 각 에이전트의 배경 지식이 다름
- 같은 정보에 대해 다르게 해석
- 특정 분야 지식 부족 시 토론 품질 저하
문제 예시
[Agent A]
"한국의 GDP는 약 1.6조 달러입니다."
[Agent B]
"아니요, 1.8조 달러입니다."
[Agent C]
"제가 알기로는 1.7조 달러입니다."
→ 각자 다른 시점/출처의 데이터로 불필요한 논쟁
해결책: 공유 지식 풀
[공유 지식 풀]
(논문, 팩트, 전문 지식)
↑ ↓
┌────┼────┐
| | |
에이전트A B C
각 에이전트:
1. 지식 풀에서 관련 정보 검색
2. 그 정보를 바탕으로 토론
3. 새로운 정보는 풀에 추가
프로세스
1. 질문 수신
↓
2. 관련 지식 검색
(각 에이전트가 지식 풀에서 정보 획득)
↓
3. 지식 기반 토론
(동일한 정보를 바탕으로 토론)
↓
4. 새로운 발견 저장
(토론 중 발견한 새 정보를 풀에 추가)
↓
5. 최종 답 도출
기존 Debate vs MADKE
| 기존 Debate | MADKE | |
|---|---|---|
| 배경 지식 | 각자 다름 | 동일한 지식 기반 |
| 정보 일관성 | 불일치 가능 | 일관된 정보 |
| 지식 한계 | 학습 데이터 범위 | 외부 지식 접근 |
| 토론 품질 | 변동적 | 안정적 |
MADKE 토론 예시
[질문] "2024년 한국 경제 성장률 전망은?"
[지식 풀 검색]
- IMF 보고서: 2.3% 전망
- 한국은행 전망: 2.1%
- OECD 전망: 2.2%
[Agent A - 지식 기반 응답]
"IMF 보고서에 따르면 2.3%로 전망되지만,
한국은행은 더 보수적인 2.1%를 제시했습니다."
[Agent B - 보완]
"OECD 전망 2.2%도 고려하면,
대체로 2.1-2.3% 범위로 수렴합니다.
주요 기관 간 큰 차이가 없습니다."
[최종 답변]
"주요 기관들의 전망을 종합하면
2024년 한국 경제 성장률은 약 2.1-2.3%로
예상됩니다. (출처: IMF, 한국은행, OECD)"
지식 풀 구성
| 유형 | 예시 |
|---|---|
| 팩트 데이터 | 통계, 수치, 날짜 |
| 전문 지식 | 논문, 보고서 |
| 도메인 지식 | 의학, 법률, 기술 |
| 최신 정보 | 뉴스, 업데이트 |
지식 풀 업데이트
토론 중 새로운 정보가 발견되면 풀에 추가:
[토론 중]
Agent A: "최근 연구에 따르면 X라는 새로운 발견이..."
[검증]
Agent B: "출처를 확인해보니 신뢰할 수 있는 논문입니다."
[지식 풀 업데이트]
새로운 팩트 추가: "X 현상 발견 (출처: Nature 2024)"
구현 구조
class MADKE:
def __init__(self, agents, knowledge_pool):
self.agents = agents
self.knowledge_pool = knowledge_pool
def debate(self, question, max_rounds=3):
# 1. 관련 지식 검색
relevant_knowledge = self.knowledge_pool.search(question)
# 2. 지식 기반 초기 응답
responses = {}
for agent in self.agents:
responses[agent.id] = agent.generate(
question=question,
context=relevant_knowledge
)
# 3. 토론 라운드
for round in range(max_rounds):
for agent in self.agents:
# 추가 지식 검색 가능
additional_knowledge = self.knowledge_pool.search(
agent.get_query()
)
responses[agent.id] = agent.respond(
question=question,
knowledge=relevant_knowledge + additional_knowledge,
others=responses
)
# 새로운 정보 발견 시 풀에 추가
if agent.has_new_finding():
self.knowledge_pool.add(agent.new_finding)
# 4. 최종 답변
return self.synthesize(responses)
장점
- 일관성: 모든 에이전트가 같은 정보 기반
- 정확성: 외부 지식으로 할루시네이션 감소
- 투명성: 출처 명시 가능
- 확장성: 지식 풀 확장으로 역량 증가
한계
- 지식 풀 품질: 잘못된 정보가 있으면 전체에 영향
- 검색 정확도: 관련 지식을 찾지 못할 수 있음
- 업데이트 비용: 지식 풀 유지 관리 필요
관련 개념
- Multi-Agent Debate: 기본 토론 구조
- RAG: 지식 검색 기술
- LLM Agent Survey: 협력 구조