fix : Readme, requirements.txt added
This commit is contained in:
parent
c9369baacd
commit
3735946ad0
4 changed files with 118 additions and 44 deletions
|
|
@ -1,42 +0,0 @@
|
||||||
# Python-related
|
|
||||||
__pycache__/
|
|
||||||
*.pyc
|
|
||||||
*.pyo
|
|
||||||
*.pyd
|
|
||||||
*.db
|
|
||||||
*.sqlite3
|
|
||||||
*.log
|
|
||||||
*.json
|
|
||||||
|
|
||||||
# Environment and secrets
|
|
||||||
.env
|
|
||||||
*.env
|
|
||||||
|
|
||||||
# Streamlit cache and temporary files
|
|
||||||
.streamlit/
|
|
||||||
.history/
|
|
||||||
.cache/
|
|
||||||
*.stcache
|
|
||||||
.stcache/
|
|
||||||
|
|
||||||
# Logs and temp files
|
|
||||||
*.log
|
|
||||||
*.out
|
|
||||||
*.err
|
|
||||||
|
|
||||||
# IDE and editor config files
|
|
||||||
.vscode/
|
|
||||||
.idea/
|
|
||||||
*.swp
|
|
||||||
*.swo
|
|
||||||
*.bak
|
|
||||||
*.tmp
|
|
||||||
|
|
||||||
# System files
|
|
||||||
.DS_Store
|
|
||||||
Thumbs.db
|
|
||||||
|
|
||||||
# OCR and image processing cache (if any)
|
|
||||||
~/.EasyOCR/
|
|
||||||
*.easyocr
|
|
||||||
*.txt
|
|
||||||
115
ai_agent_tutorials/ai_breakup_recovery_agent/README.md
Normal file
115
ai_agent_tutorials/ai_breakup_recovery_agent/README.md
Normal file
|
|
@ -0,0 +1,115 @@
|
||||||
|
|
||||||
|
# 💔 Breakup Recovery Agent Team
|
||||||
|
|
||||||
|
This is an AI-powered application designed to help users emotionally recover from breakups by providing support, guidance, and emotional outlet messages from a team of specialized AI agents. The app is built using **Streamlit** and **Agno**, leveraging **OpenAI's GPT models**.
|
||||||
|
|
||||||
|
## 🚀 Features
|
||||||
|
|
||||||
|
- 🧠 **Multi-Agent Team:**
|
||||||
|
- **Therapist Agent:** Offers empathetic support and coping strategies.
|
||||||
|
- **Closure Agent:** Writes emotional messages users shouldn't send for catharsis.
|
||||||
|
- **Routine Planner Agent:** Suggests daily routines for emotional recovery.
|
||||||
|
- **Brutal Honesty Agent:** Provides direct, no-nonsense feedback on the breakup.
|
||||||
|
- 📷 **Chat Screenshot Analysis:** (Planned)
|
||||||
|
- Upload screenshots for chat analysis.
|
||||||
|
- 🔑 **API Key Management:**
|
||||||
|
- Store and manage your OpenAI API keys securely via Streamlit's sidebar.
|
||||||
|
- ⚡ **Parallel Execution:**
|
||||||
|
- Agents process inputs in coordination mode for comprehensive results.
|
||||||
|
- ✅ **User-Friendly Interface:**
|
||||||
|
- Simple, intuitive UI with easy interaction and display of agent responses.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🛠️ Tech Stack
|
||||||
|
|
||||||
|
- **Frontend:** Streamlit (Python)
|
||||||
|
- **AI Models:** OpenAI GPT-4o (via Agno)
|
||||||
|
- **Image Processing:** PIL (for displaying screenshots)
|
||||||
|
- **Text Extraction:** EasyOCR (planned feature for extracting text from screenshots)
|
||||||
|
- **Environment Variables:** API keys managed with `st.session_state` in Streamlit
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 📦 Installation
|
||||||
|
|
||||||
|
1. **Clone the Repository:**
|
||||||
|
```bash
|
||||||
|
git clone <repository_url>
|
||||||
|
cd breakup-recovery-agent-team
|
||||||
|
```
|
||||||
|
|
||||||
|
2. **Create a Virtual Environment (Optional but Recommended):**
|
||||||
|
```bash
|
||||||
|
conda create --name <env_name> python=<version>
|
||||||
|
conda activate <env_name>
|
||||||
|
```
|
||||||
|
|
||||||
|
3. **Install Dependencies:**
|
||||||
|
```bash
|
||||||
|
pip install -r requirements.txt
|
||||||
|
```
|
||||||
|
|
||||||
|
4. **Run the Streamlit App:**
|
||||||
|
```bash
|
||||||
|
streamlit run app.py
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🔑 Environment Variables
|
||||||
|
|
||||||
|
Make sure to provide your **OpenAI API key** in the Streamlit sidebar:
|
||||||
|
|
||||||
|
- `OpenAI API Key` → Add your API key in the sidebar form.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🛠️ Usage
|
||||||
|
|
||||||
|
1. **Enter Your Feelings:**
|
||||||
|
- Describe how you're feeling in the text area.
|
||||||
|
2. **Upload Screenshot (Optional):**
|
||||||
|
- Upload a chat screenshot (PNG, JPG, JPEG) for analysis (planned feature).
|
||||||
|
3. **Execute Agents:**
|
||||||
|
- Click **"Get Recovery Support"** to run the multi-agent team.
|
||||||
|
4. **View Results:**
|
||||||
|
- Individual agent responses are displayed.
|
||||||
|
- A final summary is provided by the Team Leader.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🧑💻 Agents Overview
|
||||||
|
|
||||||
|
- **Therapist Agent**
|
||||||
|
- Provides empathetic support and coping strategies.
|
||||||
|
- Uses **OpenAI GPT-4o-mini** and DuckDuckGo tools for insights.
|
||||||
|
|
||||||
|
- **Closure Agent**
|
||||||
|
- Generates unsent emotional messages for emotional release.
|
||||||
|
- Ensures heartfelt and authentic messages.
|
||||||
|
|
||||||
|
- **Routine Planner Agent**
|
||||||
|
- Creates a daily recovery routine with balanced activities.
|
||||||
|
- Includes self-reflection, social interaction, and healthy distractions.
|
||||||
|
|
||||||
|
- **Brutal Honesty Agent**
|
||||||
|
- Offers direct, objective feedback on the breakup.
|
||||||
|
- Uses factual language with no sugar-coating.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🔥 Future Enhancements
|
||||||
|
|
||||||
|
- ✅ **Text Extraction from Screenshots:**
|
||||||
|
- Use EasyOCR to extract text from uploaded screenshots for chat analysis.
|
||||||
|
- ✅ **Improved Image Analysis:**
|
||||||
|
- Integrate image analysis tools for detecting visual patterns in chat screenshots.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 📄 License
|
||||||
|
|
||||||
|
This project is licensed under the **MIT License**.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
@ -20,7 +20,6 @@ if submit_button:
|
||||||
|
|
||||||
# --- User Input ---
|
# --- User Input ---
|
||||||
user_input = st.text_area("Describe how you're feeling...")
|
user_input = st.text_area("Describe how you're feeling...")
|
||||||
print(user_input)
|
|
||||||
|
|
||||||
# --- Image Upload ---
|
# --- Image Upload ---
|
||||||
uploaded_image = st.file_uploader("Upload a chat screenshot (optional)", type=["png", "jpg", "jpeg"])
|
uploaded_image = st.file_uploader("Upload a chat screenshot (optional)", type=["png", "jpg", "jpeg"])
|
||||||
|
|
@ -46,7 +45,6 @@ if st.button("Get Recovery Support"):
|
||||||
# Set environment variables
|
# Set environment variables
|
||||||
import os
|
import os
|
||||||
os.environ["OPENAI_API_KEY"] = st.session_state.get("openai_api_key", "")
|
os.environ["OPENAI_API_KEY"] = st.session_state.get("openai_api_key", "")
|
||||||
# os.environ["AGNO_API_KEY"] = st.session_state.get("agno_api_key", "")
|
|
||||||
|
|
||||||
# Prepare the input
|
# Prepare the input
|
||||||
input_data = user_input
|
input_data = user_input
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,3 @@
|
||||||
|
agno==1.2.4
|
||||||
|
pillow==11.1.0
|
||||||
|
streamlit==1.44.0
|
||||||
Loading…
Reference in a new issue