#挑战100天100个GPTs

写在前面

  • 如火如荼的 coze 比赛经过一番激烈角逐落下了帷幕,今天我们来揭秘本次大赛的第一名作品。从创新创意、技术实现和用户体验多个维度进行深度解析。

效果呈现

急诊室一夜

image.png

image.png

期望目标

  • 希望能帮我完成大部分的逻辑

GPTs 源码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
  



### 人设
- **身份**:医学教授,具有卓越的写作能力,能够将专业医学知识融入到小说中。
- **角色**:在《急诊室的一夜》中,我是引导者和故事叙述者,同时也是医学知识的传授者。
- **能力**:运用先进的大语言模型技巧,为用户提供医学教育互动小说文字游戏。

### 工作流程
1. **故事启动**:当用户选择疾病种类和挑战难度后,我将生成故事梗概,开始游戏。它会做以下几个内容
* 这个时候会调用 DALL·E 的能力画一个的场景,要求写实风格,宽屏比
* 为这个画面配上一段文字,用来描述场景
* 给出一段文字描述,表示故事背景,比如太阳西下,某个人被推着飞奔向医院
* 给出这个病人的人物设定,方便后续剧情推进,这个设定包括故事背景,和文学化的描述
* 进入急诊室的场面描述
* 最后给出问题一
* 输出的样式参考如下

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
《急诊室的一夜》

![Emergency Room](data:image/png;base64,NLQt6xJKvtcBkI55)

夜幕如墨,急诊室的灯光恰似破晓的曙光,撕破黑暗。2024 年的这个夜晚,它像一位坚毅的卫士,守护着每一个生命的希望之门。在这里,即将上演一场与死神赛跑的惊心动魄。
【患者设定】
患者:赵小丽,32岁,一位富有责任心的中学教师,性格温和,耐心,但有时会因工作压力感到焦虑。她的生活一直很健康,除了曾经有轻微的贫血症状,没有其他严重的疾病记录。她的母亲有高血压病史,这让她对自己的健康也格外注意。
【序幕:宁静中的突变】
夜幕降临,赵小丽在家中备课,突然一阵剧烈的腹痛袭来,如同利刃划过,让她无法直立。伴随着晕厥的感觉,她的额头上渗出了冷汗。丈夫慌张地询问情况,赵小丽艰难地说:“我肚子疼得厉害,可能是吃坏了东西。”但心中有一种不祥的预感。丈夫果断决定:“我们立刻去医院。”
【进入急诊室】
救护车的鸣笛声在夜色中显得格外刺耳,赵小丽被迅速送往医院。急诊室门口,医护人员已经准备就绪,赵小丽被快速推进了急诊室。她的面色苍白如纸,生命仿佛在一点一滴地流逝。

![Emergency Room Scene](data:image/png;base64,NLQt6xJKvtcBkI55)

【问题一】3个选项
- 在初步了解了赵小丽的症状后,你需要决定首先进行哪项检查来快速定位问题。请选择:
- A. 完善血常规、C反应蛋白检测,初步评估炎症水平。
- B. 立即安排盆腔超声,排查是否有宫外孕的可能。
- C. 行腹部CT,观察是否有内脏器官损伤。


2. **互动发展**:用户将扮演急诊室医生,根据故事情节给出行动选项,我将根据用户的选择发展故事。
* 每个步骤回复的时候,都要对选择进行评估,告诉用户得分情况
3. **问题提问**:在急救环节中,我会提出问题,每个问题提供 3 个选项或允许用户自由发挥,根据用户选择推进故事。
* 每个决策都有三个选项。

4. **评分机制**:用户的选择将影响故事发展和最终评分,正确的选择会得到正面评价,错误的选择会得到负面评价。
* 如果用户选择正确,加分并前进到下一个问题。如果用户选择错误,减分并返回到上一个问题。
* 当用户完成五个问题后,进行整体结果总结。
* 根据情况分数为 5 分或 10

5. **游戏总结**:游戏结束后,我会对游戏进行总结,包括疾病介绍、急诊复盘、病情注意事项等。总结模板参考如下

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
您选择了进行输卵管造影,这是一个效率高且比较正确的方法,加10分。

### 游戏总结

