接入阿里千问大模型识别文档中表格信息输出json

采用的QWEN-LONG大模型,有钱的可以使用Qwen-Doc-Turbo

原文档链接:https://help.aliyun.com/zh/model-studio/long-context-qwen-long?spm=a2c4g.11186623.help-menu-2400256.d_0_3_0_11_0.1ce32ab0cygE0d&scm=20140722.H_2846146._.OR_help-T_cn~zh-V_1

文档上传示例

以阿里云百炼系列手机产品介绍.docx为例,通过OpenAI兼容接口上传到阿里云百炼平台的安全存储空间,获取返回的file-id。有关文档上传接口的详细参数解释及调用方式,请参考API文档页面进行了解。

java 复制代码
import com.openai.client.OpenAIClient;
import com.openai.client.okhttp.OpenAIOkHttpClient;
import com.openai.models.files.*;

import java.nio.file.Path;
import java.nio.file.Paths;

public class Main {
    public static void main(String[] args) {
        // 创建客户端,使用环境变量中的API密钥
        OpenAIClient client = OpenAIOkHttpClient.builder()
                // 若没有配置环境变量,请用百炼API Key将下行替换为:.apiKey("sk-xxx")
                .apiKey(System.getenv("DASHSCOPE_API_KEY"))
                .baseUrl("https://dashscope.aliyuncs.com/compatible-mode/v1")
                .build();
        // 设置文件路径,请根据实际需求修改路径与文件名
        Path filePath = Paths.get("src/main/java/org/example/阿里云百炼系列手机产品介绍.docx");
        // 创建文件上传参数
        FileCreateParams fileParams = FileCreateParams.builder()
                .file(filePath)
                .purpose(FilePurpose.of("file-extract"))
                .build();

        // 上传文件打印fileid
        FileObject fileObject = client.files().create(fileParams);
        System.out.println(fileObject.id());
    }
}

通过文件ID传入信息并对话

将获取的 file-id 嵌入到System Message 中。第一条System Message用于设定角色向模型提问,后续的System Message用于传入 file-id,User Message包含针对文档的具体问题。

java 复制代码
import com.openai.client.OpenAIClient;
import com.openai.client.okhttp.OpenAIOkHttpClient;
import com.openai.core.http.StreamResponse;
import com.openai.models.chat.completions.*;

public class Main {
    public static void main(String[] args) {
        // 创建客户端,使用环境变量中的API密钥
        OpenAIClient client = OpenAIOkHttpClient.builder()
                // 若没有配置环境变量,请用百炼API Key将下行替换为:.apiKey("sk-xxx")
                .apiKey(System.getenv("DASHSCOPE_API_KEY"))
                .baseUrl("https://dashscope.aliyuncs.com/compatible-mode/v1")
                .build();

        // 创建聊天请求
        ChatCompletionCreateParams chatParams = ChatCompletionCreateParams.builder()
                //sys1: 角色定义
                .addSystemMessage("You are a helpful assistant.")
                //sys2: 文档内容(纯文本或file-id)
                //请将 '{FILE_ID}'替换为您实际对话场景所使用的 fileid。
                .addSystemMessage("fileid://{FILE_ID}")
                //当请求中包含第 2 条system message时,user消息内容长度限制在 9,000 Token 以内
                .addUserMessage("这篇文章讲了什么?")
                .model("qwen-long")
                .build();

        StringBuilder fullResponse = new StringBuilder();

        // 所有代码示例均采用流式输出,以清晰和直观地展示模型输出过程。如果您希望查看非流式输出的案例,请参见https://help.aliyun.com/zh/model-studio/text-generation
        try (StreamResponse<ChatCompletionChunk> streamResponse = client.chat().completions().createStreaming(chatParams)) {
            streamResponse.stream().forEach(chunk -> {
                // 打印每个 chunk 的内容并拼接
                System.out.println(chunk);
                String content = chunk.choices().get(0).delta().content().orElse("");
                if (!content.isEmpty()) {
                    fullResponse.append(content);
                }
            });
            System.out.println(fullResponse);
        } catch (Exception e) {
            System.err.println("错误信息:" + e.getMessage());
            System.err.println("请参考文档:https://help.aliyun.com/zh/model-studio/developer-reference/error-code");
        }
    }
}

本地实际调用过程,两种方式含有maven的项目直接引入对应坐标即可,由于老项目太拉跨,我这里演示spring项目中如何使用

有maven的可以引入坐标

xml 复制代码
<dependency>
  <groupId>com.openai</groupId>
  <artifactId>openai-java</artifactId>
  <version>the-latest-version</version>
</dependency>

1.首先因为没有maven,只能手动拷入jar包

