Skip to content

Commit d5c1b50

Browse files
add support for processing results on search and query (#43)
This PR introduces post processing of query/search results from Redis. - Default processor used for `query` method and left out for `search` method. - Make this processor a utility function for use in other scenarios. - Adds tests.
1 parent 9a2a9d1 commit d5c1b50

File tree

12 files changed

+276
-425
lines changed

12 files changed

+276
-425
lines changed

.gitignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,4 +3,5 @@ redisvl.egg-info/
33
.coverage.*
44
.coverage
55
scratch
6-
.DS_Store
6+
.DS_Store
7+
*.csv

docs/examples/openai_qna.ipynb

Lines changed: 122 additions & 345 deletions
Large diffs are not rendered by default.

docs/user_guide/getting_started_01.ipynb

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -211,8 +211,8 @@
211211
"name": "stdout",
212212
"output_type": "stream",
213213
"text": [
214-
"\u001b[32m13:15:04\u001b[0m \u001b[35msam.partee-NW9MQX5Y74\u001b[0m \u001b[34mredisvl.cli.index[13683]\u001b[0m \u001b[1;30mINFO\u001b[0m Indices:\n",
215-
"\u001b[32m13:15:04\u001b[0m \u001b[35msam.partee-NW9MQX5Y74\u001b[0m \u001b[34mredisvl.cli.index[13683]\u001b[0m \u001b[1;30mINFO\u001b[0m 1. user_index\n"
214+
"\u001b[32m14:56:24\u001b[0m \u001b[34m[RedisVL]\u001b[0m \u001b[1;30mINFO\u001b[0m Indices:\n",
215+
"\u001b[32m14:56:24\u001b[0m \u001b[34m[RedisVL]\u001b[0m \u001b[1;30mINFO\u001b[0m 1. user_index\n"
216216
]
217217
}
218218
],
@@ -258,7 +258,7 @@
258258
{
259259
"data": {
260260
"text/html": [
261-
"<table><tr><th>vector_distance</th><th>user</th><th>age</th><th>job</th><th>credit_score</th></tr><tr><td>0</td><td>john</td><td>1</td><td>engineer</td><td>high</td></tr><tr><td>0</td><td>mary</td><td>2</td><td>doctor</td><td>low</td></tr><tr><td>0.653301358223</td><td>joe</td><td>3</td><td>dentist</td><td>medium</td></tr></table>"
261+
"<table><tr><th>id</th><th>vector_distance</th><th>user</th><th>age</th><th>job</th><th>credit_score</th></tr><tr><td>v1:7f2670effaa140adacc13a4a74eac358</td><td>0</td><td>john</td><td>1</td><td>engineer</td><td>high</td></tr><tr><td>v1:7f01fd2181f44eb181caf6262b1a2a6e</td><td>0</td><td>mary</td><td>2</td><td>doctor</td><td>low</td></tr><tr><td>v1:6a6fee8801cd48ecadad722cca4962bf</td><td>0.653301358223</td><td>joe</td><td>3</td><td>dentist</td><td>medium</td></tr></table>"
262262
],
263263
"text/plain": [
264264
"<IPython.core.display.HTML object>"
@@ -303,7 +303,7 @@
303303
{
304304
"data": {
305305
"text/html": [
306-
"<table><tr><th>vector_distance</th><th>user</th><th>age</th><th>job</th><th>credit_score</th></tr><tr><td>0</td><td>john</td><td>1</td><td>engineer</td><td>high</td></tr><tr><td>0</td><td>mary</td><td>2</td><td>doctor</td><td>low</td></tr><tr><td>0.653301358223</td><td>joe</td><td>3</td><td>dentist</td><td>medium</td></tr></table>"
306+
"<table><tr><th>id</th><th>vector_distance</th><th>user</th><th>age</th><th>job</th><th>credit_score</th></tr><tr><td>v1:7f2670effaa140adacc13a4a74eac358</td><td>0</td><td>john</td><td>1</td><td>engineer</td><td>high</td></tr><tr><td>v1:7f01fd2181f44eb181caf6262b1a2a6e</td><td>0</td><td>mary</td><td>2</td><td>doctor</td><td>low</td></tr><tr><td>v1:6a6fee8801cd48ecadad722cca4962bf</td><td>0.653301358223</td><td>joe</td><td>3</td><td>dentist</td><td>medium</td></tr></table>"
307307
],
308308
"text/plain": [
309309
"<IPython.core.display.HTML object>"
@@ -319,7 +319,7 @@
319319
"\n",
320320
"# run the same query\n",
321321
"results = existing_index.query(query)\n",
322-
"result_print(results)\n"
322+
"result_print(results)"
323323
]
324324
},
325325
{
@@ -333,13 +333,13 @@
333333
},
334334
{
335335
"cell_type": "code",
336-
"execution_count": 10,
336+
"execution_count": 9,
337337
"metadata": {},
338338
"outputs": [
339339
{
340340
"data": {
341341
"text/html": [
342-
"<table><tr><th>vector_distance</th><th>user</th><th>age</th><th>job</th><th>credit_score</th></tr><tr><td>0</td><td>john</td><td>1</td><td>engineer</td><td>high</td></tr><tr><td>0</td><td>mary</td><td>2</td><td>doctor</td><td>low</td></tr><tr><td>0.653301358223</td><td>joe</td><td>3</td><td>dentist</td><td>medium</td></tr></table>"
342+
"<table><tr><th>id</th><th>vector_distance</th><th>user</th><th>age</th><th>job</th><th>credit_score</th></tr><tr><td>v1:ecac61a5802448f695d775d50e925826</td><td>0</td><td>john</td><td>1</td><td>engineer</td><td>high</td></tr><tr><td>v1:20198d650bb84295a9c718680a7506b1</td><td>0</td><td>mary</td><td>2</td><td>doctor</td><td>low</td></tr><tr><td>v1:a7e9aa9466834e00ab91f69aae7bc71e</td><td>0.653301358223</td><td>joe</td><td>3</td><td>dentist</td><td>medium</td></tr></table>"
343343
],
344344
"text/plain": [
345345
"<IPython.core.display.HTML object>"
@@ -387,7 +387,7 @@
387387
"name": "python",
388388
"nbconvert_exporter": "python",
389389
"pygments_lexer": "ipython3",
390-
"version": "3.8.13"
390+
"version": "3.9.12"
391391
},
392392
"orig_nbformat": 4,
393393
"vscode": {

docs/user_guide/hybrid_queries_02.ipynb

Lines changed: 15 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -95,8 +95,8 @@
9595
"name": "stdout",
9696
"output_type": "stream",
9797
"text": [
98-
"\u001b[32m19:22:36\u001b[0m \u001b[35msam.partee-NW9MQX5Y74\u001b[0m \u001b[34mredisvl.cli.index[21909]\u001b[0m \u001b[1;30mINFO\u001b[0m Indices:\n",
99-
"\u001b[32m19:22:36\u001b[0m \u001b[35msam.partee-NW9MQX5Y74\u001b[0m \u001b[34mredisvl.cli.index[21909]\u001b[0m \u001b[1;30mINFO\u001b[0m 1. user_index\n"
98+
"\u001b[32m14:57:05\u001b[0m \u001b[34m[RedisVL]\u001b[0m \u001b[1;30mINFO\u001b[0m Indices:\n",
99+
"\u001b[32m14:57:05\u001b[0m \u001b[34m[RedisVL]\u001b[0m \u001b[1;30mINFO\u001b[0m 1. user_index\n"
100100
]
101101
}
102102
],
@@ -142,7 +142,7 @@
142142
{
143143
"data": {
144144
"text/html": [
145-
"<table><tr><th>vector_distance</th><th>user</th><th>credit_score</th><th>age</th><th>job</th><th>office_location</th></tr><tr><td>0</td><td>john</td><td>high</td><td>18</td><td>engineer</td><td>-122.4194,37.7749</td></tr><tr><td>0.109129190445</td><td>tyler</td><td>high</td><td>100</td><td>engineer</td><td>-122.0839,37.3861</td></tr><tr><td>0.158809006214</td><td>tim</td><td>high</td><td>12</td><td>dermatologist</td><td>-122.0839,37.3861</td></tr><tr><td>0.266666650772</td><td>nancy</td><td>high</td><td>94</td><td>doctor</td><td>-122.4194,37.7749</td></tr></table>"
145+
"<table><tr><th>id</th><th>vector_distance</th><th>user</th><th>credit_score</th><th>age</th><th>job</th><th>office_location</th></tr><tr><td>v1:b1e376e6003844c8a33b3c953a249948</td><td>0</td><td>john</td><td>high</td><td>18</td><td>engineer</td><td>-122.4194,37.7749</td></tr><tr><td>v1:4f5a69e97b2a4017998bd30fb23e3339</td><td>0.109129190445</td><td>tyler</td><td>high</td><td>100</td><td>engineer</td><td>-122.0839,37.3861</td></tr><tr><td>v1:f94d6b668b6b4f00851ffb0a9d497c53</td><td>0.158809006214</td><td>tim</td><td>high</td><td>12</td><td>dermatologist</td><td>-122.0839,37.3861</td></tr><tr><td>v1:e9f9b5fe5e47414986139bd61ee60920</td><td>0.266666650772</td><td>nancy</td><td>high</td><td>94</td><td>doctor</td><td>-122.4194,37.7749</td></tr></table>"
146146
],
147147
"text/plain": [
148148
"<IPython.core.display.HTML object>"
@@ -184,7 +184,7 @@
184184
{
185185
"data": {
186186
"text/html": [
187-
"<table><tr><th>vector_distance</th><th>user</th><th>credit_score</th><th>age</th><th>job</th><th>office_location</th></tr><tr><td>0</td><td>john</td><td>high</td><td>18</td><td>engineer</td><td>-122.4194,37.7749</td></tr><tr><td>0.109129190445</td><td>tyler</td><td>high</td><td>100</td><td>engineer</td><td>-122.0839,37.3861</td></tr><tr><td>0.266666650772</td><td>nancy</td><td>high</td><td>94</td><td>doctor</td><td>-122.4194,37.7749</td></tr><tr><td>0.653301358223</td><td>joe</td><td>medium</td><td>35</td><td>dentist</td><td>-122.0839,37.3861</td></tr></table>"
187+
"<table><tr><th>id</th><th>vector_distance</th><th>user</th><th>credit_score</th><th>age</th><th>job</th><th>office_location</th></tr><tr><td>v1:b1e376e6003844c8a33b3c953a249948</td><td>0</td><td>john</td><td>high</td><td>18</td><td>engineer</td><td>-122.4194,37.7749</td></tr><tr><td>v1:4f5a69e97b2a4017998bd30fb23e3339</td><td>0.109129190445</td><td>tyler</td><td>high</td><td>100</td><td>engineer</td><td>-122.0839,37.3861</td></tr><tr><td>v1:e9f9b5fe5e47414986139bd61ee60920</td><td>0.266666650772</td><td>nancy</td><td>high</td><td>94</td><td>doctor</td><td>-122.4194,37.7749</td></tr><tr><td>v1:e3ee268f2af94d73a308fb6f42d4ef3e</td><td>0.653301358223</td><td>joe</td><td>medium</td><td>35</td><td>dentist</td><td>-122.0839,37.3861</td></tr></table>"
188188
],
189189
"text/plain": [
190190
"<IPython.core.display.HTML object>"
@@ -220,7 +220,7 @@
220220
{
221221
"data": {
222222
"text/html": [
223-
"<table><tr><th>vector_distance</th><th>user</th><th>credit_score</th><th>age</th><th>job</th><th>office_location</th></tr><tr><td>0</td><td>derrick</td><td>low</td><td>14</td><td>doctor</td><td>-122.4194,37.7749</td></tr><tr><td>0.266666650772</td><td>nancy</td><td>high</td><td>94</td><td>doctor</td><td>-122.4194,37.7749</td></tr></table>"
223+
"<table><tr><th>id</th><th>vector_distance</th><th>user</th><th>credit_score</th><th>age</th><th>job</th><th>office_location</th></tr><tr><td>v1:55be34aa947e47edb6d7cb9a894aca6d</td><td>0</td><td>derrick</td><td>low</td><td>14</td><td>doctor</td><td>-122.4194,37.7749</td></tr><tr><td>v1:e9f9b5fe5e47414986139bd61ee60920</td><td>0.266666650772</td><td>nancy</td><td>high</td><td>94</td><td>doctor</td><td>-122.4194,37.7749</td></tr></table>"
224224
],
225225
"text/plain": [
226226
"<IPython.core.display.HTML object>"
@@ -257,7 +257,7 @@
257257
{
258258
"data": {
259259
"text/html": [
260-
"<table><tr><th>vector_distance</th><th>user</th><th>credit_score</th><th>age</th><th>job</th><th>office_location</th></tr><tr><td>0</td><td>john</td><td>high</td><td>18</td><td>engineer</td><td>-122.4194,37.7749</td></tr><tr><td>0</td><td>derrick</td><td>low</td><td>14</td><td>doctor</td><td>-122.4194,37.7749</td></tr><tr><td>0.266666650772</td><td>nancy</td><td>high</td><td>94</td><td>doctor</td><td>-122.4194,37.7749</td></tr></table>"
260+
"<table><tr><th>id</th><th>vector_distance</th><th>user</th><th>credit_score</th><th>age</th><th>job</th><th>office_location</th></tr><tr><td>v1:b1e376e6003844c8a33b3c953a249948</td><td>0</td><td>john</td><td>high</td><td>18</td><td>engineer</td><td>-122.4194,37.7749</td></tr><tr><td>v1:55be34aa947e47edb6d7cb9a894aca6d</td><td>0</td><td>derrick</td><td>low</td><td>14</td><td>doctor</td><td>-122.4194,37.7749</td></tr><tr><td>v1:e9f9b5fe5e47414986139bd61ee60920</td><td>0.266666650772</td><td>nancy</td><td>high</td><td>94</td><td>doctor</td><td>-122.4194,37.7749</td></tr></table>"
261261
],
262262
"text/plain": [
263263
"<IPython.core.display.HTML object>"
@@ -286,7 +286,7 @@
286286
{
287287
"data": {
288288
"text/html": [
289-
"<table><tr><th>vector_distance</th><th>user</th><th>credit_score</th><th>age</th><th>job</th><th>office_location</th></tr><tr><td>0</td><td>john</td><td>high</td><td>18</td><td>engineer</td><td>-122.4194,37.7749</td></tr><tr><td>0</td><td>derrick</td><td>low</td><td>14</td><td>doctor</td><td>-122.4194,37.7749</td></tr><tr><td>0.109129190445</td><td>tyler</td><td>high</td><td>100</td><td>engineer</td><td>-122.0839,37.3861</td></tr><tr><td>0.158809006214</td><td>tim</td><td>high</td><td>12</td><td>dermatologist</td><td>-122.0839,37.3861</td></tr><tr><td>0.217882037163</td><td>taimur</td><td>low</td><td>15</td><td>CEO</td><td>-122.0839,37.3861</td></tr><tr><td>0.266666650772</td><td>nancy</td><td>high</td><td>94</td><td>doctor</td><td>-122.4194,37.7749</td></tr><tr><td>0.653301358223</td><td>joe</td><td>medium</td><td>35</td><td>dentist</td><td>-122.0839,37.3861</td></tr></table>"
289+
"<table><tr><th>id</th><th>vector_distance</th><th>user</th><th>credit_score</th><th>age</th><th>job</th><th>office_location</th></tr><tr><td>v1:b1e376e6003844c8a33b3c953a249948</td><td>0</td><td>john</td><td>high</td><td>18</td><td>engineer</td><td>-122.4194,37.7749</td></tr><tr><td>v1:55be34aa947e47edb6d7cb9a894aca6d</td><td>0</td><td>derrick</td><td>low</td><td>14</td><td>doctor</td><td>-122.4194,37.7749</td></tr><tr><td>v1:4f5a69e97b2a4017998bd30fb23e3339</td><td>0.109129190445</td><td>tyler</td><td>high</td><td>100</td><td>engineer</td><td>-122.0839,37.3861</td></tr><tr><td>v1:f94d6b668b6b4f00851ffb0a9d497c53</td><td>0.158809006214</td><td>tim</td><td>high</td><td>12</td><td>dermatologist</td><td>-122.0839,37.3861</td></tr><tr><td>v1:9cb99c4dd6274fe89017ae80742fd96a</td><td>0.217882037163</td><td>taimur</td><td>low</td><td>15</td><td>CEO</td><td>-122.0839,37.3861</td></tr><tr><td>v1:e9f9b5fe5e47414986139bd61ee60920</td><td>0.266666650772</td><td>nancy</td><td>high</td><td>94</td><td>doctor</td><td>-122.4194,37.7749</td></tr><tr><td>v1:e3ee268f2af94d73a308fb6f42d4ef3e</td><td>0.653301358223</td><td>joe</td><td>medium</td><td>35</td><td>dentist</td><td>-122.0839,37.3861</td></tr></table>"
290290
],
291291
"text/plain": [
292292
"<IPython.core.display.HTML object>"
@@ -322,7 +322,7 @@
322322
{
323323
"data": {
324324
"text/html": [
325-
"<table><tr><th>vector_distance</th><th>user</th><th>credit_score</th><th>age</th><th>job</th><th>office_location</th></tr><tr><td>0</td><td>john</td><td>high</td><td>18</td><td>engineer</td><td>-122.4194,37.7749</td></tr><tr><td>0.109129190445</td><td>tyler</td><td>high</td><td>100</td><td>engineer</td><td>-122.0839,37.3861</td></tr><tr><td>0.266666650772</td><td>nancy</td><td>high</td><td>94</td><td>doctor</td><td>-122.4194,37.7749</td></tr></table>"
325+
"<table><tr><th>id</th><th>vector_distance</th><th>user</th><th>credit_score</th><th>age</th><th>job</th><th>office_location</th></tr><tr><td>v1:b1e376e6003844c8a33b3c953a249948</td><td>0</td><td>john</td><td>high</td><td>18</td><td>engineer</td><td>-122.4194,37.7749</td></tr><tr><td>v1:4f5a69e97b2a4017998bd30fb23e3339</td><td>0.109129190445</td><td>tyler</td><td>high</td><td>100</td><td>engineer</td><td>-122.0839,37.3861</td></tr><tr><td>v1:e9f9b5fe5e47414986139bd61ee60920</td><td>0.266666650772</td><td>nancy</td><td>high</td><td>94</td><td>doctor</td><td>-122.4194,37.7749</td></tr></table>"
326326
],
327327
"text/plain": [
328328
"<IPython.core.display.HTML object>"
@@ -364,7 +364,7 @@
364364
{
365365
"data": {
366366
"text/html": [
367-
"<table><tr><th>vector_distance</th><th>user</th><th>credit_score</th><th>age</th><th>job</th><th>office_location</th></tr><tr><td>0.158809006214</td><td>tim</td><td>high</td><td>12</td><td>dermatologist</td><td>-122.0839,37.3861</td></tr></table>"
367+
"<table><tr><th>id</th><th>vector_distance</th><th>user</th><th>credit_score</th><th>age</th><th>job</th><th>office_location</th></tr><tr><td>v1:f94d6b668b6b4f00851ffb0a9d497c53</td><td>0.158809006214</td><td>tim</td><td>high</td><td>12</td><td>dermatologist</td><td>-122.0839,37.3861</td></tr></table>"
368368
],
369369
"text/plain": [
370370
"<IPython.core.display.HTML object>"
@@ -402,7 +402,7 @@
402402
{
403403
"data": {
404404
"text/html": [
405-
"<table><tr><th>vector_distance</th><th>user</th><th>credit_score</th><th>age</th><th>job</th><th>office_location</th></tr><tr><td>0</td><td>john</td><td>high</td><td>18</td><td>engineer</td><td>-122.4194,37.7749</td></tr><tr><td>0.109129190445</td><td>tyler</td><td>high</td><td>100</td><td>engineer</td><td>-122.0839,37.3861</td></tr><tr><td>0.158809006214</td><td>tim</td><td>high</td><td>12</td><td>dermatologist</td><td>-122.0839,37.3861</td></tr><tr><td>0.266666650772</td><td>nancy</td><td>high</td><td>94</td><td>doctor</td><td>-122.4194,37.7749</td></tr><tr><td>0.653301358223</td><td>joe</td><td>medium</td><td>35</td><td>dentist</td><td>-122.0839,37.3861</td></tr></table>"
405+
"<table><tr><th>id</th><th>vector_distance</th><th>user</th><th>credit_score</th><th>age</th><th>job</th><th>office_location</th></tr><tr><td>v1:b1e376e6003844c8a33b3c953a249948</td><td>0</td><td>john</td><td>high</td><td>18</td><td>engineer</td><td>-122.4194,37.7749</td></tr><tr><td>v1:4f5a69e97b2a4017998bd30fb23e3339</td><td>0.109129190445</td><td>tyler</td><td>high</td><td>100</td><td>engineer</td><td>-122.0839,37.3861</td></tr><tr><td>v1:f94d6b668b6b4f00851ffb0a9d497c53</td><td>0.158809006214</td><td>tim</td><td>high</td><td>12</td><td>dermatologist</td><td>-122.0839,37.3861</td></tr><tr><td>v1:e9f9b5fe5e47414986139bd61ee60920</td><td>0.266666650772</td><td>nancy</td><td>high</td><td>94</td><td>doctor</td><td>-122.4194,37.7749</td></tr><tr><td>v1:e3ee268f2af94d73a308fb6f42d4ef3e</td><td>0.653301358223</td><td>joe</td><td>medium</td><td>35</td><td>dentist</td><td>-122.0839,37.3861</td></tr></table>"
406406
],
407407
"text/plain": [
408408
"<IPython.core.display.HTML object>"
@@ -505,10 +505,10 @@
505505
"name": "stdout",
506506
"output_type": "stream",
507507
"text": [
508-
"{'id': 'v1:38bfee0253ca452e96b4b3fdcb2798f7', 'payload': None, 'user': 'john', 'age': '18', 'job': 'engineer', 'credit_score': 'high', 'office_location': '-122.4194,37.7749', 'user_embedding': '==\\x00\\x00\\x00?'}\n",
509-
"{'id': 'v1:747bce550564443199ae1118cf03b5e3', 'payload': None, 'user': 'nancy', 'age': '94', 'job': 'doctor', 'credit_score': 'high', 'office_location': '-122.4194,37.7749', 'user_embedding': '333?=\\x00\\x00\\x00?'}\n",
510-
"{'id': 'v1:da7b6b0bf94f4c40a2ea23e20035ca73', 'payload': None, 'user': 'tyler', 'age': '100', 'job': 'engineer', 'credit_score': 'high', 'office_location': '-122.0839,37.3861', 'user_embedding': '=>\\x00\\x00\\x00?'}\n",
511-
"{'id': 'v1:abcdf6be4fb042389a93a9b27d6cce5c', 'payload': None, 'user': 'tim', 'age': '12', 'job': 'dermatologist', 'credit_score': 'high', 'office_location': '-122.0839,37.3861', 'user_embedding': '>>\\x00\\x00\\x00?'}\n"
508+
"{'id': 'v1:b1e376e6003844c8a33b3c953a249948', 'payload': None, 'user': 'john', 'age': '18', 'job': 'engineer', 'credit_score': 'high', 'office_location': '-122.4194,37.7749', 'user_embedding': '==\\x00\\x00\\x00?'}\n",
509+
"{'id': 'v1:e9f9b5fe5e47414986139bd61ee60920', 'payload': None, 'user': 'nancy', 'age': '94', 'job': 'doctor', 'credit_score': 'high', 'office_location': '-122.4194,37.7749', 'user_embedding': '333?=\\x00\\x00\\x00?'}\n",
510+
"{'id': 'v1:4f5a69e97b2a4017998bd30fb23e3339', 'payload': None, 'user': 'tyler', 'age': '100', 'job': 'engineer', 'credit_score': 'high', 'office_location': '-122.0839,37.3861', 'user_embedding': '=>\\x00\\x00\\x00?'}\n",
511+
"{'id': 'v1:f94d6b668b6b4f00851ffb0a9d497c53', 'payload': None, 'user': 'tim', 'age': '12', 'job': 'dermatologist', 'credit_score': 'high', 'office_location': '-122.0839,37.3861', 'user_embedding': '>>\\x00\\x00\\x00?'}\n"
512512
]
513513
}
514514
],
@@ -558,13 +558,6 @@
558558
"# Using the str() method, you can see what Redis Query this will emit.\n",
559559
"str(v)"
560560
]
561-
},
562-
{
563-
"cell_type": "code",
564-
"execution_count": null,
565-
"metadata": {},
566-
"outputs": [],
567-
"source": []
568561
}
569562
],
570563
"metadata": {
@@ -583,7 +576,7 @@
583576
"name": "python",
584577
"nbconvert_exporter": "python",
585578
"pygments_lexer": "ipython3",
586-
"version": "3.8.13"
579+
"version": "3.9.12"
587580
},
588581
"orig_nbformat": 4,
589582
"vscode": {

docs/user_guide/jupyterutils.py

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
from IPython.display import display, HTML
2+
from redis.commands.search.result import Result
23

34
def table_print(dict_list):
45
# If there's nothing in the list, there's nothing to print
@@ -27,16 +28,17 @@ def table_print(dict_list):
2728

2829

2930
def result_print(results):
30-
# If there's nothing in the list, there's nothing to print
31-
if len(results.docs) == 0:
32-
return
31+
if isinstance(results, Result):
32+
# If there's nothing in the list, there's nothing to print
33+
if len(results.docs) == 0:
34+
return
3335

34-
data = [doc.__dict__ for doc in results.docs]
36+
results = [doc.__dict__ for doc in results.docs]
3537

36-
to_remove = ["id", "payload"]
37-
for doc in data:
38-
for key in to_remove:
39-
if key in doc:
40-
del doc[key]
38+
to_remove = ["id", "payload"]
39+
for doc in results:
40+
for key in to_remove:
41+
if key in doc:
42+
del doc[key]
4143

42-
table_print(data)
44+
table_print(results)

docs/user_guide/llmcache_03.ipynb

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,10 @@
2525
"outputs": [],
2626
"source": [
2727
"import openai\n",
28-
"openai.api_key = \"sk-<YOUR KEY HERE>\"\n",
28+
"import os\n",
29+
"import getpass\n",
30+
"\n",
31+
"api_key = os.getenv(\"OPENAI_API_KEY\") or getpass.getpass(\"Enter your OpenAI API key: \")\n",
2932
"\n",
3033
"def ask_openai(question):\n",
3134
" response = openai.Completion.create(\n",

0 commit comments

Comments
 (0)