empathy-decision-agent/models/context.py
2026-09-11 13:48:04 +09:00

43 lines
712 B
Python

"""심층 분석의 입력 모델."""
from pydantic import BaseModel
class BookMetadata(BaseModel):
title: str
author: str
class Excerpt(BaseModel):
text: str
locator: str | None = None # 페이지·장 표기
class DiscussionTurn(BaseModel):
speaker: str
text: str
class Persona(BaseModel):
name: str
personality: str
speaking_style: str
perspective: str
class AnalysisInput(BaseModel):
book: BookMetadata
persona: Persona
excerpts: list[Excerpt] = []
turns: list[DiscussionTurn] = []
class Claim(BaseModel):
speaker: str
statement: str
evidence: list[str] = []
class DiscussionContext(BaseModel):
claims: list[Claim] = []