XThomasBU commited on
Commit
be91379
·
verified ·
1 Parent(s): d987823

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +20 -4
app.py CHANGED
@@ -13,8 +13,6 @@ app.secret_key = 'YourSecretKey' # Change this to a real secret key for product
13
 
14
  # OAuth setup with Authlib
15
  oauth = OAuth(app)
16
-
17
- # Assuming environment variables are set for OAuth
18
  oauth.register(
19
  name='oauth_provider',
20
  client_id=os.getenv("OAUTH_CLIENT_ID"),
@@ -43,6 +41,24 @@ def initialize_chainlit():
43
  )
44
  )
45
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
46
  @app.route('/')
47
  def home():
48
  return 'Home - <a href="/login">Login with OAuth Provider</a>'
@@ -55,10 +71,10 @@ def login():
55
  @app.route('/login/callback')
56
  def authorize():
57
  token = oauth.oauth_provider.authorize_access_token()
58
- # You can use token to fetch user info or proceed directly if not needed
59
- # Here, initialize ChainLit or perform actions based on the authenticated user
60
  initialize_chainlit()
61
  return 'Logged in and language model initialized. Proceed with operations.'
62
 
63
  if __name__ == "__main__":
64
  app.run(debug=True)
 
 
13
 
14
  # OAuth setup with Authlib
15
  oauth = OAuth(app)
 
 
16
  oauth.register(
17
  name='oauth_provider',
18
  client_id=os.getenv("OAUTH_CLIENT_ID"),
 
41
  )
42
  )
43
 
44
+ # Setup chainlit callbacks
45
+ @cl.on_chat_start
46
+ async def on_chat_start():
47
+ prompt = ChatPromptTemplate.from_messages([("human", "{question}")])
48
+ runnable = prompt | llm | StrOutputParser()
49
+ cl.user_session.set("runnable", runnable)
50
+
51
+ @cl.on_message
52
+ async def on_message(message: cl.Message):
53
+ runnable = cl.user_session.get("runnable") # type: Runnable
54
+ msg = cl.Message(content="")
55
+ async for chunk in runnable.astream(
56
+ {"question": message.content},
57
+ config=RunnableConfig(callbacks=[cl.LangchainCallbackHandler()]),
58
+ ):
59
+ await msg.stream_token(chunk)
60
+ await msg.send()
61
+
62
  @app.route('/')
63
  def home():
64
  return 'Home - <a href="/login">Login with OAuth Provider</a>'
 
71
  @app.route('/login/callback')
72
  def authorize():
73
  token = oauth.oauth_provider.authorize_access_token()
74
+ # Initialize ChainLit or perform actions based on the authenticated user
 
75
  initialize_chainlit()
76
  return 'Logged in and language model initialized. Proceed with operations.'
77
 
78
  if __name__ == "__main__":
79
  app.run(debug=True)
80
+