添加图片识别千问大模型

This commit is contained in:
2025-08-02 14:46:02 +08:00
parent 840be2a338
commit 43546d56a9
9 changed files with 1272 additions and 0 deletions

View File

@@ -0,0 +1,63 @@
package com.klp.domain.bo;
import com.klp.common.core.validate.AddGroup;
import com.klp.common.core.validate.EditGroup;
import com.klp.common.core.validate.QueryGroup;
import com.klp.common.core.domain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
/**
* 图片识别业务对象
*
* @author klp
* @date 2025-01-27
*/
@Data
@EqualsAndHashCode(callSuper = true)
public class ImageRecognitionBo extends BaseEntity {
/**
* 图片URL地址
*/
@NotBlank(message = "图片URL不能为空", groups = { AddGroup.class, EditGroup.class })
private String imageUrl;
/**
* 识别类型bom-识别BOM内容text-识别文字general-通用识别
*/
private String recognitionType = "bom";
/**
* 是否启用多轮投票
*/
private Boolean enableVoting = true;
/**
* 投票轮数
*/
private Integer votingRounds = 3;
/**
* 自定义提示词
*/
private String customPrompt;
/**
* 是否保存识别结果到数据库
*/
private Boolean saveToDatabase = false;
/**
* 产品ID用于关联BOM信息
*/
private Long productId;
/**
* 识别任务描述
*/
private String taskDescription;
}

View File

@@ -0,0 +1,113 @@
package com.klp.domain.vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
import java.util.Map;
/**
* 图片识别结果视图对象
*
* @author klp
* @date 2025-01-27
*/
@Data
public class ImageRecognitionVo implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 识别ID
*/
private Long recognitionId;
/**
* 图片URL
*/
private String imageUrl;
/**
* 识别类型
*/
private String recognitionType;
/**
* 识别结果
*/
private String recognizedText;
/**
* 结构化识别结果JSON格式
*/
private Map<String, Object> structuredResult;
/**
* BOM信息列表
*/
private List<BomItemVo> bomItems;
/**
* 识别置信度
*/
private Double confidence;
/**
* 识别状态success-成功failed-失败processing-处理中
*/
private String status;
/**
* 错误信息
*/
private String errorMessage;
/**
* 处理时间(毫秒)
*/
private Long processingTime;
/**
* 创建时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date createTime;
/**
* BOM项目信息
*/
@Data
public static class BomItemVo {
/**
* 原材料ID
*/
private String rawMaterialId;
/**
* 原材料名称
*/
private String rawMaterialName;
/**
* 数量
*/
private Double quantity;
/**
* 单位
*/
private String unit;
/**
* 规格
*/
private String specification;
/**
* 备注
*/
private String remark;
}
}