NebulaGraph实战:1-NebulaGraph安装和基础操作
以前使用Neo4j图数据库,考虑到生产环境需要最终选择了NebulaGraph图数据库。对于数据要求比较高的领域,比如医疗、财务等,暂时还是离不开知识图谱的。后面主要围绕LLM+KG做一些行业解决方案和产品,涉及的技术主要是对话、推荐、检索这3个大的方向,可用于客服系统和聊天机器人等。
1.安装NebulaGraph
首先电脑上安装好Docker、Docker Compose和Git,然后使用Docker Compose部署NebulaGraph服务:
git clone -b release-3.6 https://github.com/vesoft-inc/nebula-docker-compose.git
cd nebula-docker-compose/
docker-compose up -d
运行成功后Docker Desktop界面如下所示:

2.安装NebulaGraph Studio
NebulaGraph Studio是一款可以通过Web访问的开源图数据库可视化工具,搭配NebulaGraph内核使用,提供构图、数据导入、编写nGQL查询等一站式服务。如下所示:
wget https://oss-cdn.nebula-graph.com.cn/nebula-graph-studio/3.7.0/nebula-graph-studio-3.7.0.tar.gz
mkdir nebula-graph-studio-3.7.0 && tar -zxvf nebula-graph-studio-3.7.0.tar.gz -C nebula-graph-studio-3.7.0
cd nebula-graph-studio-3.7.0
docker-compose pull
docker-compose up -d
运行成功后Docker Desktop界面如下所示:

3.连接数据库
打开链接http://localhost:7001/login,如下所示:

根据实际情况输入NebulaGraph的Graph服务本机IP地址,以及用户名root和密码nebula,如下所示:

除了功能介绍外,还有入门和行业数据集、学习文档,如下所示:

