От «я ничего не понимал» до создания RAG-приложения
Вчера я потратил весь день на чтение 31 страницы своих собственных заметок по NLP.
Я ничего не понял.
Я думал, проблема во мне. Но нет. Проблема была в моем методе. Чтение заметок — это не обучение. Мои записи были предназначены для экспертов, а не для новичков.
Я изменил подход. Я перестал читать. Вместо этого я начал задавать вопросы. Я использовал простые примеры. Я отказывался использовать технические термины, пока не понимал саму концепцию.
К концу дня я собрал RAG-приложение. Вот как я освоил четыре столпа NLP.
- Bag of Words Компьютеры понимают только математику. Чтобы обрабатывать текст, нужно превратить слова в числа.
Представьте, что вы хотите сортировать письма на спам и не спам. Вы выписываете каждое слово из своих писем. Вы считаете, сколько раз встречается каждое слово. Это превращает письмо в строку чисел.
В чем изъян? Метод игнорирует порядок слов. "Dog bites man" и "man bites dog" для этого метода выглядят одинаково.
- TF-IDF Bag of Words относится ко всем словам одинаково. Но "the" не так важно, как "viagra".
TF-IDF использует два правила:
- Term Frequency (TF): как часто слово встречается в одном письме.
- Inverse Document Frequency (IDF): насколько слово редко встречается во всех письмах.
Эта математика отсеивает слова-паразиты вроде "the" и выделяет важные, редкие слова.
- Embeddings Bag of Words считает, что "money" и "cash" никак не связаны. Embeddings решают эту проблему.
Представьте огромную карту. Каждое слово — это точка на этой карте. Слова с похожим значением находятся рядом. "Money" и "cash" — соседи. "Banana" — далеко.
Компьютер определяет эти координаты, глядя на "окружение" слова. Если "money" и "cash" часто встречаются рядом со словами "bank" и "pay", компьютер разместит их рядом друг с другом.
- RAG (Retrieval-Augmented Generation) Здесь всё сходится воедино.
Если каждая заметка в ваших файлах — это точка на карте, вы можете найти ответы, найдя ближайшие точки.
Процесс RAG:
- Превратить вопрос в точку.
- Найти на карте ближайшие точки-заметки.
- Передать эти заметки ИИ.
- Попросить ИИ ответить, используя только эти заметки.
Это мешает ИИ гадать или лгать. Это заставляет ИИ использовать ваши реальные данные.
Я создал свое приложение, Synapse, используя эти шаги. Я прошел путь от нуля до работающей системы всего за один день.
Урок: Перестаньте просто читать. Начните задавать вопросы. Если вы не можете объяснить концепцию с помощью простой аналогии, значит, вы её ещё не знаете. Создайте что-нибудь, чтобы доказать, что вы понимаете.
Источник: https://dev.to/sabimantock/from-i-understood-nothing-to-building-a-rag-app-4033
Дополнительное обучающее сообщество: https://t.me/GyaanSetuAi