/** * Coze API配置 * 包含API服务的配置和工作流ID映射 * 目前只支持文本转描述词工作流 */ import { getCozeApiToken, getWorkflowIds } from './storageUtils'; // Coze API 基础URL export const COZE_API_BASE_URL = process.env.REACT_APP_COZE_API_BASE_URL || 'https://api.coze.cn'; // 获取Coze API Token,优先使用本地存储,其次使用环境变量 const storedToken = getCozeApiToken(); export const COZE_API_TOKEN = storedToken || process.env.REACT_APP_COZE_API_TOKEN || ''; // 判断是否有有效的API Token export const hasValidToken = () => { return !!COZE_API_TOKEN && COZE_API_TOKEN !== 'your_coze_api_token'; }; // 从本地存储获取自定义的工作流ID const storedWorkflowIds = getWorkflowIds() || {}; // 工作流ID映射表 // 优先使用本地存储的ID,其次使用环境变量,最后使用默认值 export const WORKFLOW_IDS = { textToDescription: storedWorkflowIds.textToDescription || '7485203690664837121', // 添加画风列表和画图工作流 getStyleList: storedWorkflowIds.getStyleList || '7485203690664837122', generateImage: storedWorkflowIds.generateImage || '7485203690664837123', // 添加导出剪映草稿工作流 exportJianyingDraft: storedWorkflowIds.exportJianyingDraft || '7485203690664837120', }; // 工作流名称到显示名称的映射 export const WORKFLOW_DISPLAY_NAMES = { textToDescription: '文本转描述词', getStyleList: '获取画风列表', generateImage: '生成图像', exportJianyingDraft: '导出剪映草稿', }; // 获取所有工作流ID和显示名称的映射 export const getAllWorkflows = () => { return Object.entries(WORKFLOW_IDS).map(([key, id]) => ({ id, key, name: WORKFLOW_DISPLAY_NAMES[key] || key, })); }; // 默认配置,用于初始化CozeService export const DEFAULT_CONFIG = { token: COZE_API_TOKEN, baseURL: COZE_API_BASE_URL, }; // 参数预设 export const PARAMETER_PRESETS = { textToDescription: { style: 'detailed', // 详细描述风格 language: 'zh', // 输出语言:中文 maxLength: 500, // 最大长度 }, // 图像生成参数预设 generateImage: { width: 1024, // 图像宽度 height: 1024, // 图像高度 num_images: 1, // 生成图像数量 language: 'zh', // 提示词语言:中文 negative_prompt: '', // 负面提示词 }, };