从学校的招生收件箱运行招生代理 笔记

从学校的招生收件箱运行招生代理

招生收件箱中常充斥着重复性问题与文件,管理起来耗时费力。通常由人工逐封阅读邮件,在学生信息系统中查询申请人,检查待补文件,并撰写回复。然而,该流程可通过配备语言模型的代理账户(agent account)实现自动化。代理账户是一种授权(grant),允许应用程序拥有独立的一级收件箱,使其无需人类邮箱即可收发邮件。创建代理账户时,需向 Nylas API 发送 POST 请求,并配置提供商、名称及邮箱设置。API 将自动为该账户配置默认工作区与策略;如有需要,后续可附加自定义策略。代理账户拥有独立身份,可以其自身地址发送邮件,在独立线程中接收回复,并为每位申请人维护独立的应用状态。整个操作的核心逻辑,包括问题分类与判定检查清单项是否已完成,由应用程序代码与语言模型处理。Nylas API 提供邮件平面(mail plane)功能,涵盖接收消息、获取正文、下载附件以及发送回复与提醒。应用程序数据库存储每位申请人的记录,包含已接收文件、待补文件、截止日期及上次发送的提醒时间。发往代理账户的入站邮件会触发标准的 message-created Webhook,该 Webhook 为应用程序作用域(application-scoped),而非授权作用域(grant-scoped)。Webhook 处理器立即响应,验证签名并去重事件。完整消息在需要时获取,且“已读”状态需单独标记。对话链可通过 thread 端点拉取,语言模型据此对入站消息进行分类,并基于 FAQ 语料库与申请人记录生成回复。发送回复的 API 调用需将 reply-to-message-id 设置为待回复的消息 ID;CLI 版本更短,因其会自动获取原始消息以填充收件人与主题。代理的任务是下载文件,判断其满足哪项检查清单内容,并更新申请人记录。获取的消息会列出其附件 ID,而下载附件则需传入 message-id 查询参数。metadata 端点同样接受 message-id 查询参数,而文档分类与检查清单项更新的逻辑由应用程序处理。发送截止日期提醒的频率由应用程序代码控制:其按预定计划唤醒,查询数据库中缺失文件的申请人,并据此发送提醒。Nylas API 提供发送邮件及追踪已提交申请文件所需的端点,而应用程序代码负责处理逻辑与决策。