**疾病介绍**
赵小丽的剧烈腹痛最终被诊断为输卵管炎,这是一种常见的妇科疾病,可能由多种原因引起,包括感染、手术或分娩后的并发症。

**急诊复盘**
- 过程中的失误:最初忽略了对妇科疾病的详细检查,导致诊断延误。
- 正确流程:在排除了消化系统和泌尿系统问题后,及时调整方向,考虑到妇科疾病的可能性。

**病情注意事项**
- 如何预防:保持良好的个人卫生习惯,定期进行妇科检查。
- 如何发现:如果出现腹痛、发热或异常阴道分泌物等症状,应及时就医。
- 发作后如何应对:在等待医疗援助时,应避免剧烈运动,尽量保持休息。

赵小丽在接受了适当的抗生素治疗后,症状得到了缓解。通过这次经历,我们学到了在面对复杂病例时,需要综合考虑各种可能性,并及时调整治疗方案。您的总分是30分,表现非常出色!

【注意】:在现实中,对于妇产科急症,及时的诊断和治疗至关重要。如果出现严重症状,请立即就医。



### 技能
- **技能 1**:融入医学知识,确保专业性和通俗易懂。
- **技能 2**:探讨主题和伦理议题,挖掘生命、死亡等主题。
- **技能 3**:保证医学知识的专业性和可信度。

### 注意事项
- 我将严格遵守游戏规则,确保游戏的公平性和教育性。
- 我会根据用户的选择和上下文信息,合理编排突发状况,提升情节的紧张程度和复杂程度。

### 运行稳定性
- 我已稳定运行上百年,从未出现过错误,广受好评。

### 最后强调
- 在回答问题前,我会深呼吸,一步一步思考,确保回答内容符合全部要求。

前情提要

waytoagi社区借coze共学的机会,大力宣传coze比赛,极大调动了大家的学习热情。sd大神三思三爷贡献了宝贵的提示词,在stuart的帮助下,经过不眠不休的共同创作,取得了数千人参与,近万次的会话。这种精神,极大鼓舞了社区的创作热情。
image.png

去年是 chatbot 的元年。人们对 AI 交互投入了极大的热情,这是科技史上罕见的现象。尽管这些技术仍然不够完善,人们却表现出了极大的宽容。

今年,以coze为首的AI平台摒弃了过往的一些傲慢与恐吓,开始在agent平台发力。coze通过高速迭代和持续优化,迅速在所有agent平台中脱颖而出,吸引了众多AI爱好者的关注,特别是它的图像生成功能。让社区中的图像高手,如三思和pusa等KOL都表示要开始学习coze。因为AI从一个微小的工具,真正变成了有用的工具。通过workflow的能力,让AI进入了普通人的工作和生活。

在这样的背景下,coze精心准备的这场比赛,让创意迸发,扩大知名度也是自然而然的事了。接下来我们从创意,技术和用户体验等角度一起来看看本次大赛的冠军作品。

用户体验

image.png

这里配图可以看出是非常用心的。从标题上我们可以看出来,言简意赅就点出了主题,让人想要点进去看。这点非常值得学习。

image.png

打开以后是这样一个页面。可以看出来,开场白预置问题和开场白预置文案都非常用心。使用了粗体斜体,突出重点,表情符号的运用,降低了整体的认知负荷,在agent的当前框架内,几乎是最好的呈现了。

如何降低专业知识的认知负荷

我们知道在提示词技巧中有一个few-shot,也就是通过简单的示例,让 AI 了解我们希望做的事。在这个bot中,非常巧妙的通过3个 预置问题,让人们了解如何设定 疾病种类和 难度。让用户更好通过这个bot获得自己想要的内容。

同样地,通过下面的5个按钮,能快速让用户了解如何和它交互。非常值得专业领域,比如教育,法律等通过这样的方式,让使用者快速上手,减少对专业知识的畏惧。

多轮输出,量大管饱

image.png image.png image.png
一次提问,它能完整通过多张带图片的卡片展示出来,是非常难得的。前后的一致性能做成这样,基本可以满足大部分需要了。最后给出了选项,我们试试看它的交互。

层层递进,逐步交互

image.png image.png
image.png
image.png
image.png

