Francesco commited on
Commit
9c97588
1 Parent(s): cb02041

updated main with auth

Browse files
Files changed (2) hide show
  1. .env +2 -1
  2. main.py +12 -8
.env CHANGED
@@ -1,4 +1,5 @@
1
  OPENAI_API_KEY=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
2
  ELEVEN_API_KEY=5db7eb7ac620c89ec32e72de98128417
3
  REDIS_HOST=localhost
4
- REDIS_PORT=6379
 
 
1
  OPENAI_API_KEY=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
2
  ELEVEN_API_KEY=5db7eb7ac620c89ec32e72de98128417
3
  REDIS_HOST=localhost
4
+ REDIS_PORT=6379
5
+ GRADIO_PASSWORD=oscepal
main.py CHANGED
@@ -10,10 +10,9 @@ from queue import Empty, Queue
10
  from threading import Thread
11
  import os
12
  import gradio as gr
13
- from langchain.callbacks.streaming_stdout import StreamingStdOutCallbackHandler
14
  from langchain.chat_models import ChatOpenAI
15
  from langchain.prompts import HumanMessagePromptTemplate, SystemMessagePromptTemplate
16
- from langchain.schema import AIMessage, BaseMessage, HumanMessage, SystemMessage
17
  from js import get_window_url_params
18
  from callback import QueueCallback
19
  from fastapi import FastAPI, File, UploadFile, Request
@@ -35,7 +34,7 @@ DEFAULT_TEMPERATURE = 0.7
35
  ChatHistory = List[str]
36
 
37
  logging.basicConfig(
38
- format="[%(asctime)s %(levelname)s]: %(message)s", level=logging.DEBUG
39
  )
40
  # load redis client
41
  client = get_client()
@@ -142,8 +141,8 @@ def on_drop_down_change(selected_item, messages):
142
  return patient, patient, [], messages
143
 
144
 
145
- def on_demo_load(url_params):
146
- username = url_params.get("username", "test")
147
  logging.info(f"Getting user for username={username}")
148
  create_user(client, User(username=username, uid=None))
149
  user = get_user_by_username(client, username)
@@ -247,9 +246,14 @@ with gr.Blocks(
247
  # async def home(request: Request):
248
  # return templates.TemplateResponse(
249
  # "home.html", {"request": request, "videos": []})
250
-
251
- demo.queue()
252
- demo.launch()
 
 
 
 
 
253
 
254
  # gradio_app = gr.routes.App.create_app(demo)
255
  # app.mount("/gradio", gradio_app)
 
10
  from threading import Thread
11
  import os
12
  import gradio as gr
 
13
  from langchain.chat_models import ChatOpenAI
14
  from langchain.prompts import HumanMessagePromptTemplate, SystemMessagePromptTemplate
15
+ from langchain.schema import AIMessage, BaseMessage, HumanMessage
16
  from js import get_window_url_params
17
  from callback import QueueCallback
18
  from fastapi import FastAPI, File, UploadFile, Request
 
34
  ChatHistory = List[str]
35
 
36
  logging.basicConfig(
37
+ format="[%(asctime)s %(levelname)s]: %(message)s", level=logging.INFO
38
  )
39
  # load redis client
40
  client = get_client()
 
141
  return patient, patient, [], messages
142
 
143
 
144
+ def on_demo_load(url_params, request: gr.Request):
145
+ username = request.username or url_params.get("username", "test")
146
  logging.info(f"Getting user for username={username}")
147
  create_user(client, User(username=username, uid=None))
148
  user = get_user_by_username(client, username)
 
246
  # async def home(request: Request):
247
  # return templates.TemplateResponse(
248
  # "home.html", {"request": request, "videos": []})
249
+ def auth_handler(username: str, password: str) -> bool:
250
+ if password != os.environ["GRADIO_PASSWORD"]:
251
+ return False
252
+
253
+ return True
254
+
255
+ demo.queue()
256
+ demo.launch(auth=auth_handler)
257
 
258
  # gradio_app = gr.routes.App.create_app(demo)
259
  # app.mount("/gradio", gradio_app)