- Overview
- App Functionalities
- Implementation Details
- Technologies Used
- Contributions
- Contact Information
This AI assistant is a versatile tool designed to cater to various needs, offering a user-friendly interface for:
- Knowledge-based queries
- Mathematical problem-solving
- Latest news updates
- Conversational interactions
- CSV data analysis
- PDF content exploration
The app exhibits a wide range of functionalities, ensuring adaptability and versatility across various tasks. It supports knowledge-based queries, mathematical problem-solving, provides the latest news updates, engages in conversations, analyzes CSV data, and explores PDF content.
streamlit-app-whole-2023-12-29-20-12-61-1_tL3HeGGc.mp4
The AI assistant's ability to engage in real discussions with users, setting it apart from traditional question-and-answer chatbots. It offers an interactive and conversational experience, making it more than just a Q&A chatbot.
Description: Highlighting the AI Assistant's conversational capabilities.The AI Assistant also enables users to access the latest news, enhancing its utility as a multifaceted tool. Users can stay updated on current affairs and trending topics within the app.
Description: Showcasing the AI Assistant's ability to provide users with the latest news updates, expanding its functionality beyond conventional use cases.Users can upload CSV files and query the AI Assistant for specific information and insights. The AI Assistant analyzes the uploaded CSV data and provides relevant answers based on the user's queries.
Description: Querying the AI Assistant using a CSV file.An essential feature includes the ability to upload multiple PDFs and interact with the AI Assistant for queries. Users can have conversations with the AI Assistant based on the content of the uploaded PDFs, receiving detailed and relevant information.
Description: Interacting with the AI Assistant using uploaded PDFs for queries.Agents website
We have developed agents to enhance the performance of the large language model and reduce hallucination:
-
Calculator Agent: Improves the AI Assistant's performance in mathematical problem-solving.
-
Python Code Execution Agent: Allows users to execute Python code directly within the AI Assistant.
-
Time Agent: Provides the current time and date information.
-
Web Search Agent: Enables the AI Assistant to search the web for information to answer user queries.
-
CSV Analysis Agent: Reads CSV files and answers questions based on the data. Recently enhanced to provide advanced plot generation capabilities based on user input.This implementation was carried out to offer users a more transparent and informative experience when interacting with the AI Assistant.
RAG Pipeline Paper
We utilize a RAG (Retrieval-Augmented Generation) pipeline to extract information from PDF files, enhancing the AI Assistant's ability to understand and respond to user queries. The pipeline leverages open-source embeddings from Hugging Face and the Mistral open-source model for processing the retrieval and generation steps.
A Memory website
The conversation module of the chatbot seamlessly incorporates the buffer memory functionality inherent in the Langchain library
- Ultra-2 Language Model from AI21 Studio: It powers the conversational capabilities and drives the AI's intelligence.
- Mixtral 8×7B: Utilized to answer queries based on CSV and PDF files, enhancing data interaction capabilities.
- Hugging Face Transformers and Embeddings: Crucial components for various NLP tasks, contributing to the AI's intelligence and understanding.
- Python: Employed for backend logic due to its versatility, extensive libraries, and robust functionality.
- Streamlit: Utilized to create the user-friendly interface, ensuring an interactive and seamless user experience.
- Langchain: Used for developing prompts and agents, enriching the AI Assistant's functionality and adaptability.
- Running the app locally from this repository
- clone this repository
- Create a new Python environment provided with pip
- run pip install -r requirements.txt
- run streamlit run app.py
- Now open the 'External URL' in your browser. Enjoy the bot.
Contributions to enhance features or add new capabilities are welcome! Fork the repository, make your changes, and submit a pull request.
For inquiries or feedback, reach out to [benaliazizaba000@gmail.com]