41 lines
1.4 KiB
Python
41 lines
1.4 KiB
Python
from typing import Optional
|
|
|
|
from dotenv import load_dotenv
|
|
|
|
from embedchain.helper_classes.json_serializable import register_deserializable
|
|
|
|
from .BaseAppConfig import BaseAppConfig
|
|
|
|
load_dotenv()
|
|
|
|
|
|
@register_deserializable
|
|
class CustomAppConfig(BaseAppConfig):
|
|
"""
|
|
Config to initialize an embedchain custom `App` instance, with extra config options.
|
|
"""
|
|
|
|
def __init__(
|
|
self,
|
|
log_level=None,
|
|
db=None,
|
|
id=None,
|
|
collect_metrics: Optional[bool] = None,
|
|
collection_name: Optional[str] = None,
|
|
):
|
|
"""
|
|
:param log_level: Optional. (String) Debug level
|
|
['DEBUG', 'INFO', 'WARNING', 'ERROR', 'CRITICAL'].
|
|
:param db: Optional. (Vector) database to use for embeddings.
|
|
:param id: Optional. ID of the app. Document metadata will have this id.
|
|
:param provider: Optional. (Providers): LLM Provider to use.
|
|
:param open_source_app_config: Optional. Config instance needed for open source apps.
|
|
:param collect_metrics: Defaults to True. Send anonymous telemetry to improve embedchain.
|
|
:param collection_name: Optional. Default collection name.
|
|
It's recommended to use app.set_collection_name() instead.
|
|
"""
|
|
|
|
super().__init__(
|
|
log_level=log_level, db=db, id=id, collect_metrics=collect_metrics, collection_name=collection_name
|
|
)
|