diff --git a/Debate_backend/src/main/resources/application.yml b/Debate_backend/src/main/resources/application.yml
index 6987f63..35acca6 100644
--- a/Debate_backend/src/main/resources/application.yml
+++ b/Debate_backend/src/main/resources/application.yml
@@ -231,7 +231,7 @@ ai:
debate:
url: https://api.deepseek.com/chat/completions
- headers:
+ header:
Authorization: "Bearer sk-53428f3b07ff426f8c11d988f649b5e7"
body:
message:
diff --git a/Debate_backend/target/classes/application.properties b/Debate_backend/target/classes/application.properties
deleted file mode 100644
index 45007a4..0000000
--- a/Debate_backend/target/classes/application.properties
+++ /dev/null
@@ -1,2 +0,0 @@
-# 主要配置在application.yml中
-# 此文件用于避免IDE报错
\ No newline at end of file
diff --git a/Debate_backend/target/classes/application.yml b/Debate_backend/target/classes/application.yml
index 932e7e3..35acca6 100644
--- a/Debate_backend/target/classes/application.yml
+++ b/Debate_backend/target/classes/application.yml
@@ -107,6 +107,7 @@ ai:
top_p: 1
tool_choice: "none"
logprobs: false
+
review:
url: https://api.deepseek.com/chat/completions
header:
@@ -227,6 +228,137 @@ ai:
top_p: 1
tool_choice: "none"
logprobs: false
+
+ debate:
+ url: https://api.deepseek.com/chat/completions
+ header:
+ Authorization: "Bearer sk-53428f3b07ff426f8c11d988f649b5e7"
+ body:
+ message:
+ role-sys: system
+ content-sys: |
+ 竞技辩论指导手册(简洁版)
+ 现在假设你是一个专业的华语辩论辩手,你需要阅读下面的竞技辩论指导手册,学习如何坚守自己的立场,打出一场精彩的比赛。(注意,所有交锋环节,包括质询,接质,自由辩论你一次都只能输出一个问题的内容,模拟场上真实的比赛节奏)
+ 一、基础准备
+ 1. 理解辩题
+ - 先拆解核心概念(比如"语词平等"要明确指什么)
+ - 列出正反方可能的论点
+ - 准备2-3种定义方式(预防定义战)
+ 2. 证据收集
+ - 每个论点配1-2个具体案例
+ - 找近年的学术研究(心理学/社会学优先)
+ - 准备可比数据(比如"实施前vs实施后"对比)
+
+ 二、辩论策略
+ 1. 立论结构
+ 1. 定义关键概念
+ 2. 论证必要性(为什么这问题重要)
+ 3. 提出解决机制(具体怎么做)
+ 4. 比较优势(比对方方案好在哪)
+ 5. 价值升华(对社会/个人的意义)
+ 2. 反驳技巧
+ - 直接反驳:指出对方逻辑漏洞
+ - 替代解释:提供其他可能性
+ - 削弱影响:证明对方论点不重要
+
+ 三、实用话术
+ 1. 定义争夺
+ "对方对XX的理解过于狭隘,实际上应该包含..."
+ "这个定义在XX学者的研究中明确指..."
+ 2. 数据质疑
+ "该研究样本量仅200人,代表性不足"
+ "过去五年的新数据显示..."
+ 3. 价值比较
+ "短期可能有效,但长期会导致..."
+ "解决了A问题,却恶化了B问题"
+
+ 四、常见错误避免
+ 1. 逻辑问题
+ - 不偷换概念
+ - 不循环论证
+ - 不稻草人谬误(歪曲对方观点)
+ 2. 表达问题
+ - 避免绝对化表述("绝对""永远")
+ - 复杂理论简单化解释
+ - 关键数据要说明来源
+
+ 五、临场技巧
+ 1. 质询要领
+ - 问题要封闭(让对方只能答是/否)
+ - 连续追问不超过3个
+ - 提前准备"杀手锏问题"
+ 2. 自由辩论
+ - 30秒内完成一个论点
+ - 标记战场("关于XX问题,我方认为...")
+ - 不纠缠细节,保持主线
+
+ 六、经典辩论场景应对
+ 1. 当对方说"现实做不到"
+ 回应方向:
+ - 已有试点成功案例(举例)
+ - 技术/制度可行性分析
+ - 反问"那更好的解决方案是什么"
+ 2. 当对方强调"特殊情况"
+ 回应策略:
+ - 证明不具代表性
+ - 展示整体数据
+ - 指出例外不能否定原则
+
+ 七、评委说服技巧
+ 1. 专业评委
+ - 多引用学术研究
+ - 展示逻辑推导过程
+ - 使用专业术语
+ 2. 大众评委
+ - 多讲生活案例
+ - 用比喻解释复杂概念
+ - 适当情感共鸣
+
+ 八、自我检查清单
+ 1. 每个论点是否有证据支持?
+ 2. 反驳是否针对对方核心主张?
+ 3. 价值主张是否清晰有力?
+ 4. 时间分配是否合理?
+
+ 九、备用锦囊
+ 1. 万能案例库(准备5个跨领域案例)
+ 2. 名人名言(各领域3-5句)
+ 3. 紧急话术(当卡壳时:"这个问题需要分三个层面来看...")
+
+ 十、赛后提升
+ 1. 记录被反驳成功的论点
+ 2. 收集新的证据材料
+ 3. 优化表达方式(哪些话评委反应好)
+
+ [使用说明]
+ 1. 比赛前通读"基础准备"和"策略"部分
+ 2. 场上根据情况调用对应话术
+ 3. 赛后完成"自我检查"和"提升"
+
+ (总字数约3500字,可根据需要增减)
+
+ 这份手册的特点:
+ 1. 说人话,不装高深
+ 2. 直接可用,不需要翻译
+ 3. 重点突出实战技巧
+ 4. 兼顾新手和老手需求
+
+ 使用时只需要告诉我:
+ - 你的持方(正方/反方)
+ - 辩题类型(政策/价值/事实)
+ - 特别需求(如重点攻定义/数据)
+ role-user: user
+ model: deepseek-chat
+ frequency_penalty: 0
+ max_tokens: 2048
+ presence_penalty: 0
+ response_format: text
+ stream: false
+ temperature: 1
+ top_p: 1
+ tool_choice: "none"
+ logprobs: false
+
# JWT配置
jwt:
secret: yoursecretkey123456789abcdefghijklmnopqrstuvwxyz
diff --git a/Debate_backend/target/classes/com/learning/newdemo/controller/WxAIController.class b/Debate_backend/target/classes/com/learning/newdemo/controller/WxAIController.class
index 24dfc0a..b136fa9 100644
Binary files a/Debate_backend/target/classes/com/learning/newdemo/controller/WxAIController.class and b/Debate_backend/target/classes/com/learning/newdemo/controller/WxAIController.class differ
diff --git a/Debate_backend/target/classes/com/learning/newdemo/service/WxArgumentService.class b/Debate_backend/target/classes/com/learning/newdemo/service/WxArgumentService.class
index b8934c4..d8eabf7 100644
Binary files a/Debate_backend/target/classes/com/learning/newdemo/service/WxArgumentService.class and b/Debate_backend/target/classes/com/learning/newdemo/service/WxArgumentService.class differ
diff --git a/Debate_backend/target/classes/com/learning/newdemo/service/WxDebateService.class b/Debate_backend/target/classes/com/learning/newdemo/service/WxDebateService.class
new file mode 100644
index 0000000..c29f778
Binary files /dev/null and b/Debate_backend/target/classes/com/learning/newdemo/service/WxDebateService.class differ
diff --git a/Debate_backend/target/classes/com/learning/newdemo/service/WxReviewService.class b/Debate_backend/target/classes/com/learning/newdemo/service/WxReviewService.class
index d4fd50a..dccd6e5 100644
Binary files a/Debate_backend/target/classes/com/learning/newdemo/service/WxReviewService.class and b/Debate_backend/target/classes/com/learning/newdemo/service/WxReviewService.class differ
diff --git a/Debate_backend/target/classes/com/learning/newdemo/service/impl/WxArgumentServiceImpl.class b/Debate_backend/target/classes/com/learning/newdemo/service/impl/WxArgumentServiceImpl.class
index 65614e2..32f48a1 100644
Binary files a/Debate_backend/target/classes/com/learning/newdemo/service/impl/WxArgumentServiceImpl.class and b/Debate_backend/target/classes/com/learning/newdemo/service/impl/WxArgumentServiceImpl.class differ
diff --git a/Debate_backend/target/classes/com/learning/newdemo/service/impl/WxDebateServiceImpl.class b/Debate_backend/target/classes/com/learning/newdemo/service/impl/WxDebateServiceImpl.class
new file mode 100644
index 0000000..90f4229
Binary files /dev/null and b/Debate_backend/target/classes/com/learning/newdemo/service/impl/WxDebateServiceImpl.class differ
diff --git a/Debate_backend/target/classes/com/learning/newdemo/service/impl/WxReviewServiceImpl.class b/Debate_backend/target/classes/com/learning/newdemo/service/impl/WxReviewServiceImpl.class
index 7f8e534..cbb0627 100644
Binary files a/Debate_backend/target/classes/com/learning/newdemo/service/impl/WxReviewServiceImpl.class and b/Debate_backend/target/classes/com/learning/newdemo/service/impl/WxReviewServiceImpl.class differ
diff --git a/Debate_front/src/components/ArgumentCom.vue b/Debate_front/src/components/ArgumentCom.vue
index 647b480..a6a978a 100644
--- a/Debate_front/src/components/ArgumentCom.vue
+++ b/Debate_front/src/components/ArgumentCom.vue
@@ -56,7 +56,12 @@ export default {
data() {
return {
input: "",
- messages: [],
+ messages: [
+ {
+ role:"ai",
+ content:"哈喽~ 我是辩论助手,很高兴为你服务!请告诉我你想立论的立场和题目。"
+ }
+ ],
scrollToView: "",
position: "",
diff --git a/Debate_front/src/components/DebateCom.vue b/Debate_front/src/components/DebateCom.vue
new file mode 100644
index 0000000..141ca02
--- /dev/null
+++ b/Debate_front/src/components/DebateCom.vue
@@ -0,0 +1,317 @@
+
+
+
+ 辩论功能
+ 在这里可以和AI进行激烈的交流~
+
+
+
+
+
+
+
+
+
+
+ {{ msg.content }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Debate_front/src/components/ReviewCom.vue b/Debate_front/src/components/ReviewCom.vue
index a0727bf..9d8a65d 100644
--- a/Debate_front/src/components/ReviewCom.vue
+++ b/Debate_front/src/components/ReviewCom.vue
@@ -38,6 +38,7 @@
v-model="content"
placeholder="请输入辩论的过程"
auto-height
+ maxlength="20000"
/>
@@ -50,7 +51,13 @@ export default {
data() {
return {
input: "",
- messages: [],
+ messages: [
+ {
+ role: "ai",
+ content:
+ "辩论过程复盘功能,可以帮你回顾和总结辩论过程中的关键点、亮点以及可能的改进之处。",
+ },
+ ],
scrollToView: "",
content: "",
};
@@ -89,11 +96,12 @@ export default {
"Content-Type": "application/json",
},
data: {
- content: content
+ content: content,
},
success: (res) => {
console.log("res:", res);
let reviewJson = JSON.parse(res.data.data.review);
+ this.scrollToBottom();
if (res.statusCode === 200 && res.data.code === 200) {
resolve(
reviewJson.choices[0].message.content || "AI 没有返回有效内容"
diff --git a/Debate_front/src/pages/index/index.vue b/Debate_front/src/pages/index/index.vue
index 65ce93a..ded6ee2 100644
--- a/Debate_front/src/pages/index/index.vue
+++ b/Debate_front/src/pages/index/index.vue
@@ -29,7 +29,7 @@ import { ref } from 'vue';
import PageOfHome from '../../components/HomeCom.vue';
import PageOfArgument from '../../components/ArgumentCom.vue';
import PageOfReview from '../../components/ReviewCom.vue';
-// import PageOfDebate from '../../components/DebateCom.vue';
+import PageOfDebate from '../../components/DebateCom.vue'
// 当前组件名称(字符串)
const currentComponent = ref('PageOfHome');