"""助手提出的待确认修改,下一轮用户同意时直接执行,不再从历史文本里猜""" from pydantic import Field from app.schemas.base import ExtensibleModel, NonBlankString # 提议字段的定义只写一次,直接生成和从回答中提取共用 OFFER_DESCRIPTION = ( "用户同意后要执行的独立完整修改指令,写明目标组件和修改内容,例如“把销售额统计从柱状图改成折线图”;" "回复没有询问用户是否需要执行某个具体修改时为 null" ) class InformReply(ExtensibleModel): answer: NonBlankString = Field( description="面向用户的回复:说明原因;提供 offer 时以询问是否需要执行的问句结尾" ) offer: NonBlankString | None = Field(default=None, description=OFFER_DESCRIPTION) class ExtractedOffer(ExtensibleModel): """从已经流式输出的普通回答中提取的提议""" offer: NonBlankString | None = Field(default=None, description=OFFER_DESCRIPTION)