集成三个子图到主Agent架构 + 修复前后端字段不匹配问题
Some checks failed
构建并部署 AI Agent 服务 / deploy (push) Has been cancelled

主要变更:
1. 创建 subgraph_tools.py - 将三个子图包装为 LangChain 工具
2. 更新 graph_tools.py - 删除旧工具,添加子图工具
3. 更新系统提示词 - 介绍三个子系统 + RAG 能力
4. 简化 backend.py - 删除独立子图 API 端点
5. 修复 service.py 字段名不匹配问题 - content -> token
6. 前端界面优化 - 移动子图测试到侧边栏、删除测试审核按钮
7. 添加 pyjwt 依赖到 requirements.txt
8. 更新 docker-compose.yml - 添加前端代码挂载
This commit is contained in:
2026-04-27 15:23:50 +08:00
parent 26f872f975
commit 048f57a89f
13 changed files with 244 additions and 406 deletions

View File

@@ -393,32 +393,6 @@ def _render_review_confirmation():
except Exception as e:
st.session_state.review_error = str(e)
# 测试按钮 - 用于演示审核功能
with st.container():
st.markdown("<div style='height: 20px;'></div>", unsafe_allow_html=True)
col_test, col_info = st.columns([1, 3])
with col_test:
if st.button("🔧 测试审核", key="test_review_chat"):
# 创建一个测试审核请求
test_content = "这是一条待审核的测试内容。\n\n您可以选择:\n✅ 确定 - 批准此内容\n✏️ 修改 - 修改后批准\n❌ 拒绝 - 拒绝此内容"
review_id = api_client.request_review(thread_id, user_id, test_content)
if review_id:
st.session_state.pending_review = {
"review_id": review_id,
"content_to_review": test_content,
"created_at": "2024-01-01T12:00:00",
"user_id": user_id
}
st.success("✅ 已创建测试审核")
st.rerun()
else:
st.error("❌ 创建测试审核失败")
with col_info:
if st.session_state.get("review_error"):
st.warning(f"⚠️ {st.session_state.review_error}")
elif st.session_state.pending_review:
st.info("📋 有待审核内容")
# 显示审核确认界面
if st.session_state.pending_review:
review = st.session_state.pending_review

View File

@@ -21,6 +21,17 @@ def render_sidebar():
# 底部放用户部分
st.divider()
_render_user_section()
# 子图测试面板:放在最底部的角落里
st.divider()
with st.expander("🔧 测试工具", expanded=False):
from components.subgraph_panel import _render_dictionary_panel, _render_news_panel, _render_contact_panel
st.caption("📚 词典子图")
_render_dictionary_panel()
st.caption("📰 资讯子图")
_render_news_panel()
st.caption("📇 通讯录子图")
_render_contact_panel()
def _render_user_section():
"""渲染用户登录区域"""

View File

@@ -19,14 +19,12 @@ if __name__ == '__main__':
from components.sidebar import render_sidebar
from components.chat_area import render_chat_area
from components.info_panel import render_info_panel
from components.subgraph_panel import render_subgraph_panel
else:
from .config import config
from .state import AppState
from .components.sidebar import render_sidebar
from .components.chat_area import render_chat_area
from .components.info_panel import render_info_panel
from .components.subgraph_panel import render_subgraph_panel
# =============================================================================
@@ -129,10 +127,6 @@ def main():
# 中间主区域:全宽的聊天区域
render_chat_area()
# 底部:子图测试面板
st.divider()
render_subgraph_panel()
if __name__ == "__main__":