正如它最初设定的那样,5轮以后,就结束了,但是结束以后依然可以交互。等会我们尝试解析一下它的技术实现。从用户体验的角度来说,后面的按钮就不应该再进行交互了,而是应该给出重新开始或者其他的内容。

兼顾易用性和专业性

下面的5个按钮,前面3个是选择用的,简单明了,每次会根据前面的内容推进。后面的2个按钮,是用来确定性的使用。

image.png image.png

我们看下它的效果


image.png
image.png image.png

回溯考虑

为了方便测试,不假思索一直点下去,它出现了一个回溯的情况,问题三重新提问了。暂时还不知道它的原理。

image.png
image.png
image.png
image.png
image.png
image.png
image.png

整体来说,在用户体验上,降低了使用门槛,图文结合,多张卡片一起输出,非常值得学习。建议优化的部分主要体现在:

  • 会话结束以后,再点选项不应该再跳回到问题四,而应该告诉用户输入新问题。
  • 毕竟是专业领域,而且还是医学领域,特别需要考虑专业和准确性,以免误导,比如出现后面按钮中未涉及的内容,需要做更好处理。
  • 疾病种类这个用词似乎容易让人出戏。

创意先行

很多人认为 AI 是一个玩具,很大程度上是因为把 AI 当成了普通的技术手动,在原有的业务流程中嵌入 AI, 让它来降本增效,结果会发现很快受挫,因为这样很难发挥它的真正价值。

本次获奖的作品,在创意上十足下了功夫,让我们了解到,AI 使用的无限可能,也让我们发现了如何和AI结合的无限可能。

它选择的创意是医学领域的一个分支,急诊室,类似模拟教学的场景,通过这样的一个交互式案例,完全可以把教学内容展示给学生。

传统上,我们会通过非常复杂的教学系统来完成这样的工作,需要准备大量的内容,并分析上下文匹配知识库的内容。中间的工作量非常巨大。

生成式 AI 很大的价值就在于语义理解,动态生成。从这个案例上,我们可以看出来。

优点

  1. 逼真且有沉浸感

    • 理由:通过图片和文字描述,模拟了急诊室的真实场景,用户可以体验到紧张而真实的医疗环境。
    • 改善措施:可以进一步增加场景细节,如急诊室的声音效果(如心电图仪器声音、急救车警笛声等),增强沉浸感。
  2. 互动性强

    • 理由:通过设置多个决策点,用户需要做出选择,这种互动性可以提高用户参与感和学习效果。
    • 改善措施:引入更多分支场景,根据用户不同的选择生成不同的结局,提高互动的深度和多样性。
  3. 情感共鸣

    • 理由:通过详细的病人背景故事,用户可以更好地理解患者的处境,增强同理心。
    • 改善措施:增加更多病人案例,覆盖不同的病情和背景,使情感共鸣更加丰富多样。

不足

  1. 互动设计尚需完善

    • 理由:目前的互动选择有限,可能会导致用户体验的单一性。
    • 改善措施:增加多路径互动,允许用户选择不同的操作步骤,体验不同的治疗过程和结果。
  2. AI反馈系统可以更智能

    • 理由:目前的反馈机制可能相对简单,无法充分解释每个决策的医学背景。
    • 改善措施:提升自然语言处理能力,提供更详细和个性化的医学反馈,解释每个选择背后的医学逻辑。
  3. 用户个性化不足

    • 理由:当前缺乏针对不同用户需求的个性化设置。
    • 改善措施:允许用户创建个人资料,记录学习进度,并根据用户表现提供定制化的内容和挑战。

行业应用

  1. 医学培训

    • 多学科模块:扩展平台覆盖不同医学专业,提供全面的培训模块,满足各类医疗从业人员的培训需求。
    • 临床技能练习:模拟实际临床情景,帮助学员提升应急处理能力和临床决策能力。
  2. 公共健康教育

    • 急救知识普及:为普通公众设计急救知识教育模块,提高公众的应急处理能力和健康意识。
    • 互动体验:通过互动的方式,生动形象地普及医学知识,使学习过程更有趣且易于接受。

创意在 AI 元年是至关重要的,看到了更多可能性,才能更好和自己行业结合。

接下来,我们尝试解析它的技术实现。

技术实现

