Chèn một lớp RAG vào Dự án của tôi và Kinh nghiệm của tôi với Cursor Lời bài hát: Dr của tôi Đối với dự án LangChain-MySQL cho thấy một đại lý LangChain nhiều giai đoạn cho phép bạn đặt câu hỏi bằng ngôn ngữ tự nhiên qua MySQL. Tuy nhiên, lời nhắc nặng và các cuộc gọi LLM lặp đi lặp lại làm cho hệ thống chậm chạp và dễ bị lỗi OpenAI “429 Too Many Requests”. Đầu tiên Bài viết Đầu tiên Bài viết What’s new in Part 2: chỉ tải các mảnh sơ đồ bạn cần - cột, phím, chỉ mục - vì vậy các yêu cầu thu hẹp và độ trễ giảm. Persistent FAISS vector store - đơn vị, tích hợp, và mock-DB thử nghiệm kết nối vào CI - nắm bắt các trường hợp schema-drift và thu thập cạnh trước khi họ đạt được sản xuất. Comprehensive test suite Thêm mối quan hệ khóa nước ngoài vào vector DB, giúp cải thiện trình bày biểu đồ và giảm sử dụng token. LLM rate‑limit resolution — Trước khi chúng ta đi sâu vào, đây là hai show-stopper từ Phần 1: Problem 1 — LLM Lost in Table Relationships LLM không biết làm thế nào các bảng của bạn kết nối - bạn kết thúc bằng cách viết ra mỗi con đường tham gia bằng tay trong mỗi lời nhắc. Problem 2 — Schema Bulk Breaks Rate Limits Bơm toàn bộ sơ đồ cơ sở dữ liệu vào yêu cầu của bạn tiêu thụ token và hầu như luôn luôn đi qua 429 lỗi của OpenAI trước khi bạn thậm chí nhận được một câu trả lời. Nghiên cứu và giải quyết: What is a Vector Database? a là là một kho dữ liệu chuyên dụng được thiết kế để giữ và truy vấn (Các chuỗi số) thay vì các hàng và cột truyền thống. vector database vector representations Integrating the Vector Database Tất cả các siêu dữ liệu biểu đồ của cơ sở dữ liệu - DDL, PK / FK mối quan hệ, chỉ mục thông tin, nhận xét - được kéo vào tài liệu phong phú, sau đó nhúng và duy trì trong FAISS để tìm kiếm ngữ nghĩa nhanh chóng. Why FAISS? LLM đề xuất FAISS. Ngoài ra Tôi cũng có thể sử dụng hoặc - Mỗi hỗ trợ lưu trữ nhúng và truy xuất nhanh và có thể đáp ứng các yêu cầu của dự án này. FAISS Khánh Hòa, Khánh Hòa Weaviate (Facebook AI Similarity Search) là một thư viện mã nguồn mở được phát triển bởi nhóm nghiên cứu AI cơ bản của Meta để tìm kiếm sự tương đồng hiệu quả và nhóm các vector dày đặc. FAISS What I Store: More Than Just a Table Blueprint? Quan trọng hơn, tôi không chỉ lưu trữ các chi tiết sơ đồ cơ bản như bảng và tên cột trong cơ sở dữ liệu vector này. What is RAG? Retrieval-Augmented Generation (RAG) là mô hình của: Lấy các nhúng có liên quan nhất từ vector DB, Tăng tốc độ của LLM với bối cảnh thu hồi đó, Tạo ra câu trả lời cuối cùng. Nói cách khác, RAG phụ thuộc vào một vector DB để thu thập chỉ số kiến thức đúng trước khi gọi LLM. Why They Matter to LLM-Powered Apps? Một vector DB + RAG cho phép bạn giữ "cơ sở kiến thức" của bạn bên ngoài yêu cầu và chỉ kéo vào những gì cần thiết. Hãy nghĩ về LLM như một sinh viên có thể nhớ chỉ một vài trang tại một thời điểm. vector DB là danh mục của thư viện, và RAG là dòng công việc của việc thu thập các trang chính xác cần thiết trước khi học sinh viết bài luận của họ. How Vector DB Helps with LLM API Rate Limit? Một cơ sở dữ liệu vector lưu trữ sơ đồ của bạn dưới dạng nhúng – mỗi bảng, cột hoặc mối quan hệ trở thành một phần có thể tìm kiếm. Khi một người dùng hỏi một câu hỏi (chẳng hạn như “Có bao nhiêu bệnh nhân đã truy cập tuần trước?”), hệ thống biến câu hỏi đó thành nhúng và thực hiện một tìm kiếm tương đồng. - Như , và . top-k most relevant tables patients visits appointments Bối cảnh tập trung này sau đó được chuyển đến LLM, giữ cho các yêu cầu nhỏ trong khi vẫn cung cấp thông tin cần thiết để tạo ra SQL chính xác. Retrieval-Augmented Generation Flow (Steps 4 & 5) for the Project Sau khi thực hiện nhận thức khóa nước ngoài trong cơ sở dữ liệu vector của tôi, 2 vấn đề (được nêu ở trên) được giải quyết đúng cách. GitHub liên kết: click here Ở đây Demo Tôi đang tải một database mẫu - Trong môi trường thử nghiệm Sakila sakila Sakila Sakila Mỗi câu trả lời bao gồm 3 phần Lời bài hát SQL Query Query Kết quả Giải thích Thì Thì Thì In the Second Half of This Article, How Do I Steer My AI Coder(s)? Trong nửa thứ hai của bài viết này, Làm thế nào để tôi điều khiển bộ mã hóa AI của tôi? Tôi đã thúc đẩy dự án bằng cách đặt mục tiêu và đặt câu hỏi, LLM xử lý việc nâng nặng. nó nhấn mạnh các vấn đề, đề xuất các giải pháp và giải thích các thỏa hiệp, trong khi tôi đưa ra quyết định cuối cùng về con đường nào để đi. Một vài lời khuyên cho các tài xế: Đặt mục tiêu và ưu tiên rõ ràng, sau đó để LLM xử lý các chi tiết thực hiện. First, Think Like a Leader: Chạy các bài kiểm tra, yêu cầu LLM để xử lý bất kỳ thất bại, và bạn sẽ thường thấy nó gợi ý thiết kế sạch hơn ở giữa chạy. Solid tests are your safety net — but with the LLM acting as your pair programmer, you get instant feedback. Giống như một người quản lý con người, quản lý vi phạm hiệu quả của nhóm. Xác định những gì cần xảy ra, nhưng tin tưởng LLM để quyết định làm thế nào. Các lời nhắc quá hạn chế có thể dẫn đến các thiết kế kỳ lạ hoặc lỗi ẩn. Hơn nữa, nó kéo bạn vào các chi tiết thực hiện và làm bạn mệt mỏi. Tất nhiên, khi bạn rơi vào tình huống này, sẽ cảm thấy tốt hơn khi viết mã bằng tay. Avoid Micromanagement: - Nếu LLM chạy hoặc rời khỏi đường đua, một cú đẩy nhanh hoặc làm rõ là tất cả những gì cần thiết để trở lại khóa học. Nó không phải là hiếm khi cho một LLM để dành 20 phút cố gắng để sửa chữa một bài kiểm tra mà không thành công. tuy nhiên, nó chỉ mất một phút để tìm ra nguyên nhân gốc rễ. đội ngũ robot của chúng tôi luôn cần giám đốc. Intervene When Needed Đừng quên - mỗi yêu cầu LLM tốn tiền. Hãy lưu ý điều này khi LLM đang ở chế độ tự hỏi. Linkedin của tôi HERE Ở đây