首页 > 其他分享 >一个静态页面接入科大讯飞3.5AI

一个静态页面接入科大讯飞3.5AI

时间:2024-04-19 18:11:41浏览次数:25  
标签:AI httpUrl break date host 3.5 pathname 科大 var

 

 

静态文件html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>体验-大模型</title>
</head>
<body>
<div class="chat-bot">
    <div class="chat-bot-header">
        <img src="./qwen.png" alt="Logo" class="logo"/>
        测试页面
    </div>
    <div id="output_text" class="chat-bot-messages"></div>
    <div class="chat-bot-input">
        <input id="input_text" type="text" placeholder="输入你想问的问题"/>
        <button id="audio-ctrl-btn">Send</button>
    </div>
</div>
</body>
</html>

 

 

获取科大讯飞最新的websocket接口地址

function getWebsocketUrl() {
    // console.log(httpUrl.pathname)
    // 动态获取domain信息
    switch (httpUrl.pathname) {
        case "/v1.1/chat":
            modelDomain = "general";
            break;
        case "/v2.1/chat":
            modelDomain = "generalv2";
            break;
        case "/v3.1/chat":
            modelDomain = "generalv3";
            break;
        case "/v3.5/chat":
            modelDomain = "generalv3.5";
            break;
    }

    return new Promise((resolve, reject) => {
        var apiKey = API_KEY
        var apiSecret = API_SECRET


        var url = 'wss://' + httpUrl.host + httpUrl.pathname

        // console.log("我打印的" + httpUrl.host)
        // console.log("我打印的" + httpUrl.pathname)

        var host = location.host
        var date = new Date().toGMTString()
        var algorithm = 'hmac-sha256'
        var headers = 'host date request-line'
        var signatureOrigin = `host: ${host}\ndate: ${date}\nGET ${httpUrl.pathname} HTTP/1.1`
        var signatureSha = CryptoJS.HmacSHA256(signatureOrigin, apiSecret)
        var signature = CryptoJS.enc.Base64.stringify(signatureSha)
        var authorizationOrigin = `api_key="${apiKey}", algorithm="${algorithm}", headers="${headers}", signature="${signature}"`
        var authorization = btoa(authorizationOrigin)
        url = `${url}?authorization=${authorization}&date=${date}&host=${host}`
        resolve(url)
    })
}

 

 

代码地址:https://gitee.com/m1v/xfyun_spark_demo.git

标签:AI,httpUrl,break,date,host,3.5,pathname,科大,var
From: https://www.cnblogs.com/difs/p/18146578

相关文章

  • 行人属性AI识别/人体结构化属性AI识别算法的原理及应用场景介绍
    行人属性AI识别技术是一种基于人工智能技术的图像识别技术,通过对行人的图像或视频进行处理和分析,提取出其中的结构化信息,如人体姿态、关键点位置、行人属性(性别、年龄、服装等)等。行人结构化数据分析的方法包括姿态估计、关键点检测、行人属性识别等:姿态估计是指根据行人的姿势......
  • Windows编程系列:进程间通信(基于Mailslot)
    最近在做一个资源管理器背景工具,将模块注入后,需要跟模块进行通信,意向传递一些信息。一开始想到的是使用共享内存,但是无法进行实时通知。匿名管道的话需要传入句柄字符串,也不太适用这里的场景。使用Mailslots可以间隔的去取消息,刚好可以实现这个需求。不同于消息队列的时,没取到......
  • tailwindcss
    TailwindCSS是一个为快速创建定制化UI组件而设计的实用型框架。与其他CSS框架或库不同,TailwindCSS组件没有预先设置好样式。可以使用Tailwind的低级实用类来为CSS元素设置样式,如margin、flex、color等。自从2017年发布以来,TailwindCSS越来越受欢迎,因为它允许开......
  • docker容器内部CLOSE_WAIT调优
    这2天遇见一个神奇的事情使用netstat-pan|grepCLOSE_WAIT|wc-l命令对docker宿主机上CLOSE_WAIT状态统计出来为0,进入到容器内部发现CLOSE_WAIT状态已经600多了。来吧,操作起来,先研究研究官方文档https://docs.docker.com/compose/compose-file/05-services/如何配置首先我们需......
  • 问AI关于软件工程师到架构师的升级条件
    初级、中级、高级软件工程师的分类通常依据其技术能力、工作经验、业务理解、项目贡献、团队协作等多个维度。以下是对这三个阶段工程师在知识掌握程度上的大致划分: 初级软件工程师(JuniorSoftwareEngineer)1.基础知识扎实:  -熟练掌握至少一门编程语言(如Java、Python、C+......
  • LSI 9560-8i RAID卡驱动编译
    下载驱动包:https://www.broadcom.cn/products/storage/raid-controllers/megaraid-9560-8i第一步:将压缩包上传到系统内,进行解压[FriApr1908:44:25root@localhost~]#unzip07.728.04.00-1_Linux_Driver.zip[FriApr1908:44:30root@localhost~]#cdmrlinuxdrv_......
  • fluent AI的常用方法
    FluentAPI是EntityFrameworkCore的一个功能,它提供了一组可以以流式、链式调用的方法来配置EF的模型。它给予你对模型的完全控制权,高于数据注解(DataAnnotations)的优先级。它通常用于DbContext中的OnModelCreating方法里。以下是一些常用的FluentAPI配置方法的例子:配置主键cs......
  • NVIDIA驱动失效简单解决方案:NVIDIA-SMI has failed because it couldn‘t communicate
    NVIDIA驱动失效简单解决方案:NVIDIA-SMIhasfailedbecauseitcouldn‘tcommunicatewiththeNVIDIAdriver.问题:准备用GPU跑模型时,提示cuda不存在第一步,打开终端,输入:vidia-smi1|NVIDIA-SMIhasfailedbecauseitcouldn'tcommunicatewiththeNVIDIAdriver.2|Make......
  • RuntimeError: No CUDA GPUs are available问题解决
    RuntimeError:NoCUDAGPUsareavailable问题解决检查GPU是否可用importtorchiftorch.cuda.is_available():print("GPU可用")else:print("GPU不可用")显示当前可用的GPU数量importtorchprint("当前可用的GPU数量:",torch.cuda.device_count())P......
  • 边缘计算智能分析网关V4地面垃圾AI检测算法介绍及场景应用
    在传统的卫生监管场景中,无法及时发现地面遗留的垃圾,通过人工巡逻的方式需要大量的人力、物力和时间,而且效率不高,并存在一定的滞后性,而采用地面垃圾AI检测算法则可以大大提高监管效率。TSINGSEE青犀AI智能分析网关V4的地面垃圾AI检测算法可以自动识别划定区域内遗留的垃圾,若达到设......