package com.gxwebsoft.ai.entity; import com.baomidou.mybatisplus.annotation.TableField; import io.swagger.annotations.ApiModel; import lombok.Data; import lombok.EqualsAndHashCode; import java.io.Serializable; /** * 智能文档处理系统入参(对应「医科大智能文档处理系统」工作流)。 * *
业务说明:对上传的 PDF 或网络文件进行解析、清洗、分段、关键词提取, * 处理结果导入「GXMU 团章」知识库。因此文件来源有二:上传文件或网络 PDF 地址。 * *
字段名对齐 Dify 工作流开始节点的真实变量名,取自内网实例 * 10.100.158.15 上 probe-dify.sh 的实测输出(2026-10-12 重测): * {@code pdf_file(文件类)}。 * 早先实测还有 {@code query, pdf_url},现均已从开始节点移除;映射表已把这两个 * 字段配置为空串(丢弃),故 {@link #query} 与 {@link #pdfUrl} 不会被下发给 Dify。 * *
发送时仍会经 {@code dify.workflows.document-process.fields} 映射一次, * 保留这一层是为了让变量名再次变动时只改 yml、不改代码。 * * @author Codex * @since 2026-09-19 */ @Data @EqualsAndHashCode(callSuper = false) @ApiModel(value = "智能文档处理对象") public class DocumentProcessInputs implements Serializable { /** * 处理指令或补充说明。 * *
当前不会下发给 Dify:原对应变量 {@code query} 已从工作流开始节点移除, * 映射表把它配置为空串以显式丢弃。字段保留是为了不破坏 * {@code /api/ai/documentProcess/upload} 的入参契约。 */ @TableField(exist = false) private String query; /** * 网络 PDF 地址。 * *
当前不会下发给 Dify:原对应变量 {@code pdf_url} 已从开始节点移除, * 映射表配置为空串以显式丢弃。注意 {@code /documentProcess/upload} 仍接受 * {@code pdfUrl} 参数并参与"必须提供文件或 pdfUrl"的校验,只是不再转发给 Dify。 */ @TableField(exist = false) private String pdfUrl; /** * 上传的 PDF 文件。对应 Dify 变量 pdf_file(文件类)。 * *
由 {@code /api/ai/documentProcess/upload} 在服务端上传到 Dify 后填充;
* JSON 直调时也可传入 Dify 文件对象或 upload_file_id。
*/
@TableField(exist = false)
private Object pdfFile;
/**
* 直接指定 inputs,非空时优先于上面的业务字段。
*/
@TableField(exist = false)
private java.util.Map