Autochain is a versatile and dynamic streamlit
application specifically crafted to simplify the process of prototyping Langchain agents. With Autochain, developers can effortlessly create and iterate on agent prototypes, streamlining the testing and development process. This user-friendly tool allows for easy agent management and behavior adjustments with exceptional precision.
Autochain comes equipped with a range of features designed to enhance the prototyping experience. These include efficient memory management, automatic agent selection based on input data, and advanced functionalities like parsing tables, images, and charts from agent observations. All of these capabilities are seamlessly integrated into an intuitively designed user interface, making it a breeze to visualize and fine-tune agent prototypes.
We maintain two main branches in this repository:
-
stable: The `stable`` branch is intended to provide a reliable and well-tested version of Auto-Chain.
-
master: The
master
branch is used for the latest updates and development of Auto-Chain. It may include new features, enhancements, and bug fixes. Please note that this branch may occasionally be less stable due to ongoing development efforts.
- Agent Management: Easily create, modify, and manage Langchain agents.
- Chat Models: Develop and fine-tune chat models for seamless interactions.
- Granular Behavior Control: Address agent behavior issues with fine-grained adjustments.
- Efficient Memory Management: Optimize memory usage for better performance.
- Automatic Agent Selection: Choose agents automatically based on input data.
- Advanced Functionality: Parse tables, images, and charts from agent observations.
- Intuitive User Interface: A user-friendly design for a hassle-free experience.
Learn how to use Autochain with our tutorial video: Watch Tutorial
Follow these instructions to get Autochain up and running on your local machine for development and testing purposes.
Before you begin, ensure you have met the following requirements:
- Python 3.7 or higher installed on your system.
- Git for version control.
- Tesseract OCR Engine
-
Clone the repository:
git clone https://github.com/yourusername/auto-chain.git
-
Installing Tesseract OCR
- Windows
- Download the Tesseract OCR installer for Windows from the official repository: https://github.com/UB-Mannheim/tesseract/wiki
- Run the installer and follow the installation instructions.
- Add the Tesseract installation directory to your system's PATH environment variable.
- Linux
- On Linux, you can install Tesseract using your distribution's package manager. For example, on Ubuntu:
sudo apt-get install tesseract-ocr
- On Linux, you can install Tesseract using your distribution's package manager. For example, on Ubuntu:
- Navigate to the project directory:
cd auto-chain
- Install the required Python packages:
pip install -r requirements.txt
Before running Auto-Chain, you need to configure your environment variables. Follow these steps:
-
Locate the
.env_template
file in the project root directory. -
Rename
.env_template
to.env
. Make sure the file is named exactly.env
. -
Open the newly renamed
.env
file in a text editor. -
Replace the placeholder values in the
.env
file with your actual API keys, credentials, and configuration settings. -
Save the changes to the
.env
file.
- Start Autochain:
streamlit run init.py
- Open your web browser and access Autochain at http://localhost:8501.
If you want to deploy on Streamlit platform, follow these steps:
- Visit the Streamlit Sharing website: https://www.streamlit.io
- Log in with your Streamlit account.
- Click "New App."
- Connect your GitHub repository to Streamlit Sharing.
- Configure deployment settings, including the branch to deploy from and the command to run your app.
- Click "Deploy."
We welcome contributions to Autochain! To contribute, follow these steps:
- Fork the repository on GitHub.
- Clone your forked repository to your local machine.
- Create a new branch for your feature or bug fix.
- Make your changes and commit them with descriptive commit messages.
- Push your changes to your GitHub fork.
- Open a pull request to the master branch of the original repository.
For any questions or inquiries, please contact us at ali.attieh.30797@gmail.com.
This project is licensed under the MIT License - see the LICENSE file for details.
Enjoy using Autochain! We look forward to your contributions and feedback.