cedric-agent / README.md
claridon's picture
Upload folder using huggingface_hub
d1b7767 verified

A newer version of the Gradio SDK is available: 6.3.0

Upgrade
metadata
title: cedric-agent
app_file: app.py
sdk: gradio
sdk_version: 5.39.0

Cedric Agent - Personal AI Chatbot

A personal AI chatbot that represents Cedric Laridon on his website, answering questions about his career, background, skills, and experience.

Features

  • Personal AI Assistant: Acts as Cedric Laridon, answering questions about his professional background
  • LinkedIn Integration: Uses Cedric's LinkedIn profile data to provide accurate responses
  • Contact Recording: Captures visitor contact information and unknown questions via Pushover notifications
  • Web Interface: Clean Gradio interface for easy interaction
  • Professional Engagement: Designed to engage potential clients and employers

Setup

Prerequisites

  • Python 3.12 or higher
  • uv (recommended) or pip
  • OpenAI API key
  • Pushover account (optional, for notifications)

Installation

  1. Clone the repository:
git clone https://github.com/cedriclaridon/cedric-agent.git
cd cedric-agent
  1. Install dependencies using uv (recommended):
uv sync

Or using pip:

pip install -r requirements.txt
  1. Create a .env file in the root directory with your API keys:
OPENAI_API_KEY=your_openai_api_key_here
PUSHOVER_TOKEN=your_pushover_token_here
PUSHOVER_USER=your_pushover_user_key_here

Running the Application

Using uv (recommended):

uv run python app.py

Or using python directly:

python app.py

The application will launch a Gradio interface, typically accessible at http://localhost:7860.

Configuration

Environment Variables

  • OPENAI_API_KEY: Required. Your OpenAI API key for GPT-4o-mini
  • PUSHOVER_TOKEN: Optional. Pushover application token for notifications
  • PUSHOVER_USER: Optional. Pushover user key for notifications

Personal Data

The chatbot uses two main sources of personal information:

  1. me/summary.txt: A brief personal summary
  2. me/cedric-linkedin.pdf: LinkedIn profile export in PDF format

Update these files with your own information to customize the chatbot for your use.

How It Works

  1. System Prompt: The chatbot is given a comprehensive system prompt that includes personal summary and LinkedIn data
  2. Function Calling: Uses OpenAI's function calling to record user details and unknown questions
  3. Notifications: Sends real-time notifications via Pushover when users provide contact info or ask unknown questions
  4. Conversation Flow: Designed to engage users and encourage them to provide contact information

Customization

To adapt this chatbot for your own use:

  1. Replace me/summary.txt with your personal summary
  2. Replace me/cedric-linkedin.pdf with your LinkedIn profile PDF
  3. Update the name in app.py (line 80: self.name = "Your Name")
  4. Modify the system prompt in the system_prompt() method if needed
  5. Update the contact information in this README

License

This project is licensed under the MIT License - see the LICENSE file for details.

Contributing

This is a personal project, but feel free to fork it and adapt it for your own use. If you have suggestions for improvements, please open an issue.

Contact

For questions about this project, please contact Cedric Laridon through the chatbot interface or via the contact methods provided on his website.