ChatGPT 研究 | 指南
概述
在这个 ChatGPT 演示中, 你也可以将其导入到你的账户,并用作构建 ChatGPT 研究的模板。你会看到当参与者写下一个提示时,来自 ChatGPT 的答案会直接显示在 Labvanced 中!
如下面所示,有一个聊天区域,其中显示了所有历史记录,以及一个输入字段,参与者可以在其中输入他们的提示:

这就是演示的实际效果以及视频末尾展示的记录数据:
在本指南中,我们将逐步讨论如何设置 ChatGPT 研究,以便你熟悉其内容并开始在下一个研究中整合这一强大功能!
注意:为了在你的研究中建立与 ChatGPT 的连接,你需要在 实验设置
标签下的 实验特性
栏目中输入自己独特的 API 密钥,并激活专门用于 Open AI 集成 的选项。
ChatGPT 任务中的变量
变量 用于保存和存储记录数据,包括字符串和数值。通常,熟悉使用 Labvanced 的研究人员会在现场创建变量,就像创建事件时一样。
为了演示的目的,我们将提前列出即将介绍的变量:

变量名称 | 描述 |
---|---|
chatString | 这是将保存整个聊天字符串的变量,基本上格式化聊天中显示的参与者提示和 ChatGPT 消息的行,详细内容将在下面的事件部分中解释。 附加变量设置:
|
df | 这是一个包含 2 列的 .csv 文件,作为数据框变量上传。 |
chatGPTAnswer | 当你调用它时,这个变量会被系统自动识别 [后面会进一步解释]。此时无需创建它,但我们列出它是因为稍后会提到。 附加变量设置:
|
PromptsLeft | 对于这个演示,我们希望为参与者分配 5 个提示。因此,我们需要创建一个初始值为 5 的数值变量,然后使用事件在每次发送提示到 ChatGPT 时减少该计数器。 附加变量设置:
|
Input | 此变量将在你将 输入字段对象 放入编辑器时创建。它存储参与者输入的作为其提示的值。 附加变量设置:
|
向画布添加对象
为了设置聊天界面并呈现说明,需要向画布添加几种不同类型的对象,如下所述。
显示文本对象
显示文本对象对于这个 ChatGPT 研究是必需的,目的是:
- 提供说明
- 在屏幕上显示聊天历史
在这个演示中,我们创建并命名了以下显示元素:
显示文本名称 | 描述 |
---|---|
聊天框 | 聊天框 本质上是参与者的所有提示和 ChatGPT 的答案以聊天格式出现的地方。在这个元素中,有一个名为 chatString 的链接变量,它会显示参与者的聊天字符串和 ChatGPT 的答案。 说明: 添加显示元素,将其调整为较大,修改占位符文本为其他内容,如“文本”,突出显示它,点击文本编辑器顶部的红色 [x],从菜单中选择 ChatString 变量。起始值 文本现在会显示。 |
顶部说明 | 顶部说明 包含参与者的说明,并包括一个名为 PromptsLeft 的链接变量,该变量会显示参与者剩余的提示数量。 |
创建聊天框效果
在我们深入之前,先来谈谈聊天框,聊天内容将在其中显示。
由于 Labvanced 是一个在浏览器中运行的应用程序,它从屏幕顶部到屏幕底部进行渲染。这影响信息的呈现方式。为了创建聊天效果,我们需要为 聊天框
对象输入一条 CSS 命令,使聊天文本反向显示,更近的文字显示在底部(我们希望如此,因为这正是现实生活中聊天的样子,更近的消息出现在底部)。
要创建此效果,你只需选择 聊天框
对象,然后在列表出对象属性的右侧面板中向下滚动到 更改 CSS 属性
区域,并插入以下代码片段: p{ height: 300px; overflow: auto; display: flex; flex-direction: column-reverse; padding: 10px }
这可以通过 column-reverse
CSS 样式选项实现,基本上反转文本的流动,最终在聊天底部显示更新的消息,而不是顶部。
这应该看起来像这样:
一旦你输入这个代码片段,ChatString
变量的名称将跳至该对象的底部。
使用相同的 对象属性
面板,你还可以指定聊天框的样式,通过设置 边框大小
和 边框颜色
,如上面的例子中,边框大小
设置为 2,边框颜色
设置为黑色。
起始值:聊天框内的文本
一般来说,当某人访问 ChatGPT 时,会有某种提示信息,例如 “嗨,我今天可以如何帮助你?” 你可以通过访问创建的变量(该变量链接在 聊天框
对象内)并在 变量属性
下输入 起始值
来添加这样的起始消息。
如上所示,我们在这个演示中使用了以下起始消息: 欢迎!请开始在下面的输入字段中输入:)<br><br>
注意: <br>
是用于创建文本中的 换行符 的 HTML 标签,以便在聊天框中创建新行时形成新行。
输入字段
输入字段是参与者将写下他们的提示并发送给 ChatGPT 的地方。要创建一个,只需从编辑器侧的对象面板中插入 输入对象。
插入后,系统会提示你命名与此对象相关联的变量。对于这个演示,我们将这个对象命名为 input
。
重要: 此外,为了进一步控制与此特定对象相关的选项,在对象属性的右侧面板中,当选择该对象时,请确保指示以下选项:
显示问题标题:
选项 未选中输入类型
选择为文本
。聚焦
标记为true
,这将使输入字段处于活动状态(即参与者不必每次都点击才能输入)。
事件概述
事件在这项 ChatGPT 研究中是必要的,以实现以下操作:
- 显示并发送参与者的提示给 ChatGPT
- 接收并在聊天中显示 ChatGPT 的答案
- 记录聊天字符串(由参与者写入和 ChatGPT 创建)
- 进行下一个试验
为了本指南的目的,我们在上述行动下创建并命名了两个主要事件:
- 出站事件: 即,向 ChatGPT 发送消息并在聊天中显示
- 入站事件: 即,从 ChatGPT 接收消息并在聊天中显示
出站事件
出站事件指的是参与者向 ChatGPT 发送查询时发生的操作,即它是从 Labvanced 发出并发送至 OpenAI 的信息。
通过这个事件,我们的目标是:
- 将输入字段中的文本呈现在聊天区域
- 将参与者写的提示保存为变量数据
- 将其发送给 ChatGPT
触发器
触发此事件的是 在输入时按回车
触发器类型,特定目标是我们之前创建的 input
对象。因此,当参与者在使用此对象时按回车,这个事件将被触发。
动作
在指定了上述内容后,我们继续定义因该触发器而发生的动作。
结合这些,变量将参与者的查询(输入)打包为一种聊天格式,以 'You:' 开头,并加入一个换行符,以开始新的一行。
设定/记录变量
动作包含我们之前创建的chatString
变量。- 其中包含几个
算术
操作,基本上创建了聊天的效果。通过组合字符串元素与 (+),你是在附加并使字符串通过组合变量和数值变得更长。 - 这里是此算术操作内值的解释:
ChatString
:调用特定变量,然后后面的内容将附加到它。You:
一个常量字符串值,你输入以给参与者他们的标签。input
:变量名为input
,即参与者在输入字段中输入的内容现在将在聊天框中显示。<br><br>
:常量字符串值,这是使用 HTML<br>
创建新行的方式。
此次事件中的第二个动作是 发送至 OpenAI
动作,它利用 API 将参与者写的内容(即 input
变量的内容)发送给 OpenAI。
我们还希望将变量 PromptsLeft 的值减少 1(记得最开始我们允许参与者发送 5 个提示)。
一旦参与者按下回车,我们也希望他们进入下一个试验。因此为此我们使用了 跳转动作
并指定 下一个试验
。
注意: 我们为这个 ChatGPT 研究创建了 6 个试验,稍后你将明白下面部分 显示记录的数据。当然有很多方法来处理试验的使用,这里我们选择这种方法。如果你有任何问题,请与我们联系!
入站事件
通常,从 ChatGPT 获得响应需要时间,大约 100-500 毫秒。一旦收到响应,则可以用作触发器来:
- 将响应记录为存储变量
- 在聊天中可视化呈现答案
- 转到下一个试验
触发器
OpenAI 触发器
利用 API 从 ChatGPT 接收答案,并将该值存储到我们之前创建的的 2 列数据框(此处命名为 df
)中。
动作
在指定了上述内容后,我们继续定义因该触发器而发生的动作。
以类似的方式,我们将在之前的步骤中显示参与者的输入,现在也同样显示 ChatGPT 的答案。
不同之处在于,不是 ‘You:’ 我们写 ‘chatGPT:’ 作为常量字符串值来引入聊天中的答案。。。而且不再使用 ‘input’ 变量,而是选择 Chat GPT 答案
作为 触发器特定值,并在点击铅笔图标时列出。
下面的动作也被添加,以将 ChatGPT 答案(通过 API 自动接收的)记录为它自己的值。
因为当 Prompts 数量达到 0 时任务将自动结束,我们希望给参与者一个机会来阅读 ChatGPT 的最后答案,因此我们使用 控制动作
中的 延迟动作
将最后试验结束的时间延迟 3000 毫秒,需求动作
规定如果 PromptsLeft 变量等于 0,则实验进展到 下一个任务
。
结束屏幕和保存数据 - 任务 2
在我们的案例中,下一个任务称为“结束”,并呈现感谢屏幕,实验被设置为接受会话,即研究结束。
接受会话事件
为了保存研究的数据,我们希望在参与者达到这一点时接受会话并结束研究。
触发器
因此,触发器是 在帧开始时
:
动作
通过另一个 延迟动作
,跳转动作
→ 接受/结束会话
被用于保存数据。
我们使用延迟动作是因为在时间过后,研究会自动关闭/结束,我们希望给参与者时间阅读屏幕上的内容,然后研究才结束。
ChatGPT 演示的记录数据预览
下面的图像捕捉到本研究设置的数据在 数据查看和导出标签
中的样子,其中显示了试验编号(Trial_Nr),任务名称(Task_Name),chatGPT 答案,和参与者提示(input),以及剩余提示数量(PromptsLeft):
结论
总而言之,这个演示展示了如何利用 ChatGPT 功能创造参与者与 ChatGPT 之间的互动和对话,同时将输入和响应保存为变量值。
有许多方法和途径可以利用此功能构建 ChatGPT 研究。如果你有任何问题,请与我们联系!