import path from 'path' import os from 'os' import { define } from '../../define/define' import { errorMessage, successMessage } from '../generalTools' import axios from 'axios' import { ServiceBase } from '../../define/db/service/serviceBase' export class GptSetting extends ServiceBase { constructor() { super() axios.defaults.baseURL = define.serverUrl } /** * 获取服务强上面的提示词相关的数据 */ async InitServerGptOptions() { try { // 获取提示词类型数据 let promptRes = await axios.get('/api/Prompt/GetPromptType/100/1') let promptType = promptRes.data.data // 获取提示词数据 let prompt = await axios.get('/api/Prompt/GetPromptString/all/100/1') let promptData = prompt.data.data let gptOptions = { promptType: promptType, promptData: promptData } return successMessage(gptOptions, '请求成功', 'GptSetting_InitServerGptOptions') } catch (error) { return errorMessage( '获取服务端提示词数据错误,错误信息如下:' + error.toString(), 'GptSetting_InitServerGptOptions' ) } } // 获取软件设置里面的AI设置,没有的话设置初始值 async GetAISetting() { try { await this.InitService() let res = this.softService.GetSoftWarePropertyData('aiSetting') if (res.data == null || res.data == undefined || res.data == '') { // 没有数据需要额外初始化 res.data = { laiapi: { gpt_url: 'https://laitool.net/v1/chat/completions', api_key: undefined, model: undefined }, kimi: { gpt_url: 'https://api.moonshot.cn/v1/chat/completions', api_key: undefined, model: undefined }, doubao: { gpt_url: 'https://ark.cn-beijing.volces.com/api/v3/chat/completions', api_key: undefined, model: undefined } } } else { res.data = JSON.parse(res.data) } return res } catch (error) { return errorMessage( '获取软件设置里面的AI设置错误,错误信息如下:' + error.toString(), 'GptSetting_GetAISetting' ) } } /** * 保存软件中的AI设置 * @param {*} value */ async SaveAISetting(value) { try { await this.InitService() let res = this.softService.SaveSoftwarePropertyData('aiSetting', JSON.stringify(value)) return res } catch (error) { return errorMessage( '保存软件设置里面的AI设置错误,错误信息如下:' + error.toString(), 'GptSetting_SaveAISetting' ) } } }