DialBB No-Code Tool (DialBB-NC) Documentation

日本語版

Introduction

This document describes the DialBB no-code tool, DialBB-NC.

Major Changes from Ver. 1.x

Supported Environment

DialBB-NC works on Windows 11 and macOS.

Installation and Startup on Windows

Install Python on Windows

Install DialBB on Windows

Launch DialBB-NC on Windows

In the dialbb-setup folder, double-click start-dialbb-nc or start-dialbb-nc.bat.

If startup succeeds, the main window will appear.

DialBB-NC main window

Installation and Startup on macOS

Install Python on macOS

As on Windows, if Python 3.11-3.14 is already installed, you do not need to install it again.

If Python is not installed, follow these steps.

Install DialBB on macOS

Download dialbb-setup.zip. It will be saved in your Downloads folder. Open Terminal, create an appropriate directory for DialBB, and move into it.

Then run the following commands.

unzip ~/Downloads/dialbb-setup.zip
pip install --force-reinstall *.whl

DialBB will be installed.

Launch DialBB-NC on macOS

Run the following command in Terminal.

dialbb-nc

On macOS, the screen layout may be slightly disturbed.

Loading, Creating, and Exporting Applications

Load an Existing Application or Create a New One

Export an Application

Starting and Stopping an Application

Register API Keys

When you use DialBB-NC for the first time, or after reinstalling DialBB, you need to register API keys for the large language model you want to use, such as ChatGPT. For example, if you use ChatGPT, you need an OpenAI API key. Obtain the key separately.

Run a Dialogue

Test an Application

You can test an application with user simulation. Details are explained later in this document.

Use the Dialogue Server (Advanced)

You can run your application as a web server and connect it with other programs.

Start the Server

Stop the Server

View Logs

Uninstall DialBB

Double-click the uninstall icon in the dialbb-setup folder to uninstall DialBB.

Editing an Application

Edit the Configuration

Click the Settings button to open the following screen.

Configuration dialog

The editable items are described below.

Item Description
Enable slot extraction? Select whether slot extraction should be used. Advanced option.
Model Select the large language model to use. Click Add to register a model that is not in the pull-down list.
Situation Enter the situation description used in prompts for the LLM. Write one situation per line.
Persona Enter the system persona used in prompts for the LLM. Write one persona per line.
Notes Enter cautionary notes used in prompts for the LLM. This is used only for system nodes.

Edit the Scenario File

Click the Scenario Edit button to open the scenario editor.

Overview of the Scenario Editor

A scenario consists of system nodes and user nodes connected by links. In a system node, you describe system utterances. In a user node, you describe transition conditions. Transition conditions are checked in descending order of priority. When a condition is satisfied, the dialogue moves to the next system node. If none of the transition conditions of the user nodes are satisfied, the dialogue returns to the same system node and a system utterance is generated again.

Each system node can connect to multiple user nodes. Each user node connects to only one next node. The connector on the right side of a node is the output, and the connector on the left side is the input.

Some screenshots below are from an older version. In ver. 2.0 and later, user nodes do not have an utterance type.

Descriptions of system utterances and transition conditions are explained later.

Scenario editor

Add a Node

Right-click on the background and select either Add System Node or Add User Node.

Add node menu

Delete a Node

Right-click on a node and select Delete, or select the node and press the Delete key.

Delete node menu

Edit a Node

Double-click a node to open the node editing dialog.

System and user node dialogs System and user node dialogs

How to edit nodes is described later.

Connect or Delete a Connector

Left-click the circle on the right side of a node and drag it to the circle on the left side of another node.

Connect nodes

To delete a connector, right-click it and select Delete, or select it and press the Delete key.

Delete connector

Undo and Redo

Use the Undo and Redo buttons at the top of the editor. You can also use Ctrl+Z and Ctrl+Y.

Save

Click the Save button at the top of the editor. If you close the editor without saving, your changes are lost.

Reload

Click the Reload button at the top of the editor to restore the last saved state. If you save frequently while editing a large state transition diagram, you can return to that point.

Zoom In and Out

Use the mouse wheel to zoom in or out.

Move the Canvas

Drag the canvas with the middle mouse button, or hold Ctrl while dragging with the left mouse button.

Close the Scenario Editor

In the main GUI, click Exit Scenario Edit to close the editor window.

Edit a System Node

Double-click a system node to open the following dialog. Edit the contents and click Save. Click Cancel to close the dialog without saving.

System node dialog

Node type must be one of the following.

Type Description
initial Describes the first system utterance of the dialogue. Exactly one system node in the scenario must have this type.
final When the dialogue reaches this node, it generates a system utterance and ends. You may have multiple nodes of this type.
error Used when an internal error occurs. The dialogue moves to this node, generates a system utterance, and ends. It must not be connected to other nodes.
prep Preparation state. When a dialogue starts, transitions from this state are tried first. Use this when you want to change the initial utterance or starting state depending on the context.
other Any other system node.

Write the system utterance in Utterance. The following notations are available.

Edit a User Node

Double-click a user node to open the following dialog. Edit the contents and click Save. Click Cancel to close it without saving.

User node dialog

Priority is an integer representing the priority of this user node. Among the user nodes connected from the same system node, conditions are checked in descending order of priority number. This number is reset each time the scenario is saved and is reassigned as 100, 90, 80, and so on from the highest one.

Enter the transition conditions for the user node in Transition Condition. When all listed conditions are satisfied, the dialogue moves to the next system node.

If there are multiple conditions, connect them with ;. The following kinds of conditions are available.

Transition Action is used only in advanced cases and is not explained here.

Edit Slot Extraction Knowledge (Advanced)

Slot extraction means extracting necessary information from the dialogue so far. That necessary information is called a slot. For example, in a dialogue system for weather information, place names and dates can be slots.

The names of those categories are slot names, and the extracted values themselves are slot values. These slot values can be used as transition conditions in user nodes.

To make the dialogue system perform slot extraction, you need slot extraction knowledge. It includes information such as the following.

You can also describe synonyms for each slot.

The same word may belong to different slots. For example, in a ticket vending dialogue system, if the user says a ticket from Tokyo to Shin-Osaka, then Tokyo is the departure station, Shin-Osaka is the arrival station, and ticket is the ticket type. In that case, the departure station slot and the arrival station slot are both station names.

To edit slot extraction knowledge, click Slot Extraction Knowledge on the main screen. Excel opens the knowledge file. Edit it and save it. If another spreadsheet application such as OpenOffice is associated instead of Excel, that application opens. If you do not use spreadsheet software, contact the developers.

The Excel file for slot extraction knowledge consists of two sheets: dialogues and slots. The following is an example of the dialogues sheet.

flag dialogue slots
Y System: What kind of ramen do you like? / User: Tonkotsu ramen. favorite ramen=tonkotsu ramen
Y System: Tell me your favorite ramen. / User: Tonkotsu ramen. / System: Hakata style? / User: Yes. region=Hakata, favorite ramen=tonkotsu ramen

The following is an example of the slots sheet.

flag slot name entity synonyms
Y favorite ramen tonkotsu ramen tonkotsu, pork-broth ramen
Y favorite ramen miso ramen miso
Y region Hakata -
Y user name Taro -

Testing with the User Simulator

You can test your application with the user simulator. Click the Test button on the main menu to open the test menu screen.

Test menu

Click Settings to open the simulator settings.

Test configuration

Model is the model used by the simulator. Maximum Turns is the maximum number of user utterances in a simulated dialogue. Prompt is the simulator prompt. Edit them as needed and click OK.

Click Run in the test menu screen to start the test.