Превратите любую степень магистра права в эксперта 📚 Интенсивный курс программирования RAG
Python Simplified
0:00 / 0:00
Превратите любую степень магистра права в эксперта 📚 Интенсивный курс программирования RAG
24 465 просмотров · 2 месяца назад
Python Simplified
285 тыс. подписчиков
24 465 просмотров · 2 месяца назад
Что если бы вы могли взять любую языковую модель и превратить её в эксперта, предоставив ей быстрый доступ к документам? 🤔 Огромное спасибо HubSpot за спонсорство этого видео 🙌
⭐ Ознакомьтесь с БЕСПЛАТНОЙ шпаргалкой HubSpot по ИИ-агентам:
https://clickhubspot.com/0acb23
В этом проекте RAG (Retrieval-Augmented Generation), ориентированном на начинающих, мы создадим локальную систему ИИ, которая сможет читать пользовательские документы, интеллектуально искать в них информацию и отвечать на вопросы, используя знания, которые никогда не были частью исходной модели! 📚⚡
Чтобы было интереснее, мы будем использовать коллекцию вымышленных файлов расследований, вдохновлённых «Властелином колец» и «Матрицей», превращая обычную языковую модель в специализированного детектива с ИИ, способного разгадывать тайны, скрытые в наших документах: анализировать подозрительных персонажей, секретные отчёты и скрытые улики, как настоящий профессионал! 🧙♂️🕶️
В отличие от тонкой настройки, мы вообще не будем обучать модель! Вместо этого мы позволим крошечной и не очень умной модели очень быстро искать информацию в документах, извлекать наиболее релевантные данные и использовать их для генерации интеллектуальных ответов в режиме реального времени — хотя мы имеем дело с гигантской сверхинтеллектуальной моделью, которая требует гораздо больше ресурсов и вычислительной мощности. 😎
К концу этого урока у вас будет готовое локальное RAG-приложение, работающее на вашем компьютере с использованием Python, LangChain, Ollama и FAISS — и вы наконец поймете, почему тонкая настройка и RAG — это не одно и то же!
📚 Что вы узнаете:
Что такое RAG (Retrieval-Augmented Generation)
Загрузка PDF-документов в Python
Разделение документов на фрагменты и текста
Создание эмбеддингов из текста
Хранение эмбеддингов с помощью FAISS
Извлечение релевантного контекста из векторной базы данных
Создание полного конвейера RAG с помощью LangChain
Запуск локальных LLM с помощью Ollama
Ответы на вопросы с использованием пользовательских знаний
🛠 Используемые инструменты:
Python
Ollama
Qwen2.5:1.5B (достаточно компактный для работы на ЦП)
BGE-M3
LangChain
FAISS
Jupyter Lab
🚨 Вы преподаватель?
Не стесняйтесь использовать мои видеослайды и идею проекта на своих занятиях! 🙂
Я добавил высококачественный PDF-файл со всеми слайдами из этого видео, который вы можете скачать прямо с YouTube.
Полный исходный код, блокнот и файлы проекта также доступны на GitHub. Вы можете использовать их в своих лекциях, семинарах и занятиях в классе.
Успешного преподавания! 💚
🔎 Ресурсы и полезные руководства:
⭐ Полный код и стартовые файлы на GitHub: https://github.com/MariyaSha/rag_ollama
⭐ Мое руководство по WSL и Conda: • My Go-To Python Setup! 🐍 WSL + Conda Minif...
⭐ Мое руководство по настройке гиперпараметров с помощью Sklearn: • Simple Machine Learning Code Tutorial for ...
⭐ Слайды с занятия (PDF): Скачать напрямую с YouTube 📄
⭐ Ссылки на Ollama и FAISS GPU в закрепленном комментарии 📌
💻 Настройка среды WSL:
conda create -n rag_env python=3.12
conda activate rag_env
pip install \
langchain \
langchain-community \
langchain-ollama \
langchain-text-splitters \
faiss-cpu \
pypdf \
jupyter
⚙️ Импорт модулей:
from langchain_community.document_loaders import PyPDFLoader
from langchain_text_splitters import RecursiveCharacterTextSplitter
from langchain_community.vectorstores import FAISS
from langchain_ollama import OllamaEmbeddings, ChatOllama
from langchain_core.prompts import ChatPromptTemplate
from langchain_core.output_parsers import StrOutputParser
import os
⏰ Временные метки ⏰
00:00 Создание локального RAG-конвейера с Ollama
01:16 Настройка среды (Ollama, LangChain и FAISS)
04:29 Загрузка PDF Документы для RAG
07:24 Шпаргалка по агентам ИИ HubSpot
09:05 Разбиение документов на фрагменты для RAG
11:18 Создание эмбеддингов и построение базы данных векторов FAISS
13:32 Извлечение релевантных документов с помощью FAISS
15:26 Подключение модели чата к вашему конвейеру RAG
20:09 Рекомендации по RAG
20:16 Добавление истории чата в чат-бот RAG
20:54 Присвоение идентификатора вашей модели LLM (системный запрос)
21:27 Запуск RAG на графическом процессоре с Ollama и FAISS
21:49 Загрузка сохраненной базы данных векторов FAISS
22:07 Настройка гиперпараметров для RAG
22:14 Заключительные мысли - Виновен ли Элронд?
#python #pythonprogramming #LLM #AI #RAG #LangChain #Ollama #FAISS #MachineLearning #ArtificialIntelligence #PythonTutorial