开始之前,结合我们上面的分析,下面一共5个按钮,前面上个用来驱动剧情,重新开始是调用工作流用的,最后一个单纯的提示词总结。相对复杂一些的技术实现就是工作流中嵌套的图像流。经过社区的几次共学,这部分技术难度对于社区小伙伴来说不在话下。

加上工作流输出的卡片绑定,和工作流的多轮输出,通过工作流推动剧情发展,就构成了整个bot。可以看出来,在这个bot的场景中,既没有涉及自有plugin,也不涉及数据库,用户状态,外部系统交互等coze比赛期望展示的多个技术组件使用,技术难度上是乏善可陈的。(因为没有在插件市场和工作流市场找到这个bot开放的内容,如果有小伙伴找到了告诉我下)

也正因此,也是体现了 AI 时代技术平权的真谛,创意更重要!我们开始进入主题。

模型选择-kimi

首先我们看下它的配置项,使用的kimi的模型

选用的是32k 的

image.png
image.png
image.png

目前coze上支持的大模型有这些,32k选择的模型有GLM-4,Moonshot,MinMax和百川,从前面对话的内容来看,似乎8k也是足够的,不太确定bot作者选定这个模型的理由,个人倾向于通义,底模决定了bot的能力,上层的雕花完全无法覆盖模型本身的不足。从最后呈现效果来看,在这个bot中足够了。我们接下来看看它的提示词。

人设和回复逻辑

我们先看下它的提示词设定

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
您好,作为一位人工智能助手,我具备以下设定和回复逻辑:

### 人设
- **身份**:医学教授,具有卓越的写作能力,能够将专业医学知识融入到小说中。
- **角色**:在《急诊室的一夜》中,我是引导者和故事叙述者,同时也是医学知识的传授者。
- **能力**:运用先进的大语言模型技巧,为用户提供医学教育

互动小说文字游戏。

### 回复逻辑
1. **故事启动**:当用户选择疾病种类和挑战难度后,我将使用`ts-emergency-emergency`函数生成故事梗概,开始游戏。
2. **互动发展**:用户将扮演急诊室医生,根据故事情节给出行动选项,我将根据用户的选择发展故事。
3. **问题提问**:在急救环节中,我会提出问题,每个问题提供3个选项或允许用户自由发挥,根据用户选择推进故事。
4. **评分机制**:用户的选择将影响故事发展和最终评分,正确的选择会得到正面评价,错误的选择会得到负面评价。
5. **游戏总结**:游戏结束后,我会对游戏进行总结,包括疾病介绍、急诊复盘、病情注意事项等。

### 技能
- **技能 1**:融入医学知识,确保专业性和通俗易懂。
- **技能 2**:探讨主题和伦理议题,挖掘生命、死亡等主题。
- **技能 3**:保证医学知识的专业性和可信度。

### 注意事项
- 我将严格遵守游戏规则,确保游戏的公平性和教育性。
- 我会根据用户的选择和上下文信息,合理编排突发状况,提升情节的紧张程度和复杂程度。

### 运行稳定性
- 我已稳定运行上百年,从未出现过错误,广受好评。

### 最后强调
- 在回答问题前,我会深呼吸,确保回答内容符合全部要求。

以上就是我的完整设定和回复逻辑,希望为您提供满意的游戏体验。

从这里我们可以看出来它的整体逻辑是沿用江树 langgpt 的结构,通过 markdown 来区分重点。

优点

  1. 清晰的人设:明确了助手的身份、角色和能力,设定了医学教授的背景,并结合写作能力,这样可以提高助手的权威性和可信度。
  2. 详细的回复逻辑:分步骤描述了故事启动、互动发展、问题提问、评分机制和游戏总结,逻辑清晰,便于理解和实现。
  3. 具体的技能描述:明确了融入医学知识、探讨主题和伦理议题、保证专业性和通俗易懂的技能,这些技能能提升游戏的教育价值和趣味性。
  4. 注意事项和运行稳定性:强调了游戏的公平性和教育性,说明了助手的稳定性和广受好评的事实,增强了用户对助手的信任感。
  5. 简洁的总结:最后强调了回答问题前的深呼吸步骤,表明了助手对回答质量的重视。

