Shagon1k / AHurynovich-CV

Aliaksei's curriculum vitae
MIT License
3 stars 0 forks source link

[AH-67] Consider integration of AI helper (via chat) #181

Open Shagon1k opened 8 months ago

Shagon1k commented 8 months ago

Description

The idea is to integrate LiveChat-like AI which will be learned based on my CV, experience and be able to answer the questions from user based on it.

Steps

  1. Design chat button + chat;
  2. Implement chat backbone;
  3. Choose AI, learn it, check how to integrate;
  4. Integrate learned AI to web site.

Note: Use Adapter pattern to be able to switch to another AI easily.

Yes, you can integrate AI-based LiveChat into your personal CV website. This is a great way to provide 24/7 availability for potential employers and answer frequently asked questions about yourself and your experience. Here are some steps to get you started:

Choose an AI-powered Chatbot platform: There are several chatbot platforms that offer AI-powered features. Some popular options include  Dialogflow by Google https://cloud.google.com/dialogflow, Microsoft Bot Framework https://botframework.com/, and IBM Watson Assistant https://www.ibm.com/products/watsonx-assistant. These platforms provide tools to train your chatbot on your provided data and answer questions in a conversational way.

Prepare your training data: The quality of your chatbot's responses will depend on the quality of the data you use to train it. This data should include information about yourself, your skills, experience, education, and any other relevant details you want the chatbot to be able to answer questions about. You can provide the data in various formats, such as text files,  question-answer pairs, or conversation logs.

Train your chatbot: Each platform will have its own specific process for training a chatbot. In general, you will need to upload your training data to the platform and follow their instructions for setting up your chatbot. The platform will use your data to train a machine learning model that can identify patterns in your responses and generate similar responses to new questions.

Integrate the chatbot into your website: Once your chatbot is trained, you will need to integrate it into your website. The chatbot platform will provide you with code snippets that you can add to your website's code to embed the chatbot. This will typically involve adding a chat window to your website where visitors can interact with the chatbot.

Test and refine your chatbot: Once the chatbot is integrated into your website, it's important to test it thoroughly. Ask friends, family, or colleagues to interact with the chatbot and see how well it answers their questions. You can then use their feedback to refine your chatbot's training data and improve its responses.

Here are some additional things to keep in mind:

Privacy: Since the chatbot will be trained on your data, it's important to consider privacy implications. Make sure you understand how the chatbot platform stores and uses your data, and be sure to inform visitors to your website that they are interacting with a chatbot.
Transparency: It's a good idea to let visitors to your website know that they are interacting with a chatbot and not a real person. This will help to manage expectations and avoid any confusion.
Limitations: AI chatbots are still under development, and they may not be able to answer all questions perfectly. Be sure to set realistic expectations for what your chatbot can and cannot do.
By following these steps, you can integrate AI-based LiveChat into your personal CV website and provide a more engaging and informative experience for potential employers.
 there are free options for AI-powered chatbots that you can explore for your website:

Dialogflow Free Tier:  Google's Dialogflow offers a free tier that allows you to create basic chatbots with limited features. This tier includes 30,000 text requests per month, which might be sufficient for a personal CV website with lower traffic. It provides the core functionality to train your chatbot on your data and integrate it into your site.

Microsoft Bot Framework Freemium: Similar to Dialogflow, Microsoft Bot Framework has a free tier with limitations. The free tier allows you to publish your chatbot and get basic analytics, but may limit the number of monthly active users or interactions. This can be a good option to test and experiment with chatbot functionalities for your website.

Open-source Chatbot Frameworks: If you're comfortable with coding, you can explore open-source chatbot frameworks like Rasa https://rasa.com/docs/rasa/.  These frameworks require more technical expertise to set up and train, but offer more flexibility and customization compared to no-code options. However, they might involve additional effort to integrate into your website.

Limited Free Trials: Many chatbot platforms offer limited free trials that give you full access to their features for a certain period. You can leverage these trials to build and train your chatbot, then export it for self-hosting or migrate it to a different platform if needed. This can be a good way to test out the advanced features before committing to a paid plan.

Remember, free tiers often come with limitations on features, usage quotas, or data storage.  Carefully consider your needs and the chatbot's capabilities before choosing a free option.

https://www.raymondcamden.com/2024/04/30/building-a-chat-integration-with-google-gemini

https://www.youtube.com/watch?v=hmxthskB8Zc

Shagon1k commented 6 months ago

https://www.raymondcamden.com/2024/04/30/building-a-chat-integration-with-google-gemini

Shagon1k commented 5 months ago

image AI bot could be at the header (as I already have "Scroll top" button at the bottom-right) It could be either clicked to initiate the chatbox OR fetch random fact about me (10-20 words) to display comic-like box like "Do you know, that Aliaksei...".

Thus, potentialy 2 different calls should be implemented (e.g. through AWS API Gateway + Lambda): 1) GET answer (send question (prompt) -> recieve answer from AI bot) 2) GET random fact (just recieve random fact from AI bot using constant prompt like "Give me a random fact about Aliaksei, 20-30 words"