Aprendizagem pessoal com IA
e orientação prática
讯飞绘镜

OpenSPG: Mecanismo gráfico de conhecimento de código aberto

Introdução geral

O OpenSPG é um mecanismo de gráfico de conhecimento de código aberto desenvolvido pelo Ant Group em colaboração com o OpenKG, com base na estrutura SPG (Semantic Enhanced Programmable Graph). O mecanismo foi projetado para dar suporte à construção e ao gerenciamento de gráficos de conhecimento de domínio, fornecendo recursos como representação semântica explícita, definições de regras lógicas e estruturas operacionais. O OpenSPG combina a simplicidade da estrutura LPG com a complexidade da semântica RDF e é adequado para uma ampla gama de cenários comerciais, como finanças.

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


 

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

 

Lista de funções

  • Modelagem de conhecimento: suporte à modelagem de conhecimento das restrições do modelo de domínio
  • Representação semântica: forneça representação semântica explícita e definições de regras lógicas
  • Estruturas operacionais: suporte para construção, raciocínio e outras estruturas operacionais
  • Adaptação de plug-in: oferece suporte à adaptação de plug-in do mecanismo subjacente e dos serviços algorítmicos
  • Visualização de dados: fornecer uma interface intuitiva para exploração e análise de dados

 

Usando a Ajuda

Processo de instalação

Instalação do servidor

O lado do servidor é implantado com base no Docker Compose e contém 4 imagens principais:

  • servidor openspgServiços de esquema: fornecer serviços de esquema
  • openspg-mysqlArmazenamento de dados do esquema
  • tugraphArmazenamento de dados de mapeamento
  • pesquisa elásticaDados de mapeamento indexados
  1. download docker-compose.yml e execute os seguintes comandos no diretório atual e aguarde a conclusão da execução do comando para concluir a inicialização do servidor:
    docker-compose -f docker-compose.yml up -d
    
  2. (col.) reprovar (um aluno) openspg-server Após a inicialização local, você pode abrir a porta http://127.0.0.1:8887 para ver a página de visualização do front-end. Se openspg-server Implementado remotamente, o endereço IP correspondente precisa ser modificado de acordo.

Instalação do cliente

O cliente também fornece uma imagem do Docker, e a execução direta do comando a seguir extrairá essa imagem:

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

Depois de fazer o download da imagem, você pode clonar o código-fonte do OpenSPG:

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

Quando o clone da fonte estiver concluído, você poderá experimentar os casos que vêm com a fonte:

# 启动容器,将其中的${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 ...

Como alternativa, quando for escrever um projeto de mapeamento localmente com base em um IDE, você poderá instalar o knext executando o seguinte comando:

pip install openspg-knext

Procedimento de operação detalhado

inicialização no lado do servidor

  1. Clone o código-fonte do OpenSPG e abra-o no IDE:
    git clone git@github.com:OpenSPG/openspg.git
    

    Supõe-se que todos os comandos a seguir sejam executados no diretório raiz da base de código do openspg.

  2. Execute o comando mvn compile:
    mvn clean install -Dmaven.test.skip=true -Dspotless.check.skip -Dspotless.apply.skip
    
  3. Inicie contêineres como MySQL, ElasticSearch, TuGraph etc. localmente:
    sh dev/test/docker-compose.sh
    
  4. A entrada do servidor de inicialização está localizada:
    com.antgroup.openspg.server.arks.sofaboot.Application
    

Inicialização do cliente

  1. Prepare um ambiente virtual Python, versão 3.8+.
  2. Copie os pacotes reasoner e builder compilados pelo mvn para o diretório knext:
    cp dev/release/python/lib/builder* python/knext/knext/builder/lib
    cp dev/release/python/lib/reasoner* python/knext/knext/reasoner/lib
    
  3. Instale o nn4k localmente:
    cd python/nn4k
    python setup.py develop
    
  4. Instalação local do knext:
    cd python/knext
    python setup.py develop
    
  5. Quando terminar, você poderá executar o comando knext nesse ambiente virtual do Python.

Modelo de competências essenciais

O modelo de competência central do OpenSPG inclui:

  • Modelagem semântica SPG-SchemaResponsável pelo projeto de estruturas de esquema para aprimoramento semântico de gráficos de atributos, por exemplo, modelos de assunto, modelos evolutivos, modelos de predicados.
  • Construção de conhecimento SPG-BuilderSuporte à importação de conhecimento estruturado e não estruturado, compatível e articulado com arquiteturas de big data, além de fornecer uma estrutura de operador de construção de conhecimento para permitir a conversão de dados em conhecimento. Abstrai a estrutura do SDK de processamento de conhecimento, oferece a capacidade de encadeamento de entidades, rotulagem de conceitos e operadores de normalização de entidades, combina processamento de linguagem natural (NLP) e algoritmos de aprendizagem profunda, melhora o nível de exclusividade de diferentes instâncias em um único tipo e oferece suporte à evolução contínua e iterativa do mapeamento de domínio.
  • SPG-Reasoner Raciocínio de regra lógicaResumos KGDSL (Knowledge Graph Domain Specific Language) para fornecer representações simbólicas programáveis de regras lógicas. Oferece suporte à inferência de regras downstream, aprendizado de fusão neural/simbólica, inferência de conhecimento/extração de conhecimento LLM vinculado ao KG2Prompt etc. com representações simbólicas compreensíveis por máquina. Defina dependências e transferência de conhecimento por meio de semântica de predicados e regras lógicas, e dê suporte à modelagem e à análise de cenários comerciais complexos.
  • Estrutura programável KNextKNext: o KNext, como uma estrutura programável de gráficos, fornece um conjunto de recursos componentizados escalonáveis, orientados a processos e fáceis de usar; abstrai os principais recursos dos gráficos e os precipita em recursos componentizados, enquadrados e criados pelo mecanismo; consegue isolar o mecanismo da lógica de negócios e do modelo de domínio, o que facilita a definição rápida da solução de gráficos pelos negócios; e cria uma tecnologia de IA controlável e orientada pelo conhecimento com base na pilha de mecanismos OpenSPG vinculando recursos de aprendizagem profunda, como LLM e GraphLearning.
  • Camada de adaptação à nuvem CloudextOs sistemas empresariais podem acoplar o mecanismo aberto por meio do SDK para criar seu próprio front-end empresarial característico; mecanismo de computação de gráficos/armazenamento de gráficos personalizado expansível/adaptável; estrutura de aprendizado de máquina expansível/adaptável adequada às suas próprias características empresariais.
Não pode ser reproduzido sem permissão:Chefe do Círculo de Compartilhamento de IA " OpenSPG: Mecanismo gráfico de conhecimento de código aberto
pt_BRPortuguês do Brasil