nemoguardrails.cli.chat

View as Markdown

Module Contents

Classes

NameDescription
ChatState-

Functions

NameDescription
_run_chat_v1_0Asynchronously run a chat session in the terminal.
_run_chat_v2_xSimple chat loop for v2.x using the stateful events API.
extract_scene_text_contentExtract the text content of a scene event as a string.
parse_events_inputsParses a event string and creates an event dictionary.
run_chatRun a chat session in the terminal.

Data

enable_input

API

class nemoguardrails.cli.chat.ChatState(
state: typing.Optional[nemoguardrails.colang.v2_x.runtime.flows.State] = None,
waiting_user_input: bool = False,
paused: bool = False,
running_timer_tasks: typing.Dict[str, asyncio.Task] = dict(),
input_events: typing.List[dict] = list(),
output_events: typing.List[dict] = list(),
output_state: typing.Optional[nemoguardrails.colang.v2_x.runtime.flows.State] = None,
session: prompt_toolkit.PromptSession = PromptSession(),
first_time: bool = False
)
Dataclass
events_counter
= 0
first_time
bool = False
input_events
List[dict] = field(default_factory=list)
output_events
List[dict] = field(default_factory=list)
output_state
Optional[State] = None
paused
bool = False
running_timer_tasks
Dict[str, Task] = field(default_factory=dict)
session
PromptSession = PromptSession()
state
Optional[State] = None
status
= console.status('[bold green]Working ...[/]')
waiting_user_input
bool = False
nemoguardrails.cli.chat._run_chat_v1_0(
config_path: typing.Optional[str] = None,
verbose: bool = False,
streaming: bool = False,
server_url: typing.Optional[str] = None,
config_id: typing.Optional[str] = None
)
async

Asynchronously run a chat session in the terminal.

Parameters:

config_path
Optional[str]Defaults to None

The path to the configuration file. Defaults to None.

verbose
boolDefaults to False

Whether to run in verbose mode. Defaults to False.

streaming
boolDefaults to False

Whether to enable streaming mode. Defaults to False.

server_url
Optional[str]Defaults to None

The URL of the chat server. Defaults to None.

config_id
Optional[str]Defaults to None

The configuration ID. Defaults to None.

nemoguardrails.cli.chat._run_chat_v2_x(
rails_app: nemoguardrails.LLMRails
)
async

Simple chat loop for v2.x using the stateful events API.

nemoguardrails.cli.chat.extract_scene_text_content(
content_list: typing.List[dict]
) -> str

Extract the text content of a scene event as a string.

nemoguardrails.cli.chat.parse_events_inputs(
input_str: str
) -> typing.Optional[dict]

Parses a event string and creates an event dictionary.

nemoguardrails.cli.chat.run_chat(
config_path: typing.Optional[str] = None,
verbose: bool = False,
verbose_llm_calls: bool = False,
streaming: bool = False,
server_url: typing.Optional[str] = None,
config_id: typing.Optional[str] = None
)

Run a chat session in the terminal.

Parameters:

config_path
Optional[str]Defaults to None

The path to the configuration file. Defaults to None.

verbose
boolDefaults to False

Whether to run in verbose mode. Defaults to False.

verbose_llm_calls
boolDefaults to False

Whether to print the prompts and the completions. Defaults to False.

streaming
boolDefaults to False

Whether to enable streaming mode. Defaults to False.

server_url
Optional[str]Defaults to None

The URL of the chat server. Defaults to None.

config_id
Optional[str]Defaults to None

The configuration ID. Defaults to None.

nemoguardrails.cli.chat.enable_input = asyncio.Event()