eta.constants
Global constants used by other Eta modules.
This module contains definitions for a variety of global constants that are used by other Eta modules. Generally, it can be imported using from eta.constants import *.
Module attributes
The time used to sleep between each iteration of Eta's core processes. |
|
How many 'inference steps' from a direct observation to take during the reasoning process. |
|
Default embedding API URL, used if no other URL is specified in an embedder API. |
|
Default embedding model, used if no other model is specified in an embedder. |
|
Directory to check for API keys. |
|
Path used to create the symbol table (a dict structure maintaining indices for each unique symbol). |
|
The level of coreference to use. |
|
The coreference module will only look this many turns back in the discourse history to find possible referents. |
|
The coefficient to use in the function mapping certainty scores to the period for expected step failures. |
|
A ULF must have a certainty greater than or equal to this score to be used in a response. |
|
A list of emotions supported by Eta, where the first element is assumed to be the default. |
|
The path for input/outputs to be written to and read from. |
|
The directory within the IO path to use for inputs. |
|
The directory within the IO path to use for outputs. |
|
The directory within the IO path to use for writing conversation logs for a session. |
|
The list of all supported conversation log files. |
|
The path for archived conversation logs to be written to. |
|
A filepath to write GPT prompt debugging info to. |
|
The default start schema if none is provided in agent-config. |
|
The default importance value for new facts stored in memory. |
|
The default threshold to place on importance when retrieving facts from memory. |
|
Indexical variable to be used for Eta. |
|
Indexical variable to be used for the user. |
|
Indexical variable to be used for the current time. |
|
Indexical variable to be used for the current location. |
|
Predicate for a saying event. |
|
Predicate for a paraphrasing event (i.e., a gist clause attribution). |
|
Predicate for an articulation event (i.e., a ULF attribution). |
|
Predicate for a response event. |
|
Predicate for a reply event. |
|
Predicate for an answer event. |
|
Predicate for an ask event. |
|
Predicate for a react event. |
|
Predicate for a saying goodbye event. |
|
Predicate for storing a fact in short-term memory. |
|
Predicate for forgetting a fact from short-term memory. |
|
A list of all supported speech acts. |
|
A list of all predicates considered "telic", i.e., that denote events that are assumed to be nearly instantaneous. |
|
A formula used to denote a "failed" expectation of a user event. |
|
A formula used to denote a "failed" expectation of an external event. |
|
A list of all formulas that are considered to be "no-op" events. |
- REASONING_DEPTH_LIMIT = 3
How many ‘inference steps’ from a direct observation to take during the reasoning process.
- Type:
- EMBEDDING_DEFAULT_API = 'https://api-inference.huggingface.co/pipeline/feature-extraction/'
Default embedding API URL, used if no other URL is specified in an embedder API.
- Type:
- EMBEDDING_DEFAULT_MODEL = 'sentence-transformers/all-distilroberta-v1'
Default embedding model, used if no other model is specified in an embedder.
- Type:
- SYMTAB_PATH = 'io/symtab.json'
Path used to create the symbol table (a dict structure maintaining indices for each unique symbol).
- Type:
- COREFERENCE_MODE = 1
The level of coreference to use.
- Supported values:
0: simply reconstruct the original ULF. 1: the same as level 2, but excluding “I” and “you” from references to resolve. 2: substitute canonical names only for anaphora and indexical NP’s (e.g., “it” or “that block”). 3: substitute canonical names for all references.
- Type:
- RECENCY_CUTOFF = 2
The coreference module will only look this many turns back in the discourse history to find possible referents.
- Type:
- EXPECTED_STEP_FAILURE_PERIOD_COEFFICIENT = 30
The coefficient to use in the function mapping certainty scores to the period for expected step failures.
The certainty of an episode determines the timer period (in seconds) that must be passed for Eta to consider an expected episode failed and move on in the plan. This is a function on the certainty of the episode, with a certainty of 1 having an infinite period, and a certainty of 0 having a period of 0. This constant determines the coefficient on the certainty-to-period function.
A value of “30” makes a certainty of ~0.632 correspond to 30 seconds.
- Type:
- CERTAINTY_THRESHOLD = 0.7
A ULF must have a certainty greater than or equal to this score to be used in a response.
- Type:
- EMOTIONS_LIST = ['neutral', 'sad', 'happy', 'worried', 'angry']
A list of emotions supported by Eta, where the first element is assumed to be the default.
- IO_CLOG_DIR = 'conversation-log/'
The directory within the IO path to use for writing conversation logs for a session.
- Type:
- CLOG_FILES = ['text', 'affect', 'gist', 'semantic', 'pragmatic', 'obligations', 'step']
The list of all supported conversation log files.
- DEFAULT_START = 'have-eta-dialog.v'
The default start schema if none is provided in agent-config.
- Type:
- DEFAULT_IMPORTANCE_THRESHOLD = 0.5
The default threshold to place on importance when retrieving facts from memory.
- Type:
- PARAPHRASE_TO = 'paraphrase-to.v'
Predicate for a paraphrasing event (i.e., a gist clause attribution).
- Type:
- ARTICULATE_TO = 'articulate-to.v'
Predicate for an articulation event (i.e., a ULF attribution).
- Type:
- FORGET_FROM_STM = 'forget-from-stm.v'
Predicate for forgetting a fact from short-term memory.
- Type:
- SPEECH_ACTS = ['say-to.v', 'paraphrase-to.v', 'respond-to.v', 'reply-to.v', 'answer.v', 'ask.v', 'react-to.v', 'articulate-to.v', 'say-bye-to.v']
A list of all supported speech acts.
- TELIC_VERBS = ['say-to.v', 'paraphrase-to.v', 'respond-to.v', 'reply-to.v', 'answer.v', 'ask.v', 'react-to.v', 'articulate-to.v', 'say-bye-to.v', 'move.v']
A list of all predicates considered “telic”, i.e., that denote events that are assumed to be nearly instantaneous.
TODO: ultimately we need to create a more systemic classification, and provide this as an external resource.
- NOOP_YOU = ['^you', 'do.v', ['no.d', 'thing.n']]
A formula used to denote a “failed” expectation of a user event.
- Type:
s-expr
- NOOP_GEN = [['no.d', 'thing.n'], 'happen.v']
A formula used to denote a “failed” expectation of an external event.
- Type:
s-expr