综合介绍
知识图谱工作室(Knowledge Graph Studio)是一个开源平台,旨在简化创建和管理RAG-native知识图谱的过程。该平台提供了基于规则的实体解析、模块化图谱构建、灵活的数据摄取以及API优先设计等功能,支持开发者通过SDK进行操作。无论是处理结构化数据还是非结构化数据,知识图谱工作室都能为用户提供可扩展且灵活的解决方案,适用于实验和大规模应用。平台基于NoSQL数据库构建,支持快速数据检索和复杂关系的轻松遍历,致力于成为数据库无关的解决方案。
功能列表
基于规则的实体解析 模块化图谱构建 灵活的数据摄取 API优先设计,支持SDK 支持结构化和非结构化数据 可扩展且灵活的解决方案 快速数据检索和复杂关系遍历 支持多种数据库使用帮助
安装流程
克隆仓库:复制复制复制复制复制复制复制复制复制复制复制复制复制复制复制
复制
git clone git@github.com:whyhow-ai/knowledge-graph-studio.git cd knowledge-graph-studio 安装依赖:
复制复制复制复制复制复制复制复制复制复制复制复制复制复制
开发者安装:复制复制复制复制复制复制复制复制复制复制复制复制复制
复制
pip install -e .[dev,docs]
快速开始
准备工作: OpenAI API密钥 MongoDB账户 在MongoDB Atlas中创建项目和集群 配置环境变量:复制复制复制复制复制复制复制复制复制复制复制复制
更新.env文件中的值:
复制复制复制复制复制复制复制复制复制复制复制
复制
WHYHOW__EMBEDDING__OPENAI__API_KEY=<你的OpenAI API密钥> WHYHOW__GENERATIVE__OPENAI__API_KEY=<你的OpenAI API密钥> WHYHOW__MONGODB__USERNAME=<你的MongoDB用户名> WHYHOW__MONGODB__PASSWORD=<你的MongoDB密码> WHYHOW__MONGODB__DATABASE_NAME=main WHYHOW__MONGODB__HOST=<你的MongoDB主机> 创建数据库和集合:
复制复制复制复制复制复制复制复制复制复制
复制
cd src/whyhow_api/cli/ python admin.py setup-collections --config-file collection_index_config.json 创建用户和API密钥:
复制复制复制复制复制复制复制复制复制
复制
python admin.py create-user --email <你的邮箱地址> --openai-key <你的OpenAI API密钥> 启动API服务器:
复制复制复制复制复制复制复制复制
复制
uvicorn src.whyhow_api.main:app
使用SDK
安装Python SDK: 配置WhyHow客户端:复制复制复制复制复制复制
复制
from whyhow import WhyHow client = WhyHow(api_key='<你的WhyHow API密钥>', base_url="http://localhost:8000") 创建工作区和图谱:
复制复制复制复制复制
复制
workspace = client.workspaces.create(name="Demo Workspace") chunk = client.chunks.create(workspace_id=workspace.workspace_id, chunks=[Chunk(content="示例内容")]) triples = [Triple(head=Node(name="示例节点", label="示例标签"), relation=Relation(name="示例关系"), tail=Node(name="示例尾节点", label="示例尾标签"), chunk_ids=[c.chunk_id for c in chunk])] graph = client.graphs.create_graph_from_triples(name="Demo Graph", workspace_id=workspace.workspace_id, triples=triples) 查询图谱:
复制复制复制复制
复制
query = client.graphs.query_unstructured(graph_id=graph.graph_id, query="示例查询")
使用Docker
构建镜像:复制复制复制
复制
docker build --platform=linux/amd64 -t kg_engine:v1 . 运行镜像:
复制复制
复制
docker run -it --rm -p 1234:8000 kg_engine:v1