ai_member_xiaoyan/skills/interactive-component-json/prd/v8.md

71 KiB
Raw Blame History

现在继续添加其他核心互动。

基于多维表格理解原有的数据逻辑。 最终目标是 基于剧本文档中的输入配置,产出和原来多维表格流程一样的最终字段内容!

一. 看图组句 https://makee-interactive.feishu.cn/wiki/BkmtwUBwMiHd5Ak7VS6ccE9SnHd?table=tblpILmFc9ec17DY&view=vewcFcorcw

输入: 教研配置-任务信息 + 教研配置-全文信息

中间字段

学习流程配置

你是一名英语学习助手,负责为学习者生成互动式的巩固练习题。
我会提供以下信息:
1. **任务背景**(说明学习场景或对话语境)
2. **任务描述**(说明学习者需要完成的语言目标)
3. **需要巩固的学习内容**(句子、短语、语法点等)
请你根据这些信息生成**一组选择题巩固练习**。每一个学习内容对应一个选择题。
4.**写作材料**(原始题目的相关内容)
生成要求如下:
### 一、输出格式
请严格按照以下格式组织输出:

问题1

Brainy: (根据任务背景,生成自然的对话场景或提示,引导用户说出学习内容) 用户选项: (选项 A...
Brainy: ...
(选项 B...
Brainy: ...
(选项 C...
Brainy: ...

其中:
* 每个问题都有一个对话场景,引出该题考察的学习内容。
* 每个问题中:
  * **一个选项为正确答案(即该学习内容)**,在其后标注 `[正确]`。
  * 另外两个为合理但错误的干扰项。
* 每个选项下方由 **Brainy** 给出即时反馈说明该选项是否合适,并说明原因。
* 题目要贴合任务背景,逻辑上前后连贯。
### 二、内容生成规范
1. 所有问题应基于给定的任务背景与任务描述。
2. 每道题的情境应连贯,像一个正在进行的英语对话。
3. 错误选项要**自然合理**,但在语义上与任务目标不符。
4. Brainy 的反馈语气要友好、鼓励性、解释清楚错误原因。
5. 若任务背景中有多个阶段(例如问路、点餐、购物),题目内容应顺着任务情节发展。
6.生成内容所用的词汇尽量参考{写作材料}中的相关词汇,避免难度过高。
### 三、示例输出(参考格式)

问题1

Brainy: Ben 是你的老朋友,他提醒你应该记得回家的路。现在你需要问他从车站到家该怎么走。 用户选项: (选项 ASo how can I get home from the bus stop? [正确]
Brainy: 太棒了!你正确地询问了从车站到家的路线。 (选项 BWhere should I turn next?
Brainy: 这句话是询问下一个拐弯的地方,不是询问从车站到家的路线。请再试一次,问清楚从车站到家的路线。
(选项 CHow long does it take to walk home from here?
Brainy: 这句话是询问步行回家的时间,不是询问从车站到家的路线。请再试一次,问清楚从车站到家的路线。

问题2:

Brainy: Ben 告诉了你从车站到家的路线:先直行再左拐,遇到下一个十字路口时右拐。现在你需要问他接下来往哪里拐。 用户选项: (选项 ASo how can I get home from the bus stop? Brainy: 这句话是询问从车站到家的路线,不是询问接下来的拐弯处。请再试一次,问清楚接下来往哪里拐。
(选项 BWhere should I turn next? [正确]
Brainy: 太棒了!你正确地询问了接下来往哪里拐。
(选项 CHow long does it take to walk home from here?
Brainy: 这句话是询问步行回家的时间,不是询问接下来的拐弯处。请再试一次,问清楚接下来往哪里拐。


#输入
任务背景:
 中的【任务背景】

任务描述:
 中的【任务描述】

写作材料:
 中的【写作材料】

需要巩固的学习内容:
 

# 输出
现在请按照上述信息和要求,直接输出目标内容。
如果 {需要巩固的学习内容} 内容为空,则直接输出"无"。 

互动描述

# 任务目标
你是一个儿童英语学习内容生成助手。现在有一个写作组句配置,需要根据规则提取正确内容,并拼接成一篇完整作文。

# 输入信息
* 任务背景:
 
* 写作材料:
 

# 生成要求
1. **只输出最终拼接后的完整英文作文 + 对应中文翻译(放在括号中)**。
2. **作文由「写作材料」中的所有句子按顺序拼接而成**,提取规则如下:
   * 若「句子类型」为「全句预置」,则选取「句子主干」中的全部文本
   * 若「句子类型」为「全句录入」,则选取「答案」中的全部文本
   * 若「句子类型」为「挖空录入」,则将「句子主干」与「答案」拼接成完整句子
3. **所有句子按顺序组合成一段完整、通顺的英文短文**(中间用空格连接)。
4. **中文翻译需与英文完整对应,语义自然通顺**。
5. **禁止输出任何解释、过程或提示信息**。

# 输出示例
Dear Kate, I'd like to say thank you in this letter. Thank you for taking care of me. I have to go away now. Let's meet in the holidays.(亲爱的凯特,我想在这封信里向你表达感谢。感谢你对我的照顾。我现在必须离开了。咱们假期见。)

最终字段

taskInfo

# 字段内容要求
{
    "cId": {ID},
    "cType": "core_writing_imgMakeSentence", 
    "title": {任务信息}中的任务名称,
    "taskDesc": {任务信息}中的任务描述,
    "sceneDesc": {任务信息}中的任务背景,
    "img": "", //固定
    "plotSummary": {任务信息}中的剧情提要, //不一定有,如果没有则为""
    "stemDesc":, // 是[{ID}-00.png、{ID}-01.png...],编号按照顺序从上到下从{写作材料}中每个句子后的图片编号获取。可能为乱序即出现的先后顺序为00、02、01等。名字重复后只保留一个即可。
    "key": [ // {知识}中的知识,英文内容为知识点内容,中文为知识点解释,中间用空格分开
        {
            "keyList": [
                {
                    "type": "default", //固定
                    "content": 知识点内容(英文部分),
                    "desc": 知识点解释(中文部分,如果是单词前面会带有英文缩写的词性标识)
                },
                 ... ...
            ]
        },
        ...
    ],
    "cDesc": "xxx", // {互动描述}的全部内容
}

# 输出格式
- 整个输出必须在一行内完成,**不要换行**。
- **不要使用 markdown 代码块**(如 ```json包裹输出。

样例:
{"cId":"0110005","cType":"core_writing_imgMakeSentence","title":"提供关于 Medic 的情报","taskDesc":"快速回答唐先生关于 Medic 的特点,包括其强壮、力量大、速度快以及可能的弱点。","sceneDesc":"唐先生为了确保与 Medic 的对决万无一失,请求你提供尽可能多的关于 Medic 的情报。你与 Otis 等探讨了,总结出 Medic 的一些特点,准备与唐先生分享。","img":"","plotSummary":"剧情提要,内容可选","stemDesc":["0101001-00.png","0101001-01.png","0101001-02.png"],"key":[{"keyList":[{"type":"default","content":"Medic is too strong.","desc":"Medic 太强壮了。"},{"type":"default","content":"Medic is powerful.","desc":"Medic 力量很大。"},{"type":"default","content":"Medic is very fast.","desc":"Medic 速度很快。"}]},{"keyList":[{"type":"default","content":"I think you can ...","desc":"我认为你可以 ......"}]}],"cDesc":"Dear Kate, I'd like to say thank you in this letter. Thank you for taking care of me. I have to go away now. Let's meet in the holidays.(亲爱的凯特,我想在这封信里向你表达感谢。感谢你对我的照顾。我现在必须离开了。咱们假期见。)"}

# 输入
{ID}:
  

{题目类型}
 

{任务信息}
  
 
{知识}:
 

{写作材料}:
 

{互动描述}:
 

# 输出
现在基于输入字段和格式要求,生成***可以直接解析的单行json文本******注意前后不要输出任何额外符号!!!***
如果{任务配置}中没有有效文本,则输出"无"。

textInfo

# 字段内容要求
{
    "inputType": "sentence", 
    "passCondition": {通过规则}中的通过规则,    
    "textList": [{ //{写作材料}中的写作材料,一个句子占一个{}
        "mode": "", // 句子中的句子类型对应关系为预置句子preset全句录入universalInput挖空录入fillingInput
        "desc": "", // 当"mode"为preset或fillingInput时为句子中的句子主干当"mode"为universalInput时无该字段       
        "optionList": [ // 当"mode"为universalInput或fillingInput时才有该字段内容为句子内容中的选项不要改变其原有顺序
            {
                "option": "you"
            },
            {
                "option": "how"
            },
            {
                "option": "are"
            },
            {
                "option": "wow" 
            },
            {
                "option": "wawa" 
            }
        ],
        "answer": [1, 2, 0], // 根据{写作材料}中的答案生成正确的顺序索引从0开始。干扰项在{写作材料}中已经明确标出,例如:[干扰]sunshine没有“[干扰]:”的为正确选项,注意不能漏掉任何一个正确选项!
    }   
    ...
    ]
}

# 输出格式
- 整个输出必须在一行内完成,**不要换行**。
- **不要使用 markdown 代码块**(如 ```json包裹输出。

样例:
{"inputType":"sentence","passCondition":"用户写出1. 坠机在一个湖附近 2. 湖周边树木有红黄色的叶子 3. Bam 听到东北方向的噪音","textList":[{"mode":"preset","desc":"Dear Alex,"},{"mode":"universalInput","optionList":[{"option":"well"},{"option":"this email"},{"option":"you"},{"option":"finds"},{"option":"I hope"},{"option":"fine"}],"answer":[4,1,3,2,0]},{"mode":"fillingInput","desc":"We can ___ each other.","optionList":[{"option":"of"},{"option":"take"},{"option":"care"},{"option":"look"},{"option":"for"}],"answer":[1,2,0]}]}

# 输入
{通过规则}
  
 
{写作材料}
 

# 输出
现在基于输入字段和格式要求,生成***可以直接解析的单行json文本******注意前后不要输出任何额外符号!!!***
如果{任务配置}中没有有效文本,则输出"无"。

studyInfo

# 字段内容要求
{
    "learningPart": [ // 对应{taskInfo}中的stemDesc{学习流程配置}中有几个题目则learningPart中有几个元素
    {
        "leadIn": {  // 每个题目都有独立的"leadIn",如果遇到多个题目对应的"image"相同,则"leadIn"需要重复。
            "image": "0000004-00.png", // 内容按照{学习内容}中的末尾的图片尾号的对应关系进行关联。如果两个题目对应的图片相同,这部分也不可省略,要保证完整的"leadIn"和"learning"结构。
        },
        "learning": [{ // 对应{学习流程配置}中的问题,按照顺序依次提取
            "question": {
                "type": "npc",
                "npcName": "Brainy",
                "content": "what are you nong sha lie?"  //{学习流程配置}中问题下Brainy说的话           
            },
            "optionList": [{
                "option": "Medic is too strong.", // 问题下的选项
                "feedback": {
                    "type": "npc",
                    "npcName": "Brainy",
                    "content": "太棒了你正确地描述了Medic的力量非常强大。请大声朗读这句话"。//每个选项下Brainy的话
                }
            }, {
                "option": "Medic is very fast.", // 问题下的选项
                "feedback": {
                    "type": "npc",
                    "npcName": "Brainy",
                    "content": "这句话是描述Medic的速度而不是力量。请再试一次描述Medic的力量。" //每个选项下Brainy的话
                }
            }, {
                "option": "I think you can kick his back.", // 问题下的选项
                "feedback": {
                    "type": "npc",
                    "npcName": "Brainy",
                    "content": "这句话是描述Medic的弱点而不是力量。请再试一次描述Medic的力量。" //每个选项下Brainy的话
                }
            }],
            "answer": [0], // 带有“[正确]”标识的选项对应的索引从0开始
            "write": { // 选对之后要抄写的句子
                "desc": "Medic is too strong.", // 正确选项
                "trans":"" // 需要生成正确选项的中文翻译
            },
            "feedback": {
                "type": "npc",
                "npcName": "Brainy",
                "content": "你写的很好!"
            }
        }]
    },
    {
        "leadIn": { 
            ...  // 具体结构与上述内容相同
        },
        "learning": [{
            ...  // 具体结构与上述内容相同
        }]
    }
        ...
    ],
    "closing": {
        "type": "npc",
        "npcName": "Brainy",
        "content": "恭喜你,可以使用准确的单词 sandwich;短语 cook byhimself、take care of; 以及句型 He found sb doingsth描述了三张图中的各个细节!" //根据{学习内容}中的知识总结一下巩固的内容。
    }
}

# 输出格式
- 整个输出必须在一行内完成,**不要换行**。
- **不要使用 markdown 代码块**(如 ```json包裹输出。

样例:
{"learningPart":[{"leadIn":{"image":"0000004-00.png"},"learning":[{"question":{"type":"npc","npcName":"Brainy","content":"你们正在准备给Luisa教授写求救报告的开头。按照正式邮件的惯例你需要先写一句问候语表达关心。"},"optionList":[{"option":"Dear Alex,","feedback":{"type":"npc","npcName":"Brainy","content":"这是一个称呼,虽然正确但缺少后续的问候内容。我们需要完整的问候句子。"}},{"option":"I hope this email finds you well.","feedback":{"type":"npc","npcName":"Brainy","content":"完美!这是标准的英文邮件开头问候语,礼貌且正式,非常适合写给教授的求救报告。"}},{"option":"How are you today?","feedback":{"type":"npc","npcName":"Brainy","content":"这个问候比较口语化,通常用于朋友之间。写给教授的正式报告最好使用更正式的表达。"}}],"answer":[1],"write":{"desc":"I hope this email finds you well.","trans":"希望您收到这封邮件时一切安好。"},"feedback":{"type":"npc","npcName":"Brainy","content":"你写的很好!"}}]},{"leadIn":{"image":"0000004-01.png"},"learning":[{"question":{"type":"npc","npcName":"Brainy","content":"在报告中,你们需要说明团队成员会互相帮助,共同克服困难。请选择正确的短语来表达“互相照顾”。"},"optionList":[{"option":"look for each other","feedback":{"type":"npc","npcName":"Brainy","content":"这个短语的意思是“寻找彼此”,而不是“互相照顾”。意思不符合当前处境。"}},{"option":"take care of","feedback":{"type":"npc","npcName":"Brainy","content":"正确“take care of” 表示“照顾、照料”,完整表达\"We can take care of each other\"意思是“我们可以互相照顾”。"}},{"option":"care of take","feedback":{"type":"npc","npcName":"Brainy","content":"单词顺序错误。英语中固定短语\"take care of\"的顺序不能改变。"}}],"answer":[1],"write":{"desc":"take care of","trans":"照顾;照料"},"feedback":{"type":"npc","npcName":"Brainy","content":"你写的很好!"}}]}],"closing":{"type":"npc","npcName":"Brainy","content":"恭喜你,可以使用准确的短语 I hope this email finds you well 和 take care of完成了求救报告中的问候和团队互助部分的写作"}}

# 输入
{taskInfo}
 

{学习流程配置}
 
 
{学习内容}
 

# 输出
现在基于输入字段和格式要求,生成***可以直接解析的单行json文本******注意前后不要输出任何额外符号!!!***直接以"{"开头,输出一定保持单行!如果{学习流程配置}中没有有效文本,则输出"无"。

evalInfo

# 字段内容要求
{
    "title": {taskInfo}中的"title",
    "taskDesc": {taskInfo}中的"taskDesc",
    "sceneDesc": {taskInfo}中的"sceneDesc",
    "knowledge": {任务信息}中的知识,
    "passCondition": {textInfo}中的"passCondition",
    "textList": {textInfo}中的"textList"
}

# 输出格式
- 整个输出必须在一行内完成,**不要换行**。
- **不要使用 markdown 代码块**(如 ```json包裹输出。

样例:
{"title":"分析飞船坠毁信号来源","taskDesc":"根据收到的信号特征,用英语撰写一段报告,说明信号的方向、环境特征及你的判断。","sceneDesc":"Luisa 教授在分析卫星数据时发现一个可能与飞船坠毁相关的电磁信号。你、Otis 和 Skylar 被派去分析这个信号的来源并撰写报告。","knowledge":"- 信号分析表达 I think the signal came from... 我认为信号来自…… It was near... 它位于……附近。 The sound was... 声音是……。","passCondition":"1. 信号来自山的北侧 2. 声音很微弱 3. 每隔几秒重复一次","textList":[{"mode":"preset","desc":"Dear Professor Luisa,"},{"mode":"universalInput","answerText":"We found that the strange signal came from the north side of the mountain.","hint":"我们发现奇怪的信号来自山的北侧We found that the strange signal came from the north side of the mountain."},{"mode":"fillingInput","desc":"The sound was very ___ and repeated every few seconds.","answerText":"weak","hint":"声音非常微弱weak并且每隔几秒重复一次。"}]}

# 输入
{taskInfo}:
 

{任务信息}:
 

{textInfo}:
 

# 输出
现在基于输入字段和格式要求,生成***可以直接解析的单行json文本******注意前后不要输出任何额外符号!!!***
如果{任务信息}中没有有效文本,则输出"无"。

二. 看图撰写 https://makee-interactive.feishu.cn/wiki/KwPHwnaqdiWlvNkDm5fcFreDnQh?table=tblAMaM3g7500Lmm&view=vewcFcorcw

输入: 教研配置 - 任务信息 + 教研配置 - 全文信息

学习流程配置

你是一名英语学习助手,负责为学习者生成互动式的巩固练习题。
我会提供以下信息:
1. **任务背景**(说明学习场景或对话语境)
2. **任务描述**(说明学习者需要完成的语言目标)
3. **需要巩固的学习内容**(句子、短语、语法点等)
请你根据这些信息生成**一组选择题巩固练习**。每一个学习内容对应一个选择题。
4.**写作材料**(原始题目的相关内容)
生成要求如下:
### 一、输出格式
请严格按照以下格式组织输出:

问题1

Brainy: (根据任务背景,生成自然的对话场景或提示,引导用户说出学习内容) 用户选项: (选项 A...
Brainy: ...
(选项 B...
Brainy: ...
(选项 C...
Brainy: ...

其中:
* 每个问题都有一个对话场景,引出该题考察的学习内容。
* 每个问题中:
  * **一个选项为正确答案(即该学习内容)**,在其后标注 `[正确]`。
  * 另外两个为合理但错误的干扰项。
* 每个选项下方由 **Brainy** 给出即时反馈说明该选项是否合适,并说明原因。
* 题目要贴合任务背景,逻辑上前后连贯。
### 二、内容生成规范
1. 所有问题应基于给定的任务背景与任务描述。
2. 每道题的情境应连贯,像一个正在进行的英语对话。
3. 错误选项要**自然合理**,但在语义上与任务目标不符。
4. Brainy 的反馈语气要友好、鼓励性、解释清楚错误原因。
5. 若任务背景中有多个阶段(例如问路、点餐、购物),题目内容应顺着任务情节发展。
6.生成内容所用的词汇尽量参考{写作材料}中的相关词汇,避免难度过高。
### 三、示例输出(参考格式)

问题1

Brainy: Ben 是你的老朋友,他提醒你应该记得回家的路。现在你需要问他从车站到家该怎么走。 用户选项: (选项 ASo how can I get home from the bus stop? [正确]
Brainy: 太棒了!你正确地询问了从车站到家的路线。 (选项 BWhere should I turn next?
Brainy: 这句话是询问下一个拐弯的地方,不是询问从车站到家的路线。请再试一次,问清楚从车站到家的路线。
(选项 CHow long does it take to walk home from here?
Brainy: 这句话是询问步行回家的时间,不是询问从车站到家的路线。请再试一次,问清楚从车站到家的路线。

问题2:

Brainy: Ben 告诉了你从车站到家的路线:先直行再左拐,遇到下一个十字路口时右拐。现在你需要问他接下来往哪里拐。 用户选项: (选项 ASo how can I get home from the bus stop? Brainy: 这句话是询问从车站到家的路线,不是询问接下来的拐弯处。请再试一次,问清楚接下来往哪里拐。
(选项 BWhere should I turn next? [正确]
Brainy: 太棒了!你正确地询问了接下来往哪里拐。
(选项 CHow long does it take to walk home from here?
Brainy: 这句话是询问步行回家的时间,不是询问接下来的拐弯处。请再试一次,问清楚接下来往哪里拐。


#输入
任务背景:
 中的【任务背景】

任务描述:
 中的【任务描述】

写作材料:
 中的【写作材料】

需要巩固的学习内容:
 

# 输出
现在请按照上述信息和要求,直接输出目标内容。
如果 {需要巩固的学习内容} 内容为空,则直接输出"无"。 

任务描述

# 任务目标
你是一个儿童英语学习内容生成助手。现在有一个写作组句配置,需要根据规则提取正确内容,并拼接成一篇完整作文。

# 输入信息
* 任务背景:
 
* 写作材料:
 

# 生成要求
1. **只输出最终拼接后的完整英文作文 + 对应中文翻译(放在括号中)**。
2. **作文由「写作材料」中的所有句子按顺序拼接而成**,提取规则如下:
  - 若「句子类型」为「全句预置」,则选取「句子主干」中的全部文本
  - 若「句子类型」为「全句录入」,则选取「参考答案」中的全部文本
  - 若「句子类型」为「挖空录入」,则选取「句子主干」与「参考答案」拼合成的全部文本
3. **所有句子按顺序组合成一段完整、通顺的英文短文**(中间用空格连接)。
4. **中文翻译需与英文完整对应,语义自然通顺**。
5. **禁止输出任何解释、过程或提示信息**。

# 输出示例
Dear Kate, I'd like to say thank you in this letter. Thank you for taking care of me. I have to go away now. Let's meet in the holidays.(亲爱的凯特,我想在这封信里向你表达感谢。感谢你对我的照顾。我现在必须离开了。咱们假期见。)

taskInfo

# 字段内容要求
{
    "cId": {ID},
    "cType": "core_writing_imgWrite", 
    "title": {任务信息}中的任务名称,
    "taskDesc": {任务信息}中的任务描述,
    "sceneDesc": {任务信息}中的任务背景,
    "img": "", //固定
    "plotSummary": {任务信息}中的剧情提要, //不一定有,如果没有则为""
    "stemDesc":, // 是[{ID}_00.png、{ID}_01.png...],编号按照顺序从上到下从{写作材料}中每个句子后的图片编号获取。可能为乱序即出现的先后顺序为00、02、01等。名字重复后只保留一个即可。
    "key": [ // {知识}中的知识,英文内容为知识点内容,中文为知识点解释,中间用空格分开
        {
            "keyList": [
                {
                    "type": "default", //固定
                    "content": 知识点内容(英文部分),
                    "desc": 知识点解释(中文部分,如果是单词前面会带有英文缩写的词性标识)
                },
                 ... ...
            ]
        },
        ...
    ],
    "cDesc": "xxx", // {互动描述}的全部内容
}

# 输出格式
- 整个输出必须在一行内完成,**不要换行**。
- **不要使用 markdown 代码块**(如 ```json包裹输出。

样例:
{"cId":"9900007","cType":"core_writing_imgWrite","title":"报告雪山求救事件","taskDesc":"请根据图片内容,用英文写一段求救报告,说明你们现在的处境、遇到的困难和需要的帮助。","sceneDesc":"在前往北方山区的探索任务中,你与 Otis、Skylar 被突如其来的暴风雪困在一处山洞里。外界信号微弱,你们必须通过求救信号装置发出一份简短的求救报告,让救援队了解你们的状况。","img":"","plotSummary":"The snowstorm is getting worse. We are hiding in a cave and trying to keep warm.","stemDesc":["9900007_00.png","9900007_02.png","9900007_01.png"],"key":[{"keyList":[{"type":"default","content":"We are hiding in a cave to escape the terrible snowstorm.","desc":"我们正在一个山洞里避开可怕的暴风雪。"},{"type":"default","content":"We have dressed ourselves, but our clothes are not keeping us warm.","desc":"我们穿上了所有衣服,但仍然感到寒冷。"},{"type":"default","content":"My friend has a terrible headache, so please bring some medicine.","desc":"我的朋友头痛得厉害,请带些药来。"}]}],"cDesc":"You pressed the clean button on the drone. (你按下了无人机的清理按键。)"}

# 输入
{ID}:
  

{题目类型}
 

{任务信息}
  
 
{知识}:
 

{写作材料}:
 

{互动描述}:
 

# 输出
现在基于输入字段和格式要求,生成***可以直接解析的单行json文本******注意前后不要输出任何额外符号!!!***
如果{任务配置}中没有有效文本,则输出"无"。

textInfo

# 字段内容要求
{
    "inputType": "write",  
    "passCondition": {通过规则}中的通过规则,    
    "textList": [{ //{写作材料}中的写作材料,一个句子占一个{}
        "mode": "", // 句子中的句子类型对应关系为预置句子preset全句录入universalInput挖空录入fillingInput
        "desc": "", // 当"mode"为preset或fillingInput时为句子中的句子主干当"mode"为universalInput时无该字段       
        "answerText":"" // 句子内容中的答案
        "hint": "", // 当mode为universalInput时为answerText的中文翻译加原始英文格式为中文英文。当mode为fillingInput时为整句话的翻译但在需要填空的词或短语后面加上中文中文用括号括起来。
    }   
    ...
    ]
}

# 输出格式
- 整个输出必须在一行内完成,**不要换行**。
- **不要使用 markdown 代码块**(如 ```json包裹输出。

样例:
{"inputType":"write","passCondition":"能正确描述所在位置与天气。能说明身体或衣物方面的困难。能清楚表达求助请求。","textList":[{"mode":"preset","desc":"Dear Rescue Team,"},{"mode":"universalInput","answerText":"We are hiding in a cave to escape the terrible snowstorm.","hint":"我们躲在一个洞穴里以躲避可怕的暴风雪We are hiding in a cave to escape the terrible snowstorm."},{"mode":"fillingInput","desc":"We have ___ ourselves, but our clothes are not keeping us warm.","answerText":"dressed","hint":"我们已经穿好dressed衣服但我们的衣服不能让我们保持温暖。"},{"mode":"universalInput","answerText":"My friend has a terrible headache, so please bring some medicine.","hint":"我的朋友头痛得厉害所以请带些药来My friend has a terrible headache, so please bring some medicine."},{"mode":"preset","desc":"Thank you for your help."}]}

# 输入
{通过规则}
  
 
{写作材料}
 

# 输出
现在基于输入字段和格式要求,生成***可以直接解析的单行json文本******注意前后不要输出任何额外符号!!!***
如果{任务配置}中没有有效文本,则输出"无"。

studyInfo

# 字段内容要求
{
    "learningPart": [ // 对应{taskInfo}中的stemDesc{学习流程配置}中有几个题目则learningPart中有几个元素
    {
        "leadIn": {  // 每个题目都有独立的"leadIn",如果遇到多个题目对应的"image"相同,则"leadIn"需要重复。
            "image": "0000004_00.png", // 内容按照{学习内容}中的末尾的图片尾号的对应关系进行关联。如果两个题目对应的图片相同,这部分也不可省略,要保证完整的"leadIn"和"learning"结构。
        },
        "learning": [{ // 对应{学习流程配置}中的问题,按照顺序依次提取
            "question": {
                "type": "npc",
                "npcName": "Brainy",
                "content": "what are you nong sha lie?"  //{学习流程配置}中问题下Brainy说的话           
            },
            "optionList": [{
                "option": "Medic is too strong.", // 问题下的选项
                "feedback": {
                    "type": "npc",
                    "npcName": "Brainy",
                    "content": "太棒了你正确地描述了Medic的力量非常强大。请大声朗读这句话"。//每个选项下Brainy的话
                }
            }, {
                "option": "Medic is very fast.", // 问题下的选项
                "feedback": {
                    "type": "npc",
                    "npcName": "Brainy",
                    "content": "这句话是描述Medic的速度而不是力量。请再试一次描述Medic的力量。" //每个选项下Brainy的话
                }
            }, {
                "option": "I think you can kick his back.", // 问题下的选项
                "feedback": {
                    "type": "npc",
                    "npcName": "Brainy",
                    "content": "这句话是描述Medic的弱点而不是力量。请再试一次描述Medic的力量。" //每个选项下Brainy的话
                }
            }],
            "answer": [0], // 带有“[正确]”标识的选项对应的索引从0开始
            "write": { // 选对之后要抄写的句子
                "desc": "Medic is too strong.", // 正确选项
                "trans":"" // 需要生成正确选项的中文翻译
            },
            "feedback": {
                "type": "npc",
                "npcName": "Brainy",
                "content": "你写的很好!"
            }
        }]
    },
    {
        "leadIn": { 
            ...  // 具体结构与上述内容相同
        },
        "learning": [{
            ...  // 具体结构与上述内容相同
        }]
    }
        ...
    ],
    "closing": {
        "type": "npc",
        "npcName": "Brainy",
        "content": "恭喜你,可以使用准确的单词 sandwich;短语 cook byhimself、take care of; 以及句型 He found sb doingsth描述了三张图中的各个细节!" //根据{学习内容}中的知识总结一下巩固的内容,注意"leadIn"中有"image"字段时才是图片。
    }
}

# 输出格式
- 整个输出必须在一行内完成,**不要换行**。
- **不要使用 markdown 代码块**(如 ```json包裹输出。

样例:
{"learningPart":[{"leadIn":{"image":"9900007_00.png"},"learning":[{"question":{"type":"npc","npcName":"Brainy","content":"暴风雪越来越猛烈了!我们需要告诉救援队我们现在在哪里躲避。请选择一个最合适的句子来描述我们的藏身之处。"},"optionList":[{"option":"We are hiding in a cave to escape the terrible snowstorm.","feedback":{"type":"npc","npcName":"Brainy","content":"完美!这句话清楚地说明了我们正在山洞里躲避暴风雪,准确地描述了我们的处境。"}},{"option":"We are walking through the snowstorm to find help.","feedback":{"type":"npc","npcName":"Brainy","content":"这个选项不太合适,因为我们实际上是在山洞里躲避,而不是在暴风雪中行走。请再试一次!"}},{"option":"We are waiting inside the car for the storm to stop.","feedback":{"type":"npc","npcName":"Brainy","content":"这个选项不正确,因为背景中我们是在山洞里,而不是在车里。请选择描述我们实际藏身地的句子。"}}],"answer":[0],"write":{"desc":"We are hiding in a cave to escape the terrible snowstorm.","trans":"我们正在一个山洞里避开可怕的暴风雪。"},"feedback":{"type":"npc","npcName":"Brainy","content":"你写的很好!"}}]},{"leadIn":{"image":"9900007_01.png"},"learning":[{"question":{"type":"npc","npcName":"Brainy","content":"Otis 的情况不太好,他头疼得厉害。我们需要在求救报告中说明队友的健康问题和所需的药品。哪个选项能准确表达这个意思?"},"optionList":[{"option":"My friend is very hungry and needs some food.","feedback":{"type":"npc","npcName":"Brainy","content":"这个选项说的是饥饿,但我们需要的是表达头痛和需要药品的情况。请再试一次!"}},{"option":"My friend has a terrible headache, so please bring some medicine.","feedback":{"type":"npc","npcName":"Brainy","content":"太棒了!你正确地表达了队友头痛严重,并明确请求带来药品,这能帮助救援队了解我们的紧急需求。"}},{"option":"My friend is feeling cold and needs a blanket.","feedback":{"type":"npc","npcName":"Brainy","content":"这个选项提到了寒冷,但没有准确表达头痛和需要药品的具体问题。请选择更贴切的句子。"}}],"answer":[1],"write":{"desc":"My friend has a terrible headache, so please bring some medicine.","trans":"我的朋友头痛得厉害,请带些药来。"},"feedback":{"type":"npc","npcName":"Brainy","content":"你写的很好!"}}]},{"leadIn":{"image":"9900007_02.png"},"learning":[{"question":{"type":"npc","npcName":"Brainy","content":"我们的衣服似乎不足以抵御严寒。虽然我们已经穿好了,但仍然感觉很冷。请选择一个句子来描述这个困境。"},"optionList":[{"option":"We have taken off our clothes because we are too hot.","feedback":{"type":"npc","npcName":"Brainy","content":"这个选项完全不符合实际情况,我们是因为寒冷而困扰,而不是太热。请再试一次!"}},{"option":"We have dressed ourselves, but our clothes are not keeping us warm.","feedback":{"type":"npc","npcName":"Brainy","content":"正确!这句话清楚地说明了我们已经穿衣,但衣物无法保暖的困境,这能帮助救援队了解我们的状况。"}},{"option":"We have no clothes and are freezing in the storm.","feedback":{"type":"npc","npcName":"Brainy","content":"这个选项不准确,因为我们实际上穿着衣服,只是不够保暖。请选择更符合事实的句子。"}}],"answer":[1],"write":{"desc":"We have dressed ourselves, but our clothes are not keeping us warm.","trans":"我们穿上了所有衣服,但仍然感到寒冷。"},"feedback":{"type":"npc","npcName":"Brainy","content":"你写的很好!"}}]}],"closing":{"type":"npc","npcName":"Brainy","content":"恭喜你,可以使用准确的短语 hiding in a cave、escape the terrible snowstorm、have a terrible headache、bring some medicine、dressed ourselves、not keeping us warm描述了三张图中的各个细节!"}}

# 输入
{taskInfo}
 

{学习流程配置}
 
 
{学习内容}
 

# 输出
现在基于输入字段和格式要求,生成***可以直接解析的单行json文本******注意前后不要输出任何额外符号!!!***直接以"{"开头,***learning中optionList中的feedback中的npcName必须是Brainy并且结构严格按照npcName:"Brainy"执行。***,输出一定保持单行!如果{学习流程配置}中没有有效文本,则输出"无"。

evalInfo

# 字段内容要求
{
    "title": {taskInfo}中的"title",
    "taskDesc": {taskInfo}中的"taskDesc",
    "sceneDesc": {taskInfo}中的"sceneDesc",
    "knowledge": {任务信息}中的知识,
    "passCondition": {textInfo}中的"passCondition",
    "textList": {textInfo}中的"textList"
}

# 输出格式
- 整个输出必须在一行内完成,**不要换行**。
- **不要使用 markdown 代码块**(如 ```json包裹输出。

样例:
{"title":"分析飞船坠毁信号来源","taskDesc":"根据收到的信号特征,用英语撰写一段报告,说明信号的方向、环境特征及你的判断。","sceneDesc":"Luisa 教授在分析卫星数据时发现一个可能与飞船坠毁相关的电磁信号。你、Otis 和 Skylar 被派去分析这个信号的来源并撰写报告。","knowledge":"- 信号分析表达 I think the signal came from... 我认为信号来自…… It was near... 它位于……附近。 The sound was... 声音是……。","passCondition":"1. 信号来自山的北侧 2. 声音很微弱 3. 每隔几秒重复一次","textList":[{"mode":"preset","desc":"Dear Professor Luisa,"},{"mode":"universalInput","answerText":"We found that the strange signal came from the north side of the mountain.","hint":"我们发现奇怪的信号来自山的北侧We found that the strange signal came from the north side of the mountain."},{"mode":"fillingInput","desc":"The sound was very ___ and repeated every few seconds.","answerText":"weak","hint":"声音非常微弱weak并且每隔几秒重复一次。"}]}

# 输入
{taskInfo}:
 

{任务信息}:
 

{textInfo}:
 

# 输出
现在基于输入字段和格式要求,生成***可以直接解析的单行json文本******注意前后不要输出任何额外符号!!!***
如果{任务信息}中没有有效文本,则输出"无"。

三. 邮件组句 https://makee-interactive.feishu.cn/wiki/M5oTwUP6wiImC4kVJU8cRYnfnyf?table=tblhS2nk05UsObPA&view=vewcFcorcw

输入: 教研配置 - 任务信息 + 教研配置 - 全文信息

学习流程配置

你是一名英语学习助手,负责为学习者生成互动式的巩固练习题。
我会提供以下信息:
1. **任务背景**(说明学习场景或对话语境)
2. **任务描述**(说明学习者需要完成的语言目标)
3. **需要巩固的学习内容**(句子、短语、语法点等)
请你根据这些信息生成**一组选择题巩固练习**。每一个学习内容对应一个选择题。
4.**写作材料**(原始题目的相关内容)
生成要求如下:
### 一、输出格式
请严格按照以下格式组织输出:

问题1

Brainy: (根据任务背景,生成自然的对话场景或提示,引导用户说出学习内容) 用户选项: (选项 A...
Brainy: ...
(选项 B...
Brainy: ...
(选项 C...
Brainy: ...

其中:
* 每个问题都有一个对话场景,引出该题考察的学习内容。
* 每个问题中:
  * **一个选项为正确答案(即该学习内容)**,在其后标注 `[正确]`。
  * 另外两个为合理但错误的干扰项。
* 每个选项下方由 **Brainy** 给出即时反馈说明该选项是否合适,并说明原因。
* 题目要贴合任务背景,逻辑上前后连贯。
### 二、内容生成规范
1. 所有问题应基于给定的任务背景与任务描述。
2. 每道题的情境应连贯,像一个正在进行的英语对话。
3. 错误选项要**自然合理**,但在语义上与任务目标不符。
4. Brainy 的反馈语气要友好、鼓励性、解释清楚错误原因。
5. 若任务背景中有多个阶段(例如问路、点餐、购物),题目内容应顺着任务情节发展。
6.生成内容所用的词汇尽量参考{写作材料}中的相关词汇,避免难度过高。
7.写作材料中句子类型如果为“全局预置”则不需要出题。
### 三、示例输出(参考格式)

问题1

Brainy: Ben 是你的老朋友,他提醒你应该记得回家的路。现在你需要问他从车站到家该怎么走。 用户选项: (选项 ASo how can I get home from the bus stop? [正确]
Brainy: 太棒了!你正确地询问了从车站到家的路线。 (选项 BWhere should I turn next?
Brainy: 这句话是询问下一个拐弯的地方,不是询问从车站到家的路线。请再试一次,问清楚从车站到家的路线。
(选项 CHow long does it take to walk home from here?
Brainy: 这句话是询问步行回家的时间,不是询问从车站到家的路线。请再试一次,问清楚从车站到家的路线。

问题2:

Brainy: Ben 告诉了你从车站到家的路线:先直行再左拐,遇到下一个十字路口时右拐。现在你需要问他接下来往哪里拐。 用户选项: (选项 ASo how can I get home from the bus stop? Brainy: 这句话是询问从车站到家的路线,不是询问接下来的拐弯处。请再试一次,问清楚接下来往哪里拐。
(选项 BWhere should I turn next? [正确]
Brainy: 太棒了!你正确地询问了接下来往哪里拐。
(选项 CHow long does it take to walk home from here?
Brainy: 这句话是询问步行回家的时间,不是询问接下来的拐弯处。请再试一次,问清楚接下来往哪里拐。


#输入
任务背景:
 中的【任务背景】

任务描述:
 中的【任务描述】

写作材料:
 中的【写作材料】

需要巩固的学习内容:
 

# 输出
现在请按照上述信息和要求,直接输出目标内容。
如果 {需要巩固的学习内容} 内容为空,则直接输出"无"。 

互动描述

# 任务目标
你是一个儿童英语学习内容生成助手。现在有一个写作组句配置,需要根据规则提取正确内容,并拼接成一篇完整作文。

# 输入信息
* 任务背景:
 
* 写作材料:
 

# 生成要求
1. **只输出最终拼接后的完整英文作文 + 对应中文翻译(放在括号中)**。
2. **作文由「写作材料」中的所有句子按顺序拼接而成**,提取规则如下:
   * 若「句子类型」为「全句预置」,则选取「句子主干」中的全部文本
   * 若「句子类型」为「全句录入」,则选取「答案」中的全部文本
   * 若「句子类型」为「挖空录入」,则将「句子主干」与「答案」拼接成完整句子
3. **所有句子按顺序组合成一段完整、通顺的英文短文**(中间用空格连接)。
4. **中文翻译需与英文完整对应,语义自然通顺**。
5. **禁止输出任何解释、过程或提示信息**。

# 输出示例
Dear Kate, I'd like to say thank you in this letter. Thank you for taking care of me. I have to go away now. Let's meet in the holidays.(亲爱的凯特,我想在这封信里向你表达感谢。感谢你对我的照顾。我现在必须离开了。咱们假期见。)

taskInfo

# 字段内容要求
{
    "cId": {ID},
    "cType": "core_writing_questionMakeSentence", 
    "title": {任务信息}中的任务名称,
    "taskDesc": {任务信息}中的任务描述,
    "sceneDesc": {任务信息}中的任务背景,
    "img": "", //固定
    "plotSummary": {任务信息}中的剧情提要, //不一定有,如果没有则为""
    "stemDesc":, // 是{题目类型}中的题干描述,以列表形式存储,例如["1. what did you see ...","2. where was ...","3. what color ...."]
    "key": [ // {知识}中的知识,英文内容为知识点内容,中文为知识点解释,中间用空格分开
        {
            "keyList": [
                {
                    "type": "default", //固定
                    "content": 知识点内容(英文部分),
                    "desc": 知识点解释(中文部分,如果是单词前面会带有英文缩写的词性标识)
                },
                 ... ...
            ]
        },
        ...
    ],
    "cDesc": "xxx", // {互动描述}的全部内容
}

# 输出格式
- 整个输出必须在一行内完成,**不要换行**。
- **不要使用 markdown 代码块**(如 ```json包裹输出。

样例:
{"cId":"0221101","cType":"core_writing_questionMakeSentence","title":"给救援队发求救消息","taskDesc":"请根据提示问题,用英文完成这封求救邮件。","sceneDesc":"你和小伙伴们被困在暴风雪里,万幸的是,你们找到了一处雪洞暂避风雪。但小伙伴们状况危急,你必须尽快向救援队发送信息求救。","img":"","plotSummary":"","stemDesc":["Where are you hiding to escape the snowstorm?","What's wrong with your clothes?","What do you want them to bring?"],"key":[{"keyList":[{"type":"default","content":"terrible","desc":"adj. 糟糕的;可怕的"},{"type":"default","content":"dress","desc":"v. 穿衣;给……穿衣"}]}],"cDesc":"You pressed the clean button on the drone. (你按下了无人机的清理按键。)"}

# 输入
{ID}:
  

{题目类型}
 

{任务信息}
  
 
{知识}:
 

{写作材料}:
 

 {互动描述}:
 

# 输出
现在基于输入字段和格式要求,生成***可以直接解析的单行json文本******注意前后不要输出任何额外符号!!!***
如果{任务配置}中没有有效文本,则输出"无"。

textInfo

# 字段内容要求
{
    "inputType": "sentence", // 
    "passCondition": {通过规则}中的通过规则,    
    "textList": [{ //{写作材料}中的写作材料,一个句子占一个{}
        "mode": "", // 句子中的句子类型对应关系为预置句子preset全句录入universalInput挖空录入fillingInput
        "desc": "", // 当"mode"为preset或fillingInput时为句子中的句子主干当"mode"为universalInput时无该字段       
        "optionList": [ // 当"mode"为universalInput或fillingInput时才有该字段内容为句子内容中的选项不要改变其原有顺序
            {
                "option": "you"
            },
            {
                "option": "how"
            },
            {
                "option": "are"
            },
            {
                "option": "wow" 
            },
            {
                "option": "wawa" 
            }
        ],
        "answer": [1, 2, 0], // 根据{写作材料}中的答案生成正确的顺序索引从0开始。干扰项在{写作材料}中已经明确标出,例如:[干扰]sunshine没有“[干扰]:”的为正确选项,注意不能漏掉任何一个正确选项!
    }   
    ...
    ]
}

# 输出格式
- 整个输出必须在一行内完成,**不要换行**。
- **不要使用 markdown 代码块**(如 ```json包裹输出。

样例:
{"inputType":"sentence","passCondition":"用户写出1. 坠机在一个湖附近 2. 湖周边树木有红黄色的叶子 3. Bam 听到东北方向的噪音","textList":[{"mode":"preset","desc":"Dear Alex,"},{"mode":"universalInput","optionList":[{"option":"well"},{"option":"this email"},{"option":"you"},{"option":"finds"},{"option":"I hope"},{"option":"fine"}],"answer":[4,1,3,2,0]},{"mode":"fillingInput","desc":"We can ___ each other.","optionList":[{"option":"of"},{"option":"take"},{"option":"care"},{"option":"look"},{"option":"for"}],"answer":[1,2,0]}]}

# 输入
{通过规则}
  
 
{写作材料}
 

# 输出
现在基于输入字段和格式要求,生成***可以直接解析的单行json文本******注意前后不要输出任何额外符号!!!***
如果{任务配置}中没有有效文本,则输出"无"。

studyInfo

# 字段内容要求
{
    "learningPart": [ // 对应{taskInfo}中的stemDesc{学习流程配置}中有几个题目则learningPart中有几个元素
    {
        "leadIn": {  // 每个题目都有独立的"leadIn"
            "desc": "", // 内容按照stemDesc中的顺序依次取出
        },
        "learning": [{ // 对应{学习流程配置}中的问题,按照顺序依次提取
            "question": {
                "type": "npc",
                "npcName": "Brainy",
                "content": "what are you nong sha lie?"  //{学习流程配置}中问题下Brainy说的话           
            },
            "optionList": [{
                "option": "Medic is too strong.", // 问题下的选项
                "feedback": {
                    "type": "npc",
                    "npcName": "Brainy",
                    "content": "太棒了你正确地描述了Medic的力量非常强大。请大声朗读这句话"。//每个选项下Brainy的话
                }
            }, {
                "option": "Medic is very fast.", // 问题下的选项
                "feedback": {
                    "type": "npc",
                    "npcName": "Brainy",
                    "content": "这句话是描述Medic的速度而不是力量。请再试一次描述Medic的力量。" //每个选项下Brainy的话
                }
            }, {
                "option": "I think you can kick his back.", // 问题下的选项
                "feedback": {
                    "type": "npc",
                    "npcName": "Brainy",
                    "content": "这句话是描述Medic的弱点而不是力量。请再试一次描述Medic的力量。" //每个选项下Brainy的话
                }
            }],
            "answer": [0], // 带有“[正确]”标识的选项对应的索引从0开始
            "write": { // 选对之后要抄写的句子
                "desc": "Medic is too strong.", // 正确选项
                "trans":"" // 需要生成正确选项的中文翻译
            },
            "feedback": {
                "type": "npc",
                "npcName": "Brainy",
                "content": "你写的很好!"
            }
        }]
    },
    {
        "leadIn": { 
            ...  // 具体结构与上述内容相同
        },
        "learning": [{
            ...  // 具体结构与上述内容相同
        }]
    }
        ...
    ],
    "closing": {
        "type": "npc",
        "npcName": "Brainy",
        "content": "恭喜你,可以使用准确的单词 sandwich;短语 cook byhimself、take care of; 以及句型 He found sb doingsth描述了三张图中的各个细节!" //根据{学习内容}中的知识总结一下巩固的内容,注意"leadIn"中有"image"字段时才是图片。
    }
}

# 输出格式
- 整个输出必须在一行内完成,**不要换行**。
- **不要使用 markdown 代码块**(如 ```json包裹输出。

样例:
{"learningPart":[{"leadIn":{"desc":"1.请根据提词框内的内容大声地朗读这句话"},"learning":[{"question":{"type":"npc","npcName":"Brainy","content":"what are you nong sha lie?"},"optionList":[{"option":"Medic is too strong.","feedback":{"type":"npc","npcName":"Brainy","content":"太棒了你正确地描述了Medic的力量非常强大。请大声朗读这句话"}},{"option":"Medic is very fast.","feedback":{"type":"npc","npcName":"Brainy","content":"这句话是描述Medic的速度而不是力量。请再试一次描述Medic的力量。"}},{"option":"I think you can kick his back.","feedback":{"type":"npc","npcName":"Brainy","content":"这句话是描述Medic的弱点而不是力量。请再试一次描述Medic的力量。"}}],"answer":[0],"write":{"desc":"Medic is too strong.","trans":"中文翻译"},"feedback":{"type":"npc","npcName":"Mr. Tang","content":"I see. How about his speed?"}}]},{"leadIn":{"desc":"2. what kind of ..."},"learning":[{"question":{"type":"npc","npcName":"Brainy","content":"Otis正在询问信号来源的具体位置。我们需要在报告中明确指出信号来自山脉的哪个方位。请选择最准确描述信号来源的句子。"},"optionList":[{"option":"We found that the strange signal came from the north side of the mountain.","feedback":{"type":"npc","npcName":"Brainy","content":"完美!这个选项准确地描述了信号来自山脉北侧,符合科学报告要求的方位精确性。"}},{"option":"We found that the strange signal came from near the mountain.","feedback":{"type":"npc","npcName":"Brainy","content":"这个选项只说明信号来自山脉附近,没有具体说明方位(如北侧),缺乏报告需要的方位精确度。"}},{"option":"We found that the strange signal came from the top of the mountain.","feedback":{"type":"npc","npcName":"Brainy","content":"这个选项错误地将信号来源定位在山顶,与原始数据中\"山脉北侧\"的描述不符,可能误导后续调查方向。"}}],"answer":[0],"write":{"desc":"We found that the strange signal came from the north side of the mountain.","trans":"我们发现这个奇怪的信号来自山脉的北侧。"},"feedback":{"type":"npc","npcName":"Brainy","content":"你写的很好!"}}]}],"closing":{"type":"npc","npcName":"Brainy","content":"唐先生感谢你提供了关于Medic的力量、速度和弱点的信息这些信息将对他制定战斗策略非常有帮助。任务成功完成"}}

# 输入
{taskInfo}
 

{学习流程配置}
 
 
{学习内容}
 

# 输出
现在基于输入字段和格式要求,生成***可以直接解析的单行json文本******注意前后不要输出任何额外符号!!!***直接以"{"开头,输出一定保持单行!如果{学习流程配置}中没有有效文本,则输出"无"。

evalInfo

# 字段内容要求
{
    "title": {taskInfo}中的"title",
    "taskDesc": {taskInfo}中的"taskDesc",
    "sceneDesc": {taskInfo}中的"sceneDesc",
    "knowledge": {任务信息}中的知识,
    "passCondition": {textInfo}中的"passCondition",
    "textList": {textInfo}中的"textList"
}

# 输出格式
- 整个输出必须在一行内完成,**不要换行**。
- **不要使用 markdown 代码块**(如 ```json包裹输出。

样例:
{"title":"分析飞船坠毁信号来源","taskDesc":"根据收到的信号特征,用英语撰写一段报告,说明信号的方向、环境特征及你的判断。","sceneDesc":"Luisa 教授在分析卫星数据时发现一个可能与飞船坠毁相关的电磁信号。你、Otis 和 Skylar 被派去分析这个信号的来源并撰写报告。","knowledge":"- 信号分析表达 I think the signal came from... 我认为信号来自…… It was near... 它位于……附近。 The sound was... 声音是……。","passCondition":"1. 信号来自山的北侧 2. 声音很微弱 3. 每隔几秒重复一次","textList":[{"mode":"preset","desc":"Dear Professor Luisa,"},{"mode":"universalInput","answerText":"We found that the strange signal came from the north side of the mountain.","hint":"我们发现奇怪的信号来自山的北侧We found that the strange signal came from the north side of the mountain."},{"mode":"fillingInput","desc":"The sound was very ___ and repeated every few seconds.","answerText":"weak","hint":"声音非常微弱weak并且每隔几秒重复一次。"}]}

# 输入
{taskInfo}:
 

{任务信息}:
 

{textInfo}:
 

# 输出
现在基于输入字段和格式要求,生成***可以直接解析的单行json文本******注意前后不要输出任何额外符号!!!***
如果{任务信息}中没有有效文本,则输出"无"。

四. 邮件撰写 https://makee-interactive.feishu.cn/wiki/Brn0wldKYizsLZkBqK6clp1tnKd?table=tblFWw079OkhVlvk&view=vewcFcorcw

输入: 教研配置 - 任务信息 + 教研配置 - 全文信息

学习流程配置

你是一名英语学习助手,负责为学习者生成互动式的巩固练习题。
我会提供以下信息:
1. **任务背景**(说明学习场景或对话语境)
2. **任务描述**(说明学习者需要完成的语言目标)
3. **需要巩固的学习内容**(句子、短语、语法点等)
请你根据这些信息生成**一组选择题巩固练习**。每一个学习内容对应一个选择题。
4.**写作材料**(原始题目的相关内容)
生成要求如下:
### 一、输出格式
请严格按照以下格式组织输出:

问题1

Brainy: (根据任务背景,生成自然的对话场景或提示,引导用户说出学习内容) 用户选项: (选项 A...
Brainy: ...
(选项 B...
Brainy: ...
(选项 C...
Brainy: ...

其中:
* 每个问题都有一个对话场景,引出该题考察的学习内容。
* 每个问题中:
  * **一个选项为正确答案(即该学习内容)**,在其后标注 `[正确]`。
  * 另外两个为合理但错误的干扰项。
* 每个选项下方由 **Brainy** 给出即时反馈说明该选项是否合适,并说明原因。
* 题目要贴合任务背景,逻辑上前后连贯。
### 二、内容生成规范
1. 所有问题应基于给定的任务背景与任务描述。
2. 每道题的情境应连贯,像一个正在进行的英语对话。
3. 错误选项要**自然合理**,但在语义上与任务目标不符。
4. Brainy 的反馈语气要友好、鼓励性、解释清楚错误原因。
5. 若任务背景中有多个阶段(例如问路、点餐、购物),题目内容应顺着任务情节发展。
6.生成内容所用的词汇尽量参考{写作材料}中的相关词汇,避免难度过高。
### 三、示例输出(参考格式)

问题1

Brainy: Ben 是你的老朋友,他提醒你应该记得回家的路。现在你需要问他从车站到家该怎么走。 用户选项: (选项 ASo how can I get home from the bus stop? [正确]
Brainy: 太棒了!你正确地询问了从车站到家的路线。 (选项 BWhere should I turn next?
Brainy: 这句话是询问下一个拐弯的地方,不是询问从车站到家的路线。请再试一次,问清楚从车站到家的路线。
(选项 CHow long does it take to walk home from here?
Brainy: 这句话是询问步行回家的时间,不是询问从车站到家的路线。请再试一次,问清楚从车站到家的路线。

问题2:

Brainy: Ben 告诉了你从车站到家的路线:先直行再左拐,遇到下一个十字路口时右拐。现在你需要问他接下来往哪里拐。 用户选项: (选项 ASo how can I get home from the bus stop? Brainy: 这句话是询问从车站到家的路线,不是询问接下来的拐弯处。请再试一次,问清楚接下来往哪里拐。
(选项 BWhere should I turn next? [正确]
Brainy: 太棒了!你正确地询问了接下来往哪里拐。
(选项 CHow long does it take to walk home from here?
Brainy: 这句话是询问步行回家的时间,不是询问接下来的拐弯处。请再试一次,问清楚接下来往哪里拐。


#输入
任务背景:
 中的【任务背景】

任务描述:
 中的【任务描述】

写作材料:
 中的【写作材料】

需要巩固的学习内容:
 

# 输出
现在请按照上述信息和要求,直接输出目标内容。
如果 {需要巩固的学习内容} 内容为空,则直接输出"无"。 

互动描述

# 任务目标
你是一个儿童英语学习内容生成助手。现在有一个写作组句配置,需要根据规则提取正确内容,并拼接成一篇完整作文。

# 输入信息
* 任务背景:
 
* 写作材料:
 

# 生成要求
1. **只输出最终拼接后的完整英文作文 + 对应中文翻译(放在括号中)**。
2. **作文由「写作材料」中的所有句子按顺序拼接而成**,提取规则如下:
  - 若「句子类型」为「全句预置」,则选取「句子主干」中的全部文本
  - 若「句子类型」为「全句录入」,则选取「参考答案」中的全部文本
  - 若「句子类型」为「挖空录入」,则选取「句子主干」与「参考答案」拼合成的全部文本
3. **所有句子按顺序组合成一段完整、通顺的英文短文**(中间用空格连接)。
4. **中文翻译需与英文完整对应,语义自然通顺**。
5. **禁止输出任何解释、过程或提示信息**。

# 输出示例
Dear Kate, I'd like to say thank you in this letter. Thank you for taking care of me. I have to go away now. Let's meet in the holidays.(亲爱的凯特,我想在这封信里向你表达感谢。感谢你对我的照顾。我现在必须离开了。咱们假期见。)

taskInfo

# 字段内容要求
{
    "cId": {ID},
    "cType": "core_writing_questionWrite", 
    "title": {任务信息}中的任务名称,
    "taskDesc": {任务信息}中的任务描述,
    "sceneDesc": {任务信息}中的任务背景,
    "img": "", //固定
    "plotSummary": {任务信息}中的剧情提要, //不一定有,如果没有则为""
    "stemDesc":, // {题目类型}中的题干描述,以列表形式存储,例如["1. what did you see ...","2. where was ...","3. what color ...."]
    "key": [ // {知识}中的知识,英文内容为知识点内容,中文为知识点解释,中间用空格分开
        {
            "keyList": [
                {
                    "type": "default", //固定
                    "content": 知识点内容(英文部分),
                    "desc": 知识点解释(中文部分,如果是单词前面会带有英文缩写的词性标识)
                },
                 ... ...
            ]
        },
        ...
    ],
    "cDesc": "xxx", // {互动描述}的全部内容
}

# 输出格式
- 整个输出必须在一行内完成,**不要换行**。
- **不要使用 markdown 代码块**(如 ```json包裹输出。

样例:
{"cId":"0000003","cType":"core_writing_questionWrite","title":"写一封求救邮件","taskDesc":"根据提示问题,用英文写一封邮件,向救援队说明:你们现在身处何处;你们遇到的困难;以及需要他们带来的物品。","sceneDesc":"在一次前往北方山区的探险中,你与 Otis、Skylar 被暴风雪困在山洞中。信号微弱,你决定写一封邮件给救援队,说明目前的处境和需要的帮助。","img":"","plotSummary":"","stemDesc":["1. Where are you now?","2. What problem are you having?","3. What do you want others to bring?"],"key":[{"keyList":[{"type":"default","content":"We are hiding in a cave to escape the terrible snowstorm.","desc":"我们正在一个山洞里避开可怕的暴风雪。"},{"type":"default","content":"We have dressed ourselves, but our clothes are not keeping us warm.","desc":"我们穿上了所有衣服,但仍然感到寒冷。"},{"type":"default","content":"My friend has a terrible headache, my another friend also has a terrible headache, so please bring some medicine.","desc":"我的朋友头痛得厉害,请带些药来。"}]}],"cDesc":"You pressed the clean button on the drone. (你按下了无人机的清理按键。)"}

# 输入
{ID}:
  

{题目类型}
 

{任务信息}
  
 
{知识}:
 

{写作材料}:
 

 {互动描述}:
 

# 输出
现在基于输入字段和格式要求,生成***可以直接解析的单行json文本******注意前后不要输出任何额外符号!!!***
如果{任务配置}中没有有效文本,则输出"无"。

textInfo

# 字段内容要求
{
    "inputType": "write",
    "passCondition": {通过规则}中的通过规则,    
    "textList": [{ //{写作材料}中的写作材料,一个句子占一个{}
        "mode": "", // 句子中的句子类型对应关系为预置句子preset全句录入universalInput挖空录入fillingInput
        "desc": "", // 当"mode"为preset或fillingInput时为句子中的句子主干当"mode"为universalInput时无该字段       
        "answerText":"" // 句子内容中的答案
        "hint": "", // 当mode为universalInput时为answerText的中文翻译加原始英文格式为中文英文。当mode为fillingInput时为整句话的翻译但在需要填空的词或短语后面加上中文中文用括号括起来。
    }   
    ...
    ]
}

# 输出格式
- 整个输出必须在一行内完成,**不要换行**。
- **不要使用 markdown 代码块**(如 ```json包裹输出。

样例:
{"inputType":"write","passCondition":"1. 信号来自山的北侧 2. 声音很微弱 3. 每隔几秒重复一次","textList":[{"mode":"preset","desc":"Dear Professor Luisa,"},{"mode":"universalInput","answerText":"We found that the strange signal came from the north side of the mountain.","hint":"我们发现奇怪的信号来自山的北侧We found that the strange signal came from the north side of the mountain."},{"mode":"fillingInput","desc":"The sound was very ___ and repeated every few seconds.","answerText":"weak","hint":"声音非常微弱weak并且每隔几秒重复一次。"}]}

# 输入
{通过规则}
  
 
{写作材料}
 

# 输出
现在基于输入字段和格式要求,生成***可以直接解析的单行json文本******注意前后不要输出任何额外符号!!!***
如果{任务配置}中没有有效文本,则输出"无"。

studyInfo

# 字段内容要求
{
    "learningPart": [ // 对应{taskInfo}中的stemDesc{学习流程配置}中有几个题目则learningPart中有几个元素
    {
        "leadIn": {  // 每个题目都有独立的"leadIn",如果遇到多个题目对应的"image"相同,则"leadIn"需要重复。
            "desc": "", // 内容按照stemDesc中的顺序依次取出
        },
        "learning": [{ // 对应{学习流程配置}中的问题,按照顺序依次提取
            "question": {
                "type": "npc",
                "npcName": "Brainy",
                "content": "what are you nong sha lie?"  //{学习流程配置}中问题下Brainy说的话           
            },
            "optionList": [{
                "option": "Medic is too strong.", // 问题下的选项
                "feedback": {
                    "type": "npc",
                    "npcName": "Brainy",
                    "content": "太棒了你正确地描述了Medic的力量非常强大。请大声朗读这句话"。//每个选项下Brainy的话
                }
            }, {
                "option": "Medic is very fast.", // 问题下的选项
                "feedback": {
                    "type": "npc",
                    "npcName": "Brainy",
                    "content": "这句话是描述Medic的速度而不是力量。请再试一次描述Medic的力量。" //每个选项下Brainy的话
                }
            }, {
                "option": "I think you can kick his back.", // 问题下的选项
                "feedback": {
                    "type": "npc",
                    "npcName": "Brainy",
                    "content": "这句话是描述Medic的弱点而不是力量。请再试一次描述Medic的力量。" //每个选项下Brainy的话
                }
            }],
            "answer": [0], // 带有“[正确]”标识的选项对应的索引从0开始
            "write": { // 选对之后要抄写的句子
                "desc": "Medic is too strong.", // 正确选项
                "trans":"" // 需要生成正确选项的中文翻译
            },
            "feedback": {
                "type": "npc",
                "npcName": "Brainy",
                "content": "你写的很好!"
            }
        }]
    },
    {
        "leadIn": { 
            ...  // 具体结构与上述内容相同
        },
        "learning": [{
            ...  // 具体结构与上述内容相同
        }]
    }
        ...
    ],
    "closing": {
        "type": "npc",
        "npcName": "Brainy",
        "content": "恭喜你,可以使用准确的单词 sandwich;短语 cook byhimself、take care of; 以及句型 He found sb doingsth描述了三张图中的各个细节!" //根据{学习内容}中的知识总结一下巩固的内容,注意"leadIn"中有"image"字段时才是图片。
    }
}

# 输出格式
- 整个输出必须在一行内完成,**不要换行**。
- **不要使用 markdown 代码块**(如 ```json包裹输出。

样例:
{"learningPart":[{"leadIn":{"desc":"1.请根据提词框内的内容大声地朗读这句话"},"learning":[{"question":{"type":"npc","npcName":"Brainy","content":"what are you nong sha lie?"},"optionList":[{"option":"Medic is too strong.","feedback":{"type":"npc","npcName":"Brainy","content":"太棒了你正确地描述了Medic的力量非常强大。请大声朗读这句话"}},{"option":"Medic is very fast.","feedback":{"type":"npc","npcName":"Brainy","content":"这句话是描述Medic的速度而不是力量。请再试一次描述Medic的力量。"}},{"option":"I think you can kick his back.","feedback":{"type":"npc","npcName":"Brainy","content":"这句话是描述Medic的弱点而不是力量。请再试一次描述Medic的力量。"}}],"answer":[0],"write":{"desc":"Medic is too strong.","trans":"中文翻译"},"feedback":{"type":"npc","npcName":"Mr. Tang","content":"I see. How about his speed?"}}]},{"leadIn":{"desc":"2. what kind of ..."},"learning":[{"question":{"type":"npc","npcName":"Brainy","content":"Otis正在询问信号来源的具体位置。我们需要在报告中明确指出信号来自山脉的哪个方位。请选择最准确描述信号来源的句子。"},"optionList":[{"option":"We found that the strange signal came from the north side of the mountain.","feedback":{"type":"npc","npcName":"Brainy","content":"完美!这个选项准确地描述了信号来自山脉北侧,符合科学报告要求的方位精确性。"}},{"option":"We found that the strange signal came from near the mountain.","feedback":{"type":"npc","npcName":"Brainy","content":"这个选项只说明信号来自山脉附近,没有具体说明方位(如北侧),缺乏报告需要的方位精确度。"}},{"option":"We found that the strange signal came from the top of the mountain.","feedback":{"type":"npc","npcName":"Brainy","content":"这个选项错误地将信号来源定位在山顶,与原始数据中\"山脉北侧\"的描述不符,可能误导后续调查方向。"}}],"answer":[0],"write":{"desc":"We found that the strange signal came from the north side of the mountain.","trans":"我们发现这个奇怪的信号来自山脉的北侧。"},"feedback":{"type":"npc","npcName":"Brainy","content":"你写的很好!"}}]}],"closing":{"type":"npc","npcName":"Brainy","content":"唐先生感谢你提供了关于Medic的力量、速度和弱点的信息这些信息将对他制定战斗策略非常有帮助。任务成功完成"}}

# 输入
{taskInfo}
 

{学习流程配置}
 
 
{学习内容}
 

# 输出
现在基于输入字段和格式要求,生成***可以直接解析的单行json文本******注意前后不要输出任何额外符号!!!***直接以"{"开头,输出一定保持单行!如果{学习流程配置}中没有有效文本,则输出"无"。

evalInfo

# 字段内容要求
{
    "title": {taskInfo}中的"title",
    "taskDesc": {taskInfo}中的"taskDesc",
    "sceneDesc": {taskInfo}中的"sceneDesc",
    "knowledge": {任务信息}中的知识,
    "passCondition": {textInfo}中的"passCondition",
    "textList": {textInfo}中的"textList"
}

# 输出格式
- 整个输出必须在一行内完成,**不要换行**。
- **不要使用 markdown 代码块**(如 ```json包裹输出。

样例:
{"title":"分析飞船坠毁信号来源","taskDesc":"根据收到的信号特征,用英语撰写一段报告,说明信号的方向、环境特征及你的判断。","sceneDesc":"Luisa 教授在分析卫星数据时发现一个可能与飞船坠毁相关的电磁信号。你、Otis 和 Skylar 被派去分析这个信号的来源并撰写报告。","knowledge":"- 信号分析表达 I think the signal came from... 我认为信号来自…… It was near... 它位于……附近。 The sound was... 声音是……。","passCondition":"1. 信号来自山的北侧 2. 声音很微弱 3. 每隔几秒重复一次","textList":[{"mode":"preset","desc":"Dear Professor Luisa,"},{"mode":"universalInput","answerText":"We found that the strange signal came from the north side of the mountain.","hint":"我们发现奇怪的信号来自山的北侧We found that the strange signal came from the north side of the mountain."},{"mode":"fillingInput","desc":"The sound was very ___ and repeated every few seconds.","answerText":"weak","hint":"声音非常微弱weak并且每隔几秒重复一次。"}]}

# 输入
{taskInfo}:
 

{任务信息}:
 

{textInfo}:
 

# 输出
现在基于输入字段和格式要求,生成***可以直接解析的单行json文本******注意前后不要输出任何额外符号!!!***
如果{任务信息}中没有有效文本,则输出"无"。