Skip to content

输出顺序与依赖控制

在多步输出里,后续字段往往依赖前置字段。我们通常希望模型先把“事实列表”写完整,再进行总结与归纳。Agently 的输出结构是“按顺序生成”的,合理排序能显著提升稳定性。

先列事实,再生成结论

python
from agently import Agently

agent = Agently.create_agent()

result = (
  agent
  .input("Dark Souls 3 和 GTA6 的发售日在哪里查?如何购买?")
  .output({
    "信息列表": [
      {
        "主题": (str, "对应的游戏或主题"),
        "关键信息": (str, "回答问题所需的关键事实"),
        "是否确定": (bool, "是否确认该信息可靠")
      }
    ],
    "确定信息": (str, "只解释可靠的信息"),
    "不确定信息": (str, "列出仍需确认的部分")
  })
  .start(
    ensure_keys=["信息列表[*].主题", "信息列表[*].关键信息", "信息列表[*].是否确定"]
  )
)

确保依赖字段完整

只要后续字段依赖前置字段,就将前置字段加入 ensure_keys,避免模型跳过关键步骤。

输出顺序设计建议

  • 先列清单,再做归纳
  • 先给出“判断”,再给出“解释”
  • 先输出结构化字段,再输出自然语言总结

下一步:用 Instant 结构化流式解析实时消费结果。