Apabila menghubungkan pengetahuan luaran ke model bahasa yang besar (LLMS), pemaju sering bergelut dengan mengintegrasikan data dari pelbagai sumber -sebahagiannya berstruktur, kebanyakannya tidak berstruktur -sementara masih kembali maklumat yang cepat dan tepat. Cabaran ini adalah di tengah-tengah generasi pengambilan semula (RAG), yang menawarkan cara yang menarik untuk LLM untuk menarik data khusus domain atas permintaan. Tetapi sebagai skala data dan keperluan untuk sambungan yang tepat tumbuh, saluran paip RAG boleh menjadi sukar dikawal.
di mana Cognee dan Llamaindex melangkah masuk, memperkenalkan sistem yang mengubah kain standard ke dalam graphrag-pendekatan yang bukan sahaja mengambil teks yang relevan tetapi juga membina hubungan yang lebih kaya, berasaskan graf di antara titik data. Pada dasarnya, ia bergerak melampaui pengambilan statik, berasaskan sebahagian dan menawarkan "peta" pengetahuan global yang boleh memberi kuasa lebih mantap dan kontekstual yang tepat.
Jadual Kandungan rag secara ringkas memperkenalkan cognee dan llamaindex
Walau bagaimanapun, kain tradisional boleh memerlukan juggling pelbagai alat, berurusan dengan metadata kompleks, dan menguruskan kemas kini kepada dataset yang sentiasa berkembang. Selain itu, metodologi "bahagian" standard RAG boleh kehilangan konteks global kerana setiap bahagian sebahagian besarnya dirawat secara berasingan.
Cognee adalah rangka kerja pengetahuan dan memori yang menarik inspirasi dari bagaimana manusia membuat peta mental. Dengan memodelkan objek, konsep, dan hubungan sebagai struktur graf, ia membantu membawa struktur dan konteks kepada data mentah, menjadikan pengetahuan lebih dilayari dan saling beroperasi.
Llamaindex melengkapkan ini dengan berkhidmat sebagai perpustakaan integrasi data yang serba boleh, dengan lancar data menyalurkan dari pelbagai sumber -termasuk pangkalan data, API, dan teks yang tidak berstruktur. Sama ada anda berurusan dengan PDF, jadual SQL, atau titik akhir JSON, Llamaindex boleh menyatukan aliran maklumat ini ke dalam saluran paip yang koheren.
Mengubah data mentah ke dalam graf
: Daripada hanya memasukkan ketulan teks, ia membina lapisan semantik konsep, nod, dan hubungan.Anda akan memasang dan mengkonfigurasi kebergantungan yang diperlukan -Cognee, Llamaindex, dan mana -mana pembekal LLM dan pangkalan data yang dipilih. Langkah awal ini memastikan persekitaran anda mempunyai segala yang diperlukan untuk menguruskan embeddings vektor, penyimpanan graf, dan kesimpulan LLM.
!pip install llama-index-graph-rag-cognee==0.1.2 # Import required libraries import os import asyncio import cognee from llama_index.core import Document from llama_index.graph_rag.cognee import CogneeGraphRAG # Set API key for OpenAI if "OPENAI_API_KEY" not in os.environ: os.environ["OPENAI_API_KEY"] = ""
Sama ada anda mempunyai coretan teks pendek atau keseluruhan set dokumen, anda akan mengumpulkan data tersebut dan memuatkannya ke dalam koleksi. LlamAindex boleh mengendalikan pelbagai format fail dan sumber data, tetapi anda biasanya akan memberikan teks dalam segmen yang boleh diurus atau "dokumen."
documents = [ Document( text="Jessica Miller, Experienced Sales Manager with a strong track record in driving sales growth and building high-performing teams." ), Document( text="David Thompson, Creative Graphic Designer with over 8 years of experience in visual design and branding." ), ]
Seterusnya, anda membuat objek cogneegraprag, menyatakan bagaimana anda akan menyimpan graf anda (mis., Memori dengan NetworkX, atau dalam pangkalan data graf khusus) dan penyimpanan vektor anda (mis., LancedB, Pinecone, atau pangkalan data vektor lain). Anda juga memilih penyedia LLM anda, seperti OpenAI atau model tempatan, bersama dengan kekunci API yang berkaitan.
cogneeRAG = CogneeGraphRAG( llm_api_key=os.environ["OPENAI_API_KEY"], llm_provider="openai", llm_model="gpt-4o-mini", graph_db_provider="networkx", vector_db_provider="lancedb", relational_db_provider="sqlite", relational_db_name="cognee_db", )
Anda memuatkan dokumen anda ke dalam sistem, yang membolehkan Cognee dan Llamaindex untuk menghuraikan dan membenamkannya. Sebaik sahaja data disediakan, anda menggunakan langkah transformasi yang menganalisis teks dan mengekstrak entiti, hubungan, dan metadata yang bermakna. Ini menjadi nod dan tepi dalam graf pengetahuan anda.
# Load documents into CogneeGraphRAG await cogneeRAG.add(documents, "test")
dengan graf pengetahuan yang dibina di atas data anda, anda boleh menjalankan dua jenis pertanyaan utama:
Kelebihan pendekatan berasaskan graf adalah bahawa ia boleh mempertimbangkan konteks dan hubungan di semua dokumen. Sebagai contoh, jika pelbagai dokumen merujuk seseorang atau konsep, pendekatan grafik membantu menyatukan dan merujuk mereka untuk jawapan yang lebih komprehensif.
# Answer prompt based on knowledge graph approach: search_results = await cogneeRAG.search("Tell me who are the people mentioned?") print("\n\nAnswer based on knowledge graph:\n") for result in search_results: print(f"{result}\n") # Using the graph search above gives the following result: #Answer based on knowledge graph: #The people mentioned are: David Thompson and Jessica Miller. #Answer prompt based on RAG approach: search_results = await cogneeRAG.rag_search("Tell me who are the people mentioned?") print("\n\nAnswer based on RAG:\n") for result in search_results: print(f"{result}\n") #Using the RAG search above gives the following result: #Answer based on RAG: #Jessica Miller
Di luar pengambilan langsung, Graphrag membolehkan anda menavigasi hubungan. Katakan anda ingin melihat semua konsep atau orang yang dikaitkan dengan entiti tertentu, graf pengetahuan dapat mendedahkan hubungan ini, yang menawarkan pandangan yang lebih mendalam.
Pada akhir langkah-langkah ini, saluran paip anda tidak lagi dihadkan oleh kekangan peringkat bahagian rag standard. Sebaliknya, LLM anda boleh memanfaatkan pandangan pengetahuan yang kukuh dan saling berkaitan. Ini membawa kepada jawapan yang lebih berwawasan, kohesif, dan kaya konteks.
!pip install llama-index-graph-rag-cognee==0.1.2 # Import required libraries import os import asyncio import cognee from llama_index.core import Document from llama_index.graph_rag.cognee import CogneeGraphRAG # Set API key for OpenAI if "OPENAI_API_KEY" not in os.environ: os.environ["OPENAI_API_KEY"] = ""
Cognee dan Llamaindex menggabungkan penalaran berasaskan graf dengan integrasi data yang fleksibel, mengubah kain tradisional menjadi pendekatan yang lebih berstruktur dan berwawasan. Sinergi ini meningkatkan pengambilan pengetahuan, meningkatkan pemahaman kontekstual, dan memudahkan penggunaan untuk aplikasi berkuasa AI.
Graphrag memudahkan memori jangka panjang, jangka pendek, dan khusus domain dalam ejen anda. Dengan mengekalkan pengetahuan terperinci dalam struktur berasaskan graf, ejen dapat mengingati konteks lebih tepat dari masa ke masa dan menyesuaikan diri dengan maklumat baru dengan lancar.
Dengan pandangan yang lebih holistik, pertanyaan anda secara automatik dapat berkembang dengan lebih canggih. Dari masa ke masa, graf dapat mengoptimumkan hubungannya sendiri, menghasilkan data yang lebih kaya dan lebih berkaitan. Daripada mengembalikan coretan tunggal dari satu bahagian, ejen anda boleh mensintesis pelbagai rujukan atau menyatukan fakta yang bertaburan.
Cognee bertujuan untuk abstrak kerumitan. Ia dilengkapi dengan integrasi standard untuk LLMS, pangkalan data vektor, dan kedai graf, bermakna anda boleh melancarkan saluran paip graphrag dengan overhead yang minimum. Ini memastikan anda menghabiskan lebih banyak masa meneroka pandangan dan bukannya berurusan dengan kerepotan infrastruktur.
Visualisasi ini membantu kedua -dua pemaju dan pihak berkepentingan:
Membuka potensi graphrag
Apakah maksudnya untuk perniagaan atau penyelidikan anda ?
Sama ada anda seorang pemaju solo membina chatbot khusus atau pasukan perusahaan arkitek platform pengetahuan, Graphrag menawarkan asas yang fleksibel.
Ingin mengetahui lebih lanjut atau mencubanya sendiri? Anda boleh menjalankan demo terperinci di Google Colab, di mana anda akan melihat dengan tepat bagaimana untuk menyediakan persekitaran anda, memuatkan data, membina graf pengetahuan, dan menjalankan pertanyaan.
Bottom line: Jika anda serius memanfaatkan potensi penuh data anda seiring dengan model bahasa canggih, pendekatan graphrag Cognee dan Llamaindex adalah langkah seterusnya. Dengan beberapa baris konfigurasi dan beberapa data berstruktur yang baik, anda boleh mengubah teks biasa ke dalam kecerdasan yang boleh diambil tindakan-merangkumi jurang antara dokumen yang tidak berstruktur dan pandangan yang benar-benar "pintar".Kesimpulan
Takeaways Key
Q2. Apa itu Cognee, dan mengapa saya harus menggunakannya?
a. Cognee adalah kerangka untuk pengetahuan dan pengurusan ingatan yang diilhamkan oleh bagaimana manusia membuat peta mental di dunia. Ia bertukar data tidak tersusun ke dalam lapisan semantik berasaskan graf, menjadikannya lebih mudah untuk menyimpan, mengurus, dan mengambil hubungan yang kompleks. Dengan Cognee, anda mendapat:
pemodelan konsep dan hubungan yang diilhamkan oleh manusia
struktur grafik yang boleh dijelaskan
integrasi lancar dengan pilihan anda LLM, kedai vektor, atau pangkalan data
a. Llamaindex (dahulunya GPT Index) adalah perpustakaan untuk mengintegrasikan LLM dengan sumber data yang pelbagai. Ia mengendalikan tugas seperti parsing dokumen, pengindeksan, dan pertanyaan, membolehkan anda memberi makan kandungan yang tidak berstruktur (PDF, laman web, data JSON, dll.) Ke LLM anda dengan cara yang diperkemas. Apabila dipasangkan dengan Cognee, Llamaindex membantu data struktur sebelum ia ditukar menjadi representasi berasaskan graf.
Media yang ditunjukkan dalam artikel ini tidak dimiliki oleh Analytics Vidhya dan digunakan pada budi bicara penulis.
Atas ialah kandungan terperinci Cognee Llamaindex: Membina saluran paip graphrag yang kuat. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!