在人工智能如汹涌浪潮席卷而来的当今时代,智能问答与交互AI对话功能已不再是新鲜概念,而是像丝线般渗透到各个领域。从嵌入智能手机随时随地响应需求的语音助手,到驻守在企业服务前沿解答各类疑问的智能客服系统,它们的身影无处不在。
腾讯云AI代码助手恰似一座桥梁,深入挖掘大模型和对话组件的潜力,因此我将依托腾讯云AI代码助手构建出一个功能完备的AI对话机器人网页。
本项目旨在构建一个基于腾讯混元的智能问答与交互AI对话功能的Web应用。这个应用旨在为用户提供一个便捷、高效且智能化的问答交互平台。无论是获取知识、寻求生活建议还是探索各类信息,用户都能够通过自然语言与系统进行交互。
项目采用了前后端分离的架构,后端使用Node.js,前端使用Vue.js和Vite。项目依赖管理清晰,采用了组件化开发和模块化管理的方式。
通过以上技术架构的组合,本项目能够有效地构建一个基于腾讯混元的智能问答与交互AI对话功能的Web应用。
下载地址:https://code.visualstudio.com/,点击下载,如果是其它系统可进行选择。
下载完成后,按照安装步骤进行安装即可。
官网链接:https://copilot.tencent.com/
腾讯云AI代码助手提供多种安装方式,请开发者按需选择。
在我的项目中,我将使用第一种安装方式,更加方便快捷。
在 vscode 中,点击插件功能,搜索腾讯云AI代码助手,点击下方列表,进行安装即可。
出现下面的智能对话框,说明我们已经安装成功,可进行项目的开发。
新建项目文件夹为AIChatBot,使用vite
创建工程项目vue3
模版,你可以按照以下步骤操作:
npm install -g create-vite
create-vite AIChatBot --template vue
npm install
npm run dev
现在,已经成功创建了项目文件夹AIChatBot,并使用vite创建了工程项目模板。可以在这个文件夹中开始开发AI聊天机器人项目。
TD Chat for AI
组件TDesign适配桌面端的AI Chat组件库,适合在 vue3.x 技术栈中的AI chat组件。
官网地址:https://tdesign.tencent.com/chat/getting-started
npm i @tdesign-vue-next/chat
chat
组件import { createApp } from 'vue';
import App from './app.vue';
import TDesignChat from '@tdesign-vue-next/chat'; // 引入chat组件
const app = createApp(App);
app.use(TDesignChat);
chat
腾讯混元大模型(Tencent Hunyuan)由腾讯公司全链路自研,在高质量的内容创作、数理逻辑、代码生成、多轮对话、图像与视频生产上性能表现优越,处于业界领先水平。
官网链接:https://cloud.tencent.com/product/hunyuan
官网中提供了在线调用界面供我们使用,可以使我们了解什么是腾讯混元,如果调用,需要哪些参数。
但在线调用不是我本次项目所关注的,我将在项目中通过node.js
调用腾讯混元大模型API,进行智能对话。
node.js
作为服务端,调用腾讯混元SDK,便于后面使用,所以我们创建一个node.js
就是服务端项目。tencentcloud-sdk-nodejs-hunyuan
根据腾讯AI代码助手提示,引入tencentcloud-sdk-nodejs-hunyuan
,并创建相关接口代码,需手动填写调用腾讯混元的密钥。
同时我们将该方法作为Api接口供前端调用。
// 定义接口
app.post("/hunyuan", (req, res) => {
const clientConfig = {
credential: {
secretId: "xxxx",
secretKey: "xxxx",
},
region: "",
profile: {
httpProfile: {
endpoint: "hunyuan.tencentcloudapi.com",
},
},
};
// 实例化要请求产品的client对象,clientProfile是可选的
const client = new HunyuanClient(clientConfig);
const {message} = req.body;
const params = {
Model: "hunyuan-pro",
Messages: message,
Stream: false,
};
client.ChatCompletions(params).then(
async (res) => {
res.json(result); // 将结果作为JSON返回
},
(err) => {
console.error("error", err);
}
);
});
async function testHunyuanApi() {
const url = 'http://localhost:3000/hunyuan';
const data = [
{
"Role": "assistant",
"Content": "你好!"
}
];
try {
const response = await fetch(url, {
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify(data)
});
if (response.ok) {
const result = await response.json();
console.log('调用成功,响应结果:', result);
} else {
console.log('调用失败,状态码:', response.status);
}
} catch (error) {
console.error('请求出错:', error);
}
}
进过执行该方法,我们成功接收到数据,说明后端服务无致命问题。
下面我们将重点开发界面,实现真正好玩,好用,有趣的智能对话系统。
http://localhost:3000/hunyuan
,在输入框输入完毕,确认执行 inputEnter
按钮,然后在逻辑代码中调用该接口根据界面显示,我们成功实现消息问答。
同时我们支持上下文信息历史记忆,使AI成为一个有头脑,能记住食物的智能对话系统。
通过测试,达到我的预期效果。
界面效果如下,后面我会持续优化样式。
点击下载对话记录按钮,可以观察到,文件成功下载,并储存为Excel
文件。
自此,我完成了该功能,使我的智能对话系统更加丰富。
界面效果,仅供参考。
此刻,我们点击开始新对话,当前对话会清空并重置,对话记录会新增一条记录。
同样,当我们点击右侧的历史记录时,当前对话系统会呈现该条完整对话记录。
此功能,补充了历史对话功能缺失带来的不友好的体验。
界面效果如下,经供参考。
同样我们完成对回复进行反馈,增加了用户的体验感,同时可对反馈表单优化内容,提供多方面的反馈系统,如果大家有时间,可以进行尝试。
最终得到我比较满意的主题风格。
自此,我们基本完成了智能问答系统所有功能,但是也有更多的功能等待我们去探索,去实现,也希望大家可以对以上功能提出建议,使我的智能对话系统更加完整,后期也会上线我的个人网站供大家使用。
要分析这个项目的关键技术点,可以从以下几个方面入手:
package.json
和package-lock.json
来管理项目依赖。node_modules
目录包含了所有项目的依赖包express
模块被引入并用于创建服务器,这是一个流行的Node.js Web应用框架,简化了服务器的创建和路由管理。body-parser
:用于解析传入请求的中间件,特别是bodyParser.json()
用于解析JSON格式的请求体。cors
:用于处理跨域资源共享(CORS),允许或限制来自不同源的请求。tencentcloud-sdk-nodejs-hunyuan
:这是腾讯云提供的SDK,用于与腾讯云的Hunyuan服务进行交互。HunyuanClient
:这是腾讯云Hunyuan服务的客户端实例,用于发送请求到Hunyuan API。console.log(req.body)
:行代码用于在服务器端打印接收到的请求体,有助于调试和监控。App.vue
和main.js
是主要入口文件。vite.config.js
是配置文件。<script setup>
进行组件逻辑组织。ref
创建响应式数据,如chatList
, loading
, isStreamLoad
等。v-for
进行列表渲染,并通过:key
确保唯一性。v-if
进行条件渲染,控制元素显示。t-chat-item
中插入操作按钮。为了更好的依托腾讯AI代码助手的分析能力,我使用AI代码助手帮助我生成项目的使用流程。
通过上述测试和演示,可以全面评估AI.vue
组件的功能完整性、性能和用户体验,确保其在实际应用中的稳定性和可用性。
腾讯云AI代码助手在我的智能问答与交互AI对话功能的完善与改进方面具有不可忽视的意义。它为我们提供了一个将理论知识与实际应用相结合的平台,激发了他们的创新思维和解决问题的能力。
通过结合腾讯混元大模型的强大能力,实现的智能问答与交互AI对话功能为未来智能应用的发展提供了新的思路和方向。展望未来,随着人工智能技术的不断演进和完善,腾讯混元大模型在智能问答与交互AI对话功能方面将会有更加广阔的应用前景。它可能会在智能家居控制、医疗辅助诊断、金融风险预警等更多领域发挥重要作用,为人们的生活和工作带来更多的便利和创新体验。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。