4.NebulaGraph Python
NebulaGraph Python是一款Python语言的客户端,可以连接、管理NebulaGraph图数据库。安装命令为pip3 install nebula3-python。Nebula-Python版本和NebulaGraph版本间的匹配关系,如下所示:
| Nebula-Python版本 | NebulaGraph版本 |
|---|---|
| 1.0 | 1.x |
| 2.0.0 | 2.0.0/2.0.1 |
| 2.5.0 | 2.5.0 |
| 2.6.0 | 2.6.0/2.6.1 |
| 3.0.0 | 3.0.0 |
| 3.1.0 | 3.1.0 |
| 3.3.0 | 3.3.0 |
| master | master |
NebulaGraph Python客户端提供Connection Pool和Session Pool两种使用方式,使用Connection Pool需要用户自行管理Session实例。如下所示:
from nebula3.gclient.net import ConnectionPool
from nebula3.Config import Config
config = Config() # 定义一个配置
config.max_connection_pool_size = 10 # 设置最大连接数
connection_pool = ConnectionPool() # 初始化连接池
# 如果给定的服务器是ok的,返回true,否则返回false
ok = connection_pool.init([('172.27.211.84', 9669)], config)
# 方式1:connection pool自己控制连接释放
# 从连接池中获取一个session
session = connection_pool.get_session('root', 'nebula')
session.execute('USE nba') # 选择space
result = session.execute('SHOW TAGS') # 展示tags
print(result) # 打印结果
session.release() # 释放session
# 方式2:Session Pool,session将自动释放
with connection_pool.session_context('root', 'nebula') as session:
session.execute('USE nba')
result = session.execute('SHOW TAGS')
print(result)
# 关闭连接池
connection_pool.close()
说明:后续分享NebulaGraph、LLM、LlamaIndex、Graph RAG、Agent与实际行业结合的实践操作。
参考文献:
[1]连接数据库:https://docs.nebula-graph.com.cn/3.6.0/nebula-studio/deploy-connect/st-ug-connect/
[2]基于Docker Compose快速部署:https://docs.nebula-graph.com.cn/3.6.0/2.quick-start/1.quick-start-overview/
[3]https://github.com/vesoft-inc/nebula-studio
[4]https://github.com/vesoft-inc
[5]LLM:大模型下的知识图谱另类实践:https://www.nebula-graph.com.cn/posts/llm-implement
[6]Graph RAG:知识图谱结合LLM的检索增强:https://www.nebula-graph.com.cn/posts/graph-rag-llm
[7]知识图谱驱动的大语言模型Llama Index:https://www.nebula-graph.com.cn/posts/knowgraph-with-llamaindex
[8]关于LLM和图、图数据库的那些事:https://www.nebula-graph.com.cn/posts/llm-database
NebulaGraph实战:1-NebulaGraph安装和基础操作的更多相关文章
- mysql二进制安装及基础操作
mysql二进制安装及基础操作 环境说明: 系统版本 CentOS 6.9 x86_64 软件版本 mysql-5.6.36-linux-glibc2.5-x86_64 1.安装 采用二进 ...
- 项目实战12.1—企业级监控工具应用实战-zabbix安装与基础操作
无监控,不运维.好了,废话不多说,下面都是干货. 警告:流量党勿入,图片太多!!! 项目实战系列,总架构图 http://www.cnblogs.com/along21/p/8000812.html ...
- Kafka 教程(二)-安装与基础操作
单机安装 1. 安装 java 2. 安装 zookeeper [这一步可以没有,因为 kafka 自带了 zookeeper] 3. 安装 kafka 下载链接 kafka kafka 是 scal ...
- redis安装及基础操作(1)
============================================================= 编译安装 0.环境 Linux:centos6.5 redis:3.0.5 ...
- Docker harbor 安装和基础操作
目录 简介 离线安装 配置文件 安装 查看 访问测试 及 简单操作 创建一个用户 创建一个测试仓库 创建测试仓库 测试上传和下载镜像 上传 下载镜像测试 简介 Docker容器应用的开发和运行离不开可 ...
- 虚拟机与ubuntu系统的安装与基础操作
1.虚拟机的下载: 常见的虚拟机软件有:VMware VirtuaIBOX Virtual PC 等. 这里主要介绍VMware ,VMware目前已经有很多个版本,可以根据个人情况进行选择.安 ...
- memcached安装配置+基础操作
先安装依赖关系 下载libevent-2.0.21-stable.tar.gz wget https://github.com/downloads/libevent/libevent/libevent ...
- docker安装和基础操作
docker安装 yum install docker 配置镜像下载加速器 curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh ...
- docker的安装及基础操作与镜像构建
仓库配置及安装启动 [root@localhost ~]# yum install -y yum-utils device-mapper-persistent-data lvm2 [root@loca ...
- win下的mongodb安装和基础操作
一.下载地址: https://www.mongodb.com/download-center/community 二.安装错误: 1.安装过程中报错(类似下图): 原因:没有管理员权限 解决:管理员 ...
随机推荐
- 基于 ACK Serverless 解锁你家萌宠的 AI 形象
基于 ACK Serverless 解锁你家萌宠的 AI 形象详情 1. 计费说明 必看!!必看!!必看!! 本实验为付费体验,需要消耗账号费用.体验后若不再需要使用,请及时释放资源,避免持 ...
- 【Postman】以命令行形式执行Postman脚本(使用newman)
以命令行形式执行Postman脚本(使用Newman) 目录 以命令行形式执行Postman脚本(使用Newman) 一.背景 二.Newman的安装 1.Node.js 2.Newman 三.脚本准 ...
- SpringCloudAlibaba Seata在Openfeign跨节点环境出现全局事务Xid失效原因底层探究
原创/朱季谦 曾经在SpringCloudAlibaba的Seata分布式事务搭建过程中,跨节点通过openfeign调用不同服务时,发现全局事务XID在当前节点也就是TM处,是正常能通过RootCo ...
- 轻松合并Excel工作表:Java批量操作优化技巧
摘要:本文由葡萄城技术团队于博客园原创并首发.转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具.解决方案和服务,赋能开发者. 前言 在Excel中设计表单时,我们经常需要对收集的信息进行统 ...
- [vue]精宏技术部试用期学习笔记 II
精宏技术部试用期学习笔记(vue) router : vue的模拟路由 前置准备 安装 vue-router pnpm i vue-router@4 //安装版本4的 vue-router 可以在 p ...
- Production Environment Difference Between Development, Stage, And Production
There are three different environments that you'll probably deal with at some point. Each environmen ...
- eclipse安装velocity插件(转)
http://www.jspxcms.com/knowledge/46.html http://blog.csdn.net/superbeck/article/details/5721382 插件地址 ...
- Shader学习笔记 (一) :利用shader在一个面绘制出圆
在各种游戏中,想必大家一定和我一样总是惊叹于游戏画面的各种炫酷的特效. 作为游戏开发中单独列出的一个职业TA(Technology Art),他们会利用GLSL或者HLSL等着色器语言绘制出一幅幅美丽 ...
- 深入理解JMeter中的JSON Extractor
Apache JMeter是一款出色的开源性能和功能测试工具,这款工具提供了丰富的功能和强大的扩展性,可以应对各种复杂的测试需求.当我们在进行接口测试时,经常会遇到需要从接口响应中提取信息并在后续请求 ...
- DX后台截图C++实现代码
DX后台截图C++实现代码 文章仅发布于https://www.cnblogs.com/Icys/p/DXGI.html和知乎上. 传统的GDI API (BitBlt)虽然可以完美的完成后台截图的任 ...