⌂ eff0rtchung.kr

Ontology Wiki / docs / separated-agent-layers

분리된 Agent 층과 판단의 특성

Syntax와 Semantics, T A R 논리모델, Assertion 기반 일반화와 검증 필요성을 설명합니다.

syntaxsemanticsTARassertion

Agent Memory 재차 복습

앞에서 말한 메모리 층을 다시 불러오면 이렇습니다. Lexical memory는 이름과 표기를 잡고, Relational memory는 관계를 잡고, Procedural memory는 확인 순서를 잡습니다. Normative memory는 해도 되는 것과 안 되는 것을 잡고, Metacognitive memory는 실패를 기억해 절차를 고칩니다.

여기에 Evidential Memory를 따로 생각할 수 있습니다. agent가 어떤 판단을 할 때 Hypothesis와 Finding을 구분하고, 각 finding이 무엇을 지지하거나 반박하는지 기록합니다. 가설은 아직 움직이는 물체이고, finding은 근거를 가진 관찰입니다. 둘을 섞으면 agent는 자기 추측을 사실처럼 다룹니다.

Provenance Memory는 LLM에게 '근거 뽑아줘'라고 막연히 시키는 것이 아니라, 누가, 언제, 어떤 문서에서, 어떤 권한으로 이 assertion을 했는지 채우게 하는 층입니다. 이 결과를 RDF graph로 만들면 assertion마다 source와 time이 붙습니다. 이때부터 agent는 말의 출처를 따라갈 수 있습니다.

Syntax와 Semantics

Syntax는 형식입니다. JSON이 맞는지, 필드명이 있는지, 문장이 어떤 구조인지, 명령이 어떤 parser를 통과하는지 보는 층입니다. Semantics는 의미입니다. 그 필드가 실제로 무엇을 가리키는지, 사용자의 의도가 무엇인지, action이 어떤 세계 상태를 바꾸는지 보는 층입니다.

LLM의 그럴듯한 점프와 ontology의 빡빡한 분해 사이에는 필연적인 간극이 있습니다. LLM은 빠르고 넓게 후보를 만듭니다. Ontology는 느리지만 타입과 관계와 제약을 고정합니다. 둘 중 하나가 정답이 아니라, agent는 이 사이를 메워야 합니다. JSON schema를 통과한 action이라도 의미상 잘못된 대상을 건드릴 수 있고, 의미가 맞아도 형식이 틀리면 도구 호출은 실패합니다.

T A R 모델

여기서 T는 Terminological입니다. 용어, class, 개념 이름, 상하위 분류의 영역입니다. A는 Assertion입니다. Agent의 세계에 사실 후보로 입력된 주장입니다. R은 Role 또는 Property이고, Assertion이 어떤 규칙과 관계를 통해 읽혀야 하는지를 말합니다.

LLM이 '가능하다'와 '허용된다'를 구분하려면 특히 A에서 T로 일반화되는 과정을 R로 규제해야 합니다. 어떤 assertion이 한 번 있었다고 해서 곧바로 일반 class 규칙이 되는 것은 아닙니다. Taxonomy는 이 일반화가 너무 빠른지, 너무 느린지 평가하는 기준이 됩니다.

Open World Assumption

모든 논리 체계는 정보가 없는 상태와 거짓을 강하게 구분할 필요가 있습니다. Agent는 정보가 없는 상황을 자주 마주칩니다. 모른다는 것은 false가 아닙니다. 새로운 정보가 빈약하면 적극적으로 relational 지식 관점에서 분류하고, class가 필요하면 만들고, 지식 넓히기 작업인 entailment가 필요한지 확인해야 합니다.

핵심은 agent가 돌아가는 하나의 세계 해석은 하나의 세계라는 점입니다. 인간이 우주에 산다고 해서 새로운 증거 없이 외계 행성의 존재를 entailment하는 것은 말이 안 됩니다. LLM의 plausibility와 entailment는 완전히 다릅니다. Entailment는 가치가 큰 일이지만, 새로운 지식을 쌓으려면 많은 근거를 요구하는 정책이 필요합니다.

