Skip to main content

No project description provided

Project description

langflow-streamlit

langflow-streamlit is an API that facilitates communication between Langflow and Streamlit applications. This library enables seamless integration of Langflow's advanced language processing capabilities with Streamlit's user-friendly interface, allowing developers to create interactive applications that leverage powerful language models.

Features

  • Easy integration: Quickly set up communication between Langflow and Streamlit with minimal configuration.
  • Simple deployment: Easily install and run the API with pip or poetry.
  • Flexible execution: Run the full stack (Langflow + streamlit API) or just the Streamlit frontend with API backend.

Requirements

  • Python 3.10 or higher

Installation

Option 1: Install via pip

python3 -m venv env
source env/bin/activate
pip install langflow-streamlit==0.1.5

Option 2: Clone the repository and use Poetry

  1. Clone the repository:

    git clone https://github.com/yaitec/langflow-streamlit.git
    cd langflow-streamlit
    
  2. Install Poetry if you haven't already:

    pip install poetry
    
  3. Install the project dependencies:

    poetry install
    

Running the Application

  1. Run the full stack (Langflow, API, and Streamlit):

    python -m langflow-streamlit run
    
  2. Run only the Streamlit frontend and API backend:

    python -m langflow-streamlit run --streamlit-only
    

Usage

How to get Streamlit's Flows from the store

The gif below shows how to search, download, and run Streamlit's flow:

Your GIF

Using Streamlit Components in Langflow

The gif below shows how to use Listen and Send components:

Your GIF

Streamlit's Components

Langflow provides the following Streamlit components:

  • Send: Send messages to a Streamlit chat session.
  • Listen: Listen for incoming messages in a Streamlit chat, altering the layout of the Streamlit application.

Environment variables

VARIABLE DESCRIPTION DEFAULT
STREAMLIT_ONLY If True runs only streamlit and streamlit API, else runs langflow too False

pip

langflow-streamlit --streamlit-only

make with zshell or bash

export STREAMLIT_ONLY=True

make powershell

$env:STREAMLIT_ONLY = "True"

Notes

  • The Streamlit chat runs on port 5001 by default.
  • The Streamlit API runs on port 7881 by default.
  • Langflow runs on port 7860 by default.
  • You can set streamlit_only environment variable to runs with or without langflow.

Using Poetry (after cloning the repository)

  1. Run the full stack:

    poetry run langflow-streamlit run
    
  2. Run only the Streamlit frontend and API backend:

    poetry run langflow-streamlit run --streamlit-only
    

Using Make commands

  1. Run the full stack:

    make start
    
  2. Run only the Streamlit frontend and API backend:

    make start-streamlit-only
    

Development

To set up the development environment:

  1. Clone the repository (if you haven't already).

  2. Install development dependencies:

    poetry install --with dev
    
  3. Run tests:

    make test
    
  4. Check code style:

    make lint
    

Contributing

Contributions are welcome! Please feel free to submit a Pull Request or open an Issue on the GitHub repository.

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

License

This project is licensed under the MIT License. See the LICENSE file for details.

Contact

YAITEC - contact@yaitec.org

Project Link: https://github.com/yaitec/langflow-streamlit

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

langflow_streamlit-0.1.7.tar.gz (9.9 kB view hashes)

Uploaded Source

Built Distributions

langflow_streamlit-0.1.7-py3-none-any.whl (13.5 kB view hashes)

Uploaded Python 3

langflow_streamlit-0.1.7-1-py3-none-any.whl (14.0 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page