This project allows users to have a conversation with an AI assistant that can process both text and images using IBM's AI API. The assistant can analyze uploaded images and provide responses based on user interactions.
- Image Upload: Users can upload images (JPG, JPEG, PNG) for processing.
- Chat Interface: Engages in text-based conversations.
- Image Processing: Converts images into base64 format for analysis.
- IBM Watson Integration: Utilizes IBM Watson API for intelligent responses.
- Customization Options: Includes adjustable max tokens, decoding methods, and repetition penalties.
- Dark Mode Support: Optional dark mode for better UI experience.
- Download Chat History: Save conversations as a text file.
- Clear Chat: Reset the chat session.
- Clone the repository:
git clone https://github.com/billy-enrizky/chat-with-images.git cd chat-with-images
- Install dependencies:
pip install -r requirements.txt
- Create a
secrets.toml
file inside the.streamlit
folder and add your IBM API key:[secrets] IBM_API_KEY = "your_ibm_api_key"
- Run the application:
streamlit run app.py
- Open the Streamlit app in your browser.
- Upload an image and/or enter text messages.
- The AI assistant will process the input and generate responses.
- Customize settings via the sidebar.
- Download chat history if needed.
- Python
- Streamlit
- IBM Watson API
- PIL (Pillow)
- Base64 Encoding
- Requests Library
- Support for multiple image uploads.
- Enhanced UI with more front-end features.
- Additional AI models for better image and text understanding.
This project is licensed under the MIT License.