1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- ---
- title: '⛓️ Chainlit'
- description: 'Integrate with Chainlit to create LLM chat apps'
- ---
- In this example, we will learn how to use Chainlit and Embedchain together.
- 
- ## Setup
- First, install the required packages:
- ```bash
- pip install embedchain chainlit
- ```
- ## Create a Chainlit app
- Create a new file called `app.py` and add the following code:
- ```python
- import chainlit as cl
- from embedchain import App
- import os
- os.environ["OPENAI_API_KEY"] = "sk-xxx"
- @cl.on_chat_start
- async def on_chat_start():
- app = App.from_config(config={
- 'app': {
- 'config': {
- 'name': 'chainlit-app'
- }
- },
- 'llm': {
- 'config': {
- 'stream': True,
- }
- }
- })
- # import your data here
- app.add("https://www.forbes.com/profile/elon-musk/")
- app.collect_metrics = False
- cl.user_session.set("app", app)
- @cl.on_message
- async def on_message(message: cl.Message):
- app = cl.user_session.get("app")
- msg = cl.Message(content="")
- for chunk in await cl.make_async(app.chat)(message.content):
- await msg.stream_token(chunk)
-
- await msg.send()
- ```
- ## Run the app
- ```
- chainlit run app.py
- ```
- ## Try it out
- Open the app in your browser and start chatting with it!
|