欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 房产 > 建筑 > 微信小程序接入DeepSeek模型(火山方舟),并在视图中流式输出

微信小程序接入DeepSeek模型(火山方舟),并在视图中流式输出

2025/3/11 6:27:38 来源:https://blog.csdn.net/lfq761204/article/details/145998772  浏览:    关键词:微信小程序接入DeepSeek模型(火山方舟),并在视图中流式输出
引言:

DeepSeek,作为一款先进的自然语言处理模型,以其强大的文本理解和生成能力著称。它能够处理复杂的文本信息,进行深度推理,并快速给出准确的回应。DeepSeek模型支持流式处理,这意味着它可以边计算边输出,而不必等待整个生成过程结束后再输出结果,大大缩短了用户的等待时间。通过流式输出,DeepSeek模型可以在处理过程中实时地将结果发送给小程序,小程序前端则能够立即接收到这些数据,并在视图中动态展示出来。这样,用户就可以边等待边看到已经接收到的结果,大大提升了用户体验。

本文中的DeepSeek模型为火山方舟(字节跳动火山引擎)中的DeepSeek大模型,当前可以免费使用。

一、注册火山引擎账号,创建API Key和model(接入点ID)

请参考之前的文章:微信小程序调用火山方舟(字节跳动火山引擎)中的DeepSeek大模型

二、小程序调用API,并流式输出

const requestTask=wx.request({method: 'POST',url: 'https://ark.cn-beijing.volces.com/api/v3/chat/completions',header: {'Content-Type': 'application/json', 'Authorization': 'Bearer API Key'  //Authorization值为“Bearer API Key”},data: {"model": "xxx",	//model值为接入点ID(model)"messages": [{"role": "user","content": "你是DeepSeek模型吗?",}],stream: true,   //是否以流的形式输出生成的内容},enableChunked: true    //开启transfer-encoding chunked
});requestTask.onChunkReceived(res => {//在微信开发者工具和真机上接收到的对象格式是不同的,以下代码是针对不同格式进行解码处理let type=Object.prototype.toString.call(res.data);let text;if(type ==="[object Uint8Array]")text=decodeURIComponent(escape(String.fromCharCode(...res.data)))if(type ==="[object ArrayBuffer]"){let uint8Array = new Uint8Array(res.data);text=decodeURIComponent(escape(String.fromCharCode(...uint8Array)))}//将解码后的文本分割成字符串数组,数组中的每个元素就是即时接收到的流式文本let list = text.split('\n');for (var i = 0; i < list.length; i++) {if (list[i]) {if (list[i].trim().search(/^data.*\}$/) > -1) {    //过滤掉空行和其他不规则数据行let delta = JSON.parse(list[i].substring(6)).choices[0].delta;//如果开启了“深度思考”,返回的对象中delta.reasoning_content为深度思考内容,//delta.content为主体应答内容let content = delta.reasoning_content ? delta.reasoning_content : delta.content;console.log(content);}if (list[i] == 'data: [DONE]') {requestTask.abort();}}}
});

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词