手机网站开发模板,黄石专业网站建设推广,网站上线 串词,定制网站开发公司排名一 背景
根据业务或者使用场景搭建自定义的智能ai模型机器人#xff0c;可以较少我们人工回答的沟通成本#xff0c;而且可以更加便捷的了解业务需求给出大家设定的业务范围的回答#xff0c;目前基于阿里云的通义千问模型研究。
二 模型研究
参考阿里云帮助文档#xf…一 背景
根据业务或者使用场景搭建自定义的智能ai模型机器人可以较少我们人工回答的沟通成本而且可以更加便捷的了解业务需求给出大家设定的业务范围的回答目前基于阿里云的通义千问模型研究。
二 模型研究
参考阿里云帮助文档 https://help.aliyun.com/document_detail/2784263.html https://help.aliyun.com/document_detail/2784278.html?spma2c4g.2779977.0.0.41c247904gVRRu https://help.aliyun.com/zh/model-studio/user-guide/model-tools/?spma2c4g.11186623.0.0.451d5f17l5DF7U 1.通过阿里云百炼平台构建我们的应用模型
2.搭建我们的数据中心知识库
3.创建应用关联知识库文档做模型
1、模型概览 模型服务模型名称模型描述备注通义千问qwen-longqwen-long是在通义千问针对超长上下文处理场景的大语言模型支持中文、英文等不同语言输入支持最长1000万tokens约1500万字或1.5万页文档的超长上下文对话。配合同步上线的文档服务可支持word、pdf、markdown、epub、mobi等多种文档格式的解析和对话。qwen-turbo通义千问超大规模语言模型支持中文、英文等不同语言输入。百炼平台支持智能思考度偏低响应较快qwen-plus通义千问超大规模语言模型增强版支持中文、英文等不同语言输入。百炼平台支持兼顾智能思考跟响应的qwen-max通义千问千亿级别超大规模语言模型支持中文、英文等不同语言输入。随着模型的升级qwen-max将滚动更新。如果希望使用固定版本请使用历史快照版本。当前qwen-max模型与qwen-max-0428快照版本等价均为最新版本的qwen-max模型同时也是当前通义千问2.5产品版本背后的API模型。百炼平台支持智能思考度较高响应较慢qwen-max-0428通义千问千亿级别超大规模语言模型支持中文、英文等不同语言输入。该模型为qwen-max的2024年4月28号的历史快照稳定版本预期维护到下个快照版本发布时间待定后一个月。qwen-max-0403通义千问千亿级别超大规模语言模型支持中文、英文等不同语言输入。该模型为qwen-max的2024年4月3号的历史快照稳定版本预期维护到下个快照版本发布时间待定后一个月。qwen-max-0107通义千问千亿级别超大规模语言模型支持中文、英文等不同语言输入。该模型为qwen-max的2024年1月7号的历史快照稳定版本仅推荐特定需求客户访问。qwen-max-1201通义千问千亿级别超大规模语言模型支持中文、英文等不同语言输入。该模型为qwen-max的2023年12月1号的历史快照稳定版本预期维护到下个快照版本发布时间待定后一个月。qwen-max-longcontext通义千问千亿级别超大规模语言模型支持中文、英文等不同语言输入。 通义千问千亿级别超大规模语言模型支持中文、英文等不同语言输入。随着模型的升级qwen-max将滚动更新。如果希望使用固定版本请使用历史快照版本。当前qwen-max模型与qwen-max-0428快照版本等价均为最新版本的qwen-max模型同时也是当前通义千问2.5产品版本背后的API模型。百炼平台支持智能思考度较高响应较慢qwen-max-0428通义千问千亿级别超大规模语言模型支持中文、英文等不同语言输入。该模型为qwen-max的2024年4月28号的历史快照稳定版本预期维护到下个快照版本发布时间待定后一个月。qwen-max-0403通义千问千亿级别超大规模语言模型支持中文、英文等不同语言输入。该模型为qwen-max的2024年4月3号的历史快照稳定版本预期维护到下个快照版本发布时间待定后一个月。qwen-max-0107通义千问千亿级别超大规模语言模型支持中文、英文等不同语言输入。该模型为qwen-max的2024年1月7号的历史快照稳定版本仅推荐特定需求客户访问。qwen-max-1201通义千问千亿级别超大规模语言模型支持中文、英文等不同语言输入。该模型为qwen-max的2023年12月1号的历史快照稳定版本预期维护到下个快照版本发布时间待定后一个月。qwen-max-longcontext通义千问千亿级别超大规模语言模型支持中文、英文等不同语言输入。 2、AI应用步骤搭建
Step 1数据管理-导入数据 Step 2创建知识索引 选择导入数据到知识库 获取知识索引ID支持与百炼Assistant API结合使用支持RAG和插件的组合调用 查看切割文档 Step 3创建应用
进入我的应用后点击新增应用。然后在应用配置中进行以下几步操作 选择模型。目前仅支持qwen-max模型后续将支持更多的模型。同时也可以支持设置模型内容生成的相关参数如temperature等。 开启“知识检索增强”。 选择知识库即在Step2中创建的知识索引。 点击“保存并发布”按钮。 4、测试AI应用
4.1 简单问题 4.2、自定义插件
在某些场景下我们除了需要根据文档回答问题之外还需要根据我们自定义的内容给出答案例如查询公司某些业务的数据项指标项等这些三方ai无法清除那么我们就可以通过自定义插件。 创建自定义插件 5 SDK对接
1、获取应用appid apikey
2、对接的地址 5.1、普通请求
RequestMapping(value /ask/test)
public AssistantResp ask(RequestBody AssistantReq req) {long l System.currentTimeMillis();log.info(ask start{} message{}, l, req.getMessage());try {if (req.getMessage() null || req.getMessage().trim().length() 0) {return AssistantResp.builder().message(请输入问题).build();}ApplicationParam param ApplicationParam.builder().apiKey(sk-).appId(f8a%%%%%%%%%%%%%%).prompt(req.getMessage()).sessionId(req.getSessionId()).temperature(0.5F).build();Application application new Application();ApplicationResult result application.call(param);log.info(result{}, JSONUtil.toJsonStr(result));AssistantResp ask AssistantResp.builder().message(result.getOutput().getText()).build();log.info(请求耗时{}, System.currentTimeMillis() - l);log.info(ask end{},message{}, System.currentTimeMillis(), ask.getMessage());return ask;} catch (Exception e) {return AssistantResp.builder().message(系统繁忙请稍后再试).build();}}
5.2 流式响应
RequestMapping(value /stream, produces MediaType.TEXT_EVENT_STREAM_VALUE)
public ResponseEntityStreamingResponseBody stream(RequestBody AssistantReq req) {try {ApplicationParam param ApplicationParam.builder().apiKey(sk-).appId(**************).prompt(req.getMessage()).incrementalOutput(true).build();Application application new Application();FlowableApplicationResult resultFlowable application.streamCall(param);StreamingResponseBody responseBody outputStream - {resultFlowable.blockingForEach(data - {String content data.getOutput().getText();log.info(content{},content);outputStream.write(content.getBytes());outputStream.flush(); // 确保数据立即发送});};return ResponseEntity.ok().body(responseBody);} catch (NoApiKeyException e) {e.printStackTrace();} catch (InputRequiredException e) {e.printStackTrace();}return ResponseEntity.ok().body(null);
}
5.3 多轮会话
public void answer(String askStr,String tenantKey,String openId) throws Exception {//通过openId 获取 sessionIdString sessionId map.get(openId);log.info(askStr start{},askStr);ApplicationParam param ApplicationParam.builder().apiKey(sk-b**********).appId(f**************).prompt(askStr).sessionId(sessionId).build();log.info(param{},JSONUtil.toJsonStr(param));Application application new Application();ApplicationResult result application.call(param);if(result.getOutput().getSessionId()!null){map.put(openId,result.getOutput().getSessionId());}String text result.getOutput().getText();}
下一篇通义千问AI模型对接飞书机器人-集成飞书机器人2-2-CSDN博客