你好世界#
本节介绍一个 “你好世界” Colang 示例。
流#
Colang 脚本是一个 .co
文件,由一个或多个流定义组成。流是描述用户和机器人之间期望交互的一系列语句。
Colang 脚本的入口点是 main
流。在下面的示例中,main
流等待用户说 “hi”,并指示机器人回复 “Hello World!”。
examples/v2_x/tutorial/hello_world_1/main.co#
1import core
2
3flow main
4 user said "hi"
5 bot say "Hello World!"
注意
你可以在这里找到本指南的完整示例。
为了实现这一点,main
流使用了两个预定义的流
user said
:当用户说了某些内容时,此流被触发。bot say
:此流指示机器人说出特定消息。
这两个流位于 core
模块中,该模块包含在 Colang 标准库中,默认情况下可用(类似于 Python 标准库)。开头的 import
语句导入 core
模块中的所有流。
注意
有关更多详细信息,请查看Colang 标准库 (CSL)。
测试#
要测试上述脚本,你可以使用 NeMo Guardrails CLI
$ nemoguardrails chat --config=examples/v2_x/tutorial/hello_world_1
> hi
Hello World!
> something else is ignored
>
注意
上面的示例没有使用 LLM。要从机器人获得响应,你必须发送完全相同的 “hi” 文本,否则不会返回任何响应。在下一节中将介绍如何扩展 LLM 支持。
恭喜你,你刚刚创建了你的第一个 Colang 脚本。
下一个示例将教你如何通过添加额外的流并启用 LLM 集成来创建对话护栏。