This track equips learners to proficiently create, integrate, test, and deploy AI-driven applications and prompt engineering solutions, leveraging modern AI models and real-life cloud environments. This is a back-end oriented project.
Project Definition
💜 Purpose
PersonaMatic is a tool designed to streamline the creation of user personas based on text document input. By capturing insights directly from a previously transcribed user interview, the application simplifies the process of Persona development, making it faster and more aligned with real user feedback.
🧿 Objectives
- Automate Persona creation using a document reader and natural language processing (NLP).
- Provide a pre-set template for Personas to ensure uniformity and clarity.
- Allow seamless rendering of user personas in a visually engaging, consistent format.
- Nice-to-have: Persona profile image creation (or Persona-in-action image creation)
- Nice-to-have: Generate variations of personas where there is either various inputs or uncertainty about some blocks of information
🧝🏻♀️ Target Users
- UX Researchers
- Product Managers
- Marketing Teams
- Design Teams
- BI Teams
- Startup Founders
MVP
Timeline
Week | Topic | Project Tasks | Learning (Read/Watch/Exercise) | Completed |
1 | Idea concept | Elaborate on the idea ✅
discuss with the mentor ✅
Align on the MVP ✅
fine-tune the plan ✅ | Database comparison, Python libraries options, evaluation between the speech input vs. text document input. | ✅ |
2 | Start on executing the pla n | Create a GitHub repo ✅
define endpoints for every entity (adding a user, editing a user, deleting) ✅
persona creation endpoints ✅
create a db diagram ✅ | More elaborate Flask code distribution for sustainability and scaling, hands-on learning on the dbdiagram tool. Discussion on the outcomes. | ✅ |
3 | Elaboration on the initial artifacts, advance code-wise | Table for text inputs / update db architecture ( db_architecture_link ) ✅
visualize user journey ( visual concept ), ✅
endpoints more descriptive e.g. “api/users” to “api/user-creation” ✅
update main “app.py” - have a simple structure ✅ | … to update @Salvis Are | ✅ |
4 | Finish off testing endpoints and fixing Flash ↔ DB interaction | Text input for now (testing) as a plain txt content ✅
Test endpoints with POSTMAN (once functional then we can move to LLM / open-AI) ✅
Fix endpoint issue (POST, GET) ✅
Locate the DB file accordingly ✅ | Intro lesson from Jeremy Howard
ULMFiT approach (Neural Network)
| ✅ |
5 | Make ready all the pending coding things to be able to move forward to AI-stuff | Get user-retrieve endpoint ✅
All users-related endpoints ✅
Read all articles ✅ | ✅ | |
6 | Mock interview and open-ai documentation | 1. Create an interview containing table elements (more than 1 output in each) - add link ✅
2. Structured output. endpoint - /generate-persona (outputs a dict file in a db) - issues encoutered
3. Open-Ai documentation ✅
4. .env file for API key + .gitignore - issues encoutered
5. Fix the Flask bug ✅
6. Draft endpoint for the output generation ✅ | Temperature and max-tokens to expect.
Structured output (additional). | ✅ |
7 | Structured output, prompt engineering | 1. Structured output. endpoint - /generate-persona (outputs a dict file in a db) - issues encoutered
2. More Open-Ai documentation ✅
3. .env file for API key + .gitignore ✅
4. Read about prompt engineering in Resources ✅ | ✅ | |
8 | Prompt improvements, output division into dedicated tables, frontend | 1. Update notion page ✅
2. Resolve all the db table issues ✅
2. Improve system prompt and user prompt ✅
3. Modify a bit response format model (Optional ....) - not sure if needed!!! - nice to have
4. Frontend ✅ | ✅ | |
9 | Prepare for the presentation / finalize work | 1. Readme file in the git repo, describing workflow etc ✅
2. Couple of slides explaining, tech stack, functionality etc - focus more on the tech-stack, why open-ai, techniques tried on the prompting, db info, slides from the front-end and endpoints in general ✅
3. Record my screen presenting ✅.
4. Future directions and features (e.g., avatar generation) ✅ | Final presentation link
The final presentation video is uploaded and available below this table |
Final presentation PDF & Video:
MVP requirements
1. Text (and/or audio) Input Processing
- Support for popular text document formats (e.g., .PDF, .txt).
- To detect key information types (e.g., age, gender, occupation, interests).
- Interpret goals, motivations, and pain points through sentiment analysis and keyword extraction.
- Summarize qualitative data into actionable persona insights.
- Automatically populate persona fields such as name, age, background, goals, and frustrations.
2. Persona rendering
- Render personas in a consistent, template-based format.
- Enable export options in formats like PDF, PNG, and JPEG.
- Enable digital access to the User Persona
- Nice to have: Include visual components such as user photo placeholders, quote sections, and demographic icons.
- At least three customizable templates at launch.
- Allow users to save customized templates for future use.
- User consent for text processing
- Store completed personas in a secure database.
- Provide options to delete, or share personas
V2 optional requirements
- Front-end
✅
- AI image creation (e.g., persona performing some sort of activity)
- Registering / Login area
- Persona output manipulation (e.g., if there are several data inputs or the information of interest is not clear)
PersonaMatic_ Project Presentation.pdf1058.6KB
Thank you,
Salvis Are.