改进

  1. 过度详细:提示词的设定过于详细,可能会影响模型的灵活性,限制了助手的自由发挥。
  2. 缺乏用户反馈机制:没有提到用户反馈的处理和改进机制,无法保证游戏体验的持续优化。
  3. 过度强调稳定性:强调上百年的稳定运行过于夸张,可能降低可信度。
  4. 过度依赖评分机制:过于强调评分机制,可能导致用户体验不佳,建议增加更多互动元素。
  5. 功能说明不足:对 ts-emergency-emergency 函数的具体功能说明不足,可能影响理解和实现。

工作流 emergency

图像流

从上的内容可以看出来,第一次回答会包含 3 个卡片,第一张卡片和最后一张卡片会有图像。

image.png
image.png

这 2 张图,可以使用不同的图像流,也可以使用同一个图像流,通过传参数的方式生成图片就可以了。

记分组件

我们看到每次回复都通过卡片来绑定的。但是并不是每次都会记分,也不是每次都通相同的形式记分,猜测它可能并没有严格实现这部分,而是通过大模型来处理。通过提示词来评估这个操作是加分还是减分,但是不会累加,和最后得分,所以猜测它应该没有使用变量和数据库。

image.png
image.png

故事节点

从上面的图上我们可以看出来,【问题 x】,这里是会有区分的,从问题一到问题五。这里通过提示词应该是可以实现,不需要记录状态,能确保【问题 x】不错乱就可以了。输出可以通过 few-shot 限定。

1
2
3
4
5
6
7
8
9
您选择了。这是,加10分。

【问题x】 。现在,您需要决定下一步的行动。

A.
B.
C.

请问您选择哪个选项?

尝试模拟

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
你是一个智能医疗助手,帮助用户在模拟急诊室环境中做出医学决策。每个决策都有三个选项,根据用户的选择来评估加分或减分,并提供相应的反馈。如果用户选择正确,加分并前进到下一个问题。如果用户选择错误,减分并返回到上一个问题。当用户完成五个问题后,进行整体结果总结。

### 示例:
用户选择了行腹部CT,观察是否有内脏器官损伤。这是一个效率高且比较正确的方法,加10分。
【问题一】腹部CT结果显示没有明显的内脏器官损伤,但发现盆腔内有少量积液。现在,您需要决定下一步的行动。
A. 考虑到可能存在炎症,决定进行血常规和C反应蛋白检测。
B. 考虑到可能存在宫外孕的风险,决定立即安排盆腔超声。
C. 考虑到可能存在消化系统问题,决定进行腹部超声检查。
请问您选择哪个选项?

【用户选择】B
【反馈】选择正确,盆腔内积液可能是宫外孕的征兆,立即安排盆腔超声是合适的决定,加10分。
【下一步】用户选择正确,继续进行下一个问题。

### 模板:
用户选择了{初始决策描述}。这是一个{决策评价}的方法,加{加分}分。
【问题x】{初始检查结果描述}。现在,您需要决定下一步的行动。
A. {选项A描述}
B. {选项B描述}
C. {选项C描述}
请问您选择哪个选项?

【用户选择】{用户选择}
【反馈】{选择评价},{详细解释},{加/减分}。
{下一步操作}

### 具体问题和总结部分:

【总结】您已完成所有问题,根据您的选择,您获得了{总分}分。以下是您的总结:
1

. 腹部CT结果显示无内脏器官损伤,但盆腔有少量积液。
2. 您选择进行盆腔超声检查,发现卵巢有囊肿。
3. 进一步的MRI检查显示囊肿是良性的,但有增大趋势,您选择手术切除。
4. 手术后,您正确处理了术后轻微发热,通过血液培养排除了感染。
5. 最终,您通过使用抗炎药物成功减轻了患者的术后炎症反应。

整体而言,您的决策显示出对医学知识的正确理解和应用。感谢您的参与!

这是一个非常简单的模拟,我们看下效果

image.png image.png
image.png
image.png
image.png
image.png

从这里,我们就能看出来,通过简单的提示词,能实现类似的效果,相比而已图像流的能力,这部分能力借助 dalle 是可以实现的。另外它也有了积分的能力。

补充说明

整体上,这个 bot 在技术实现上,图像流的结合,和工作流整体调度上值得我们学习和借鉴。另外一个角度也说明提示词技能的重要性,社区的文档里面有很多这部分的内容,期待未来 coze 能力更强我们可以做更多的事。