在使用AI大模型时,我们会上传文档,让AI学习,然后让AI输出问题和答案,然后我们导出来用来测验、考试。
中间会遇到些问题:
1、问答的格式问题,怎么能够拿来直接用;
2、如果多个文件批量处理:文件的大小,会导致问答的数量不一致,这个界限怎么划分?不能统一让AI总结10个、30个、50个问题吧。
3、模型回答会有个较长的等待时间(非流式回答)。
4、AI的回答输出会有字数限制,会出现回答的内容截取一半或者直接报错,然后回答空白。
第一个问题的方案:
我的场景是将问答导入到结构化的数据库中,所以我想要一个json数组,这样更好解析插入数据库。那么我可以直接让Ai按照这种方式来输出,例如:
提炼文档中典型的问答,回答格式为:[{"question": "","answer":""}],不要有其它说明。这样他就会输出个json数组。
这里我用的是通义千问。结果如下:

通义千问回答
第二个问题的方案:
解决第二个问题时,我就想:我给Ai文件了,AI你就尽可能多的给我总结提炼出最典型的一些问题就可以了吧。但是Ai往往总结出来的比较少,因为AI没有多的标准,也就无所谓尽可能多。
后来的方案就是让AI分次回答。
1、 先问模型可以提炼多少个问答,问三次,取最大的数值,例如:根据这个文档最多提炼多少个问答,结果只给我个数字。
2、获取到问题的数量,数量/10=次数,循环对应的次数获取答案。
第三、四个问题的方案:
第三、四个问题不用解决了。由于第二问题的方案,对AI输出的内容做了拆分,只要答案不是长的特别离谱,token也够用,一般https请求做个长轮询就可以在1-2min中内获取到答案。