Вмъкване на RAG слой в моя проект и моя опит с курсора Др ; Др Моята За проекта LangChain-MySQL е показано как многоетапният агент LangChain ви позволява да задавате въпроси на естествен език чрез MySQL. Тежките обаждания и повтарящите се повиквания LLM обаче направиха системата бавна и склонна към грешки на OpenAI "429 Too Many Requests". Първо статия Първо статия What’s new in Part 2: зарежда само парчетата схема, от които се нуждаете - колони, клавиши, индекси - така че бутоните се свиват и латентността пада. Persistent FAISS vector store - тестове за единица, интеграция и mock-DB, свързани с CI - улавяне на случаи на схема-дрифт и извличане на ръба, преди да достигнат до производството. Comprehensive test suite Добавени са външни ключови връзки към вектор DB, което подобрява представянето на схемата и намалява използването на токени. LLM rate‑limit resolution — Преди да се потопим, ето и двата шоу-стопъра от част 1: Problem 1 — LLM Lost in Table Relationships LLM не знае как вашите таблици се свързват - в крайна сметка пишете всеки път на присъединяване ръчно във всяка покана. Problem 2 — Schema Bulk Breaks Rate Limits Изхвърлянето на цялата схема на базата данни в заявката ви изяжда токени и почти винаги пропуска 429 грешки на OpenAI, преди дори да получите отговор. Изследване и решаване: What is a Vector Database? А е специализиран магазин за данни, предназначен да държи и запитва (редове от числа) вместо традиционни редове и колони. vector database vector representations Integrating the Vector Database Всички метаданни на схемата на базата данни – DDL, PK/FK взаимоотношения, индекс информация, коментари – се изтеглят в богати документи, след това се вграждат и продължават в FAISS за мълниеносно семантично търсене. Why FAISS? LLM предложи FAISS. в допълнение Също така мога да използвам или - всеки поддържа вградено съхранение и бързо извличане и може да отговаря на изискванията на този проект. Файс Кърджали, Кърджали Тегло (Facebook AI Similarity Search) е библиотека с отворен код, разработена от групата Fundamental AI Research на Meta за ефективно търсене на сходство и групиране на плътни вектори. Файс What I Store: More Than Just a Table Blueprint? Най-важното е, че не само съхранявам основни подробности за схемата като таблици и имена на колони в тази векторна база данни, но и изрично улавям и съхранявам информация за връзките с чужди ключове, които определят как тези таблици се свързват. What is RAG? Retrieval-Augmented Generation (RAG) е модел на: Получаване на най-подходящите вграждания от вектор DB, Увеличаване на упътването на LLM с този възстановен контекст, Създаване на окончателния отговор. С други думи, RAG разчита на вектор DB, за да вземе само правилните части от знания, преди да се обади на LLM. Why They Matter to LLM-Powered Apps? Вектор DB + RAG ви позволява да държите вашата "база от знания" извън поканата и да изтеглите само това, което е необходимо. Представете си LLM като студент, който може да си спомни само няколко страници наведнъж.Векторът DB е каталогът на библиотеката, а RAG е работният поток за извличане на точните страници, необходими, преди студентът да напише есето си. How Vector DB Helps with LLM API Rate Limit? Векторна база данни съхранява вашата схема като вмъквания – всяка таблица, колона или връзка се превръща в търсена част. Когато потребителят зададе въпрос (като „Колко пациенти са посетили миналата седмица?“), системата превръща този въпрос в вмъкване и извършва търсене на сходство. Така както , и . top-k most relevant tables patients visits appointments Този фокусиран контекст след това се предава на LLM, като се запазват малките покани, докато все още се предоставя информацията, от която се нуждае, за да генерира точна SQL. Retrieval-Augmented Generation Flow (Steps 4 & 5) for the Project След прилагане на чуждо ключово осведоменост в моята векторна база данни, 2 проблеми (посочени по-рано) са правилно решени. Връзка с GitHub: click тук тук Демо Аз зареждам примерна база данни - В тестовата среда Сакила sakila Сакила Сакила Всеки отговор съдържа 3 части SQL искане Резултати Query обяснение на на на In the Second Half of This Article, How Do I Steer My AI Coder(s)? Във втората половина на тази статия, Как да управлявам моя AI кодер(и)? Управлявах проекта, като задавах цели и задавах въпроси, LLM се справяше с тежкото повдигане.Той подчертаваше проблемите, предлагаше решения и обясняваше компромисите, докато вземах окончателните решения по кой път да следвам. Няколко съвета за шофьорите: Поставете ясни цели и приоритети, след това оставете LLM да се справи с подробностите за изпълнението. First, Think Like a Leader: Изпълнявайте тестовете, помолете LLM да дебютира всички неуспехи и често ще откриете, че предлага по-чисти дизайни в средата на курса. Solid tests are your safety net — but with the LLM acting as your pair programmer, you get instant feedback. Подобно на човешкия мениджър, микроуправлението уврежда ефективността на екипа. Определете какво трябва да се случи, но се доверете на LLM, за да решите как. Прекомерно ограничаващите напомняния могат да доведат до странни дизайни или скрити бъгове. Освен това, тя ви вкарва в подробностите за изпълнение и ви изтощава. Avoid Micromanagement: — Ако LLM се втурне или се отклони от пистата, бърз скок или изясняване е всичко, което е необходимо, за да се върне на курса. Не е необичайно за LLM да прекарват 20 минути, опитвайки се да поправи тест без успех. Intervene When Needed Не забравяйте - всяко заявление за LLM струва пари. Бъдете наясно с това, когато LLM е в режим на самозапитване. Моят LinkedIn тук тук