Beim Verbinden externer Kenntnisse mit Großsprachemodellen (LLMs) kassen sich Entwickler häufig daran, Daten aus zahlreichen Quellen zu integrieren - einige davon strukturiert, ein Großteil davon unstrukturiert - und kehrten immer noch schnelle und genaue Informationen zurück. Diese Herausforderung ist das Herzstück der retrieval-aus-generierten Generation (RAG), die LLMs eine überzeugende Möglichkeit bietet, domänenspezifische Daten auf Demand zu ziehen. Da die Datenskala und die Notwendigkeit präziser Verbindungen jedoch wachsen, können Lag -Pipelines unhandlich werden.
Hier einschritt Coggee und Llamaindex ein System, das Standardlappen in GraphRag verwandelt-ein Ansatz, bei dem nicht nur relevanten Text, sondern auch reichere, grafischbasierte Beziehungen zwischen den Datenpunkten aufgebaut werden. Im Wesentlichen bewegt es sich über das statische, chunkbasierte Abruf hinaus und bietet eine globale „Karte“ des Wissens, die robustere und kontextuell genaue Antworten ausüben kann.
Dieser Artikel wurde als Teil des Data Science -Blogathon veröffentlicht.
Einführung von Coggee und Llamaindex
llamaindex ergänzt dies, indem es als vielseitige Datenintegrationsbibliothek dient und Daten aus verschiedenen Quellen - einschließlich Datenbanken, APIs und unstrukturiertem Text - in LLMs fördert. Unabhängig davon
Warum Coggee?
verwandelt Rohdaten in Graphen
: Anstatt nur Textbrocken einzubetten, erstellt es eine semantische Schicht von Konzepten, Knoten und Beziehungen.Sie installieren und konfigurieren die erforderlichen Abhängigkeiten - Coggee, LlamaNdex und alle ausgewählten LLM- und Datenbankanbieter. Dieser erste Schritt stellt sicher, dass Ihre Umgebung alles benötigt, um Vektoreinbettungen, Graphspeicher und LLM -Inferenz zu verwalten.
!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"] = ""
Unabhängig davon, ob Sie über kurze Textausschnitte oder gesamte Dokumentsätze verfügen, sammeln Sie diese Daten und laden sie in eine Sammlung. LlamaNdex kann verschiedene Dateiformate und Datenquellen verarbeiten, aber Sie werden den Text in der Regel in überschaubaren Segmenten oder "Dokumenten" angeben.
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." ), ]
Als nächstes erstellen Sie ein CoggeeGraphrag-Objekt und geben an, wie Sie Ihr Diagramm (z. B. in Memory mit NetworkX oder in einer dedizierten Diagrammdatenbank) und Ihren Vektorspeicher (z. B. LancyB, Pinecone oder eine andere Vektor-Datenbank) speichern. Sie wählen auch Ihren LLM -Anbieter wie OpenAI oder ein lokales Modell zusammen mit relevanten API -Schlüssel aus.
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", )
Sie laden Ihre Dokumente in das System, sodass Coggee und Llamaindex sie analysieren und einbetten können. Sobald die Daten vorhanden sind, rufen Sie einen Transformationsschritt auf, der den Text analysiert und sinnvolle Entitäten, Beziehungen und Metadaten extrahiert. Diese werden zu Knoten und Kanten in Ihrem Wissensgraphen.
# Load documents into CogneeGraphRAG await cogneeRAG.add(documents, "test")
Mit einem Wissensgraphen, das auf Ihren Daten aufgebaut ist, können Sie zwei Haupttypen von Abfragen durchführen:
Der Vorteil des graphbasierten Ansatzes besteht darin, dass er Kontext und Beziehungen in allen Dokumenten berücksichtigen kann. Wenn beispielsweise mehrere Dokumente auf eine Person oder ein Konzept verweisen, hilft der Graph-Ansatz dazu, sie für eine umfassendere Antwort zu vereinen und zu verweisen.
# 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
Über direkte Abruf hinaus können Sie in Graphrag Beziehungen navigieren. Angenommen, Sie möchten alle Konzepte oder Personen sehen, die mit einer bestimmten Entität verbunden sind, kann das Wissensgraphen diese Verbindungen aufzeigen und tiefere Erkenntnisse bieten.
Am Ende dieser Schritte wird Ihre Pipeline nicht mehr durch die Einschränkungen des Stücke auf Stücke auf Standardlag eingeschränkt. Stattdessen kann Ihr LLM eine robuste, miteinander verbundene Sicht auf das Wissen nutzen. Das führt zu aufschlussreicheren, zusammenhängenden und kontextreichen Antworten.
!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"] = ""
Coggee und Llamaindex kombinieren draphbasierte Argumentation mit flexibler Datenintegration und verwandeln traditionelle Lappen in einen strukturierteren und aufschlussreicheren Ansatz. Diese Synergie verbessert das Abrufen des Wissens, verbessert das kontextbezogene Verständnis und vereinfacht die Bereitstellung für AI-betriebene Anwendungen.
GraphRag erleichtert Langzeit-, Kurzzeit- und Domänenspezifische Speicher in Ihren Agenten. Durch die Aufrechterhaltung detaillierter Kenntnisse in einer grafischen Struktur können Agenten den Kontext im Laufe der Zeit genauer erinnern und sich nahtlos an neue Informationen anpassen.
Mit einer ganzheitlicheren Sichtweise können Ihre Fragen automatisch anspruchsvoller werden. Im Laufe der Zeit kann die Grafik seine Beziehungen selbst optimieren und reichere und vernetzte Daten ergeben. Anstatt ein einzelnes Snippet aus einem einzelnen Stück zurückzugeben, kann Ihr Agent mehrere Referenzen synthetisieren oder verstreute Fakten vereinen.
Coggee zielt darauf ab, die Komplexität abstrahieren. Es verfügt über Standardintegrationen für LLMs, Vektor -Datenbanken und Graph -Speicher, dh Sie können eine GraphRAG -Pipeline mit minimalem Overhead ausführen. Dies stellt sicher, dass Sie mehr Zeit damit verbringen, Erkenntnisse zu erkunden, anstatt sich mit Infrastrukturarbeit zu befassen.
Eine der größten Stärken von Graphrag liegt darin, wie sie Text in eine dynamische semantische Schicht verwandelt. Stellen Sie sich jede Entität (z. B. eine Person, einen Ort, ein Konzept) als Knoten vor. Kanten können Referenzen erfassen - wie die Rolle einer Person in einer Organisation oder eine Beziehung zu einem anderen Konzept.
Diese Visualisierung hilft sowohl Entwicklern als auch Stakeholdern:
In der Praxis sehen Sie möglicherweise einen Knoten für jede Person mit Kanten, die sie mit Rollen, Standorten oder Errungenschaften verknüpfen, die alle in einem kohärenten Graphendiagramm geschrieben sind - viel klarer als das Durchsuchen mehrerer Textfragmente nach dieser Informationen.
Integrieren strukturierter und unstrukturierter Daten in AI -Workflows ist keine geringe Leistung. Durch die Vereinigung der Macht von Llamaindex für die Aufnahme von Daten mit der graphbasierten semantischen Schicht von Coggee erhalten Sie jedoch einen optimierten Ansatz, der die gesamte Pipeline effizienter, konsistenter und letztendlich aufschlussreicher macht.
Was bedeutet das für Ihr Unternehmen oder Forschung ?
Unabhängig davon
Möchten Sie mehr erfahren oder es selbst ausprobieren? Sie können eine detaillierte Demo in Google Colab ausführen, in der Sie genau sehen, wie Sie Ihre Umgebung einrichten, Daten laden, das Wissensdiagramm erstellen und Abfragen ausführen.Fazit: Wenn Sie das volle Potenzial Ihrer Daten im Tandem mit fortgeschrittenen Sprachmodellen ernst nehmen, ist Coggeee und der GraphRAG -Ansatz von Llamaindex der nächste Schritt. Mit wenigen Konfigurationszeilen und einigen gut strukturierten Daten können Sie einfache Text in umsetzbare Intelligenz umwandeln-die Lücke zwischen unstrukturierten Dokumenten und wirklich „intelligenten“ Einsichten.
Schlussfolgerung
Key Takeaways
a. Coggee ist ein Rahmen für Wissens- und Gedächtnismanagement, das davon inspiriert ist, wie Menschen mentale Karten der Welt schaffen. Es verwandelt unstrukturierte Daten in eine grafische semantische Ebene, wodurch komplexe Beziehungen gespeichert, verwaltet und abgerufen werden können. Mit Coggee gewinnen Sie:
von Menschen inspirierte Modellierung von Konzepten und Beziehungen
konsistente, erklärbare Diagrammstrukturen
nahtlose Integration in Ihre Wahl von LLM, Vektorspeicher oder Datenbank
a. Llamaindex (ehemals GPT Index) ist eine Bibliothek zur Integration von LLMs in verschiedene Datenquellen. Es werden Aufgaben wie Dokumenten analysieren, indiziert und abfragen, sodass Sie unstrukturierte Inhalte (PDFs, Webseiten, JSON -Daten usw.) auf optimierte Weise in Ihr LLM einfügen. In Kombination mit Coggee hilft Llamaindex die Strukturdaten, bevor sie in graphbasierte Darstellungen umgewandelt werden.
Q4. Wie verbessert GraphRAG die Abfrageergebnisse im Vergleich zu herkömmlichem Lappen?a. Traditionelles Lappen bettet unabhängig voneinander Textbrocken ein, was den globalen Kontext verlieren kann, wenn Informationen auf verschiedene Dokumente verteilt werden. GraphRag verbindet verwandte Konzepte in einem einzigen Wissensgraphen, sodass die LLM umfassendere Beziehungen verstehen kann. Infolgedessen kann das System vollständigere und kontextreiche Antworten liefern-insbesondere für Abfragen, die Informationen aus mehreren Quellen beinhalten.
Die in diesem Artikel gezeigten Medien sind nicht im Besitz von Analytics Vidhya und wird nach Ermessen des Autors verwendet.
Das obige ist der detaillierte Inhalt vonCoggee Llamaindex: Erstellen leistungsstarker Graphrag -Pipelines. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!