聊城做网站的公司流程,广东移动手机营业厅网站,h5页面网站模板,wordpress优惠券自动使用说明
本文是GoFly快速开发框架集成Go语言调用 DeepSeek API 插件#xff0c;实现流式输出和对话功能。为了方便实现更多业务功能我们在Go服务端调用AI即DeepSeek接口#xff0c;处理好业务后再用Gin框架实现流失流式输出到前端#xff0c;前端使用fetch请求接收到流式的mar…说明
本文是GoFly快速开发框架集成Go语言调用 DeepSeek API 插件实现流式输出和对话功能。为了方便实现更多业务功能我们在Go服务端调用AI即DeepSeek接口处理好业务后再用Gin框架实现流失流式输出到前端前端使用fetch请求接收到流式的markdown数据展示到GoFly框架的富文本编辑gfEditor中。在编辑中可对生产文档内容继续编辑编辑器的文档可以导出word格式文档对WPS兼容很好。 实现思路
1.方便后端实现更多业务逻辑我们在Go后端实现与DeepSeek API接口对接。
2.使用GoFly框架的富文本编辑器来显示markdown内容
3.DeepSeek API 支持流式输出Stream通过设置 stream: true我们可以实现实时显示 AI 回复的效果。这带来了更好的用户体验
即时看到响应内容减少等待时间更自然的对话体验
4.使用fetch请求接收到流式的markdown数据一边打字机式输出内容。
5.使用框架富文本编辑器的setMarkdown()方法实现实时显示流式内容代码如下 engine.value.setMarkdown(resContent.value, () {scrollToBottom()});
6.后端使用Gin框架的流式输出返回数据给前端使用Gin请求上线文代码如下
// 创建 HTTP 请求req, err : http.NewRequest(POST, apiURL, bytes.NewBuffer(jsonData))if err ! nil {gf.Failed().SetMsg(创建请求失败).Regin(c)return}req.Header.Set(Content-Type, application/json)req.Header.Set(Authorization, Bearer authToken)// 设置 HTTP 客户端client : http.Client{Timeout: time.Second * 50}resp, err : client.Do(req)if err ! nil {gf.Failed().SetMsg(请求API没有得到回应).Regin(c)return}defer resp.Body.Close()// 设置响应头开启流式输出c.Writer.Header().Set(Content-Type, text/event-stream; charsetutf-8)c.Writer.Header().Set(Cache-Control, no-cache)c.Writer.Header().Set(Connection, keep-alive)// 确保 ResponseWriter 支持 Flusherflusher, ok : c.Writer.(http.Flusher)if !ok {gf.Failed().SetMsg(不支持流式输出).Regin(c)return}// 处理流式响应scanner : bufio.NewScanner(resp.Body)for scanner.Scan() {line : scanner.Text()// 处理以 data: 开头的行if strings.HasPrefix(line, data: ) {line strings.TrimPrefix(line, data: )}if line [DONE] {break}if line {continue}// 解析响应内容var chunk ResponseBodyif err : json.Unmarshal([]byte(line), chunk); err ! nil {continue}// 将响应数据逐步发送给客户端for _, choice : range chunk.Choices {content : choice.Delta.Content_, err : c.Writer.WriteString(content) //w.Write([]byte(content))if err ! nil {gf.Failed().SetMsg(Failed to write response).Regin(c)return}flusher.Flush() // 刷新缓冲区}}
使用步骤
1.安装
安装方式为去busines后台管理的“开发者工具-代码仓”找到“接入AI-DeepSeek的API实现流式输出和对话”插件点击安装或者到社区代码市场下载“开发者工具-代码仓”点击 安装本地包 接口安装插件。
2.安装前端导word文档插件
我们用到内容转word文档并下载word文档所以需要使用转word文档插件这里我们使用html-docx-js-typescript所以安装完插件需要再前端框架引入html-docx-js-typescript。引入命令如下
yarn add html-docx-js-typescript
# 或者
npm install html-docx-js-typescript --save-dev
建议使用yarn引入成功后重启一下前端 yarn serve 或者npm serve
3.配置API keys
首先你去 DeepSeek开放平台 创建一个key然后复制 API key 到golfy管理后台的“数据中心-配置管理”找的AI-DeepSeek配置然后设置authToken值为复制的DeepSeek平台的key值到此就可以去AI对话中使用了。
功能介绍及使用教程视频 DeepSeek API接入Go语言开发框架集成插件功能和使用说明