本文实例为大家分享了vue+AI智能机器人回复的具体代码,供大家参考,具体内容如下
操作步骤
- 引入前端代码
前端代码是参考github上的一个开源项目,里面包括AI机器人回复和聊天室两个模块,这里只抽取出来一个AI机器人回复的前端,有兴趣的话,可以点击查看
- 封装好代理与请求
因为第三方API的请求是外网的,存在跨域问题,所以要配置代理,配置如下:
文件:vue.config.js
const vueConfig = {
//上面还有项目的其他配置
devServer: {
port: 8000,
proxy: {
'/ai': {
target: 'http://openapi.tuling123.com/',
changeOrigin: true,
pathRewrite: {'^/ai': ''}
}
}
},
}
module.exports = vueConfig
配完代理后,创建请求实例:
文件: request.js
// 创建AI机器人回复请求axios实例
const aiService = axios.create({
//VUE_APP_AI_BASE_URL=/ai
//baseURL: process.env.VUE_APP_AI_BASE_URL,
baseURL: '/ai',
timeout: 10000
})
……
export {
aiService as aiAxios
}
- 调用第三方AI机器人的API
第三方AI机器人有很多,笔者尝试过阿里和图灵两个,调用方式都差不多,但是阿里的有点小贵,所以这里以图灵的为示例:
aiAxios.post('/openapi/api/v2', {
reqType: '0',
perception: {
inputText: {
text: this.inputContent
}
},
userInfo: {
//图灵上注册后自己的机器人apikey
apiKey: '****',
//登录用户用账户ID
userId: '123456'
}
}).then(res => {
let text= res.data.results[0].values.text;
this.msgs.push({
date: moment().format('YYYY-MM-DD HH:mm:ss'),
from: '智能机器人',
content: text,
self: false,
avatarUrl: aiHeadImg
})
this.$refs.chattingContent.scrollTop = this.$refs.chattingContent.scrollHeight
}).catch(err => {
this.$message.info(err);
})
整体示例代码
<template lang="html">
<transition name="slide-right">
<div class="chatting">
<!-- 聊天界面头部 -->
<div class="chatting-header">
<div class="chatting-back">
<i class="icon-back"></i>
</div>
<div class="chatting-title">
<h2>AI 智能机器人</h2>
</div>
<div class="chatting-menu">
<i class="icon-menu"></i>
</div>
</div>
<!-- 聊天内容区域 -->
<div ref="chattingContent" id="chattingContent" class="chatting-content">
<div v-for="item of msgs">
<!--用户输入内容-->
<div v-if="item.self" class="chatting-item self clearfix">
<div class="msg-date">
{{ item.date }}
</div>
<div class="msg-from">
<span class="msg-author">{{ item.from}}</span>
<img :src="/UploadFiles/2021-04-02/item.avatarUrl">
关于vue.js组件的教程,请大家点击专题vue.js组件学习教程进行学习。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线
暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。
艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。
《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。