Aitor commited on
Commit
c68dfb5
·
1 Parent(s): 6123c8c

Validate OpenAI key before executing anything

Browse files
Files changed (1) hide show
  1. app.py +11 -2
app.py CHANGED
@@ -1,13 +1,22 @@
 
 
1
  import gradio as gr
 
2
  from langchain.chains import RetrievalQA
3
- from langchain.llms import OpenAI
4
  from langchain.document_loaders import PDFMinerLoader
5
  from langchain.indexes import VectorstoreIndexCreator
6
- import os
7
 
8
 
9
  def set_openai_key(raw_key):
 
 
 
 
 
 
10
  os.environ["OPENAI_API_KEY"] = raw_key
 
11
  return gr.File.update(interactive=True)
12
 
13
 
 
1
+ import os
2
+
3
  import gradio as gr
4
+ import requests
5
  from langchain.chains import RetrievalQA
 
6
  from langchain.document_loaders import PDFMinerLoader
7
  from langchain.indexes import VectorstoreIndexCreator
8
+ from langchain.llms import OpenAI
9
 
10
 
11
  def set_openai_key(raw_key):
12
+ # Check if the API is valid
13
+ headers = {"Authorization": f"Bearer {raw_key}"}
14
+ response = requests.get("https://api.openai.com/v1/engines", headers=headers)
15
+ if response.status_code != 200:
16
+ raise gr.Error("API key is not valid. Check the key and try again.")
17
+
18
  os.environ["OPENAI_API_KEY"] = raw_key
19
+
20
  return gr.File.update(interactive=True)
21
 
22