AI 에이전트가 돈을 쓰거나, 이메일을 보내거나, 기록을 변경할 때, 결국 누군가는 같은 질문을 합니다. '정확히 무엇을 했으며, 이 로그를 신뢰해도 되는가?' 일반적인 로그 라인은 나중에 편집될 수 있습니다. 하지만 이전 영수증에 연결된(chained) 영수증은 조용히 수정될 수 없습니다.
아이디어
각 행동에는 영수증이 부여됩니다. 이 영수증에는 결정된 내용, 에이전트가 본 입력값, 승인한 사람, 그리고 타임스탬프가 담깁니다. 또한 이전 영수증의 해시도 포함합니다. 오래된 영수증 중 어느 것을 변경하든, 그 이후의 모든 해시는 일치하지 않게 됩니다.
import hashlib, json, time
def seal(prev_hash: str, action: dict) -> dict:
...
영수증에 포함할 내용
- 결정된 내용과 고려했던 옵션들 (승리한 것만 아님).
- 에이전트가 사용한 데이터 (가격, 문서, 정책 버전) 또는 그 해시.
- 승인한 사람이나 정책.
- 에이전트의 신원 및 지침의 버전.
하지 않는 것
해시 체인은 기록이 봉인된 후 변경되지 않았음을 보여줍니다. 이것이 에이전트가 좋은 결정을 내렸다는 것을 증명하지는 않으며, 최신 해시를 당신이 통제하지 않는 곳(타임스탬핑 서비스, 서명된 커밋, 거래 상대방의 사본)에 앵커링(anchor)하지 않는 한 누군가가 처음부터 전체 체인을 다시 작성하는 것을 막지 못합니다. 이 한계를 설명할 때 염두에 두세요.
적용되는 곳
자동화 시스템에 대한 규정 준수 규칙은 시스템이 무엇을 했고 왜 그랬는지에 대한 로그를 점점 더 요구하고 있습니다. 이러한 영수증은 제3자가 당신을 신뢰하지 않고도 확인할 수 있는 형태로 기록을 유지하는 한 가지 방법입니다.
저는 SYEN Systems (syensystems.com)의 에이전트 감사 추적(audit trails) 및 영수증에 대해 글을 씁니다.