尚未崩坏 发表于 2024-11-9 08:23:20

微信小程序调用文心一言数据模子

微信小程序调用文心一言数据模子


目录
微信小程序调用文心一言数据模子
1.百度千帆大模子平台介绍
2.调用模子程序实现

1.百度千帆大模子平台介绍

调用:
起首要与数据模子API的所在创建毗连,使用微信自带api-wx.request()实现。
需要鉴权,有两种方式,用于识别身份,因为文心一言数据模子的使用要计费。
这里我们使用access_token方式,需要先向服务器发送一个请求数据的文件,根据其返回的access_token参数重新发送请求完成数据模子的调用。这里的access_token相当于调用数据模子的钥匙。
请求所在:ERNIE-4.0-8K - 千帆大模子平台 | 百度智能云文档 (baidu.com)
如图1-1,箭头与红框位置为各个可调用API接口的数据模子,红框右侧为选中模子的具体信息,包罗请求所在、使用方法等,建议仔细阅读。https://i-blog.csdnimg.cn/blog_migrate/bd049b2bf25c61205ea7167bddd0b9a1.png
图1-1
如图1-2,也可在模子广场寻找符合的模子。
https://i-blog.csdnimg.cn/blog_migrate/9a26b07f309a4b51a7fa27aa110bc2ac.png
图1-2
所在:百度智能云控制台 (baidu.com)
要想调用模子,还需要在系统重创建应用,如图1-3赤色箭头所指,按流程创建,创建内容自拟,对模子调用没有影响。
https://i-blog.csdnimg.cn/blog_migrate/1e2da9cfccfdcf9526f66d82786c4299.png
图1-3
绿色箭头为创建后的应用,我们在调用模子时要根据模子的API文档将应用的API Key和Secret Key填入用以获取毗连。
各种数据模子的室友计费在如图1-4中红箭头所指的计费管理中查看,token调用为我们每次创建毗连的必须的,按token次数可以得知我们调用了多少次数据模子。
https://i-blog.csdnimg.cn/blog_migrate/238d53b7f2a8fd2cde7dfcebe490b60f.png
图1-4
2.调用模子程序实现

我在这调用的模子为ERNIT-Tiny-8K,属于文心系列模子中的一种。
如图2-1,创建一个新的页面。
https://i-blog.csdnimg.cn/blog_migrate/11b10c50d13baf1a9e52590a528f9f2a.png
图2-1
加入简单的对话框以及按钮方便后续测试使用,如图2-2。
https://i-blog.csdnimg.cn/blog_migrate/1546f0901f605a795a7601899bcfa927.png
图2-2
轻微修改一下.wxml文件,将用户文本输入绑定存储函数,使获取的回答绑定到界面中:
<button type="primary" style="position: relative; left: 0rpx; top: 396rpx" bind:tap="getAnswer">获取回答</button>

<view style="position: relative; width: 100%; background: #d3d3d3; height: 100px; left: 0rpx; top: 17rpx">

  <input bindinput="getmsg" placeholder="请输入文本" style="width: 750rpx; height: 235rpx; display: block; box-sizing: border-box" auto-focus />

  </view>

<text style="position: relative; left: 0rpx; top: 214rpx">{{wxreply}}</text> 来到.js文件预备代码:
data: {

    inputmsg:'',//存放用户输入内容

    wxreply:'',//存放语言模型返回内容

    wenxin_acc:''//用于存储语言模型的access_token

},



onLoad(options) {

this.getwenxin()//与文心模型建立联系,获取access_token

    this.setData({

      wxreply:'泥嚎啊,这里是回答内容'

    })

  },



getmsg(msg){//输入绑定函数,把输入数据存储到getinput中

    this.setData({

      getinput:msg.detail.value

    })

    console.log('输入了'+msg.detail.value);

 }, 与文心获取接口的函数,该函数绑定在“获取回答”按钮上:
getwenxin(){

    var that = this;

    const wenxin_url = 'https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id=b52gxsglW27RqsvZAwjITYH5&client_secret=G7lUVA0VMkZ7oLNFm0CfQKPMzWk8WSV0';//存放请求API的地址,这里根据官方API文档的提示填入API KEY和Secret Key

    wx.request({

      url: wenxin_url,

      header: {

        'Content-Type': 'application/json'

      },//header根据API文档要求配置

      method: 'POST',//请求方式,这里文档中要求为post

      success:res=>{

        console.log(res),

        that.setData({//①标记--存储access_token

          wenxin_acc:res.data.access_token

        })

      }

    })

  }, 可见我在成功回调函数上写了console.log(res)用于获取网站返回信息,后序只需触发函数即可获得之,它的意义是获取调用语言模子必须的access_token值。这里标记①先不管。
此时图形化界面如图2-3所示:
https://i-blog.csdnimg.cn/blog_migrate/035e02bec32839eab3a45ab54a63bb59.png
图2-3
现在可以点击获取回答试试看能不能与模子所在成功毗连,可见点击后也是成功获取到了,如图2-4:
https://i-blog.csdnimg.cn/blog_migrate/4d9a0aedea7df6aac46d1cc7db3281c2.png
图2-4
图中赤色箭头所指的内容即我们需要的access_token。则上面代码部门标记①就可以将access_token存储于data当中方便我们后续使用。
接下来可以编写getAnswer()函数用以获取语言模子返回内容了:
getAnswer(){//向文心模型发送数据

    var that = this

    const wenxin_url = 'https://aip.baidubce.com/rpc/2.0/ai_custom/v1/wenxinworkshop/chat/ernie-tiny-8k?access_token=' + this.data.wenxin_acc//刚刚获得的token

    const question = {//向语言模型发送的数据

      "messages": [

        {

          "role": "user",

          "content": that.data.inputmsg

        }

      ]

    }

    wx.request({//网络请求,下面是各个参数

      url: wenxin_url,

      method: 'POST',

      data: question,

      header: {'Content-Type': 'application/json'},

      success:res=>{//将返回的数据存入data以便于显示

        console.log(res.data)

        that.setData({

          wxreply:res.data.result

        })

      }

    })

  }, 现在运行程序试试:
https://i-blog.csdnimg.cn/blog_migrate/c6fe89a27fa9b0a27c70e90ebc9aa96f.png
图2-5
没问题,输入文本试试能不能使用语言模子:
https://i-blog.csdnimg.cn/blog_migrate/d949e0fa120b02c44ea83aec1b0e539e.png
图2-6
可见已经可以大概成功调用模子了。
文章性质为本人学习后做的笔记,如有侵权请接洽本人删除。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: 微信小程序调用文心一言数据模子