Comments (4)
Ah great, indeed, I had a few unused tabs opened. I didn't know that they could get reactivated like this. Thanks for the insight!
from chainlit.
You have to be in a chainlit context to use user session. Meaning calling that code in on_chat_start
or langchain_factory
or action_callback
. Any context will do.
The reason is that in this context Chainlit knows which websocket session is running and is able to store information for this session. Outside of the context there is not way to know which websocket session (if any) is active.
from chainlit.
Sorry, but it is still a bit unclear to me how to do that... I've tried running this code
@cl.on_chat_start
def init_session():
user_session.set('chat_history', [])
print("chat_history: ", user_session.get('chat_history'))
user_session.set('path_out', create_output_path())
print("path_out: ", user_session.get('path_out'))
But I see that this code is being called several times when launching the app.
from chainlit.
This is the right way to use the user_session
.
Do you have multiple tabs/windows of the chainlit app opened? If that is the case each tab/window is going to connect and trigger on_chat_start
. Each will have its own user session.
from chainlit.
Related Issues (20)
- translation not work
- .
- Ability to adjust default theme between light and dark HOT 1
- Redirect URL using Action Element
- Automatically creating a user HOT 3
- "detail":"Missing code or state" in http://localhost:8000/auth/oauth/auth0/callback
- while login, get Unable to sign in HOT 1
- adding new page before chat page
- Custom css doesn't affect copilot
- ChatProfile name cannot be obtained in Chinese HOT 1
- Adding Model Name (flexibility to add metadata ) with answer when using multi model chatbot like ChatGPT
- Can't Use Data Persistence With Oauth HOT 1
- localhost refused to connect
- Allow user session timeout to be configurable
- Access Token used in URL params
- Best way to make first screen have example queries HOT 1
- ua-parser-js license is not allowed HOT 1
- Avatars overwritten by ChatProfile icon HOT 2
- Play multiple `Audio` elements in sequence
- Saving metadata earlier in the chat
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from chainlit.