jeysshon commited on
Commit
e9ae122
·
verified ·
1 Parent(s): 5d0bb3c

Create chroma_setup.py

Browse files
Files changed (1) hide show
  1. chroma_setup.py +45 -0
chroma_setup.py ADDED
@@ -0,0 +1,45 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import chromadb
2
+ from chromadb.config import Settings
3
+ from chromadb.api.client import Client
4
+ from datetime import datetime, timedelta
5
+
6
+ def initialize_client():
7
+ """
8
+ Inicializa y retorna un cliente persistente de ChromaDB,
9
+ especificando la ruta de almacenamiento y configuraciones.
10
+ """
11
+ client = chromadb.PersistentClient(
12
+ path="app/chromadb",
13
+ settings=Settings(),
14
+ tenant="default_tenant",
15
+ database="default_database"
16
+ )
17
+ return client
18
+
19
+ def create_tenant(client, tenant_name):
20
+ """
21
+ Crea un tenant (espacio de trabajo) en ChromaDB.
22
+
23
+ Parámetros:
24
+ -----------
25
+ client : Client
26
+ Cliente de ChromaDB inicializado.
27
+ tenant_name : str
28
+ Nombre del tenant que se desea crear.
29
+ """
30
+ try:
31
+ client.create_tenant(name=tenant_name)
32
+ print(f"Tenant {tenant_name} creado con éxito.")
33
+ except Exception as e:
34
+ print(f"Error al crear tenant {tenant_name}: {e}")
35
+
36
+ def ensure_tenant(client, tenant_name):
37
+ """
38
+ Verifica si existe un tenant con el nombre dado y lo crea
39
+ en caso de que no exista.
40
+ """
41
+ try:
42
+ if not client.get_tenant(tenant_name):
43
+ create_tenant(client, tenant_name)
44
+ except Exception as e:
45
+ print(f"Error al verificar tenant {tenant_name}: {e}")