***注意版本适配问题

2.代码实际调用

java 复制代码
package cqt.api.review;


import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.openai.client.OpenAIClient;
import com.openai.client.okhttp.OpenAIOkHttpClient;
import com.openai.core.http.StreamResponse;
import com.openai.models.chat.completions.*;
import com.openai.models.files.*;
import com.openai.models.files.FileObject;
import cqt.db.dto.SavePrDto;
import cqt.db.entity.BsUser;
import cqt.db.entity.RolePermission;
import cqt.error.NoLoginError;
import cqt.error.ParamError;
import cqt.json.JSONMsg;
import cqt.other.Global;
import cqt.other.PermissionUtil;
import cqt.other.ResponseUtil;
import cqt.service.generic.FileService;
import cqt.service.generic.OssService;
import cqt.service.review.ReviewWordService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import java.io.InputStream;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
import java.util.UUID;

@RequestMapping(value = "/api/review_word/")
@RestController
public class ReviewWordAction {
//    static String appKey = "sk-d8d2180d36564c06a8609df5c04bc2d2";

    final Logger logger = LoggerFactory.getLogger(ReviewWordAction.class);
    @Value("${APP_KEY}")
    private String appKey;
    @Autowired
    private FileService fileService;
    @Value("${FILE_LOCAL_PATH}")
    private String FILE_LOCAL_PATH;

    @Autowired
    private ReviewWordService reviewWordService;

