| 1234567891011121314151617181920212223242526272829 |
- # -*- coding: utf-8 -*-
- """知识图谱管理:检索、可视化、节点搜索"""
- from fastapi import APIRouter, Depends
- from sqlalchemy.orm import Session
- from backend.database import get_db
- from backend.services.auth import get_current_user_id
- from backend.services.knowledge_graph import search_knowledge_graph, get_graph_for_visualization
- router = APIRouter(prefix="/knowledge", tags=["知识图谱"])
- @router.get("/search")
- def kg_search(
- q: str,
- limit: int = 15,
- user_id: int = Depends(get_current_user_id),
- ):
- """节点搜索、子节点展开:根据关键词检索知识图谱"""
- return {"results": search_knowledge_graph(q, limit=limit)}
- @router.get("/graph")
- def kg_graph(
- limit: int = 50,
- user_id: int = Depends(get_current_user_id),
- ):
- """Force-directed 布局可视化数据(供 React 渲染)"""
- return get_graph_for_visualization(limit=limit)
|