Оновити README.md
This commit is contained in:
80
README.md
80
README.md
@@ -1,3 +1,79 @@
|
|||||||
# MyStar
|
# MyStar: Self-Hosted AI Companion
|
||||||
|
|
||||||
AI Girlfriend
|
MyStar is an advanced, fully local AI companion bot for Telegram built with **Python**, **Ollama**, **SD.Next**, and **Whisper**.
|
||||||
|
|
||||||
|
Unlike simple chatbots, MyStar features a "living" personality with long-term memory, simulated biological cycles, multimodal perception (vision/hearing), and autonomous behavior.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### 🚀 Key Features
|
||||||
|
|
||||||
|
#### 🧠 1. Dynamic Personality & Cognition
|
||||||
|
* **Modular Prompting:** The `SYSTEM_PROMPT` is assembled dynamically on the fly. Depending on the context, different personality modules are injected into the base prompt.
|
||||||
|
* **Long-Term Memory (LTM):** The bot utilizes a "Diary" system (SQLite). It does not simply feed the entire chat history to the LLM. Instead, it injects: `[Base Persona] + [LTM Summary] + [Recent Context]`.
|
||||||
|
* **Background "Thinking":** When you are inactive, a background process (`run_memory_summarization`) analyzes recent conversations, extracts key facts about you (hobbies, problems, plans), and saves them to the LTM database.
|
||||||
|
|
||||||
|
#### 💖 2. Relationships & Biological States
|
||||||
|
* **Relationship Progression:** The bot supports three distinct stages: Stranger, Friend, and Lover.
|
||||||
|
* **Auto-Progression:** The bot automatically detects romantic intent and upgrades the relationship status.
|
||||||
|
* **Simulated 28-Day Cycle:** The bot tracks a simulated cycle that affects her mood and prompt directives:
|
||||||
|
* **Period (Days 1-7):** She may feel moody, crave comfort, and will refuse NSFW interactions.
|
||||||
|
* **Ovulation (Days 12-16):** She becomes more flirtatious, confident, and affectionate.
|
||||||
|
|
||||||
|
#### 👁️ 3. Multimodal Perception ("Sensors")
|
||||||
|
* **Vision (Image Recognition):** You can send photos to the bot. She "sees" them and comments on them naturally.
|
||||||
|
* **Hearing (Voice Messages):** Integrated **OpenAI Whisper** allows the bot to listen to your voice notes and respond to them as text.
|
||||||
|
* **Context Awareness:** She detects your work schedule and respects your time (avoiding distractions during work hours).
|
||||||
|
|
||||||
|
#### 💬 4. Advanced Interaction & Visuals
|
||||||
|
* **AI Spontaneous Messages:** No hardcoded templates. If you haven't texted in a while, she generates a unique, context-aware message to check on you.
|
||||||
|
* **High-Quality Image Generation:**
|
||||||
|
* Powered by **SD.Next** and the **AAM XL (Anime Mix)** model for top-tier anime aesthetics.
|
||||||
|
* **SFW by Default:** Generates cute/cozy selfies based on the conversation context.
|
||||||
|
* **Contextual NSFW:** Explicit generation is **strictly gated** (requires 'Lover' status, specific user request, and appropriate timing).
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### 🛠️ Tech Stack & Requirements
|
||||||
|
|
||||||
|
* **Python 3.10+**
|
||||||
|
* **Ollama:** Running locally (default LLM: `gemma3:12b`).
|
||||||
|
* **Image Generation Engine:**
|
||||||
|
* **[SD.Next](https://github.com/vladmandic/sdnext):** An advanced implementation of Stable Diffusion (by vladmandic), running with the `--api` flag.
|
||||||
|
* **Checkpoint Model:** **[✨ JANKU Trained + NoobAI + RouWei Illustrious XL ✨](https://civitai.com/models/1277670?modelVersionId=2358314)**. This SDXL model is required for the intended visual style.
|
||||||
|
* **FFmpeg:** Required for Whisper voice processing.
|
||||||
|
|
||||||
|
### 📦 Installation
|
||||||
|
|
||||||
|
1. **Clone the repository:**
|
||||||
|
```bash
|
||||||
|
git clone https://git.maxo.one/Maxo/MyStar.git
|
||||||
|
cd MyStar
|
||||||
|
```
|
||||||
|
|
||||||
|
2. **Install dependencies:**
|
||||||
|
```bash
|
||||||
|
pip install python-telegram-bot python-telegram-bot[job-queue] openai-whisper requests
|
||||||
|
```
|
||||||
|
|
||||||
|
3. **Setup SD.Next:**
|
||||||
|
* Install [SD.Next](https://github.com/vladmandic/sdnext).
|
||||||
|
* Download the **AAM XL** checkpoint and place it in the `models/Stable-diffusion` folder.
|
||||||
|
* Launch SD.Next with API enabled: `./webui.sh --api` (or `.bat` on Windows).
|
||||||
|
|
||||||
|
4. **Environment Setup:**
|
||||||
|
Set the following environment variable:
|
||||||
|
```bash
|
||||||
|
export TELEGRAM_BOT_TOKEN="your_telegram_bot_token"
|
||||||
|
# Optional:
|
||||||
|
# export OLLAMA_NUM_GPU=63
|
||||||
|
```
|
||||||
|
|
||||||
|
5. **Run:**
|
||||||
|
```bash
|
||||||
|
python MyStarEN.py
|
||||||
|
```
|
||||||
|
|
||||||
|
### 📄 License
|
||||||
|
|
||||||
|
MIT License. See `LICENSE` file for details.
|
||||||
Reference in New Issue
Block a user