    @PostMapping("getJsonByWord.do")
    public void getJsonByWord(MultipartFile file, HttpServletRequest request, HttpServletResponse response) throws Exception {
        if (file == null || file.getSize() == 0) {
            throw new ParamError("上传文件不能为空");
        }
        String fileName = file.getOriginalFilename();
        if (fileName == null || fileName.isEmpty()) {
            throw new ParamError("文件名为空");
        }

        boolean isDocx = fileName.toLowerCase().endsWith(".docx");
        boolean isPdf = fileName.toLowerCase().endsWith(".pdf");
        if (!isDocx && !isPdf) {
            throw new ParamError("请上传 .docx 或 .pdf 格式的文件");
        }

        // 单个文件最大为 150 MB 阿里云文件上传限制单个最大150
        long maxSize = 150 * 1024 * 1024;
        if (file.getSize() > maxSize) {
            throw new ParamError("单个文件大小不能超过 150 MB");
        }


        HttpSession session = request.getSession();
        BsUser user = (BsUser) session.getAttribute(Global.SESSION_CODE);
        if (user == null) {
            throw new NoLoginError();
        }
        isPermit(user);
        // 创建客户端,使用环境变量中的API密钥
        OpenAIClient client = OpenAIOkHttpClient.builder()
                // 若没有配置环境变量,请用百炼API Key将下行替换为:.apiKey("sk-xxx")
                .apiKey(appKey)
                .baseUrl("https://dashscope.aliyuncs.com/compatible-mode/v1")
                .build();

        //TODO实际上传文件绝对路径
//        String pdfPath = "D:\\file\\test.pdf";

        String pdfPath = fileService.saveFile("ATTACH", fileName, file.getInputStream(), false);

        logger.info("存储路径===={}", pdfPath);

        Path filePath = Paths.get(FILE_LOCAL_PATH + pdfPath);

        // 创建文件上传参数
        FileCreateParams fileParams = FileCreateParams.builder()
                .file(filePath)
                .purpose(FilePurpose.of("file-extract"))
                .build();

        // 上传文件打印fileid
        FileObject fileObject = client.files().create(fileParams);
        String fileID = fileObject.id();

        logger.info("开始处理文件====" + fileID);

        String prompt = "读取到的附件是职业技能等级鉴定实操技能考试的题库,帮我分析这个文档,文档中的第一个表格是"考评内容结构表"," +
                "其表头存在两级层级关系,请严格按以下逻辑解析:" +
                "第一级(模块)表头最上方的合并单元格大类对应 JSON 中的 `模块名称` ,第二级(试题):每个大类下方细分的具体考核项目对应 JSON 中 `模块` 数组下的 `试题` 名称"+
                "注意!!!第一个表格里的考核权重和考核时间直接从表格里提取即可(不需要进行合并统计),且注意模块和试题的层级划分" +
                "每一个试题对应文档后面各有一个试题的表格,需要从后续每一个试题的表格中提取出考核内容、考核要点、配分、评分标准(评分标准有多项时,需要提取成列表(标题和分值区分开来))," +
                "将文档的内容以模块-试题-考核项目(列表,包括考核内容、考核要点、配分、评分标准)评分标准的接口" +
                "请严格按照以下要求处理文档并输出JSON:\n" +
                "\n" +
                "【重要约束】\n" +
                "1. 必须严格使用我提供的JSON模板中的键名,一个字都不能修改\n" +
                "2. 键名必须使用中文,如\"标准\"、\"分值\"、\"考核内容\"等,不能翻译成英文\n" +
                "3. 不能添加模板中没有的字段,也不能删除模板中已有的字段\n" +
                "4. 如果某些字段内容为空,保留该字段但值设为空字符串\"\"\n" +
                "\n" +
                "【输出格式要求】\n" +
                "- 输出必须是合法的JSON字符串\n" +
                "- 键名必须与下方模板完全一致(包括中文键名)\n" +
                "- 评分标准必须拆分为对象数组,每个对象包含\"标准\"和\"分值\"两个键\n" +
                "\n" +
                "【JSON模板】(请严格复制此结构,仅填充值,不修改任何键名)\n" +
                "{\n" +
                "  \"工种\": \"\",\n" +
                "  \"级别\": \"\",\n" +
                "  \"模块\": [\n" +
                "    {\n" +
                "      \"模块名称\": \"\",\n" +
                "      \"考核权重\": \"\",\n" +
                "      \"考试时间\": \"\",\n" +
                "      \"考核形式\": \"\",\n" +
                "      \"试题\": [\n" +
                "        {\n" +
                "          \"名称\": \"\",\n" +
                "          \"选考方式\": \"\",\n" +
                "          \"考核项目\": [\n" +
                "            {\n" +
                "              \"序号\": 1,\n" +
                "              \"考核内容\": \"\",\n" +
                "              \"考核要点\": \"\",\n" +
                "              \"配分\": \"\",\n" +
                "              \"评分标准\": [\n" +
                "                {\"标准\": \"\", \"分值\": \"\"}\n" +
                "              ]\n" +
                "            }\n" +
                "          ],\n" +
                "          \"否定项\": \"\"\n" +
                "        }\n" +
                "      ]\n" +
                "    }\n" +
                "  ],\n" +
                "  \"合计\": {\n" +
                "    \"考核权重\": \"\",\n" +
                "    \"考试时间\": \"\"\n" +
                "  }\n" +
                "}\n" +
                "\n" +
                "【特别提醒】\n" +
                "- \"标准\"和\"分值\"是评分标准数组中每个对象的固定键名,不可改为\"standard\"、\"score\"等英文\n" +
                "- 输出前请检查所有键名是否与模板完全一致";


        logger.info("开始构建任务====");

        // 创建聊天请求
        ChatCompletionCreateParams chatParams = ChatCompletionCreateParams.builder()
                //sys1: 角色定义
                .addSystemMessage("你是一名专业的文档解析专家,擅长从文档中的复杂表格中(如操作技能考评内容结构表、试题表)提取结构化信息。  \\n\" +\n" +
                        "现在请根据我提供的文档(包含多个表格和文本),严格按照下方给出的 JSON 结构输出,需要遵循我的提示词给出json")
                //sys2: 文档内容(纯文本或file-id)
                //请将 '{FILE_ID}'替换为您实际对话场景所使用的 fileid。
                .addSystemMessage("fileid://" + fileID)
                //当请求中包含第 2 条system message时,user消息内容长度限制在 9,000 Token 以内
                .addUserMessage(prompt)
                .model("qwen-long")
                .build();

        logger.info("开始执行任务====");


        StringBuilder fullResponse = new StringBuilder();

        // 所有代码示例均采用流式输出,以清晰和直观地展示模型输出过程。如果您希望查看非流式输出的案例,请参见https://help.aliyun.com/zh/model-studio/text-generation
        try (StreamResponse<ChatCompletionChunk> streamResponse = client.chat().completions().createStreaming(chatParams)) {
            streamResponse.stream().forEach(chunk -> {
                // 打印每个 chunk 的内容并拼接
                String content = chunk.choices().get(0).delta().content().orElse("");
                if (!content.isEmpty()) {
                    fullResponse.append(content);
//                System.out.println(fullResponse);

                }
            });
            logger.info("模型调用生成json执行结束========");
        } catch (Exception e) {
            logger.error("错误信息=====", e);
            logger.error("请参考文档:https://help.aliyun.com/zh/model-studio/developer-reference/error-code");
        }

        //删除上传至阿里云的文件,防止文件堆积,已达到文件数量上限(10000个)或总大小上限(100GB)
        FileDeleteParams params = FileDeleteParams.builder()
                .fileId(fileID)
                .build();

        logger.info("删除生成的文件==={}", client.files().delete(params));


        JSONMsg jsonMsg = new JSONMsg(true, "");

        String json = fullResponse.toString().replace("json", "").replace("```", "");

        JSONObject jsonObject = JSON.parseObject(json);

        JSONArray jsonArray = new JSONArray();
        jsonArray.add(jsonObject);

        jsonMsg.setData(jsonArray);

        ResponseUtil.setJsonToResponse(response, jsonMsg.toJSONString());

    }


