介绍
@level.ai/chatito 是一个用于自动生成语言模型的 npm 包,能够大大简化语言模型的构建过程。该工具采用了 chatito DSL,比传统的语言模型构建方法更加简单易用。
本文将向大家介绍如何使用 @level.ai/chatito,帮助您快速入门。
安装
安装 @level.ai/chatito 可以使用 npm 或 yarn 包管理器,打开终端并输入以下命令即可:
npm install @level.ai/chatito
如果您使用的是 yarn 包管理器,请使用以下命令:
yarn add @level.ai/chatito
安装完毕之后,使用如下代码引入 chatito:
const chatito = require('@level.ai/chatito');
使用
基础用法
chatito 提供了一个简单的 DSL 语言,用于定义生成语言模型的语法,以下是一个简单的例子,展示如何定义一个包含十个名字的数据集:
-- -------------------- ---- ------- -------- - ---- - ---- - ----- - ----- - ------ - ------ - ------- - ------- - ------ - ----- ----------- - --- - -- ----- - ----- ------- - ---- -- - ------- -------------- -- ---- -- - --- -----------
上述 chatito 文件中定义了两个数据集 nouns
和 greeting
,然后使用其构建了一个语言模型,该语言模型将随机组合问候语和名字,输出类似 Hey my name is Peter
或者 Hello I'm Rachel
等问候语。
在 Node.js 中使用 chatito 的生成函数可以得到一组 JSON 格式的语言模型:
-- -------------------- ---- ------- ----- --------- - --------------- -------- - ---- - ---- - ----- - ----- - ------ - ------ - ------- - ------- - ------ - ----- ----------- - --- - -- ----- - ----- ------- -------------- -- ---- -- - --- ----------- --- ------------------------------------- ----- ----
执行上面的代码,将得到如下输出结果:
-- -------------------- ---- ------- - -------- - - ------- ---- -- ---- -- ------ ----------- - -------- -- -------- ------- -------- --- ------ -- -- - -- - ------- ---- -- ---- -- ------ ----------- - -------- -- -------- ------- -------- --- ------ -- -- - -- - ------- ---- -- ---- -- ------- ----------- - -------- -- -------- -------- -------- --- ------ -- -- - -- --- -- -------- -------- ------- -------- -------- --------- --------- ---------- ---------- --------- --------- ----------- ------- --- ------- -------- -
通过这个语言模型,我们可以方便地生成对应的问候语。
复杂用法
在构建实际的语言模型时,经常需要进行一些复杂的操作,例如使用引用和循环等。
引用
我们可以在 chatito 文件中定义一个引用类型的 entity,然后在其他地方进行引用。以下是一个例子:
-- -------------------- ---- ------- -------- - ---- - ---- - ----- - ----- - ------ - ------ - ------- - ------- - ------ - ----- ----------- - --- - -- ----- - ----- ----- - --- - ------- - --- --- ------- -------------- -- ---- -- - --- ----------- --------- - ---------
在上述 chatito 文件中,我们定义了两个数据集 nouns
和 greeting
,另外定义了两个模板 bye
和 hello
,hello 模板中引用了 @person,@person 则引用了数据集 nouns
。
在 Node.js 中,我们可以按照以下方法得到语言模型:
-- -------------------- ---- ------- ----- --------- - --------------- -------- - ---- - ---- - ----- - ----- - ------ - ------ - ------- - ------- - ------ - ----- ----------- - --- - -- ----- - ----- ----- - --- - ------- - --- --- ------- -------------- -- ---- -- - --- ----------- --------- - --------- --- ------------------------------------- ----- ----
得到的语言模型与基础用法相同。
循环
我们可以使用 * 符号来标识循环参与模板创建。 以下是一个例子:
-- -------------------- ---- ------- --------- - ----- - ------ - ------ - ----- - ----- ------ ----- -- ----- -------------
在上述 chatito 文件中,我们定义了一个数据集 fruits
, 然后创建了一个模板,其中 fruits 将被循环的嵌入,生成一个水果列表。
在 Node.js 中,我们可以按照以下方法得到语言模型:
-- -------------------- ---- ------- ----- --------- - --------------- --------- - ----- - ------ - ------ - ----- - ----- ------ ----- -- ----- ------------- --- ------------------------------------- ----- ----
得到的语言模型如下:
{ "fruit list": [ { "text": "We have,\n - apple\n - banana\n - orange\n - grape\n - lemon\n", "entities": {} } ], "fruits": ["apple", "banana", "orange", "grape", "lemon"] }
实践
使用 chatito 可以大大简化语言模型的构建过程,可以用于构建聊天机器人、语音回答机器人等,并提高开发效率。
以下是一个简单的 chatito 文件,定义了一个问候机器人,用于向用户问好:
-- -------------------- ---- ------- ----------- - --- - -- - ----- ------- - ------- - ----- - --------- - --- ------- ------------- --- - -------- ------ ---- ----- --- ---- -- ------------ -- ---- ---- ------- ---- ------ - ---- ----- --- ---- -- -------- -- ---- ---- -- ---- -- ---- --- ----
我们可以通过以下代码将 chatito 语言模型转换为真实的对话机器人:
-- -------------------- ---- ------- ----- ------- - ----------------------------- ----- ------- - --------------- ----------- - --- - -- - ----- ------- - ------- - ----- - --------- - --- ------- ------------- --- - -------- ------ ---- ----- --- ---- -- ------------ -- ---- ---- ------- ---- ------ - ---- ----- --- ---- -- -------- -- ---- ---- -- ---- -- ---- --- ---- --- ----- -------- - -------------------- ----- -- - -------------------------- ------ -------------- ------- --------------- --- -------- ----------- - ------ --- ----------------- -- - ------------------- -------- -- - ---------------- --- --- - ----- -------- ------------------- - --- ---- - -- ---------------- - -- ------------ - ----- ---------- - --- --- ---- ------ -- ----------- - ----- ----- - ----- --------- -- ---- ---------- --- ------------------ - - ------ ------ ------ -- ---- ------------ -- - ------ ---------------------------- --- ------- -- -------------------------- - ------ ------- - - ----- -------- ------ - --- ------ - -------- ----- -------- - ----- -------- - ----- -------------------- --------------------------- ------ - ------------------------ - ----------- - ------ -------- -- --------------- ------------ -- - ------------------- ---------------- ---
执行上述代码后,将得到一个与您对话的机器人,试试和它聊天吧!
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/600671c130d09270238227a4