|
|
""" |
|
|
HITL-KG Core Module |
|
|
|
|
|
Human-in-the-Loop Knowledge Graph Reasoning System |
|
|
|
|
|
Components: |
|
|
- KnowledgeGraph: Core graph with entities and reasoning nodes |
|
|
- ReasoningEngine: LLM and local reasoning generators |
|
|
- EmbeddingService: Multilingual semantic search |
|
|
- SessionManager: Per-user session handling |
|
|
- DatasetLoader: Generic ontology loading |
|
|
|
|
|
Usage: |
|
|
from src.core import load_knowledge_graph, create_engine, LLMProvider |
|
|
|
|
|
kg = load_knowledge_graph() |
|
|
engine = create_engine(LLMProvider.LOCAL, kg) |
|
|
context = engine.build_context("fever and cough") |
|
|
for node in engine.generate(context, GenerationConfig()): |
|
|
print(node.content) |
|
|
""" |
|
|
|
|
|
|
|
|
from .config import ( |
|
|
AppConfig, |
|
|
DatasetConfig, |
|
|
EmbeddingConfig, |
|
|
LLMConfig, |
|
|
get_config, |
|
|
load_config, |
|
|
) |
|
|
|
|
|
|
|
|
from .knowledge_graph import ( |
|
|
KnowledgeGraph, |
|
|
ReasoningNode, |
|
|
ReasoningEdge, |
|
|
Entity, |
|
|
NodeType, |
|
|
EdgeType, |
|
|
EntityCategory, |
|
|
NODE_TYPE_INFO, |
|
|
create_node_id, |
|
|
) |
|
|
|
|
|
|
|
|
from .llm_engine import ( |
|
|
ReasoningEngine, |
|
|
OpenAIEngine, |
|
|
LocalEngine, |
|
|
GraphSynchronizer, |
|
|
GenerationConfig, |
|
|
ReasoningContext, |
|
|
ReasoningChainCache, |
|
|
LLMProvider, |
|
|
create_engine, |
|
|
detect_language, |
|
|
LANGUAGE_NAMES, |
|
|
) |
|
|
|
|
|
|
|
|
from .dataset_loader import ( |
|
|
DatasetLoader, |
|
|
OntologyTerm, |
|
|
load_knowledge_graph, |
|
|
build_knowledge_graph, |
|
|
) |
|
|
|
|
|
|
|
|
from .embedding_service import ( |
|
|
EmbeddingService, |
|
|
SearchResult, |
|
|
get_embedding_service, |
|
|
) |
|
|
|
|
|
|
|
|
from .session_manager import ( |
|
|
Session, |
|
|
ChatMessage, |
|
|
UserInteraction, |
|
|
SessionManager, |
|
|
get_session_manager, |
|
|
generate_session_id, |
|
|
) |
|
|
|
|
|
|
|
|
__all__ = [ |
|
|
|
|
|
"AppConfig", |
|
|
"DatasetConfig", |
|
|
"EmbeddingConfig", |
|
|
"LLMConfig", |
|
|
"get_config", |
|
|
"load_config", |
|
|
|
|
|
|
|
|
"KnowledgeGraph", |
|
|
"ReasoningNode", |
|
|
"ReasoningEdge", |
|
|
"Entity", |
|
|
"NodeType", |
|
|
"EdgeType", |
|
|
"EntityCategory", |
|
|
"NODE_TYPE_INFO", |
|
|
"create_node_id", |
|
|
|
|
|
|
|
|
"ReasoningEngine", |
|
|
"OpenAIEngine", |
|
|
"LocalEngine", |
|
|
"GraphSynchronizer", |
|
|
"GenerationConfig", |
|
|
"ReasoningContext", |
|
|
"ReasoningChainCache", |
|
|
"LLMProvider", |
|
|
"create_engine", |
|
|
"detect_language", |
|
|
"LANGUAGE_NAMES", |
|
|
|
|
|
|
|
|
"DatasetLoader", |
|
|
"OntologyTerm", |
|
|
"load_knowledge_graph", |
|
|
"build_knowledge_graph", |
|
|
|
|
|
|
|
|
"EmbeddingService", |
|
|
"SearchResult", |
|
|
"get_embedding_service", |
|
|
|
|
|
|
|
|
"Session", |
|
|
"ChatMessage", |
|
|
"UserInteraction", |
|
|
"SessionManager", |
|
|
"get_session_manager", |
|
|
"generate_session_id", |
|
|
] |
|
|
|