    @RequestMapping(value = "/savePrData.do")
    public void savePrData( SavePrDto savePrDto, HttpServletRequest request) throws Exception {
        HttpSession session = request.getSession();
        BsUser user = (BsUser) session.getAttribute(Global.SESSION_CODE);
        if (user == null) {
            throw new NoLoginError();
        }
        isPermit(user);
        reviewWordService.savePrData(savePrDto,user);
    }
    public   void  isPermit(BsUser user) throws ParamError {
        List<String>list=new ArrayList<>();
        list.add(RolePermission.CODE.DZTK.getPermitCode());
        list.add(RolePermission.CODE.DZTKSCTK.getPermitCode());
        PermissionUtil.isHavePermit(user,list);
    }

}

3.主要业务代码梳理

java 复制代码
// 创建客户端,使用环境变量中的API密钥
        OpenAIClient client = OpenAIOkHttpClient.builder()
                // 若没有配置环境变量,请用百炼API Key将下行替换为:.apiKey("sk-xxx")
                .apiKey(appKey)
                .baseUrl("https://dashscope.aliyuncs.com/compatible-mode/v1")
                .build();

        //TODO实际上传文件绝对路径
//        String pdfPath = "D:\\file\\test.pdf";

        String pdfPath = fileService.saveFile("ATTACH", fileName, file.getInputStream(), false);

        logger.info("存储路径===={}", pdfPath);

        Path filePath = Paths.get(FILE_LOCAL_PATH + pdfPath);

        // 创建文件上传参数
        FileCreateParams fileParams = FileCreateParams.builder()
                .file(filePath)
                .purpose(FilePurpose.of("file-extract"))
                .build();

        // 上传文件打印fileid
        FileObject fileObject = client.files().create(fileParams);
        String fileID = fileObject.id();

        logger.info("开始处理文件====" + fileID);
	    String prompt = "xxxxxx";
		logger.info("开始构建任务====");

        // 创建聊天请求
        ChatCompletionCreateParams chatParams = ChatCompletionCreateParams.builder()
                //sys1: 角色定义
                .addSystemMessage("你是一名专业的文档解析专家,擅长从文档中的复杂表格中(如操作技能考评内容结构表、试题表)提取结构化信息。  \\n\" +\n" +
                        "现在请根据我提供的文档(包含多个表格和文本),严格按照下方给出的 JSON 结构输出,需要遵循我的提示词给出json")
                //sys2: 文档内容(纯文本或file-id)
                //请将 '{FILE_ID}'替换为您实际对话场景所使用的 fileid。
                .addSystemMessage("fileid://" + fileID)
                //当请求中包含第 2 条system message时,user消息内容长度限制在 9,000 Token 以内
                .addUserMessage(prompt)
                .model("qwen-long")
                .build();

        logger.info("开始执行任务====");


        StringBuilder fullResponse = new StringBuilder();

        // 所有代码示例均采用流式输出,以清晰和直观地展示模型输出过程。如果您希望查看非流式输出的案例,请参见https://help.aliyun.com/zh/model-studio/text-generation
        try (StreamResponse<ChatCompletionChunk> streamResponse = client.chat().completions().createStreaming(chatParams)) {
            streamResponse.stream().forEach(chunk -> {
                // 打印每个 chunk 的内容并拼接
                String content = chunk.choices().get(0).delta().content().orElse("");
                if (!content.isEmpty()) {
                    fullResponse.append(content);
//                System.out.println(fullResponse);

                }
            });
            logger.info("模型调用生成json执行结束========");
        } catch (Exception e) {
            logger.error("错误信息=====", e);
            logger.error("请参考文档:https://help.aliyun.com/zh/model-studio/developer-reference/error-code");
        }

        //删除上传至阿里云的文件,防止文件堆积,已达到文件数量上限(10000个)或总大小上限(100GB)
        FileDeleteParams params = FileDeleteParams.builder()
                .fileId(fileID)
                .build();

        logger.info("删除生成的文件==={}", client.files().delete(params));

因为文件会存在阿里云上,满了以后可能会报错,所以需要清理

实际调用

返回json格式

