Discover how to build an intelligent book recommendation system using the power of large language models and Python. Learn to transform book descriptions into mathematical representations that enable precise content-based matching. By the end of this course, you'll have built a recommendation engine that helps readers discover their next favorite book. 💻 Code from this tutorial: https://github.com/t-redactyl/llm-semantic-book-recommender/tree/main 🏗️ JetBrains provided a grant to make this course possible. ⭐️ Resources ⭐️ Free 3-Month PyCharm Professional Subscription Code: PyCharm4FreeCodeCamp Download PyCharm: https://jb.gg/pycharm-fcc Redeem PyCharm 3-month free license: jetbrains.com/store/redeem Download PyCharm: https://jb.gg/pycharm-fcc Kaggle datasets: https://kaggle.com/datasets 7K books dataset by Dylan Castillo: https://kaggle.com/datasets/dylanjcastillo/7k-books-with-metadata Hugging Face free NLP course: https://huggingface.co/learn/nlp-course/en/ Explanation of transformer encoder-decoder models (from Hugging Face NLP course): https://huggingface.co/learn/nlp-course/en/chapter1/7 Explanation of transformer decoder-only models (from Hugging Face NLP course): https://huggingface.co/learn/nlp-course/en/chapter1/6 Explanation of transformer encoder-only models (from Hugging Face NLP course): https://huggingface.co/learn/nlp-course/en/chapter1/5 Hugging Face Hub models page: https://huggingface.co/models OpenAI models: https://platform.openai.com/docs/models Explanation of vector index (from Weaviate): https://weaviate.io/developers/weaviate/concepts/vector-index LangChain Python docs: https://python.langchain.com/docs/introduction LangChain chat model integrations: https://python.langchain.com/docs/integrations/chat OpenAI billing page: https://platform.openai.com/settings/organization/billing/overview OpenAI API keys page: https://platform.openai.com/settings/organization/api-keys Explanation of zero-shot classification (from Hugging Face): https://huggingface.co/tasks/zero-shot-classification Information about fine-tuned emotion classification model: https://dataloop.ai/library/model/j-hartmann_emotion-english-distilroberta-base Getting started with Gradio: https://gradio.app/guides/quickstart Gradio playground: https://gradio.app/playground Gradio themes: https://gradio.app/guides/theming-guide Further work by Jodie about LLMs Talk from GOTO Amsterdam giving an overview of LLMs: https://youtube.com/watch?v=Pv0cfsastFs Talk from NDC Oslo about whether LLMs are showing signs of humanity: https://youtube.com/watch?v=kqJ7rZHFx84 Talk from PyCon US about hallucinations in LLMs: https://youtube.com/watch?v=innz9iBIAdU Tutorial on doing sentiment analysis with LLMs: https://blog.jetbrains.com/pycharm/2024/12/how-to-do-sentiment-analysis-with-large-language-models/ Article on LLM’s understanding of language: https://t-redactyl.io/blog/2024/06/can-llms-use-language-at-a-human-like-level.html Article on sentience in LLMs: https://t-redactyl.io/blog/2024/07/could-llms-be-sentient.html Article on intelligence in LLMs: https://t-redactyl.io/blog/2024/07/are-llms-on-the-path-to-agi.html 12:25 ❤️ Support for this channel comes from our friends at Scrimba – the coding platform that's reinvented interactive learning: https://scrimba.com/freecodecamp ⭐️ Chapters ⭐️ 0:00:00 Intro 0:03:05 Introduction to getting and preparing text data 0:05:51 Starting a new PyCharm project 0:16:59 Patterns of missing data 0:25:21 Checking the number of categories 0:28:27 Remove short descriptions 0:34:36 Final cleaning steps 0:38:11 Introduction to LLMs and vector search 0:54:43 LangChain 0:58:46 Splitting the books using CharacterTextSplitter 1:02:57 Building the vector database 1:05:50 Getting book recommendations using vector search 1:11:07 Introduction to zero-shot text classification using LLMs 1:15:34 Finding LLMs for zero-shot classification on Hugging Face 1:22:21 Classifying book descriptions 1:26:24 Checking classifier accuracy 1:35:19 Introduction to using LLMs for sentiment analysis 1:39:25 Finding fine-tuned LLMs for sentiment analysis 1:42:07 Extracting emotions from book descriptions 1:54:25 Introduction to Gradio 1:56:51 Building a Gradio dashboard to recommend books 2:12:49 Outro