vue3项目中使用星火API

在node环境epxress中使用讯飞ai接口进行二次封装,通过ai对话回复提取,获得ai提取的文章摘要

本文章只是简单使用,更复杂功能比如调用星火API制作对话机器人可以查看文档,对于初次使用星火AI接口或许有帮助

讯飞星火大模型API-大模型API-大模型接口-科大讯飞

首先需要创建一个应用

然后点击应用进入之后,可以查看使用,我使用的是spark lite免费便宜,对于个人项目来说是足够的

在点击应用选择要使用的ai接口(这里我选取的是spark Lite )右下角可以看到web的接口文档

文档给出的示例是基于python环境,而本项目后端是基于node,采用express框架

文档采用流式返回,这里我进行了简化并未采取流式返回

通过阅读文档可知我们需要返回给api接口的数据需要authorization,然后对话内容需要设置message设置role为user则content的内容是使用者的提问

下面是我的示例

router/ai.js

javascript 复制代码
const express = require('express');
const axios = require('axios');
const router = express.Router();
const bodyParser = require('body-parser');

// 定义一个路由来处理 POST 请求
router.post('/api/summary', async (req, res) => {
  const { question } = req.body;

  console.log('Received request body:', req.body); // 打印接收到的请求体
  console.log('Received question:', question); // 打印接收到的 question

  if (!question) {
    return res.status(400).json({ error: '没有question' });
  }

  const url = "https://spark-api-open.xf-yun.com/v1/chat/completions";
  const data = {
    max_tokens: 4096,
    top_k: 4,
    temperature: 0.5,
    messages: [
      {
        role: "user",
        content: question
      }
    ],
    model: "lite",
    stream: false // 不需要流式响应
  };

  const header = {
    Authorization: "your_authoriztion"
  };

  try {
    const response = await axios.post(url, data, { headers: header });

    // 返回 API 的响应
    res.json(response.data);

  } catch (error) {
    console.error(error);
    res.status(500).json({ error: 'Internal Server Error' });
  }
});

module.exports = router;

app.js

javascript 复制代码
const express = require('express')
const app = express()
const port = 3000

// 使用 Express 内置的中间件来解析 JSON 请求体
app.use(express.json());
app.use(express.urlencoded({ extended: true }));

// 导入ai模块并注册
const aiRouter = require('./router/ai.js')
app.use('/', aiRouter)


app.listen(port, () => console.log(`http://127.0.0.1:${port}!`))

以下是vue3前端调用

javascript 复制代码
import request from '@/utils/request.js';

// 调用ai传输接口
export const aiPostService = (question) => request.post('http://127.0.0.1:3000/api/summary', {
  question: question
})
相关推荐
北京地铁1号线25 分钟前
Qwen-VL(阿里通义千问视觉语言模型)模型架构和损失函数介绍
人工智能·语言模型·自然语言处理
阿豪334 分钟前
2025 年职场转行突围:除实习外,这些硬核证书让你的简历脱颖而出(纯经验分享)
大数据·人工智能·经验分享·科技·信息可视化·产品经理
wyzqhhhh35 分钟前
组件库打包工具选型(npm/pnpm/yarn)的区别和技术考量
前端·npm·node.js
阿杜杜不是阿木木38 分钟前
开始 ComfyUI 的 AI 绘图之旅-Stable Diffusion图生图之局部重绘(Inpaint)和扩图(Outpaint)(三)
人工智能·ai·ai作画·aigc·图生图
阿杜杜不是阿木木42 分钟前
开始 ComfyUI 的 AI 绘图之旅-Stable Diffusion图生图(二)
人工智能·ai·ai作画·aigc·图生图
九章云极AladdinEdu1 小时前
存算一体芯片生态评估:从三星PIM到知存科技WTM2101
人工智能·pytorch·科技·架构·开源·gpu算力
张驰课堂1 小时前
老树发新芽:六西格玛培训为石油机械制造注入持久活力
大数据·人工智能·制造
和光同尘@1 小时前
66. 加一 (编程基础0到1)(Leetcode)
数据结构·人工智能·算法·leetcode·职场和发展
飞哥数智坊1 小时前
放弃 Cursor 后,我又试了 CodeBuddy,感觉国产又行了
人工智能·codebuddy