tahamajs's picture
download
raw
2.4 kB
#!/usr/bin/env python3
"""
API Server Launcher for CA10 Knowledge Graphs
This script starts the advanced API server with all features
"""
import os
import sys
import argparse
from pathlib import Path
# Add src to path
sys.path.append(os.path.join(os.path.dirname(__file__), 'src'))
def main():
parser = argparse.ArgumentParser(description='Launch CA10 Knowledge Graphs API Server')
parser.add_argument('--host', default='0.0.0.0', help='Host to bind to')
parser.add_argument('--port', type=int, default=8000, help='Port to bind to')
parser.add_argument('--kg-type', choices=['basic', 'scientific'], default='scientific',
help='Type of knowledge graph to use')
parser.add_argument('--reload', action='store_true', help='Enable auto-reload')
args = parser.parse_args()
try:
# Import required modules
from api.advanced_api import AdvancedKnowledgeGraphAPI
from core.knowledge_graph import create_sample_kg
from core.scientific_kg import create_advanced_scientific_kg
print("๐Ÿš€ Starting CA10 Knowledge Graphs API Server")
print("=" * 50)
# Create knowledge graph
if args.kg_type == 'scientific':
print("๐Ÿ“Š Creating advanced scientific knowledge graph...")
kg = create_advanced_scientific_kg()
else:
print("๐Ÿ“Š Creating basic knowledge graph...")
kg = create_sample_kg()
print(f"โœ… Knowledge graph created: {len(kg.entities)} entities, {len(kg.triples)} triples")
# Create API
api = AdvancedKnowledgeGraphAPI(kg)
print(f"๐ŸŒ Starting server on http://{args.host}:{args.port}")
print(f"๐Ÿ“š API documentation: http://{args.host}:{args.port}/docs")
print(f"๐Ÿ–ฅ๏ธ Web interface: http://{args.host}:{args.port}")
print(f"๐Ÿ”ง Auto-reload: {'Enabled' if args.reload else 'Disabled'}")
# Start server
api.run(host=args.host, port=args.port)
except ImportError as e:
print(f"โŒ Import error: {e}")
print("๐Ÿ’ก Make sure all dependencies are installed:")
print(" pip install -r requirements.txt")
sys.exit(1)
except Exception as e:
print(f"โŒ Error starting server: {e}")
sys.exit(1)
if __name__ == "__main__":
main()

Xet Storage Details

Size:
2.4 kB
ยท
Xet hash:
e58ad7edb7017aa7f19948a7e18271141183700f351246cb113612fec61105e7

Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.