# langgraph-relation-visualize **Repository Path**: michah/langgraph-relation-visualize ## Basic Information - **Project Name**: langgraph-relation-visualize - **Description**: AI关系图生成助手是一个基于LangGraph和Chainlit构建的智能系统,能够自动从文本中提取实体关系三元组并生成可视化图表。该项目集成了Graphviz和Mermaid两种可视化方式,支持中文显示。 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-01-18 - **Last Updated**: 2026-01-18 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # AI关系图生成助手 AI关系图生成助手是一个基于LangGraph和Chainlit构建的智能系统,能够自动从文本中提取实体关系三元组并生成可视化图表。该项目集成了Graphviz和Mermaid两种可视化方式,支持中文显示。 ## 项目特性 - 🤖 **智能实体关系提取**:自动从文本中识别并提取实体关系三元组(主体-谓语-客体) - 📊 **双重可视化支持**:支持Graphviz图像和Mermaid代码两种可视化方式 - 🌐 **中文友好**:完全支持中文显示和处理 - 🔄 **状态管理**:使用LangGraph进行状态管理,保证对话连续性 - 💬 **交互式界面**:使用Chainlit提供美观的Web界面 ## 项目结构 ``` project/ ├── agent_graph.py # AI代理核心逻辑和图结构定义 ├── app.py # Chainlit应用入口,处理用户交互 ├── chainlit.md # 用户使用指南和提示词示例 ├── graphviz_render.py # 图形渲染工具函数(Graphviz和Mermaid) ├── mermaid_renderer.py # Mermaid图表HTML渲染器 ├── requirements.txt # 项目依赖 ├── README.md # 项目说明文档 ├── AI关系图生成助手开发全攻略.md # 开发教程 ├── LangGraph构建AI关系图生成器实战详解.md # 实战教程 ├── AI关系图生成助手使用教程.md # 使用教程 └── 完整的AI关系图生成助手项目代码.md # 完整代码详解 ``` ## 技术栈 - **langgraph**: 构建有状态AI代理 - **langchain** + **langchain-ollama**: LLM集成与调用 - **chainlit**: 提供Web对话界面 - **pydantic**: 数据模型校验 - **graphviz**: 图形可视化支持 ## 安装与使用 ### 1. 环境准备 ```bash # 克隆项目 git clone cd project # 安装Python依赖 pip install -r requirements.txt ``` ### 2. 系统依赖 安装Graphviz系统级依赖: ```bash # Ubuntu/Debian sudo apt-get install graphviz # macOS brew install graphviz # CentOS/RHEL sudo yum install graphviz ``` ### 3. 启动应用 ```bash # 启动Chainlit应用 chainlit run app.py ``` 应用将在 `http://localhost:8000` 启动。 ## 使用示例 在聊天框中输入以下类型的内容来生成关系图: ### 技术领域关系 ``` Python连接数据库,数据库存储用户信息,API处理请求 ``` ### 业务流程关系 ``` 用户注册账户,系统验证邮箱,发送欢迎邮件 ``` ### 知识图谱关系 ``` 北京是中国的首都,中国位于亚洲,亚洲是大陆 ``` ## 核心功能 ### 1. 实体关系提取 - 自动识别文本中的实体关系三元组 - 支持技术领域、业务流程、知识图谱等多种类型 - 提供结构化JSON输出 ### 2. 可视化渲染 - **Graphviz渲染**:生成PNG格式的可视化图表 - **Mermaid支持**:生成可直接渲染的Mermaid代码 - **中文支持**:完整支持中文字符显示 ### 3. 智能对话 - 基于LangGraph的状态管理 - 支持工具调用 - 连续对话能力 ## 高级提示词 ### 技术系统与架构 - "抽取下面文本中的技术实体及调用关系,输出JSON三元组,只保留技术相关:{文本}" - "分析系统架构中的服务、模块和接口关系,生成Graphviz可视化图" - "提取微服务调用链,标注服务A → 服务B → 数据库的关系,忽略业务流程" ### 编程与数据流 - "从这段代码描述中抽取函数、API和数据库交互关系,生成关系三元组" - "识别数据流向:数据源 → 数据处理模块 → 输出模块,并生成可视化图表" - "提取程序调用关系、依赖关系和数据传输关系,只关注技术实体" ### 知识图谱与概念关系 - "从下面文本中抽取概念之间的技术关联,忽略非技术内容" - "整理人工智能相关术语及它们的关系,输出可视化Graphviz图" - "识别工具、算法、模型之间的依赖与调用关系" ## 文件说明 ### 核心代码文件 - **agent_graph.py**: 定义AI代理的图结构和节点逻辑 - **app.py**: Chainlit应用入口,处理用户交互 - **graphviz_render.py**: 提供图形渲染功能 - **mermaid_renderer.py**: Mermaid图表HTML渲染器 ### 配置文件 - **chainlit.md**: 用户使用指南和提示词示例 - **requirements.txt**: 项目依赖列表 ### 教程文档 - **AI关系图生成助手开发全攻略.md**: 详细开发教程 - **LangGraph构建AI关系图生成器实战详解.md**: 实战开发经验 - **AI关系图生成助手使用教程.md**: 使用方法教程 - **完整的AI关系图生成助手项目代码.md**: 完整代码详解 ## 常见问题 ### 1. 图片无法显示 确保Graphviz系统依赖已正确安装,并且有适当的中文字体支持。 ### 2. f-string中的JSON转义问题 在代码中,JSON对象的花括号需要进行转义处理(使用`{{`和`}}`代替`{`和`}`)。 ### 3. 中文显示异常 检查系统中文字体配置,确保Graphviz配置中包含中文字体路径。 ## 扩展功能 - [ ] 支持更多图表类型(流程图、时序图等) - [ ] 添加图表导出功能 - [ ] 实现关系权重标注 - [ ] 增加批量处理能力 - [ ] 实现交互式编辑功能 ## 贡献 欢迎提交Issue和Pull Request来改进这个项目。 ## 许可证 本项目采用MIT许可证。