---
slug: "日语会话测试批改-x-4"
source_type: "clawhub"
source_url: "https://clawhub.ai/skills/japanese-conversation-scorer"
repo: ""
source_file: "description"
---
---
name: canvas-japanese-conversation-grading
description: "日语会话作业AI批改——支持语音转写、CEFR（欧洲语言共同参考框架）分级评价、纠错与成绩录入。"
use_when: 教师批改日语会话作业录音、会话测试打分、批量评分与反馈
triggers:
  - 日语会话作业批改
  - 日语会话测试打分
---

## 会话测试形式与录音要求

1.  **对话模式**：分为生生对话与师生对话两种模式。
    -   **生生对话**：教师统一指定对话内容，学生按照要求开展现场双人对话练习，并完整录制全过程音频提交。形式为ABAB交替对话，共5\~6个来回。
    -   **师生对话**：教师根据课文内容编写5道固定提问，并提前录制提问音频。音频每题之间预留固定作答时长。全班学生跟随音频同步口头回答。学生独立完整录音并提交音频文件。

2.  **训练目标**：师生对话模式侧重在课堂集体环境、背景嘈杂的条件下，锻炼学生即时反应、清晰发音与抗干扰会话能力。

3.  **录音要求**：单人完整录制5道题目的全部回答内容，人声清晰可识别即可。

## 工作流程

| 步骤 | 内容 |
|------|------|
| Step 1 | 下载学生提交音频 |
| Step 2 | Whisper medium 转写 |
| Step 3 | CEFR（A1/A2/B1）+ JLPT N5/N4/N3级别参考分级评分 + 温和纠错 |
| Step 4 | 录入Canvas成绩 |
| Step 5 | 生成班级汇总 + 上传 |

## Step 1：下载音频

```bash
python3 scripts/download_audio_submissions.py COURSE_ID ASSIGNMENT_ID
```

输出：`/tmp/canvas_audio_CID_AID/submission_map.json`

## Step 2：Whisper 转写

- 本技能音频转写使用 Whisper medium 模型（本地运行），模型已固定，无需手动切换。

```bash
# MP4视频 → 音频预处理
ffmpeg -y -i "input.mp4" -vn -acodec pcm_s16le -ar 16000 -ac 1 /tmp/audio.wav

# 固定medium模型日语转写
whisper /tmp/audio.wav --model medium --language ja --output_format txt
```

## Step 3：评分规则

### 能力层级说明（双轨分级）

正式口语能力框架遵循 **CEFR（欧洲语言共同参考框架）**；该框架共设A1、A2、B1、B2、C1、C2六个等级，本系统仅采用A1、A2、B1三个等级。

| 正式能力层级 | 操作标签 | 会话评价重点 |
|--------------|----------|--------------|
| A1 | 约对应 JLPT N5级别 | 能围绕熟悉题目作简单、完整回答 |
| A2 | 约对应 JLPT N4级别 | 能围绕日常话题进行较完整简单交流 |
| B1 | 约对应 JLPT N3级别 | 能表达经历、理由和简单观点，注意连贯性 |

> JLPT 没有口语考试；N5/N4/N3 仅作为词汇、语法和课程任务难度参考。

### 计分规则

- **基础分**：10.0 分
- **计分公式**：总分 = 10.0 - 累计扣分
- **约束**：6.0 ≤ 总分 ≤ 10.0
- **扣分上限**：4.0 分

### SKILL评分维度（CAF三维框架，每题满分10分）

| SKILL维度 | 权重 | 评估要点 |
|-----------|------|----------|
| C 复杂性（Complexity） | 80% | 内容贴合与表达复杂度 |
| A 准确性（Accuracy） | 10% | 语法、词汇、语音规范 |
| F 流利度（Fluency） | 10% | 话语输出节奏、连贯性、停顿与沉默控制 |

### 总分计算

总分 = 各题得分之和 ÷ 题目数（换算为满分10分，保留1位小数）

### 等级划分

| SKILL等级 | 分数区间 | 能力描述 |
|-----------|----------|----------|
| 优秀（Proficient） | 8.0～10.0 | 完全符合SKILL高阶会话能力要求，可流畅完成目标场景沟通 |
| 良好（Competent） | 6.0～7.9 | 符合SKILL中阶会话能力要求，核心沟通无明显障碍 |
| 合格（Basic） | 4.0～5.9 | 达到SKILL基础会话能力要求，可完成核心信息传递 |
| 需加强（Developing） | <4.0 | 未达到SKILL基础会话能力要求，需针对性强化核心能力 |

## 分级纠错规则（A1/A2/B1；操作标签参考N5/N4/N3）

### A1 纠错规则（N5参考）

- 只纠正最关键1个错误。
- 轻微发音、语调、语法瑕疵不纠错。

### A2 纠错规则（N4参考）

- 最多纠正2个重点问题。
- 不纠结细微错误。

### B1 纠错规则（N3参考）

- 最多纠正3个重点问题。
- 兼顾准确性与鼓励。

### 理论依据

- 依据认知负荷理论，控制单次纠错数量，避免反馈过量。
- 依据最近发展区理念，优先反馈学生当前最可能改进的问题。
- 依据形成性评价理念，反馈强调少量、明确、可执行。

### 通用纠错原则

- 优先纠正影响语义的关键错误。
- 同一错误只纠正一次。
- 先表扬优点，再提出改进建议。
- 转写存疑、不确定的地方不纠错。
- 评语温和简洁，保护表达信心。

## Step 4：录入Canvas成绩

```bash
python3 scripts/grade_submission.py COURSE_ID ASSIGNMENT_ID USER_ID GRADE --comment "评语内容"
python3 scripts/grade_submission.py COURSE_ID ASSIGNMENT_ID USER_ID GRADE --comment-file comment.txt
```

## Step 5：生成汇总 + 上传

```bash
# 生成班级汇总文件
python3 scripts/generate_class_summary.py COURSE_ID ASSIGNMENT_ID [--class-name NAME]

# 上传汇总表到Canvas
python3 scripts/send_summary_message.py [--xlsx PATH]
```

## 反馈格式模板（无emoji）

```
[学生姓名]（[学号]）

【逐题评分】
问题[序号]：[题目内容]
学生回答：[转写文本]
评语：[温和评语]
纠错：[分级纠错内容]
得分：[X]/10

【总体评分】
总分：[X.X]/10
等级：优秀/良好/合格/需加强

优点：
- [优点1]
- [优点2]

巩固建议：
1. [练习建议1]
2. [练习建议2]
```

## 注意事项

- 评分前确认作业为手动发布分数。
- 成绩录入使用 submission[posted_grade]。
- Whisper 转写仅作参考，必须执行对齐校验。
- 鼓励为主，微小误差不扣分。
- 同一错误只扣一次。
- 严格按 A1/A2/B1 能力层级控制纠错数量（操作标签参考 N5/N4/N3 级别）。
- 评语简洁友好，不使用特殊符号。
- 所有规则以 references/workflow.md 为准。