Belief Manager 계층은 가설을 관리해 가짜 entailment를 막습니다. Taxonomy 관점에서 가짜 entailment를 부르는 요소도 좋은 개선 데이터가 됩니다. 반대로 의료, 법률, 금융처럼 강한 검증이 필요한 action은 열린 세계의 여유보다 닫힌 논리에 가까운 규칙을 취하는 것이 필수입니다.

Metacognitive Memory: Agent의 최종 도착점

가장 좋은 agent 설계는 자신의 실패 상황을 되새김질해서 procedural memory를 스스로 개선해나가는 구조입니다. 무엇을 검색할지, 무엇을 물어볼지, 어떤 action을 멈출지, 어떤 검증을 먼저 할지 planner가 메타인지 기반으로 plan을 짜야 합니다.

Planning에서 Training으로 이어지는 구조도 여기서 나옵니다. Action ontology 기반으로 action을 분석하고, 실패한 action은 BadPlan과 Critique와 RepairedPattern으로 바꿉니다. agent는 단순히 더 많은 지식을 넣는다고 좋아지는 것이 아니라, 자기 실패를 더 좋은 절차로 바꿀 때 좋아집니다.

결론

LLM 추론은 인류 최고의 혁명이라 할 수 있는 기술입니다. 설명만 가능하다면 말이죠. 그 과정을 설명하는 일은 업계 최고급 연구자 수천 명이 달라붙어 연구할 정도로 어렵습니다. 이 글에서는 그 깊은 내부 메커니즘까지 다루지는 못하지만, 적어도 이런 층이 있다는 감각은 필요합니다.

LLM 추론의 의미론적 분해를 극도로 세세하게 하면 agent의 hallucination을 예방할 수 있습니다. 완벽한 ontology를 구축하지 못했더라도, 이 추론이 지식을 넓혔는지, 이미 있는 지식의 동어반복인지, 아니면 hallucination인지 쪼개고 또 쪼개며 검증하는 것이 최선입니다. LLM의 설명가능성은 AI 연구 전체에서도 가장 활발한 분야 중 하나입니다.

Agent 열풍을 단순히 하이닉스 주식 오르는 일로만 볼 필요는 없습니다. 매일 '큰거오나'라고 말하는 정신으로 몇 주쯤 살아보는 것도 나쁘지 않습니다. 개발 관련 유튜브를 구독하고, X에서 프론티어 AI 회사와 업계 사람들을 팔로우해두는 것도 꽤 실용적인 공부법입니다.

Taxonomy

  • syntax taxonomy토큰, 문장, 형식, schema, parser error처럼 표면 구조에서 처리할 것을 나눕니다.
  • semantics taxonomy의미, 참조 대상, 역할, 의도, 상황 의존성을 syntax와 분리합니다.
  • TAR taxonomyTerm, Assertion, Rule을 구분해 용어, 주장, 규칙이 섞이지 않도록 합니다.
  • assertion taxonomy관찰 assertion, 추론 assertion, 사용자 assertion, 정책 assertion, 실행 assertion을 나눕니다.
  • validation taxonomy형식 검증, 의미 검증, 출처 검증, 정책 검증, 실행 검증을 별도 층으로 둡니다.
  • evidential taxonomyHypothesis, Finding, supporting evidence, contradicting evidence를 따로 봅니다.
  • provenance memory taxonomy누가, 언제, 어디서, 어떤 권한으로 assertion을 만들었는지 기록합니다.
  • open world taxonomyunknown, false, unverified, contradicted를 분리해 모름을 거짓으로 처리하지 않습니다.
  • entailment taxonomy논리적으로 따라오는 결론, 그럴듯한 추측, 새 가설, 금지된 일반화를 구분합니다.
  • metacognitive taxonomy실패 회고, 절차 수정, planning rule, training pattern을 자기개선 기억으로 둡니다.