|
12 | 12 | # Connect to Epsilla VectorDB |
13 | 13 | client = vectordb.Client(protocol="http", host="127.0.0.1", port="8888") |
14 | 14 |
|
15 | | -# You can also use Epsilla Cloud |
16 | | -# client = vectordb.Client(protocol='https', host='demo.epsilla.com', port='443') |
| 15 | + |
| 16 | +DB_NAME = "MyDB" |
| 17 | +DB_PATH = "/data/epsilla_demo" |
| 18 | +TABLE_NAME = "MyTable" |
17 | 19 |
|
18 | 20 | # Load DB with path |
19 | 21 | # pay attention to change db_path to persistent volume for production environment |
20 | | -status_code, response = client.load_db(db_name="MyDB", db_path="/data/epsilla_demo") |
| 22 | +status_code, response = client.load_db(db_name=DB_NAME, db_path=DB_PATH) |
21 | 23 | print(response) |
22 | 24 |
|
23 | 25 | # Set DB to current DB |
24 | | -client.use_db(db_name="MyDB") |
| 26 | +client.use_db(db_name=DB_NAME) |
25 | 27 |
|
26 | 28 | # Create a table with schema in current DB |
27 | 29 | status_code, response = client.create_table( |
28 | | - table_name="MyTable", |
| 30 | + table_name=TABLE_NAME, |
29 | 31 | table_fields=[ |
30 | 32 | {"name": "ID", "dataType": "INT", "primaryKey": True}, |
31 | 33 | {"name": "Doc", "dataType": "STRING"}, |
|
40 | 42 |
|
41 | 43 | # Insert new vector records into table |
42 | 44 | status_code, response = client.insert( |
43 | | - table_name="MyTable", |
| 45 | + table_name=TABLE_NAME, |
44 | 46 | records=[ |
45 | 47 | {"ID": 1, "Doc": "Berlin", "Embedding": [0.05, 0.61, 0.76, 0.74]}, |
46 | 48 | {"ID": 2, "Doc": "London", "Embedding": [0.19, 0.81, 0.75, 0.11]}, |
|
53 | 55 |
|
54 | 56 | # Query Vectors with specific response field |
55 | 57 | status_code, response = client.query( |
56 | | - table_name="MyTable", |
| 58 | + table_name=TABLE_NAME, |
57 | 59 | query_field="Embedding", |
58 | 60 | query_vector=[0.35, 0.55, 0.47, 0.94], |
59 | 61 | response_fields=["Doc"], |
|
62 | 64 |
|
63 | 65 | # Query Vectors without specific response field, then it will return all fields |
64 | 66 | status_code, response = client.query( |
65 | | - table_name="MyTable", |
| 67 | + table_name=TABLE_NAME, |
66 | 68 | query_field="Embedding", |
67 | 69 | query_vector=[0.35, 0.55, 0.47, 0.94], |
68 | 70 | limit=2, |
69 | 71 | ) |
70 | 72 | print(response) |
71 | 73 |
|
72 | 74 | # Get Vectors |
73 | | -status_code, response = client.get(table_name="MyTable", limit=2) |
| 75 | +status_code, response = client.get(table_name=TABLE_NAME, limit=2) |
74 | 76 | print(response) |
75 | 77 |
|
76 | 78 | # Get Statistics |
77 | 79 | status_code, response = client.statistics() |
78 | 80 | print(response) |
79 | 81 |
|
80 | 82 | # Delete Vectors |
81 | | -# status_code, response = client.delete(table_name="MyTable", ids=[3]) |
82 | | -status_code, response = client.delete(table_name="MyTable", primary_keys=[3, 4]) |
83 | | -# status_code, response = client.delete(table_name="MyTable", filter="Doc <> 'San Francisco'") |
| 83 | +# status_code, response = client.delete(table_name=TABLE_NAME, ids=[3]) |
| 84 | +status_code, response = client.delete(table_name=TABLE_NAME, primary_keys=[3, 4]) |
| 85 | +# status_code, response = client.delete(table_name=TABLE_NAME, filter="Doc <> 'San Francisco'") |
84 | 86 | print(response) |
85 | 87 |
|
86 | 88 |
|
87 | 89 | # Drop table |
88 | | -# status_code, response = client.drop_table("MyTable") |
| 90 | +# status_code, response = client.drop_table(TABLE_NAME) |
89 | 91 | # print(response) |
90 | 92 |
|
91 | 93 | # Unload db |
92 | | -# status_code, response = client.unload_db("MyDB") |
| 94 | +# status_code, response = client.unload_db(DB_NAME) |
93 | 95 | # print(response) |
0 commit comments