Spaces:
Sleeping
Sleeping
Update README.md
Browse files
README.md
CHANGED
|
@@ -8,11 +8,12 @@ python_version: 3.10.13
|
|
| 8 |
|
| 9 |
# Totem
|
| 10 |
|
| 11 |
-
A proxy chatbot to answer professional and personal questions about yourself using AI. This application creates an interactive chat interface powered by OpenAI (or local LLM) that can answer questions about your background, career, and experience based on your LinkedIn profile and personal summary. See demo [here](https://huggingface.co/spaces/maihuuthien/totem).
|
| 12 |
|
| 13 |
## Features
|
| 14 |
|
| 15 |
- π€ AI-powered chat interface using GPT-4o-mini or local Ollama models
|
|
|
|
| 16 |
- π Automatically ingests your LinkedIn profile (PDF) and personal summary
|
| 17 |
- π§ Collects interested visitor contact information
|
| 18 |
- π± Push notifications via Pushover for new contacts and unknown questions
|
|
@@ -118,7 +119,7 @@ uv sync
|
|
| 118 |
|
| 119 |
This command will:
|
| 120 |
- Create a virtual environment (`.venv`)
|
| 121 |
-
- Install Python 3.
|
| 122 |
- Install all dependencies from `pyproject.toml`
|
| 123 |
|
| 124 |
### Step 6: Create Environment File
|
|
@@ -135,6 +136,10 @@ Open `.env` in your editor and add your configuration:
|
|
| 135 |
# Required for deployment (HuggingFace with OpenAI)
|
| 136 |
OPENAI_API_KEY=sk-proj-your-openai-api-key-here
|
| 137 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| 138 |
# Optional: Pushover notifications
|
| 139 |
PUSHOVER_USER=your-pushover-user-key
|
| 140 |
PUSHOVER_TOKEN=your-pushover-app-token
|
|
@@ -146,6 +151,7 @@ PUSHOVER_TOKEN=your-pushover-app-token
|
|
| 146 |
|
| 147 |
**Where to get keys:**
|
| 148 |
- **OpenAI API Key**: Sign up at [platform.openai.com](https://platform.openai.com/), go to API Keys section
|
|
|
|
| 149 |
- **Pushover Keys**: Create account at [pushover.net](https://pushover.net/), create an application to get token
|
| 150 |
|
| 151 |
### Step 7: Personalize Your Chatbot
|
|
@@ -172,6 +178,14 @@ PUSHOVER_TOKEN=your-pushover-app-token
|
|
| 172 |
self.name = "Your Full Name"
|
| 173 |
```
|
| 174 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 175 |
## Running Locally
|
| 176 |
|
| 177 |
### Option A: With Local Ollama (Windows Host)
|
|
@@ -296,14 +310,17 @@ Gradio will update your existing space with the new changes.
|
|
| 296 |
|
| 297 |
```
|
| 298 |
totem/
|
|
|
|
| 299 |
βββ app.py # Main application file
|
| 300 |
βββ README.md # HuggingFace Space configuration
|
| 301 |
βββ me/
|
| 302 |
β βββ linkedin.pdf # Your LinkedIn profile PDF
|
| 303 |
β βββ summary.txt # Your personal summary
|
|
|
|
| 304 |
βββ .env # Environment variables (create this)
|
| 305 |
βββ pyproject.toml # Project dependencies and metadata
|
| 306 |
-
βββ
|
|
|
|
| 307 |
βββ LICENSE # License file
|
| 308 |
βββ README.md # This file
|
| 309 |
```
|
|
|
|
| 8 |
|
| 9 |
# Totem
|
| 10 |
|
| 11 |
+
A proxy chatbot to answer professional and personal questions about yourself using AI. This application creates an interactive chat interface powered by OpenAI (or local LLM) that can answer questions about your background, career, and experience based on your LinkedIn profile and personal summary. On top of that, user can also *see* and *hear* you speaking out loud the answer. See demo [here](https://huggingface.co/spaces/maihuuthien/totem).
|
| 12 |
|
| 13 |
## Features
|
| 14 |
|
| 15 |
- π€ AI-powered chat interface using GPT-4o-mini or local Ollama models
|
| 16 |
+
- πββοΈ Play the last answer with your talking avatar
|
| 17 |
- π Automatically ingests your LinkedIn profile (PDF) and personal summary
|
| 18 |
- π§ Collects interested visitor contact information
|
| 19 |
- π± Push notifications via Pushover for new contacts and unknown questions
|
|
|
|
| 119 |
|
| 120 |
This command will:
|
| 121 |
- Create a virtual environment (`.venv`)
|
| 122 |
+
- Install Python 3.10.13 if needed
|
| 123 |
- Install all dependencies from `pyproject.toml`
|
| 124 |
|
| 125 |
### Step 6: Create Environment File
|
|
|
|
| 136 |
# Required for deployment (HuggingFace with OpenAI)
|
| 137 |
OPENAI_API_KEY=sk-proj-your-openai-api-key-here
|
| 138 |
|
| 139 |
+
# Optional: ElevenLabs for text-to-speech
|
| 140 |
+
ELEVENLABS_API_KEY=sk_your-elevenlabs-api-key-here
|
| 141 |
+
ELEVENLABS_VOICE_ID=your-voice-id
|
| 142 |
+
|
| 143 |
# Optional: Pushover notifications
|
| 144 |
PUSHOVER_USER=your-pushover-user-key
|
| 145 |
PUSHOVER_TOKEN=your-pushover-app-token
|
|
|
|
| 151 |
|
| 152 |
**Where to get keys:**
|
| 153 |
- **OpenAI API Key**: Sign up at [platform.openai.com](https://platform.openai.com/), go to API Keys section
|
| 154 |
+
- **ElevenLabs API Key**: Sign up at [elevenlabs.io](https://elevenlabs.io/), go to Developers, then API Keys tab
|
| 155 |
- **Pushover Keys**: Create account at [pushover.net](https://pushover.net/), create an application to get token
|
| 156 |
|
| 157 |
### Step 7: Personalize Your Chatbot
|
|
|
|
| 178 |
self.name = "Your Full Name"
|
| 179 |
```
|
| 180 |
|
| 181 |
+
4. **Update your voice clone:**
|
| 182 |
+
- I'm using [ElevenLabs](https://elevenlabs.io/voice-cloning). If yours is another provider, you'll need to update the code accordingly.
|
| 183 |
+
- Otherwise, you can simply add your `ELEVENLABS_API_KEY` and `ELEVENLABS_VOICE_ID` environment variables.
|
| 184 |
+
|
| 185 |
+
5. **Update your talking head:**
|
| 186 |
+
- Replace `me/ref_video.mp4` with another video of yourself talking
|
| 187 |
+
- The reference video should be long enough to cover most generated speeches (preferably 30-50 seconds)
|
| 188 |
+
|
| 189 |
## Running Locally
|
| 190 |
|
| 191 |
### Option A: With Local Ollama (Windows Host)
|
|
|
|
| 310 |
|
| 311 |
```
|
| 312 |
totem/
|
| 313 |
+
βββ LatentSync/ # Lip-syncing package (inference only)
|
| 314 |
βββ app.py # Main application file
|
| 315 |
βββ README.md # HuggingFace Space configuration
|
| 316 |
βββ me/
|
| 317 |
β βββ linkedin.pdf # Your LinkedIn profile PDF
|
| 318 |
β βββ summary.txt # Your personal summary
|
| 319 |
+
β βββ ref_video.mp4 # Your talking head as reference
|
| 320 |
βββ .env # Environment variables (create this)
|
| 321 |
βββ pyproject.toml # Project dependencies and metadata
|
| 322 |
+
βββ requirements.txt # Pip package dependencies as alternative
|
| 323 |
+
βββ Dockerfile # Docker for fast startup on HuggingFace
|
| 324 |
βββ LICENSE # License file
|
| 325 |
βββ README.md # This file
|
| 326 |
```
|