AI Personal Learning
und praktische Anleitung
豆包Marscode1

OpenSPG: Open-Source-Wissensgraphen-Engine

Allgemeine Einführung

OpenSPG ist eine Open-Source-Wissensgraphen-Engine, die von der Ant Group in Zusammenarbeit mit OpenKG entwickelt wurde und auf dem SPG-Framework (Semantic Enhanced Programmable Graph) basiert. OpenSPG kombiniert die Einfachheit der LPG-Struktur mit der Komplexität der RDF-Semantik und eignet sich für eine Vielzahl von Geschäftsszenarien, z. B. im Finanzbereich.

OpenSPG:开源知识图谱引擎-1


 

OpenSPG:开源知识图谱引擎-1

 

Funktionsliste

  • Wissensmodellierung: Unterstützung für die Wissensmodellierung von Domänenmodellbeschränkungen
  • Semantische Repräsentation: Bereitstellung einer expliziten semantischen Repräsentation und logischer Regeldefinitionen
  • Operative Rahmen: Unterstützung für Konstruktion, Argumentation und andere operative Rahmen
  • Plug-in-Anpassung: Unterstützt die Plug-in-Anpassung des zugrunde liegenden Motors und der algorithmischen Dienste
  • Datenvisualisierung: Bereitstellung einer intuitiven Schnittstelle für die Erforschung und Analyse von Daten

 

Hilfe verwenden

Einbauverfahren

Server-Installation

Die Serverseite wird auf Basis von Docker Compose bereitgestellt und enthält 4 Hauptimages:

  • openspg-serverBereitstellung von Schemadiensten
  • openspg-mysqlSpeicherung von Schemadaten
  • Tugraph: Speicherung von Kartierungsdaten
  • elasticsearch: Indizierte Kartierungsdaten
  1. Herunterladen von docker-compose.yml und führen Sie die folgenden Befehle im aktuellen Verzeichnis aus, und warten Sie auf den Abschluss der Befehlsausführung, um den Serverstart abzuschließen:
    docker-compose -f docker-compose.yml up -d
    
  2. (coll.) durchfallen (ein Schüler) openspg-server Nach dem lokalen Start können Sie den Port http://127.0.0.1:8887 öffnen, um die Front-End-Visualisierungsseite zu sehen. Wenn openspg-server Bei einem Remote-Einsatz muss die entsprechende IP-Adresse entsprechend geändert werden.

Client-Installation

Der Client stellt auch ein Docker-Image zur Verfügung. Wenn Sie den folgenden Befehl direkt ausführen, wird dieses Image gezogen:

docker pull --platform linux/x86_64 spg-registry.cn-hangzhou.cr.aliyuncs.com/spg/openspg-python:latest

Nachdem Sie das Bild heruntergeladen haben, können Sie den OpenSPG-Quellcode klonen:

git clone --depth=1 https://github.com/OpenSPG/openspg.git

Sobald der Klon des Quellcodes fertig ist, können Sie die mit dem Quellcode gelieferten Fälle ausprobieren:

# 启动容器,将其中的${project_dir}替换成源码目录
docker run --rm --net=host -v ${project_dir}:/code \
  -it spg-registry.cn-hangzhou.cr.aliyuncs.com/spg/openspg-python:latest \
  "/bin/bash"

# 容器启动后,进入/code目录,即openspg项目源码目录
cd /code

# 后续可以安装案例教程,比如进入riskmining目录
cd python/knext/knext/examples/riskmining

# 参考案例教程,执行相应的knext命令,比如
knext project create --prj_path .
knext schema commit

knext builder execute ...
knext reasoner execute ...

Alternativ können Sie, wenn Sie ein Mapping-Projekt lokal auf Basis einer IDE schreiben wollen, knext mit folgendem Befehl installieren:

pip install openspg-knext

Detaillierte Vorgehensweise

