{"id":22190798,"url":"https://github.com/arya-io/groq-chatbot","last_synced_at":"2026-05-11T05:55:31.748Z","repository":{"id":265104869,"uuid":"895124321","full_name":"arya-io/groq-chatbot","owner":"arya-io","description":"A chatbot web application built with Streamlit and Groq AI, featuring customizable personas and conversation memory, allowing users to interact with an AI in different styles.","archived":false,"fork":false,"pushed_at":"2024-11-27T16:49:02.000Z","size":9,"stargazers_count":0,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-30T01:14:20.923Z","etag":null,"topics":["ai","aiapplication","aichatbot","chatbot","conversationalai","groq","groqai","langchain","machinelearning","naturallanguageprocessing","opensource","python","streamlit","streamlitapp"],"latest_commit_sha":null,"homepage":"https://ai-groq.streamlit.app/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/arya-io.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-11-27T15:49:45.000Z","updated_at":"2024-11-27T17:01:37.000Z","dependencies_parsed_at":"2024-11-27T17:45:15.592Z","dependency_job_id":null,"html_url":"https://github.com/arya-io/groq-chatbot","commit_stats":null,"previous_names":["arya-io/groq-chatbot"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/arya-io%2Fgroq-chatbot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/arya-io%2Fgroq-chatbot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/arya-io%2Fgroq-chatbot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/arya-io%2Fgroq-chatbot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/arya-io","download_url":"https://codeload.github.com/arya-io/groq-chatbot/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245351757,"owners_count":20601087,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai","aiapplication","aichatbot","chatbot","conversationalai","groq","groqai","langchain","machinelearning","naturallanguageprocessing","opensource","python","streamlit","streamlitapp"],"created_at":"2024-12-02T12:12:38.920Z","updated_at":"2026-05-11T05:55:31.675Z","avatar_url":"https://github.com/arya-io.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Groq Chatbot\n\n## Project Overview\n\nGroq Chatbot is a conversational AI built using **Groq's AI models** integrated with **Streamlit** for a user-friendly interface. The app allows users to interact with the chatbot in a variety of conversational styles (personas), including a **friendly assistant**, an **expert**, and a **creative problem-solver**. The chatbot can remember previous messages and is customizable, making it adaptable for various use cases.\n\n### Features:\n- **Customizable Personas**: Choose from different conversational styles such as friendly, expert, or creative.\n- **Conversational Memory**: The chatbot can remember past conversations, providing context-aware responses.\n- **Model Selection**: Select from multiple Groq AI models based on your preference.\n- **User Interface**: An intuitive Streamlit-based UI with easy navigation for settings, chat history, and chat statistics.\n- **Clear Chat History**: Users can clear their chat history or start a new topic at any time.\n- **Chat Statistics**: Track the number of messages exchanged and the duration of the conversation.\n\n---\n\n## Technologies Used\n\n- **Streamlit**: A powerful tool for building interactive web applications.\n- **Groq AI**: The backend AI model responsible for generating chatbot responses.\n- **LangChain**: Used for managing conversational memory and integrating the AI model.\n- **Python**: The programming language used to write the application logic.\n\n---\n\n## Getting Started\n\n### Prerequisites\n\n- Python 3.x\n- Groq API Key (obtain from Groq)\n- Required libraries (listed below)\n\n### Installation\n\n1. Clone this repository to your local machine.\n\n   ```bash\n   git clone https://github.com/arya-io/groq-chatbot.git\n   cd groq-chatbot\n\n2. Install the required libraries:\n\n    ```bash\n    pip install -r requirements.txt\n    ```\n\n3. Get your Groq API key from Groq and add it to the code.\n\n    Replace `groq_api_key = \"\"` with your actual API key in the code.\n\n4. Run the Streamlit app:\n\n    ```bash\n    streamlit run app.py\n    ```\n\n5. Open the app in your browser (usually at http://localhost:8501).\n\n## How It Works\n\n### Model Selection:\nChoose from the available AI models:\n- `llama3-70b-8192`\n- `gemma2-9b-it`\n- `mixtral-8x7b-32768`\n\n### Persona Setup:\nSelect one of the available conversation styles:\n- **Default**: A friendly, approachable assistant.\n- **Expert**: A knowledgeable, technical assistant.\n- **Creative**: An imaginative and outside-the-box thinker.\n\n### Memory Settings:\nAdjust the memory length (how many past messages the AI will remember) to fit your needs.\n\n### Conversational Memory:\nThe chatbot remembers previous messages, helping it provide more context-aware responses.\n\n### Start a New Topic:\nIf you want to change the conversation context, simply click the “New Topic” button to clear the memory.\n\n## Project Structure\n\nThe project is organized as follows:\n```bash\ngroq-chatbot/\n│\n├── app.py              # Main Streamlit application file\n├── requirements.txt    # List of Python dependencies\n└── README.md           # Project documentation (you're reading this!)\n```\n\n- **app.py**: The core of the application that includes all the Streamlit UI and interaction logic.\n- **requirements.txt**: Lists all the required dependencies for the project.\n\n## Customization\n\nYou can easily customize the chatbot by modifying the following:\n\n- **Personas**: You can add or change the conversational styles in the `get_custom_prompt()` function.\n- **AI Models**: Choose or add new models in the model selection dropdown within the sidebar.\n- **Memory Length**: Adjust the slider to control how many messages the chatbot remembers.\n\n## Contributing\n\nWe welcome contributions! If you'd like to improve or extend the functionality, feel free to open an issue or submit a pull request.\n\n1. Fork the repository.\n2. Clone your fork to your local machine.\n3. Create a new branch (`git checkout -b feature-branch`).\n4. Make your changes and commit them (`git commit -m 'Add feature'`).\n5. Push to your fork (`git push origin feature-branch`).\n6. Submit a pull request.\n\n## License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n## Acknowledgments\n\n- **Streamlit**: For providing an easy-to-use framework for building web applications.\n- **Groq**: For providing powerful AI models that power the chatbot.\n- **LangChain**: For simplifying the memory management and model chaining.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Farya-io%2Fgroq-chatbot","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Farya-io%2Fgroq-chatbot","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Farya-io%2Fgroq-chatbot/lists"}