npm 包 @level.ai/chatito 使用教程

阅读时长 9 分钟读完

介绍

@level.ai/chatito 是一个用于自动生成语言模型的 npm 包,能够大大简化语言模型的构建过程。该工具采用了 chatito DSL,比传统的语言模型构建方法更加简单易用。

本文将向大家介绍如何使用 @level.ai/chatito,帮助您快速入门。

安装

安装 @level.ai/chatito 可以使用 npm 或 yarn 包管理器,打开终端并输入以下命令即可:

如果您使用的是 yarn 包管理器,请使用以下命令:

安装完毕之后,使用如下代码引入 chatito:

使用

基础用法

chatito 提供了一个简单的 DSL 语言,用于定义生成语言模型的语法,以下是一个简单的例子,展示如何定义一个包含十个名字的数据集:

-- -------------------- ---- -------
--------
- ----
- ----
- -----
- -----
- ------
- ------
- -------
- -------
- ------
- -----

-----------
- ---
- -- -----
- -----

-------
- ---- -- - -------
-------------- -- ---- -- - --- -----------

上述 chatito 文件中定义了两个数据集 nounsgreeting,然后使用其构建了一个语言模型,该语言模型将随机组合问候语和名字,输出类似 Hey my name is Peter 或者 Hello I'm Rachel 等问候语。

在 Node.js 中使用 chatito 的生成函数可以得到一组 JSON 格式的语言模型:

-- -------------------- ---- -------
----- --------- - ---------------
--------
- ----
- ----
- -----
- -----
- ------
- ------
- -------
- -------
- ------
- -----

-----------
- ---
- -- -----
- -----

-------
-------------- -- ---- -- - --- -----------
---

------------------------------------- ----- ----

执行上面的代码,将得到如下输出结果:

-- -------------------- ---- -------
-
  -------- -
    -
      ------- ---- -- ---- -- ------
      ----------- - -------- -- -------- ------- -------- --- ------ -- -- -
    --
    -
      ------- ---- -- ---- -- ------
      ----------- - -------- -- -------- ------- -------- --- ------ -- -- -
    --
    -
      ------- ---- -- ---- -- -------
      ----------- - -------- -- -------- -------- -------- --- ------ -- -- -
    --
    ---
  --
  -------- -------- ------- -------- -------- --------- --------- ---------- ---------- --------- ---------
  ----------- ------- --- ------- --------
-

通过这个语言模型,我们可以方便地生成对应的问候语。

复杂用法

在构建实际的语言模型时,经常需要进行一些复杂的操作,例如使用引用和循环等。

引用

我们可以在 chatito 文件中定义一个引用类型的 entity,然后在其他地方进行引用。以下是一个例子:

-- -------------------- ---- -------
--------
- ----
- ----
- -----
- -----
- ------
- ------
- -------
- -------
- ------
- -----

-----------
- ---
- -- -----
- -----

-----
- ---
- -------
- --- ---

-------
-------------- -- ---- -- - --- -----------
---------
- ---------

在上述 chatito 文件中,我们定义了两个数据集 nounsgreeting,另外定义了两个模板 byehello,hello 模板中引用了 @person,@person 则引用了数据集 nouns

在 Node.js 中,我们可以按照以下方法得到语言模型:

-- -------------------- ---- -------
----- --------- - ---------------
--------
- ----
- ----
- -----
- -----
- ------
- ------
- -------
- -------
- ------
- -----

-----------
- ---
- -- -----
- -----

-----
- ---
- -------
- --- ---

-------
-------------- -- ---- -- - --- -----------
---------
- ---------
---

------------------------------------- ----- ----

得到的语言模型与基础用法相同。

循环

我们可以使用 * 符号来标识循环参与模板创建。 以下是一个例子:

-- -------------------- ---- -------
---------
- -----
- ------
- ------
- -----
- -----

------ -----
-- -----
-------------

在上述 chatito 文件中,我们定义了一个数据集 fruits, 然后创建了一个模板,其中 fruits 将被循环的嵌入,生成一个水果列表。

在 Node.js 中,我们可以按照以下方法得到语言模型:

-- -------------------- ---- -------
----- --------- - ---------------
---------
- -----
- ------
- ------
- -----
- -----

------ -----
-- -----
-------------
---

------------------------------------- ----- ----

得到的语言模型如下:

实践

使用 chatito 可以大大简化语言模型的构建过程,可以用于构建聊天机器人、语音回答机器人等,并提高开发效率。

以下是一个简单的 chatito 文件,定义了一个问候机器人,用于向用户问好:

-- -------------------- ---- -------
-----------
- ---
- --
- -----

-------
- -------
- -----
- ---------
- ---

-------
------------- --- - -------- ------ ---- -----
--- ---- -- ------------ -- ---- ---- ------- ---- ------ - ---- -----
--- ---- -- -------- -- ---- ---- -- ---- -- ---- --- ---- 

我们可以通过以下代码将 chatito 语言模型转换为真实的对话机器人:

-- -------------------- ---- -------
----- ------- - -----------------------------
----- ------- - ---------------
-----------
- ---
- --
- -----

-------
- -------
- -----
- ---------
- ---

-------
------------- --- - -------- ------ ---- -----
--- ---- -- ------------ -- ---- ---- ------- ---- ------ - ---- -----
--- ---- -- -------- -- ---- ---- -- ---- -- ---- --- ----
---

----- -------- - --------------------

----- -- - --------------------------
  ------ --------------
  ------- ---------------
---

-------- ----------- -
  ------ --- ----------------- -- -
    ------------------- -------- -- -
      ----------------
    ---
  ---
-

----- -------- ------------------- -
  --- ---- - -- ---------------- -
    -- ------------ -
      ----- ---------- - ---
      --- ---- ------ -- ----------- -
        ----- ----- - ----- --------- -- ---- ---------- ---
        ------------------ - - ------ ------ ------ -- ---- ------------ --
      -
      ------ ---------------------------- --- ------- -- --------------------------
    -
    ------ -------
  -
-

----- -------- ------ -
  --- ------ - --------
  ----- -------- -
    ----- -------- - ----- --------------------
    ---------------------------
    ------ - ------------------------
  -
  -----------
-

------
  -------- -- ---------------
  ------------ -- -
    -------------------
    ----------------
  ---

执行上述代码后,将得到一个与您对话的机器人,试试和它聊天吧!

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/600671c130d09270238227a4

纠错
反馈