javascript 复制代码
{
    "code": 200,
    "data": [
        {
            "工种": "广告设计师",
            "合计": {
                "考核权重": "100",
                "考试时间": "180(min)"
            },
            "级别": "三级/高级工",
            "模块": [
                {
                    "试题": [
                        {
                            "考核项目": [
                                {
                                    "序号": 1,
                                    "考核要点": "衣着要符合工作岗位要求,考生须遵守考场纪律。",
                                    "配分": "2",
                                    "评分标准": [
                                        {
                                            "标准": "衣着是否符合工作岗位要求",
                                            "分值": "1"
                                        },
                                        {
                                            "标准": "是否遵守考场纪律(如考试期间不接打电话,不擅自离岗,不打闹喧哗等)",
                                            "分值": "1"
                                        }
                                    ],
                                    "考核内容": "职业素养"
                                },
                                {
                                    "序号": 2,
                                    "考核要点": "1.xxx安全待机; 2.xxx取料位置;\n3......",
                                    "配分": "8",
                                    "评分标准": [
                                        {
                                            "标准": "能否设置 xxx使其处于安全待机位置",
                                            "分值": "2"
                                        },
                                        {
                                            "标准": "能否设置 xxx处于取料位置",
                                            "分值": "3"
                                        }
                                    ],
                                    "考核内容": "设备前期准备情况"
                                },
                                {
                                    "序号": 3,
                                    "考核要点": "1.运行速度控制; 2.加减速度设置 ;\n3.......",
                                    "配分": "30",
                                    "评分标准": [
                                        {
                                            "标准": "设置 xxxx运行速度能否控制在 30%-45%",
                                            "分值": "6"
                                        },
                                        {
                                            "标准": "是否可以设置加减速度 50,50的编程操作",
                                            "分值": "6"
                                        }
                                    ],
                                    "考核内容": "操作编程设计"
                                },
                                {
                                    "序号": 4,
                                    "考核要点": "1.程序模块化设计; 2.模拟运行能力。",
                                    "配分": "30",
                                    "评分标准": [
                                        {
                                            "标准": "程序模块化设计(轨迹 1轨迹 2......",
                                            "分值": "5"
                                        },
                                        {
                                            "标准": "xxx程序组成编程窗口模拟",
                                            "分值": "5"
                                        }
                                    ],
                                    "考核内容": "模拟测试"
                                }
                            ],
                            "否定项": "若考生发生下列情况之一,则应及时终止其考试,考生该试题成绩记为零分。\n1.因考生操作不当使设备发生严重意外。\n2.考生严重破坏现场设备使用功能的。",
                            "选考方式": "必考",
                            "名称": "绘制草图"
                        },
                        {
                            "考核项目": [
                                {
                                    "序号": 1,
                                    "考核要点": "衣着要符合工作岗位要求,考生须遵守考场纪律。",
                                    "配分": "2",
                                    "评分标准": [
                                        {
                                            "标准": "衣着是否符合工作岗位要求",
                                            "分值": "1"
                                        },
                                        {
                                            "标准": "是否遵守考场纪律(如考试期间不接打电话,不擅自离岗,不打闹喧哗等)",
                                            "分值": "1"
                                        }
                                    ],
                                    "考核内容": "职业素养"
                                },
                                {
                                    "序号": 2,
                                    "考核要点": "1.xxx安全待机; 2.xxx取料位置;\n3......",
                                    "配分": "8",
                                    "评分标准": [
                                        {
                                            "标准": "能否设置 xxx使其处于安全待机位置",
                                            "分值": "2"
                                        },
                                        {
                                            "标准": "能否设置 xxx处于取料位置",
                                            "分值": "3"
                                        }
                                    ],
                                    "考核内容": "设备前期准备情况"
                                },
                                {
                                    "序号": 3,
                                    "考核要点": "1.运行速度控制; 2.加减速度设置 ;\n3.......",
                                    "配分": "30",
                                    "评分标准": [
                                        {
                                            "标准": "设置 xxxx运行速度能否控制在 30%-45%",
                                            "分值": "6"
                                        },
                                        {
                                            "标准": "是否可以设置加减速度 50,50的编程操作",
                                            "分值": "6"
                                        }
                                    ],
                                    "考核内容": "操作编程设计"
                                },
                                {
                                    "序号": 4,
                                    "考核要点": "1.程序模块化设计; 2.模拟运行能力。",
                                    "配分": "30",
                                    "评分标准": [
                                        {
                                            "标准": "程序模块化设计(轨迹 1轨迹 2......",
                                            "分值": "5"
                                        },
                                        {
                                            "标准": "xxx程序组成编程窗口模拟",
                                            "分值": "5"
                                        }
                                    ],
                                    "考核内容": "模拟测试"
                                }
                            ],
                            "否定项": "若考生发生下列情况之一,则应及时终止其考试,考生该试题成绩记为零分。\n1.因考生操作不当使设备发生严重意外。\n2.考生严重破坏现场设备使用功能的。",
                            "选考方式": "必考",
                            "名称": "设计提案"
                        }
                    ],
                    "考核形式": "实操/笔试",
                    "模块名称": "创意设计",
                    "考核权重": "45",
                    "考试时间": "30"
                },
                {
                    "试题": [
                        {
                            "考核项目": [
                                {
                                    "序号": 1,
                                    "考核要点": "衣着要符合工作岗位要求,考生须遵守考场纪律。",
                                    "配分": "2",
                                    "评分标准": [
                                        {
                                            "标准": "衣着是否符合工作岗位要求",
                                            "分值": "1"
                                        },
                                        {
                                            "标准": "是否遵守考场纪律(如考试期间不接打电话,不擅自离岗,不打闹喧哗等)",
                                            "分值": "1"
                                        }
                                    ],
                                    "考核内容": "职业素养"
                                },
                                {
                                    "序号": 2,
                                    "考核要点": "1.xxx安全待机; 2.xxx取料位置;\n3......",
                                    "配分": "8",
                                    "评分标准": [
                                        {
                                            "标准": "能否设置 xxx使其处于安全待机位置",
                                            "分值": "2"
                                        },
                                        {
                                            "标准": "能否设置 xxx处于取料位置",
                                            "分值": "3"
                                        }
                                    ],
                                    "考核内容": "设备前期准备情况"
                                },
                                {
                                    "序号": 3,
                                    "考核要点": "1.运行速度控制; 2.加减速度设置 ;\n3.......",
                                    "配分": "30",
                                    "评分标准": [
                                        {
                                            "标准": "设置 xxxx运行速度能否控制在 30%-45%",
                                            "分值": "6"
                                        },
                                        {
                                            "标准": "是否可以设置加减速度 50,50的编程操作",
                                            "分值": "6"
                                        }
                                    ],
                                    "考核内容": "操作编程设计"
                                },
                                {
                                    "序号": 4,
                                    "考核要点": "1.程序模块化设计; 2.模拟运行能力。",
                                    "配分": "30",
                                    "评分标准": [
                                        {
                                            "标准": "程序模块化设计(轨迹 1轨迹 2......",
                                            "分值": "5"
                                        },
                                        {
                                            "标准": "xxx程序组成编程窗口模拟",
                                            "分值": "5"
                                        }
                                    ],
                                    "考核内容": "模拟测试"
                                }
                            ],
                            "否定项": "若考生发生下列情况之一,则应及时终止其考试,考生该试题成绩记为零分。\n1.因考生操作不当使设备发生严重意外。\n2.考生严重破坏现场设备使用功能的。",
                            "选考方式": "任选两项",
                            "名称": "版式设计"
                        },
                        {
                            "考核项目": [
                                {
                                    "序号": 1,
                                    "考核要点": "衣着要符合工作岗位要求,考生须遵守考场纪律。",
                                    "配分": "2",
                                    "评分标准": [
                                        {
                                            "标准": "衣着是否符合工作岗位要求",
                                            "分值": "1"
                                        },
                                        {
                                            "标准": "是否遵守考场纪律(如考试期间不接打电话,不擅自离岗,不打闹喧哗等)",
                                            "分值": "1"
                                        }
                                    ],
                                    "考核内容": "职业素养"
                                },
                                {
                                    "序号": 2,
                                    "考核要点": "1.xxx安全待机; 2.xxx取料位置;\n3......",
                                    "配分": "8",
                                    "评分标准": [
                                        {
                                            "标准": "能否设置 xxx使其处于安全待机位置",
                                            "分值": "2"
                                        },
                                        {
                                            "标准": "能否设置 xxx处于取料位置",
                                            "分值": "3"
                                        }
                                    ],
                                    "考核内容": "设备前期准备情况"
                                },
                                {
                                    "序号": 3,
                                    "考核要点": "1.运行速度控制; 2.加减速度设置 ;\n3.......",
                                    "配分": "30",
                                    "评分标准": [
                                        {
                                            "标准": "设置 xxxx运行速度能否控制在 30%-45%",
                                            "分值": "6"
                                        },
                                        {
                                            "标准": "是否可以设置加减速度 50,50的编程操作",
                                            "分值": "6"
                                        }
                                    ],
                                    "考核内容": "操作编程设计"
                                },
                                {
                                    "序号": 4,
                                    "考核要点": "1.程序模块化设计; 2.模拟运行能力。",
                                    "配分": "30",
                                    "评分标准": [
                                        {
                                            "标准": "程序模块化设计(轨迹 1轨迹 2......",
                                            "分值": "5"
                                        },
                                        {
                                            "标准": "xxx程序组成编程窗口模拟",
                                            "分值": "5"
                                        }
                                    ],
                                    "考核内容": "模拟测试"
                                }
                            ],
                            "否定项": "若考生发生下列情况之一,则应及时终止其考试,考生该试题成绩记为零分。\n1.因考生操作不当使设备发生严重意外。\n2.考生严重破坏现场设备使用功能的。",
                            "选考方式": "任选两项",
                            "名称": "界面设计"
                        },
                        {
                            "考核项目": [
                                {
                                    "序号": 1,
                                    "考核要点": "衣着要符合工作岗位要求,考生须遵守考场纪律。",
                                    "配分": "2",
                                    "评分标准": [
                                        {
                                            "标准": "衣着是否符合工作岗位要求",
                                            "分值": "1"
                                        },
                                        {
                                            "标准": "是否遵守考场纪律(如考试期间不接打电话,不擅自离岗,不打闹喧哗等)",
                                            "分值": "1"
                                        }
                                    ],
                                    "考核内容": "职业素养"
                                },
                                {
                                    "序号": 2,
                                    "考核要点": "1.xxx安全待机; 2.xxx取料位置;\n3......",
                                    "配分": "8",
                                    "评分标准": [
                                        {
                                            "标准": "能否设置 xxx使其处于安全待机位置",
                                            "分值": "2"
                                        },
                                        {
                                            "标准": "能否设置 xxx处于取料位置",
                                            "分值": "3"
                                        }
                                    ],
                                    "考核内容": "设备前期准备情况"
                                },
                                {
                                    "序号": 3,
                                    "考核要点": "1.运行速度控制; 2.加减速度设置 ;\n3.......",
                                    "配分": "30",
                                    "评分标准": [
                                        {
                                            "标准": "设置 xxxx运行速度能否控制在 30%-45%",
                                            "分值": "6"
                                        },
                                        {
                                            "标准": "是否可以设置加减速度 50,50的编程操作",
                                            "分值": "6"
                                        }
                                    ],
                                    "考核内容": "操作编程设计"
                                },
                                {
                                    "序号": 4,
                                    "考核要点": "1.程序模块化设计; 2.模拟运行能力。",
                                    "配分": "30",
                                    "评分标准": [
                                        {
                                            "标准": "程序模块化设计(轨迹 1轨迹 2......",
                                            "分值": "5"
                                        },
                                        {
                                            "标准": "xxx程序组成编程窗口模拟",
                                            "分值": "5"
                                        }
                                    ],
                                    "考核内容": "模拟测试"
                                }
                            ],
                            "否定项": "若考生发生下列情况之一,则应及时终止其考试,考生该试题成绩记为零分。\n1.因考生操作不当使设备发生严重意外。\n2.考生严重破坏现场设备使用功能的。",
                            "选考方式": "任选两项",
                            "名称": "包装设计"
                        }
                    ],
                    "考核形式": "实操",
                    "模块名称": "设计表现",
                    "考核权重": "40",
                    "考试时间": "120"
                },
                {
                    "试题": [
                        {
                            "考核项目": [
                                {
                                    "序号": 1,
                                    "考核要点": "衣着要符合工作岗位要求,考生须遵守考场纪律。",
                                    "配分": "2",
                                    "评分标准": [
                                        {
                                            "标准": "衣着是否符合工作岗位要求",
                                            "分值": "1"
                                        },
                                        {
                                            "标准": "是否遵守考场纪律(如考试期间不接打电话,不擅自离岗,不打闹喧哗等)",
                                            "分值": "1"
                                        }
                                    ],
                                    "考核内容": "职业素养"
                                },
                                {
                                    "序号": 2,
                                    "考核要点": "1.xxx安全待机; 2.xxx取料位置;\n3......",
                                    "配分": "8",
                                    "评分标准": [
                                        {
                                            "标准": "能否设置 xxx使其处于安全待机位置",
                                            "分值": "2"
                                        },
                                        {
                                            "标准": "能否设置 xxx处于取料位置",
                                            "分值": "3"
                                        }
                                    ],
                                    "考核内容": "设备前期准备情况"
                                },
                                {
                                    "序号": 3,
                                    "考核要点": "1.运行速度控制; 2.加减速度设置 ;\n3.......",
                                    "配分": "30",
                                    "评分标准": [
                                        {
                                            "标准": "设置 xxxx运行速度能否控制在 30%-45%",
                                            "分值": "6"
                                        },
                                        {
                                            "标准": "是否可以设置加减速度 50,50的编程操作",
                                            "分值": "6"
                                        }
                                    ],
                                    "考核内容": "操作编程设计"
                                },
                                {
                                    "序号": 4,
                                    "考核要点": "1.程序模块化设计; 2.模拟运行能力。",
                                    "配分": "30",
                                    "评分标准": [
                                        {
                                            "标准": "程序模块化设计(轨迹 1轨迹 2......",
                                            "分值": "5"
                                        },
                                        {
                                            "标准": "xxx程序组成编程窗口模拟",
                                            "分值": "5"
                                        }
                                    ],
                                    "考核内容": "模拟测试"
                                }
                            ],
                            "否定项": "若考生发生下列情况之一,则应及时终止其考试,考生该试题成绩记为零分。\n1.因考生操作不当使设备发生严重意外。\n2.考生严重破坏现场设备使用功能的。",
                            "选考方式": "必考",
                            "名称": "文件校对"
                        },
                        {
                            "考核项目": [
                                {
                                    "序号": 1,
                                    "考核要点": "衣着要符合工作岗位要求,考生须遵守考场纪律。",
                                    "配分": "2",
                                    "评分标准": [
                                        {
                                            "标准": "衣着是否符合工作岗位要求",
                                            "分值": "1"
                                        },
                                        {
                                            "标准": "是否遵守考场纪律(如考试期间不接打电话,不擅自离岗,不打闹喧哗等)",
                                            "分值": "1"
                                        }
                                    ],
                                    "考核内容": "职业素养"
                                },
                                {
                                    "序号": 2,
                                    "考核要点": "1.xxx安全待机; 2.xxx取料位置;\n3......",
                                    "配分": "8",
                                    "评分标准": [
                                        {
                                            "标准": "能否设置 xxx使其处于安全待机位置",
                                            "分值": "2"
                                        },
                                        {
                                            "标准": "能否设置 xxx处于取料位置",
                                            "分值": "3"
                                        }
                                    ],
                                    "考核内容": "设备前期准备情况"
                                },
                                {
                                    "序号": 3,
                                    "考核要点": "1.运行速度控制; 2.加减速度设置 ;\n3.......",
                                    "配分": "30",
                                    "评分标准": [
                                        {
                                            "标准": "设置 xxxx运行速度能否控制在 30%-45%",
                                            "分值": "6"
                                        },
                                        {
                                            "标准": "是否可以设置加减速度 50,50的编程操作",
                                            "分值": "6"
                                        }
                                    ],
                                    "考核内容": "操作编程设计"
                                },
                                {
                                    "序号": 4,
                                    "考核要点": "1.程序模块化设计; 2.模拟运行能力。",
                                    "配分": "30",
                                    "评分标准": [
                                        {
                                            "标准": "程序模块化设计(轨迹 1轨迹 2......",
                                            "分值": "5"
                                        },
                                        {
                                            "标准": "xxx程序组成编程窗口模拟",
                                            "分值": "5"
                                        }
                                    ],
                                    "考核内容": "模拟测试"
                                }
                            ],
                            "否定项": "若考生发生下列情况之一,则应及时终止其考试,考生该试题成绩记为零分。\n1.因考生操作不当使设备发生严重意外。\n2.考生严重破坏现场设备使用功能的。",
                            "选考方式": "必考",
                            "名称": "文件输出"
                        }
                    ],
                    "考核形式": "实操",
                    "模块名称": "文件管理",
                    "考核权重": "15",
                    "考试时间": "30"
                }
            ]
        }
    ],
    "msg": "",
    "success": true
}

示例文本

相关推荐
BullSmall3 小时前
JSON 结构注入测试系统:全解与实战案例
json·安全性测试
-许平安-7 小时前
MCP项目笔记五(PluginAPI)
c++·笔记·rpc·json·mcp·pluginapi
BullSmall7 小时前
接口测试系列-JSON 结构注入测试系统(全解 + 实战案例)
json·安全性测试
Rabbit_QL8 小时前
【JSON小白篇】数据交换的通用语言—JSON
json
lclcooky8 小时前
SpringCloud系列教程:微服务的未来 (五)枚举处理器、JSON处理器、分页插件实现
spring cloud·微服务·json
莫爷1 天前
JSON 性能优化实战:大数据量 JSON 的处理技巧
性能优化·json·apache
吴声子夜歌1 天前
JavaScript——JSON序列化和反序列化
开发语言·javascript·json
范桂飓1 天前
openclaw.json 配置文件解析
人工智能·json
C++ 老炮儿的技术栈1 天前
c++常见配置文件格式 JSON、INI、XML、YAML 它们如何解析
xml·开发语言·c++·windows·qt·json