Files
English/kouyu_english/assets/courses/B1/B1-U01.json
T
shenleiandClaude Opus 4.8 febfd30f49 feat: A1 短材料复现本单元理解词,并加入黑夜模式
课程内容
- 重写全部 21 个 A1 单元的听读材料,把本单元理解词织进听/读文本,
  单元内理解词复现率从约 20% 提升到约 77%(各单元 56–96%)。
- 修正 U01 房间号与机场大巴同为 thirty 的撞车(改为 17/30/40)。
- 校验器容差按级别读取(A1 为 8%),materials 覆盖率、字数、
  选项子串等校验全部通过;course_content_test 通过。

黑夜模式
- app_theme 拆分明/暗两套调色板,AppColors 随亮度切换;
  main 用 theme/darkTheme/themeMode + builder 镜像已解析亮度;
  主题偏好持久化到快照;进度页新增“外观主题”切换。

文档
- COURSE-PACK-JSON.md 更新 A1 词池覆盖(840/933)与材料复现约定。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-09-18 11:16:09 +09:00

1422 lines
40 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{
"schemaVersion": 1,
"id": "B1-U01",
"revision": 1,
"level": "B1",
"title": "讲一段完整的旅行经历",
"categories": [
"旅行"
],
"canDo": "按顺序叙述,加入背景和感受",
"status": "draft",
"meta": {
"draftedBy": "claude-opus-5",
"draftedAt": "2026-09-17",
"sources": [
"CEFR-J Vocabulary Profile 1.5",
"CEFR-J Grammar Profile 20180315"
],
"reviews": [],
"frozenAt": null
},
"names": [
"yunnan",
"lin",
"emma",
"borneo",
"adi",
"norway",
"morocco",
"kinabalu",
"aisha",
"kenji",
"tom"
],
"grammar": [
{
"id": "66",
"use": "active"
},
{
"id": "67",
"use": "active"
},
{
"id": "140",
"use": "active"
},
{
"id": "155",
"use": "active"
},
{
"id": "161",
"use": "active"
}
],
"coreItems": [
{
"id": "B1-U01-P01",
"type": "phrase",
"en": "It all started when we missed the last bus.",
"zh": "一切都是从我们错过末班车开始的。",
"sceneWord": false,
"match": [
[
"it all started"
]
],
"example": {
"en": "It all started when I lost my passport.",
"zh": "一切都是从我丢了护照开始的。"
},
"review": {
"prompt": "用“一切都是从……开始的”讲你们迷路的故事开头。"
}
},
{
"id": "B1-U01-P02",
"type": "phrase",
"en": "We were walking along the beach when it started to rain.",
"zh": "我们正沿着海滩走,突然下起了雨。",
"sceneWord": false,
"match": [
[
"were walking",
"was walking",
"were driving",
"was driving"
]
],
"example": {
"en": "I was driving to the airport when my phone rang.",
"zh": "我正开车去机场,电话响了。"
},
"review": {
"prompt": "说你们正在爬山的时候天黑了。"
}
},
{
"id": "B1-U01-P03",
"type": "phrase",
"en": "At first, we didn't know what to do.",
"zh": "一开始,我们不知道该怎么办。",
"sceneWord": false,
"match": [
[
"at first"
]
],
"example": {
"en": "At first, I didn't like the food.",
"zh": "一开始我不喜欢那里的食物。"
},
"review": {
"prompt": "说一开始你很紧张。"
}
},
{
"id": "B1-U01-P04",
"type": "phrase",
"en": "After a while, a car stopped next to us.",
"zh": "过了一会儿,一辆车停在我们旁边。",
"sceneWord": false,
"match": [
[
"after a while"
]
],
"example": {
"en": "After a while, the rain stopped.",
"zh": "过了一会儿,雨停了。"
},
"review": {
"prompt": "说过了一会儿,你们找到了一条小路。"
}
},
{
"id": "B1-U01-P05",
"type": "phrase",
"en": "By the time we got there, the restaurant had closed.",
"zh": "等我们到那儿时,餐厅已经关门了。",
"sceneWord": false,
"match": [
[
"by the time"
]
],
"example": {
"en": "By the time we got to the station, the train had left.",
"zh": "等我们到车站时,火车已经开走了。"
},
"review": {
"prompt": "说等你们到博物馆时,它已经关门了。"
}
},
{
"id": "B1-U01-P06",
"type": "phrase",
"en": "It turned out that he owned the hotel.",
"zh": "原来他是那家酒店的老板。",
"sceneWord": false,
"match": [
[
"turned out"
]
],
"example": {
"en": "It turned out that the museum was free.",
"zh": "原来博物馆是免费的。"
},
"review": {
"prompt": "说原来那条路是错的。"
}
},
{
"id": "B1-U01-P07",
"type": "phrase",
"en": "What happened next?",
"zh": "接下来发生了什么?",
"sceneWord": false,
"match": [
[
"happened next"
]
],
"example": {
"en": "That's crazy! What happened next?",
"zh": "太疯狂了!接下来呢?"
},
"review": {
"prompt": "听朋友讲故事时追问后来怎样了。"
}
},
{
"id": "B1-U01-P08",
"type": "phrase",
"en": "In the end, we had a great time.",
"zh": "最后,我们玩得很开心。",
"sceneWord": false,
"match": [
[
"in the end"
]
],
"example": {
"en": "In the end, we found a nice hotel.",
"zh": "最后我们找到了一家不错的酒店。"
},
"review": {
"prompt": "说最后你们还是赶上了飞机。"
}
},
{
"id": "B1-U01-P09",
"type": "phrase",
"en": "The best part was the sunrise.",
"zh": "最棒的部分是日出。",
"sceneWord": false,
"match": [
[
"best part"
]
],
"example": {
"en": "The best part was the food.",
"zh": "最棒的是吃的。"
},
"review": {
"prompt": "说这次旅行最棒的是那里的人。"
}
},
{
"id": "B1-U01-P10",
"type": "phrase",
"en": "I'll never forget that night.",
"zh": "我永远不会忘记那个夜晚。",
"sceneWord": false,
"match": [
[
"never forget"
]
],
"example": {
"en": "I'll never forget my first trip abroad.",
"zh": "我永远不会忘记第一次出国旅行。"
},
"review": {
"prompt": "说你永远不会忘记那次旅行。"
}
},
{
"id": "B1-U01-P11",
"type": "phrase",
"en": "To be honest, I was a bit scared.",
"zh": "说实话,我有点害怕。",
"sceneWord": false,
"match": [
[
"to be honest"
]
],
"example": {
"en": "To be honest, the hotel wasn't very clean.",
"zh": "说实话,酒店不太干净。"
},
"review": {
"prompt": "说实话,你不太喜欢那个城市。"
}
},
{
"id": "B1-U01-P12",
"type": "phrase",
"en": "I used to think camping was boring.",
"zh": "我以前觉得露营很无聊。",
"sceneWord": false,
"match": [
[
"used to"
]
],
"example": {
"en": "I used to travel with my parents.",
"zh": "我以前都是跟父母一起旅行。"
},
"review": {
"prompt": "说你以前不喜欢坐飞机。"
}
},
{
"id": "B1-U01-W01",
"type": "word",
"en": "exhausted",
"zh": "精疲力尽的",
"sceneWord": false,
"match": [
[
"exhausted"
]
],
"example": {
"en": "We were exhausted after the long walk.",
"zh": "走了那么远,我们累坏了。"
},
"review": {
"prompt": "说爬完山你累坏了。"
}
},
{
"id": "B1-U01-W02",
"type": "word",
"en": "memorable",
"zh": "难忘的",
"sceneWord": false,
"match": [
[
"memorable"
]
],
"example": {
"en": "It was a memorable trip.",
"zh": "那是一次难忘的旅行。"
},
"review": {
"prompt": "说那是一个难忘的夜晚。"
}
},
{
"id": "B1-U01-W03",
"type": "word",
"en": "unexpected",
"zh": "出乎意料的",
"sceneWord": false,
"match": [
[
"unexpected",
"unexpectedly"
]
],
"example": {
"en": "The storm was completely unexpected.",
"zh": "那场暴风雨完全出乎意料。"
},
"review": {
"prompt": "说那个结果很出乎意料。"
}
}
],
"receptiveWords": [
{
"id": "B1-U01-R01",
"en": "aboard",
"zh": "在船上;登上"
},
{
"id": "B1-U01-R02",
"en": "amazed",
"zh": "惊讶的"
},
{
"id": "B1-U01-R03",
"en": "boot",
"zh": "靴子"
},
{
"id": "B1-U01-R04",
"en": "breathless",
"zh": "喘不过气的"
},
{
"id": "B1-U01-R05",
"en": "camel",
"zh": "骆驼"
},
{
"id": "B1-U01-R06",
"en": "campsite",
"zh": "露营地"
},
{
"id": "B1-U01-R07",
"en": "cave",
"zh": "山洞"
},
{
"id": "B1-U01-R08",
"en": "central",
"zh": "中部的;中心的"
},
{
"id": "B1-U01-R09",
"en": "cliff",
"zh": "悬崖"
},
{
"id": "B1-U01-R10",
"en": "climate",
"zh": "气候"
},
{
"id": "B1-U01-R11",
"en": "climber",
"zh": "登山者"
},
{
"id": "B1-U01-R12",
"en": "darkness",
"zh": "黑暗"
},
{
"id": "B1-U01-R13",
"en": "delight",
"zh": "欣喜"
},
{
"id": "B1-U01-R14",
"en": "disaster",
"zh": "灾难;彻底失败"
},
{
"id": "B1-U01-R15",
"en": "dive",
"zh": "潜水"
},
{
"id": "B1-U01-R16",
"en": "diving",
"zh": "潜水运动"
},
{
"id": "B1-U01-R17",
"en": "dolphin",
"zh": "海豚"
},
{
"id": "B1-U01-R18",
"en": "dramatic",
"zh": "充满戏剧性的"
},
{
"id": "B1-U01-R19",
"en": "dusty",
"zh": "满是灰尘的"
},
{
"id": "B1-U01-R20",
"en": "edge",
"zh": "边缘"
},
{
"id": "B1-U01-R21",
"en": "endless",
"zh": "无边无际的"
},
{
"id": "B1-U01-R22",
"en": "extraordinary",
"zh": "非凡的"
},
{
"id": "B1-U01-R23",
"en": "extreme",
"zh": "极端的"
},
{
"id": "B1-U01-R24",
"en": "fade",
"zh": "逐渐消失"
},
{
"id": "B1-U01-R25",
"en": "faraway",
"zh": "遥远的"
},
{
"id": "B1-U01-R26",
"en": "ferry",
"zh": "渡轮"
},
{
"id": "B1-U01-R27",
"en": "fortunate",
"zh": "幸运的"
},
{
"id": "B1-U01-R28",
"en": "frost",
"zh": "霜"
},
{
"id": "B1-U01-R29",
"en": "glance",
"zh": "一瞥"
},
{
"id": "B1-U01-R30",
"en": "glimpse",
"zh": "瞥见"
},
{
"id": "B1-U01-R31",
"en": "gorgeous",
"zh": "非常美的"
},
{
"id": "B1-U01-R32",
"en": "horizon",
"zh": "地平线"
},
{
"id": "B1-U01-R33",
"en": "hostel",
"zh": "青年旅舍"
},
{
"id": "B1-U01-R34",
"en": "huge",
"zh": "巨大的"
},
{
"id": "B1-U01-R35",
"en": "humid",
"zh": "潮湿的"
},
{
"id": "B1-U01-R36",
"en": "hut",
"zh": "小屋"
},
{
"id": "B1-U01-R37",
"en": "incredible",
"zh": "难以置信的"
},
{
"id": "B1-U01-R38",
"en": "jungle",
"zh": "丛林"
},
{
"id": "B1-U01-R39",
"en": "lifelong",
"zh": "终生的"
},
{
"id": "B1-U01-R40",
"en": "loud",
"zh": "响亮的"
},
{
"id": "B1-U01-R41",
"en": "magnificent",
"zh": "壮丽的"
},
{
"id": "B1-U01-R42",
"en": "meanwhile",
"zh": "与此同时"
},
{
"id": "B1-U01-R43",
"en": "misty",
"zh": "有雾的"
},
{
"id": "B1-U01-R44",
"en": "mountaintop",
"zh": "山顶"
},
{
"id": "B1-U01-R45",
"en": "mud",
"zh": "泥"
},
{
"id": "B1-U01-R46",
"en": "narrow",
"zh": "窄的"
},
{
"id": "B1-U01-R47",
"en": "northern",
"zh": "北方的"
},
{
"id": "B1-U01-R48",
"en": "nowhere",
"zh": "无处;偏僻处"
},
{
"id": "B1-U01-R49",
"en": "ocean",
"zh": "海洋"
},
{
"id": "B1-U01-R50",
"en": "out-of-date",
"zh": "过时的"
},
{
"id": "B1-U01-R51",
"en": "overjoyed",
"zh": "欣喜若狂的"
},
{
"id": "B1-U01-R52",
"en": "pace",
"zh": "速度;步伐"
},
{
"id": "B1-U01-R53",
"en": "paradise",
"zh": "天堂"
},
{
"id": "B1-U01-R54",
"en": "port",
"zh": "港口"
},
{
"id": "B1-U01-R55",
"en": "rainfall",
"zh": "降雨量"
},
{
"id": "B1-U01-R56",
"en": "rainforest",
"zh": "热带雨林"
},
{
"id": "B1-U01-R57",
"en": "recall",
"zh": "回想起"
},
{
"id": "B1-U01-R58",
"en": "retell",
"zh": "复述"
},
{
"id": "B1-U01-R59",
"en": "sand",
"zh": "沙子"
},
{
"id": "B1-U01-R60",
"en": "scare",
"zh": "使害怕"
},
{
"id": "B1-U01-R61",
"en": "scared",
"zh": "害怕的"
},
{
"id": "B1-U01-R62",
"en": "shallow",
"zh": "浅的"
},
{
"id": "B1-U01-R63",
"en": "shiny",
"zh": "闪亮的"
},
{
"id": "B1-U01-R64",
"en": "shiver",
"zh": "发抖"
},
{
"id": "B1-U01-R65",
"en": "silent",
"zh": "寂静的"
},
{
"id": "B1-U01-R66",
"en": "slip",
"zh": "滑倒"
},
{
"id": "B1-U01-R67",
"en": "spectacular",
"zh": "壮观的"
},
{
"id": "B1-U01-R68",
"en": "stare",
"zh": "盯着看"
},
{
"id": "B1-U01-R69",
"en": "steep",
"zh": "陡峭的"
},
{
"id": "B1-U01-R70",
"en": "strangely",
"zh": "奇怪地"
},
{
"id": "B1-U01-R71",
"en": "stumble",
"zh": "绊倒"
},
{
"id": "B1-U01-R72",
"en": "summit",
"zh": "山顶;顶峰"
},
{
"id": "B1-U01-R73",
"en": "sunrise",
"zh": "日出"
},
{
"id": "B1-U01-R74",
"en": "surprisingly",
"zh": "出人意料地"
},
{
"id": "B1-U01-R75",
"en": "tale",
"zh": "故事"
},
{
"id": "B1-U01-R76",
"en": "terribly",
"zh": "非常;很糟地"
},
{
"id": "B1-U01-R77",
"en": "thirst",
"zh": "口渴"
},
{
"id": "B1-U01-R78",
"en": "tiny",
"zh": "很小的"
},
{
"id": "B1-U01-R79",
"en": "trail",
"zh": "小路"
},
{
"id": "B1-U01-R80",
"en": "tremendous",
"zh": "巨大的;极好的"
},
{
"id": "B1-U01-R81",
"en": "tropical",
"zh": "热带的"
},
{
"id": "B1-U01-R82",
"en": "turtle",
"zh": "海龟"
},
{
"id": "B1-U01-R83",
"en": "unlucky",
"zh": "不幸的"
},
{
"id": "B1-U01-R84",
"en": "vast",
"zh": "广阔的"
},
{
"id": "B1-U01-R85",
"en": "vivid",
"zh": "生动的"
},
{
"id": "B1-U01-R86",
"en": "volcano",
"zh": "火山"
},
{
"id": "B1-U01-R87",
"en": "voyage",
"zh": "航行"
},
{
"id": "B1-U01-R88",
"en": "warmth",
"zh": "温暖"
},
{
"id": "B1-U01-R89",
"en": "waterfall",
"zh": "瀑布"
},
{
"id": "B1-U01-R90",
"en": "whale",
"zh": "鲸"
},
{
"id": "B1-U01-R91",
"en": "whistle",
"zh": "吹口哨"
},
{
"id": "B1-U01-R92",
"en": "windsurfing",
"zh": "帆板运动"
},
{
"id": "B1-U01-R93",
"en": "wing",
"zh": "翅膀"
}
],
"segments": [
{
"id": "B1-U01-S1",
"title": "故事的开头",
"minutes": 13,
"itemIds": [
"B1-U01-P01",
"B1-U01-P02",
"B1-U01-P03",
"B1-U01-P12"
],
"listening": {
"text": "It all started when we missed the last bus home. We were walking along the road when it started to rain. At first, we didn't know what to do. I used to think travel was always fun, but that night I wasn't so sure.",
"question": "下雨时他们在做什么?",
"options": [
"沿着路走",
"等公交车",
"在饭店吃饭"
]
},
"speaking": [
{
"text": "It all started when we missed the last bus."
},
{
"text": "We were walking along the beach when it started to rain.",
"tip": "were walking 连读,when 前稍停"
},
{
"text": "At first, we didn't know what to do."
},
{
"text": "I used to think camping was boring.",
"tip": "used to 读作 /ˈjuːstə/"
}
],
"reading": {
"text": "My first trip alone\nIt all started when my friend got sick and couldn't come with me. At first, I was very nervous. I used to travel with my family, so I didn't know how to plan anything. I was waiting at the station when a woman asked me for help with her ticket. We started talking, and now we are good friends.",
"question": "作者一开始为什么很紧张?",
"options": [
"以前总跟家人旅行,不会安排",
"朋友病得很重",
"车票丢了"
]
},
"writing": {
"prompt": "写两句话:说一切是从错过末班车开始的,一开始你们不知道怎么办。",
"example": "It all started when we missed the last bus. At first, we didn't know what to do.",
"itemIds": [
"B1-U01-P01",
"B1-U01-P03"
]
},
"independent": {
"prompt": "用英语说你们沿着海滩走的时候下起了雨,再说你以前觉得露营很无聊。",
"itemIds": [
"B1-U01-P02",
"B1-U01-P12"
]
}
},
{
"id": "B1-U01-S2",
"title": "经过与转折",
"minutes": 13,
"itemIds": [
"B1-U01-P04",
"B1-U01-P05",
"B1-U01-P06",
"B1-U01-P07",
"B1-U01-W03"
],
"listening": {
"text": "After a while, a car stopped next to us. What happened next? The driver took us to a small village. By the time we got there, the restaurant had closed. But it turned out that the driver owned the hotel, and he cooked dinner for us. It was so unexpected!",
"question": "司机原来是什么人?",
"options": [
"酒店老板",
"餐厅厨师",
"公交车司机"
]
},
"speaking": [
{
"text": "After a while, a car stopped next to us."
},
{
"text": "By the time we got there, the restaurant had closed.",
"tip": "had closed 中 had 弱读"
},
{
"text": "It turned out that he owned the hotel."
},
{
"text": "What happened next?"
},
{
"text": "It was so unexpected.",
"tip": "重音在 pec"
}
],
"reading": {
"text": "Message from Lin\nGuess what happened yesterday! We went to see the old castle. By the time we got there, it had closed. We were so sad. After a while, a man came out. It turned out that he was a friend of our guide! He let us in for ten minutes. It was completely unexpected. What happened next? I'll tell you tomorrow!",
"question": "他们为什么最后能进城堡?",
"options": [
"出来的人是导游的朋友",
"城堡还没关门",
"他们买到了票"
]
},
"writing": {
"prompt": "写两句话:说过了一会儿有辆车停下了,等你们到那儿时餐厅已经关门了。",
"example": "After a while, a car stopped next to us. By the time we got there, the restaurant had closed.",
"itemIds": [
"B1-U01-P04",
"B1-U01-P05"
]
},
"independent": {
"prompt": "用英语说原来司机是酒店老板,这很出乎意料,然后问朋友接下来发生了什么。",
"itemIds": [
"B1-U01-P06",
"B1-U01-W03",
"B1-U01-P07"
]
}
},
{
"id": "B1-U01-S3",
"title": "结局与感受",
"minutes": 13,
"itemIds": [
"B1-U01-P08",
"B1-U01-P09",
"B1-U01-P10",
"B1-U01-P11",
"B1-U01-W01",
"B1-U01-W02"
],
"listening": {
"text": "In the end, we had a great time. We were exhausted after the long day, but the best part was the sunrise the next morning. To be honest, it was the most memorable trip of my life. I'll never forget that night.",
"question": "说话人觉得最棒的是什么?",
"options": [
"第二天早上的日出",
"司机做的晚饭",
"坐车的经历"
]
},
"speaking": [
{
"text": "In the end, we had a great time."
},
{
"text": "The best part was the sunrise."
},
{
"text": "I'll never forget that night."
},
{
"text": "To be honest, I was a bit scared."
},
{
"text": "We were exhausted.",
"tip": "exhausted 中 h 不发音"
},
{
"text": "It was a memorable trip."
}
],
"reading": {
"text": "Our stay ★★★★★\nOur car broke down, and we were exhausted when we arrived. To be honest, we didn't expect much. But the owner made us feel at home. The best part was breakfast on the roof. In the end, we stayed three nights instead of one. A memorable place. We'll never forget it!",
"question": "他们最后住了几晚?",
"options": [
"三晚",
"一晚",
"两晚"
]
},
"writing": {
"prompt": "写两句话:说最后你们玩得很开心,你永远不会忘记那个夜晚。",
"example": "In the end, we had a great time. I'll never forget that night.",
"itemIds": [
"B1-U01-P08",
"B1-U01-P10"
]
},
"independent": {
"prompt": "用英语说你累坏了,但说实话,最棒的是日出,这是一次难忘的旅行。",
"itemIds": [
"B1-U01-W01",
"B1-U01-P11",
"B1-U01-P09",
"B1-U01-W02"
]
}
}
],
"scenes": [
{
"id": "B1-U01-C1",
"kind": "main",
"title": "给朋友讲一次旅行经历",
"learnerRole": "刚旅行回来的人",
"aiRole": "好奇的朋友",
"setting": "你刚从云南旅行回来,朋友问你旅途怎么样。",
"turns": [
{
"ai": "Hey, you're back! How was your trip to Yunnan?",
"goal": "说很难忘,交代故事的开头",
"model": "It was memorable. It all started when we missed the last bus.",
"zh": "很难忘。一切都是从我们错过末班车开始的。",
"itemIds": [
"B1-U01-W02",
"B1-U01-P01"
]
},
{
"ai": "Oh no! What did you do?",
"goal": "说一开始不知道怎么办,老实说有点怕",
"model": "At first, we didn't know what to do. To be honest, I was a bit scared.",
"zh": "一开始我们不知道怎么办。说实话,我有点怕。",
"itemIds": [
"B1-U01-P03",
"B1-U01-P11"
]
},
{
"ai": "I can understand that. Where were you?",
"goal": "用过去进行时交代背景",
"model": "We were walking along a mountain road when it started to rain.",
"zh": "我们正沿着山路走,突然下起了雨。",
"itemIds": [
"B1-U01-P02"
]
},
{
"ai": "That sounds terrible.",
"goal": "说过了一会儿有车停下",
"model": "After a while, a car stopped next to us, and the driver offered to help.",
"zh": "过了一会儿,一辆车停在我们旁边,司机说可以帮忙。",
"itemIds": [
"B1-U01-P04"
]
},
{
"ai": "Lucky you! Did you find a place to stay?",
"goal": "说到的时候餐厅关了,但原来司机是酒店老板",
"model": "By the time we got to the village, the restaurant had closed. But it turned out that he owned the hotel!",
"zh": "等我们到村子时,餐厅已经关门了。但原来他就是酒店老板!",
"itemIds": [
"B1-U01-P05",
"B1-U01-P06"
]
},
{
"ai": "No way! So how was the rest of the trip?",
"goal": "说结局,并说永远不会忘记那个晚上",
"model": "He cooked for us, and in the end, we had a great time. I'll never forget that night.",
"zh": "他给我们做了饭,最后我们玩得很开心。我永远不会忘记那个晚上。",
"itemIds": [
"B1-U01-P08",
"B1-U01-P10"
]
},
{
"ai": "You must be tired now.",
"goal": "说累坏了,但最棒的是日出",
"model": "We were exhausted, but the best part was the sunrise the next morning.",
"zh": "我们累坏了,但最棒的是第二天早上的日出。",
"itemIds": [
"B1-U01-W01",
"B1-U01-P09"
]
}
]
},
{
"id": "B1-U01-C2",
"kind": "variant",
"title": "听同事讲周末经历",
"learnerRole": "听故事的同事",
"aiRole": "讲故事的同事",
"setting": "周一上班,同事说周末去山里出了点状况。",
"turns": [
{
"ai": "I had a crazy weekend in the mountains.",
"goal": "表示好奇,问发生了什么",
"model": "Really? What happened?",
"zh": "真的吗?发生什么了?",
"itemIds": []
},
{
"ai": "Our car stopped working in the middle of nowhere.",
"goal": "追问接下来发生了什么",
"model": "Oh no. What happened next?",
"zh": "哎呀。接下来怎样了?",
"itemIds": [
"B1-U01-P07"
]
},
{
"ai": "A man from a farm took us to his house, and we stayed there for two days!",
"goal": "说真是出乎意料",
"model": "That's so unexpected!",
"zh": "真是太出乎意料了!",
"itemIds": [
"B1-U01-W03"
]
},
{
"ai": "It was great. He showed us how to make cheese.",
"goal": "说听起来是一次难忘的旅行,并说你以前觉得山里没意思",
"model": "It sounds like a memorable trip. I used to think the mountains were boring.",
"zh": "听起来是一次难忘的旅行。我以前觉得山里很无聊。",
"itemIds": [
"B1-U01-W02",
"B1-U01-P12"
]
},
{
"ai": "Not at all! You should go.",
"goal": "同意并结束",
"model": "Maybe I will. Thanks for telling me.",
"zh": "也许我会去的。谢谢你讲给我听。",
"itemIds": []
}
]
},
{
"id": "B1-U01-C3",
"kind": "variant",
"title": "在青旅和背包客聊天",
"learnerRole": "背包客",
"aiRole": "另一个背包客",
"setting": "晚上在青年旅舍的公共区,一个外国背包客跟你聊起旅行故事。",
"turns": [
{
"ai": "So, how long have you been traveling?",
"goal": "说你以前跟团,这次一个人背包旅行",
"model": "Two weeks. I used to travel with tour groups, but this time I'm alone.",
"zh": "两周了。我以前都跟旅行团,这次是一个人。",
"itemIds": [
"B1-U01-P12"
]
},
{
"ai": "Cool. Any good stories?",
"goal": "讲故事的开头",
"model": "Yes! It all started when I lost my map on a mountain.",
"zh": "有!一切是从我在山上丢了地图开始的。",
"itemIds": [
"B1-U01-P01"
]
},
{
"ai": "Oh no. Were you scared?",
"goal": "说一开始怕,过了一会儿找到了小路",
"model": "At first, yes. But after a while, I found a small path.",
"zh": "一开始是怕的。但过了一会儿,我找到了一条小路。",
"itemIds": [
"B1-U01-P03",
"B1-U01-P04"
]
},
{
"ai": "And where did it go?",
"goal": "说原来小路通向一个美丽的湖,很意外",
"model": "It turned out that it went down to a beautiful lake. It was so unexpected.",
"zh": "原来小路通到一个美丽的湖边。太意外了。",
"itemIds": [
"B1-U01-P06",
"B1-U01-W03"
]
},
{
"ai": "Wow, lucky!",
"goal": "说最棒的是游泳,最后那是最好的一天",
"model": "The best part was the swim. In the end, it was the best day of the trip.",
"zh": "最棒的是在湖里游泳。最后,那成了整个旅行中最好的一天。",
"itemIds": [
"B1-U01-P09",
"B1-U01-P08"
]
}
]
}
],
"tasks": [
{
"id": "B1-U01-T1",
"sceneId": "B1-U01-C1",
"goal": "给朋友完整地讲一次旅行经历",
"itemIds": [
"B1-U01-W02",
"B1-U01-P01",
"B1-U01-P03",
"B1-U01-P11",
"B1-U01-P02",
"B1-U01-P04",
"B1-U01-P05",
"B1-U01-P06",
"B1-U01-P08",
"B1-U01-P10",
"B1-U01-W01",
"B1-U01-P09"
],
"slots": [
"开头",
"背景",
"转折",
"结局",
"感受"
]
},
{
"id": "B1-U01-T2",
"sceneId": "B1-U01-C2",
"goal": "听同事讲经历并追问、回应",
"itemIds": [
"B1-U01-P07",
"B1-U01-W03",
"B1-U01-W02",
"B1-U01-P12"
],
"slots": [
"追问",
"回应感受"
]
},
{
"id": "B1-U01-T3",
"sceneId": "B1-U01-C3",
"goal": "和背包客交换旅行故事",
"itemIds": [
"B1-U01-P12",
"B1-U01-P01",
"B1-U01-P03",
"B1-U01-P04",
"B1-U01-P06",
"B1-U01-W03",
"B1-U01-P09",
"B1-U01-P08"
],
"slots": [
"开头",
"经过",
"结局"
]
}
],
"materials": [
{
"id": "B1-U01-M1",
"mode": "listening",
"title": "播客:错过渡轮之后",
"text": "Welcome back to Travel Tales, the show where listeners retell their most memorable journeys. Today's story comes from Emma, who went backpacking in Central America last year. Emma, over to you.\nThanks. So, it all started when I missed my ferry. I had planned a short voyage along the coast to a small island. But by the time I got to the port, the boat had left. At first, I was really upset. Meanwhile, the weather was getting worse. It was humid, and the sky was dark. Then a local fisherman offered to take me in his tiny boat. To be honest, I wasn't sure. But he seemed kind, so I went aboard.\nAfter a while, the sea became calm, and the rain stopped. We were moving slowly past cliffs and caves when suddenly he pointed at the water. A whale! Then two dolphins came up next to the boat. I was amazed. I just stared at them. I had seen whales on TV, but this was incredible.\nBy the time we reached the island, it was dark. It turned out that there was no hostel there at all. The website was out-of-date. So the fisherman's family let me sleep in a small hut near the beach. I was exhausted, but I couldn't sleep. The waves were so loud, and the stars were so bright.\nThe next morning, I watched the sunrise from the top of a steep hill. The view was spectacular: the endless ocean, white sand, and a faraway volcano on the horizon. I stayed for five days instead of one. I went diving in shallow water and saw turtles. I even tried windsurfing, which was a disaster, but fun.\nIn the end, missing that ferry was the best thing that happened on the whole trip. I used to plan every day of my travels. Now I leave some space for the unexpected. And I'll never forget that family. We still send each other messages.\nThank you, Emma. What a story!",
"glosses": {
"listeners": "听众",
"became": "变得",
"pointed": "指"
},
"questions": [
{
"type": "gist",
"question": "艾玛讲的主要是什么?",
"options": [
"错过渡轮反而带来了一段难忘的经历",
"怎样在中美洲订渡轮",
"渔民一家的生活"
]
},
{
"type": "detail",
"question": "艾玛到了岛上发现了什么问题?",
"options": [
"岛上根本没有青年旅舍",
"渡轮取消了",
"渔民不肯收钱"
]
},
{
"type": "inference",
"question": "艾玛现在旅行时和以前有什么不同?",
"options": [
"不再把每天都安排满",
"只坐渡轮",
"总是一个人住小屋"
]
}
]
},
{
"id": "B1-U01-M2",
"mode": "reading",
"title": "博客:雨林三日",
"text": "Three days in the jungle\nI've been on many trips, but my three days in the Borneo rainforest were the most dramatic. Even now, I can recall every detail. It's a vivid, lasting memory.\nOur group of six met our guide, Adi, at a small campsite by the river. It was hot and humid, and the rainfall there is among the highest in the world. Surprisingly, I didn't mind the heat. I was too excited.\nOn the first morning, we followed a narrow trail into the forest. The air was misty, and it was strangely silent, apart from the birds. Adi could whistle like them, and sometimes they answered! After a while, he stopped and pointed up. We caught a glimpse of an orangutan high in the trees. It gave us a quick glance and then disappeared. We were fortunate. Adi said many visitors are unlucky and never see one.\nThe second day was harder. It rained all night, and the trail turned into deep mud. I kept slipping and stumbling. By lunchtime, my boots were full of water, and I was shivering even in that tropical weather. Then we ran out of drinking water, and thirst became a real problem. To be honest, I started to feel scared.\nLuckily, Adi knew the forest like his own home. He found a small waterfall with clean water. We sat at the edge of the pool and watched shiny blue butterflies with huge wings. It was like paradise. All my worries faded away.\nThat night, in the darkness, the forest was full of sounds. I lay awake for hours, just listening.\nOn the last day, we reached the top of a hill and saw the rainforest below us, green and gorgeous, all the way to the horizon.\nI used to think adventure meant danger. Now I think it means being open to whatever happens. This trip gave me a lifelong love of wild places. I'll never forget it.",
"glosses": {
"pointed": "指",
"orangutan": "红毛猩猩",
"became": "变成",
"butterflies": "蝴蝶"
},
"questions": [
{
"type": "gist",
"question": "这篇博客主要讲什么?",
"options": [
"作者在雨林里三天的经历和感受",
"怎样在雨林里找到干净的水",
"雨林里有哪些动物"
]
},
{
"type": "detail",
"question": "第二天遇到的最大问题是什么?",
"options": [
"喝的水用完了",
"向导迷路了",
"看不到猩猩"
]
},
{
"type": "inference",
"question": "为什么说他们看到猩猩很幸运?",
"options": [
"很多游客根本看不到",
"猩猩很危险",
"向导也是第一次看到"
]
}
]
},
{
"id": "B1-U01-M3",
"mode": "reading",
"title": "读者来信:最难忘的旅程",
"text": "Your most memorable journeys\nLast month, we asked readers to tell us about a journey they will never forget. We received hundreds of letters. Here are three of our favourites.\nTom, 64: Sailing north\nLast spring, I joined a two-week voyage along the northern coast of Norway. I used to hate the cold, but this trip changed my mind. The climate there is extreme, and some nights were freezing. In the mornings, there was frost on the boat. But the warmth of the people aboard was wonderful, and every evening we sat together and told stories. One night, the sky suddenly turned green: the northern lights! Everyone ran outside in their pyjamas. It was a magnificent sight, and I'll never forget the delight on everyone's faces.\nAisha, 29: Across the desert\nMy sister and I went on a camel trip in Morocco. At first, it was fun, but the camels moved at a very slow pace, and after a few hours, I was exhausted. It was dusty and hot, and the sand got everywhere. By the time we reached our camp, I just wanted to sleep. But then I looked up. The desert is vast and silent, and in the total darkness, the stars were extraordinary. My sister and I lay on the sand for hours, overjoyed, like two children.\nKenji, 41: To the top\nMount Kinabalu was my first real mountain. I'm not a natural climber, and the last part of the path to the summit is very steep. We started at 2 a.m. to see the sunrise from the mountaintop. I was breathless, and my legs hurt terribly. To be honest, I almost gave up twice. But I kept going at my own pace. When I finally reached the top, the sun came up over the clouds. It was a tremendous feeling. It turned out that the hardest part of the trip was also the best part.\nDo you have a memorable journey to share? Write to us!",
"glosses": {
"readers": "读者",
"favourites": "最喜欢的",
"pyjamas": "睡衣",
"sight": "景象",
"mount": "山"
},
"questions": [
{
"type": "gist",
"question": "这篇文章主要是什么?",
"options": [
"三位读者讲自己最难忘的旅程",
"三条旅行路线的介绍",
"怎样给杂志写信"
]
},
{
"type": "detail",
"question": "爱莎为什么一到营地就想睡觉?",
"options": [
"骑骆驼太久,累坏了",
"沙漠里太冷",
"星星太亮"
]
},
{
"type": "inference",
"question": "健二说“最难的部分也是最棒的部分”,指的是什么?",
"options": [
"艰难爬上山顶后看到日出",
"半夜两点起床",
"腿很疼"
]
}
]
}
],
"rubric": {
"dimensions": [
{
"name": "叙述顺序",
"bands": [
"只有零散句子",
"有开头和结尾,但经过不清楚",
"开头、背景、经过、转折、结局清楚连贯"
],
"pass": 2
},
{
"name": "细节与感受",
"bands": [
"没有细节或感受",
"有一些细节或感受",
"细节具体,感受真实,能引起听者兴趣"
],
"pass": 1
},
{
"name": "时态使用",
"bands": [
"时态混乱,影响理解",
"过去时基本正确,偶有错误",
"能正确使用过去时、过去进行时和过去完成时"
],
"pass": 1
}
]
},
"excluded": []
}