OceanBase Agent 是一款开发者基于学习目的面向 OceanBase 的 AI 产品,主要目的是借助大模型的能力,简化日常运维场景的繁琐操作,令 DBA 同学无需写一行代码仅靠编写 SQL 就能构建自己的 Agent。
具备以下的能力:
项目地址:
https://github.com/davidzhangbj/agent
是基于上游项目(专注PG): GitHub - xataio/agent: AI agent expert in PostgreSQL 修改而来。
内置了 72 个常用工具 SQL,可以添加自己的 SQL,使用的时候点击运行按钮可一键 执行并结合大模型分析返回结果。
日常任务通常不是查询单一 SQL 可以解决的,Playbook 允许你以自然语言的方式描述整个任务过程,大模型可根据工作流描述调用相应的 Tool 进行分析,并决定任务走向。
类似常见的 SQL Client,对话的范围可以选择某个 Database,因此可以很方便的支持添加多个数据库并互相隔离。
支持在 Chat 中通过自然语言运行 tool, 和在 Tools 界面点击运行的效果是相同的,比如输入“运行 tool getClusterCharsets”。
支持添加 MCP Server(仅支持 SSE),以扩展更多的 Tool。MCP Tool 和 SQL Tool 是平级的,因此大模型在执行任务时将同等对待,选择合适的 Tool 执行。
1. 可同时管理多个数据库,相比常规 Chatbot 更贴合数据库使用习惯。
2. 那我自己写一个 web 项目将这些 SQL 存储起来 ,调用后结果展示在页面不是一样可以达到效果吗?在大部分情况下,每个 SQL 的返回字段名称和数量都是不同的 ,web 页面的表格一般是固定的,无法很好地展示。大模型擅长处理文本,可以帮你总结,还可以动态展示。
3. 很多时候我们不仅仅是要结果,还希望有初步的分析,SQL执行完之后,将你的问题告诉大模型,大模型就可以直接给你回答啦。
直接执行下面的 docker 命令就可以了
docker run -d \ --name ob-agent \ --env CUSTOM_BASE_URL='' \ --env CUSTOM_API_KEY='' \ --env CUSTOM_CHAT_MODEL_NAME='' \ -p 8000:8000 \ davidzhangbj/oceanbaseagent:latest
其中的 CUSTOM_BASE_URL、CUSTOM_API_KEY、CUSTOM_CHAT_MODEL_NAME 必须配置为自己用的大模型 API 地址、KEY 和模型名称。
CUSTOM_BASE_URL、CUSTOM_API_KEY、CUSTOM_CHAT_MODEL_NAME的配置示例:
docker run -d \–name ob-agent \–env CUSTOM_BASE_URL='https://dashscope.aliyuncs.com/compatible-mode/v1' \–env CUSTOM_API_KEY='sk-xxx' \–env CUSTOM_CHAT_MODEL_NAME='qwen-max-latest' \-p 8000:8000 \davidzhangbj/oceanbaseagent:latest
启动后的访问方式:http://ip:8000,可以在 docker 启动命令中调整默认端口,如-p 9000:8000
⚠️注意:启动之后要先配置 OceanBase 的连接;最好以系统租户的 root 用户登录,因为很多 SQL 只有在这个租户下才可以执行
对源码感兴趣的可以访问
https://github.com/davidzhangbj/agent
,oceanbase 分支
最后为大家推荐这个 OceanBase 开源负责人老纪的公众号「老纪的技术唠嗑局」,会持续更新和 # 数据库 、# AI 、# 技术架构 相关的各种技术内容。欢迎感兴趣的朋友们关注!
「老纪的技术唠嗑局」不仅希望能持续给大家带来有价值的技术分享,也希望能和大家一起为开源社区贡献一份力量。如果你对 OceanBase 开源社区认可,点亮一颗小星星 ✨ 吧!你的每一个Star,都是我们努力的动力。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70047136/viewspace-3092747/ ,如需转载,请注明出处,否则将追究法律责任。