Server-seitige Inbetriebnahme

  1. Klonen Sie den OpenSPG-Quellcode und öffnen Sie ihn in der IDE:
    git clone git@github.com:OpenSPG/openspg.git
    

    Bei den folgenden Befehlen wird davon ausgegangen, dass sie alle im Stammverzeichnis der openspg-Codebasis ausgeführt werden.

  2. Führen Sie den Befehl mvn compile aus:
    mvn clean install -Dmaven.test.skip=true -Dspotless.check.skip -Dspotless.apply.skip
    
  3. Starten Sie Container wie MySQL, ElasticSearch, TuGraph, etc. lokal:
    sh dev/test/docker-compose.sh
    
  4. Der Eintrag für den Startserver befindet sich:
    com.antgroup.openspg.server.arks.sofaboot.Application
    

Kunde Startup

  1. Bereiten Sie eine virtuelle Python-Umgebung, Version 3.8+, vor.
  2. Kopieren Sie die mit mvn kompilierten Pakete reasoner und builder in das Verzeichnis knext:
    cp dev/release/python/lib/builder* python/knext/knext/builder/lib
    cp dev/release/python/lib/reasoner* python/knext/knext/reasoner/lib
    
  3. Installieren Sie nn4k lokal:
    cd python/nn4k
    python setup.py develop
    
  4. Lokale Installation von knext:
    cd python/knext
    python setup.py develop
    
  5. Wenn Sie das getan haben, können Sie den Befehl knext in dieser virtuellen Python-Umgebung ausführen.

Modell der Kernkompetenzen

Das Modell der Kernkompetenzen von OpenSPG umfasst:

  • SPG-Schema semantische ModellierungVerantwortlich für den Entwurf von Schema-Frameworks zur semantischen Anreicherung von Attributgraphen, z.B. Subjektmodelle, Evolutionsmodelle, Prädikatsmodelle, etc.
  • SPG-Builder WissensaufbauUnterstützt sowohl den Import von strukturiertem als auch unstrukturiertem Wissen, ist kompatibel mit Big-Data-Architekturen und bietet einen Rahmen für Wissenskonstruktionsoperatoren, um die Umwandlung von Daten in Wissen zu ermöglichen. Abstracts the knowledge processing SDK framework, provides the ability of entity chaining finger, concept labelling and entity normalisation operators, combines natural language processing (NLP) and deep learning algorithms, improves the uniqueness level of different instances in a single type, and supports the continuous and iterative evolution of the domain mapping.
  • SPG-Reasoner Logic Rule ReasoningAbstrakte KGDSL (Knowledge Graph Domain Specific Language) zur Bereitstellung programmierbarer symbolischer Darstellungen von Logikregeln. Unterstützt nachgelagerte Regelinferenz, neuronales/symbolisches Fusionslernen, KG2Prompt-verknüpfte LLM-Wissensextraktion/Wissensinferenz usw. mit maschinenverständlichen symbolischen Repräsentationen. Definition von Abhängigkeiten und Wissenstransfer durch Prädikatssemantik und logische Regeln sowie Unterstützung der Modellierung und Analyse komplexer Geschäftsszenarien.
  • Programmierbares Framework KNextKNext bietet als programmierbares Graphen-Framework eine Reihe skalierbarer, prozessorientierter und benutzerfreundlicher komponentisierter Fähigkeiten; es abstrahiert die Kernfähigkeiten von Graphen und überführt sie in komponentisierte, gerahmte und von der Engine entwickelte Fähigkeiten; es erreicht die Isolierung der Engine von der Geschäftslogik und dem Domänenmodell, was es dem Unternehmen erleichtert, die Graphenlösung schnell zu definieren; und es baut eine wissensgesteuerte und kontrollierbare KI-Technologie auf, die auf dem OpenSPG-Engine Stack aufbaut und Deep-Learning-Funktionen wie LLM und GraphLearning miteinander verbindet.
  • Cloud-Anpassungsschicht CloudextUnternehmenssysteme können die offene Engine über ein SDK andocken, um ihr eigenes charakteristisches Business-Frontend zu erstellen; erweiterbare/anpassbare kundenspezifische Graphspeicher-/Graphenberechnungs-Engine; erweiterbares/anpassbares Framework für maschinelles Lernen, das für ihre eigenen Geschäftsmerkmale geeignet ist.
Darf nicht ohne Genehmigung vervielfältigt werden:Leiter des AI-Austauschkreises " OpenSPG: Open-Source-Wissensgraphen-Engine
de_DEDeutsch