maeser.config module#

This module is used to locate config.yaml and expose its values for use by other modules in the Maeser package. config_paths determines where this module will look for config.yaml. Currently, only the working directory is searched.

maeser.config.OPENAI_API_KEY#

The API key for an OpenAI LLM.

Type:

str

maeser.config.GITHUB_CLIENT_SECRET#

The secret key for a GitHub OAuth2 application.

Type:

str

maeser.config.COURSE_ID#

The course ID the module importing this config should use.

Type:

str

maeser.config.GITHUB_CLIENT_ID#

The client ID for a GitHub OAuth2 application. This should be the same application referenced in OPENAI_API_KEY

Type:

str

maeser.config.GITHUB_AUTH_CALLBACK_URI#

the callback route/URL that the user should be sent when GitHub Authentication is complete. This should follow the format “http://www.example.com/login/github_callback”.

Type:

str

maeser.config.GITHUB_TIMEOUT#

The amount of time before a GitHub Authentication attempt should time out. Defaults to 10.

Type:

int

maeser.config.LDAP3_NAME#

The name of the LDAP server.

Type:

str

maeser.config.LDAP_SERVER_URLS#

The URLs associated with the LDAP server.

Type:

list[str]

maeser.config.LDAP_BASE_DN#

The Base Distinguished Name of the LDAP server.

Type:

str

maeser.config.LDAP_ATTRIBUTE_NAME#

The attribute name of the LDAP server.

Type:

str

maeser.config.LDAP_SEARCH_FILTER#

The search filter of the LDAP server.

Type:

str

maeser.config.LDAP_OBJECT_CLASS#

The object class of the LDAP server.

Type:

str

maeser.config.LDAP_ATTRIBUTES#

The attributes of the LDAP server.

Type:

list

maeser.config.LDAP_CA_CERT_PATH#

The path to the LDAP server’s CA certification.

Type:

str

maeser.config.LDAP_CONNECTION_TIMEOUT#

The amount of time before an LDAP Authentication attempt should time out. Defaults to 5.

Type:

int

maeser.config.MAX_REQUESTS#

The maximum number of requests a user can send before being rate-limited. Defaults to 5.

Type:

int

maeser.config.RATE_LIMIT_INTERVAL#

The interval in which requests are granted to a user. Defaults to 180.

Type:

int

maeser.config.LOG_SOURCE_PATH#

The path to the chat logs directory. Defaults to “chat_logs”.

Type:

str

maeser.config.VEC_STORE_PATH#

The path to the courses/vector stores. Defaults to “bot_data”.

Type:

str

maeser.config.VEC_STORE_TYPE#

The type of vector store. Defaults to “faiss”.

Type:

str

maeser.config.LLM_MODEL_NAME#

The name of the LLM. Defaults to “gpt-4o-mini”

Type:

str

maeser.config.LLM_PROVIDER#

The provider of the LLM. Defaults to “openai”

Type:

str

maeser.config.LLM_TOKEN_LIMIT#

The max number of tokens the LLM should process. Defaults to 400.

Type:

int

maeser.config.EMBED_MODEL#

The model used to embed user inputs. Defaults to “text-embedding-3-large”

Type:

str

maeser.config.EMBED_PROVIDER#

The provider of the embeddings model. Defaults to “openai”

Type:

str

maeser.config.USERS_DB_PATH#

The path to the file used to manage the user database. Defaults to “chat_logs/users.db”.

Type:

str

maeser.config.CHAT_HISTORY_PATH#

The path to the chat history logs. Defaults to “chat_logs”.

Type:

str

maeser.config.DISCORD_BOT_TOKEN#

The token for a Discord bot.

Type:

str

maeser.config.DISCORD_INTRO#

An intro message that the Discord bot should say when prompted.

Type:

str

maeser.config.load_config() dict[source]#

Searches the working directory for “config.yaml” and loads it via yaml.safe_load().