jaothan commited on
Commit
5c1becf
·
verified ·
1 Parent(s): f9b48fd

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +54 -54
app.py CHANGED
@@ -1,55 +1,55 @@
1
- import gradio as gr
2
- import pinecone
3
- from pinecone import PineconeGRPC, GRPCClientConfig
4
-
5
- # Initialize Pinecone connection
6
- pinecone.init(api_key="your-pinecone-api-key", environment="us-west1-gcp")
7
- pc = PineconeGRPC(api_key="your-pinecone-api-key")
8
- index = pc.Index(host="localhost:5081", grpc_config=GRPCClientConfig(secure=False))
9
-
10
- # Function to upsert a vector to Pinecone
11
- def upsert_vector(vector_id, vector_values, genre):
12
- index.upsert(
13
- vectors=[
14
- {
15
- "id": vector_id,
16
- "values": vector_values,
17
- "metadata": {"genre": genre}
18
- }
19
- ],
20
- namespace="example-namespace"
21
- )
22
- return f"Vector {vector_id} upserted with genre {genre}"
23
-
24
- # Function to query vectors based on genre
25
- def query_vector(query_vector, genre_filter):
26
- query = index.query(
27
- vector=query_vector,
28
- filter={"genre": {"$eq": genre_filter}},
29
- top_k=1,
30
- include_values=True,
31
- include_metadata=True,
32
- namespace="example-namespace"
33
- )
34
- return query
35
-
36
- # Create Gradio Interface
37
- with gr.Blocks() as app:
38
- gr.Markdown("### Pinecone Vector Search with Gradio")
39
-
40
- with gr.Row():
41
- vector_id = gr.Textbox(label="Vector ID")
42
- vector_values = gr.Textbox(label="Vector Values (comma separated)", placeholder="e.g. 1.0, 1.5")
43
- genre = gr.Textbox(label="Genre")
44
-
45
- submit_button = gr.Button("Upsert Vector")
46
- submit_button.click(upsert_vector, inputs=[vector_id, vector_values, genre], outputs="status")
47
-
48
- with gr.Row():
49
- query_vector = gr.Textbox(label="Query Vector (comma separated)", placeholder="e.g. 1.0, 1.5")
50
- genre_filter = gr.Textbox(label="Filter Genre")
51
-
52
- search_button = gr.Button("Search")
53
- search_button.click(query_vector, inputs=[query_vector, genre_filter], outputs="query_result")
54
-
55
  app.launch()
 
1
+ import gradio as gr
2
+ import pinecone
3
+ from pinecone.grpc import PineconeGRPC, GRPCClientConfig
4
+
5
+ # Initialize Pinecone connection
6
+ pinecone.init(api_key="your-pinecone-api-key", environment="us-west1-gcp")
7
+ pc = PineconeGRPC(api_key="your-pinecone-api-key")
8
+ index = pc.Index(host="localhost:5081", grpc_config=GRPCClientConfig(secure=False))
9
+
10
+ # Function to upsert a vector to Pinecone
11
+ def upsert_vector(vector_id, vector_values, genre):
12
+ index.upsert(
13
+ vectors=[
14
+ {
15
+ "id": vector_id,
16
+ "values": vector_values,
17
+ "metadata": {"genre": genre}
18
+ }
19
+ ],
20
+ namespace="example-namespace"
21
+ )
22
+ return f"Vector {vector_id} upserted with genre {genre}"
23
+
24
+ # Function to query vectors based on genre
25
+ def query_vector(query_vector, genre_filter):
26
+ query = index.query(
27
+ vector=query_vector,
28
+ filter={"genre": {"$eq": genre_filter}},
29
+ top_k=1,
30
+ include_values=True,
31
+ include_metadata=True,
32
+ namespace="example-namespace"
33
+ )
34
+ return query
35
+
36
+ # Create Gradio Interface
37
+ with gr.Blocks() as app:
38
+ gr.Markdown("### Pinecone Vector Search with Gradio")
39
+
40
+ with gr.Row():
41
+ vector_id = gr.Textbox(label="Vector ID")
42
+ vector_values = gr.Textbox(label="Vector Values (comma separated)", placeholder="e.g. 1.0, 1.5")
43
+ genre = gr.Textbox(label="Genre")
44
+
45
+ submit_button = gr.Button("Upsert Vector")
46
+ submit_button.click(upsert_vector, inputs=[vector_id, vector_values, genre], outputs="status")
47
+
48
+ with gr.Row():
49
+ query_vector = gr.Textbox(label="Query Vector (comma separated)", placeholder="e.g. 1.0, 1.5")
50
+ genre_filter = gr.Textbox(label="Filter Genre")
51
+
52
+ search_button = gr.Button("Search")
53
+ search_button.click(query_vector, inputs=[query_vector, genre_filter], outputs="query_result")
54
+
55
  app.launch()