Welcome to ChatCV, an innovative and interactive tool designed to present your curriculum vitae (CV) in a unique and engaging format.
ChatCV leverages the power of Retrieval-Augmented Generation (RAG) and ChatGPT to create a dynamic, conversational experience for showcasing your professional profile. Unlike traditional personal webpages, ChatCV offers a distinctive approach to presenting your information, making your CV more interactive and accessible. This project features LangChain, LangServe, and LLama-index libraries.
- Interactive Chat Interface: Engage viewers with a conversational format that can answer questions and provide detailed information about your career and qualifications.
- Enhanced Presentation: Move beyond static text and typical layouts by offering a more engaging way to explore your professional background.
- Customizable Content: Tailor the chat responses to highlight key aspects of your experience, skills, and accomplishments.
- User-Friendly: Easy to set up and use, allowing you to focus on what matters most – your career journey.
- Stand Out: Differentiate yourself from others by using a modern and interactive method to present your CV.
- Increased Engagement: Potential employers and network connections are more likely to interact with and remember your profile.
- Accessibility: Provide information in a conversational manner that can be more intuitive and accessible to a wider audience.
To install ChatCV, follow these steps:
- Clone the repository.
- Add your CV, publications, etc., to the
chatcv/media
directory. These files will be used as retrieved context for the chat. All types of textual files can be uploaded. - Create a GPT key. You can create a
.env
file to use this key for debugging. Remember to keep this key private! - Deploy the app. This app can be easily deployed on Railway. Alternatives are suggested by LangServe.
- Add the API URL to the
frontend/streamlit_frontend.py
file. Update the template questions of the frontendtemplate_questions = []
Here's how you can use ChatCV:
- Process your media files and embed them for retrieval. To recalculate embeddings, use
https://API/compute_embeddings
. - Run the Streamlit chat with
streamlit run frontend/streamlit_frontend.py
. The Streamlit front-end can be deployed for free in Streamlit - To add new files or update existing ones, upload new files to the
media
folder and reprocess the embeddings via the API.
[Lorenzo Baraldi] © [2024]. [Apache 2.0 License].