diff --git a/backend/src/main/java/com/imeeting/dto/biz/CreateMeetingCommand.java b/backend/src/main/java/com/imeeting/dto/biz/CreateMeetingCommand.java index 3718a85..812db64 100644 --- a/backend/src/main/java/com/imeeting/dto/biz/CreateMeetingCommand.java +++ b/backend/src/main/java/com/imeeting/dto/biz/CreateMeetingCommand.java @@ -20,5 +20,6 @@ public class CreateMeetingCommand { private Long summaryModelId; private Long promptId; private Integer useSpkId; + private Boolean enableTextRefine; private List hotWords; } diff --git a/backend/src/main/java/com/imeeting/service/biz/impl/AiTaskServiceImpl.java b/backend/src/main/java/com/imeeting/service/biz/impl/AiTaskServiceImpl.java index 023dd0e..54e174f 100644 --- a/backend/src/main/java/com/imeeting/service/biz/impl/AiTaskServiceImpl.java +++ b/backend/src/main/java/com/imeeting/service/biz/impl/AiTaskServiceImpl.java @@ -247,6 +247,9 @@ public class AiTaskServiceImpl extends ServiceImpl impleme Object useSpkObj = taskRecord.getTaskConfig().get("useSpkId"); boolean useSpk = useSpkObj != null && useSpkObj.toString().equals("1"); config.put("enable_speaker", useSpk); + Object enableTextRefineObj = taskRecord.getTaskConfig().get("enableTextRefine"); + boolean enableTextRefine = enableTextRefineObj != null && Boolean.parseBoolean(enableTextRefineObj.toString()); + config.put("enable_text_refine", enableTextRefine); config.put("enable_two_pass", true); List> hotwords = new ArrayList<>(); diff --git a/backend/src/main/java/com/imeeting/service/biz/impl/MeetingCommandServiceImpl.java b/backend/src/main/java/com/imeeting/service/biz/impl/MeetingCommandServiceImpl.java index 5e26cf0..6eb967c 100644 --- a/backend/src/main/java/com/imeeting/service/biz/impl/MeetingCommandServiceImpl.java +++ b/backend/src/main/java/com/imeeting/service/biz/impl/MeetingCommandServiceImpl.java @@ -60,6 +60,7 @@ public class MeetingCommandServiceImpl implements MeetingCommandService { Map asrConfig = new HashMap<>(); asrConfig.put("asrModelId", command.getAsrModelId()); asrConfig.put("useSpkId", command.getUseSpkId() != null ? command.getUseSpkId() : 1); + asrConfig.put("enableTextRefine", command.getEnableTextRefine() != null ? command.getEnableTextRefine() : false); List finalHotWords = command.getHotWords(); if (finalHotWords == null || finalHotWords.isEmpty()) { diff --git a/frontend/src/api/business/meeting.ts b/frontend/src/api/business/meeting.ts index 9dc61ed..2292228 100644 --- a/frontend/src/api/business/meeting.ts +++ b/frontend/src/api/business/meeting.ts @@ -36,6 +36,7 @@ export interface CreateMeetingCommand { summaryModelId?: number; promptId: number; useSpkId?: number; + enableTextRefine?: boolean; hotWords?: string[]; } diff --git a/frontend/src/pages/business/Meetings.tsx b/frontend/src/pages/business/Meetings.tsx index 966f67f..964159c 100644 --- a/frontend/src/pages/business/Meetings.tsx +++ b/frontend/src/pages/business/Meetings.tsx @@ -117,7 +117,8 @@ const MeetingCreateForm: React.FC<{ summaryModelId: defaultLlm.data.data?.id, promptId: activePrompts.length > 0 ? activePrompts[0].id : undefined, meetingTime: dayjs(), - useSpkId: 1 + useSpkId: 1, + enableTextRefine: false }); } catch (err) {} }; @@ -243,6 +244,9 @@ const MeetingCreateForm: React.FC<{ 声纹识别 } valuePropName="checked" getValueProps={(v) => ({ checked: v === 1 })} normalize={(v) => (v ? 1 : 0)} style={{ marginBottom: 20 }}> + 文本修正 } valuePropName="checked" style={{ marginBottom: 20 }}> + +