MENU

Fun & Interesting

LLM Course – Build a Semantic Book Recommender (Python, OpenAI, LangChain, Gradio)

freeCodeCamp.org 149,429 3 months ago
Video Not Working? Fix It Now

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

Comment