Insight_DKG / chroma_setup.py
jeysshon's picture
Create chroma_setup.py
e9ae122 verified
import chromadb
from chromadb.config import Settings
from chromadb.api.client import Client
from datetime import datetime, timedelta
def initialize_client():
"""
Inicializa y retorna un cliente persistente de ChromaDB,
especificando la ruta de almacenamiento y configuraciones.
"""
client = chromadb.PersistentClient(
path="app/chromadb",
settings=Settings(),
tenant="default_tenant",
database="default_database"
)
return client
def create_tenant(client, tenant_name):
"""
Crea un tenant (espacio de trabajo) en ChromaDB.
Parámetros:
-----------
client : Client
Cliente de ChromaDB inicializado.
tenant_name : str
Nombre del tenant que se desea crear.
"""
try:
client.create_tenant(name=tenant_name)
print(f"Tenant {tenant_name} creado con éxito.")
except Exception as e:
print(f"Error al crear tenant {tenant_name}: {e}")
def ensure_tenant(client, tenant_name):
"""
Verifica si existe un tenant con el nombre dado y lo crea
en caso de que no exista.
"""
try:
if not client.get_tenant(tenant_name):
create_tenant(client, tenant_name)
except Exception as e:
print(f"Error al verificar tenant {tenant_name}: {e}")