maihuuthien commited on
Commit
d1d6359
Β·
verified Β·
1 Parent(s): 75a3d4b

Update README.md

Browse files
Files changed (1) hide show
  1. README.md +20 -3
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.12+ if needed
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
- β”œβ”€β”€ Dockerfile # Docker for fast starting on HuggingFace
 
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
  ```