This project implements a web-based Neurosymbolic Knowledge Graph system that allows users to visualize, query, and enrich philosophical concepts and their relationships using various AI services.
- Python 3.11+
- Poetry (for dependency management)
- Clone the repository:
git clone https://github.com/yourusername/neurosymbolic-knowledge-graph.git cd neurosymbolic-knowledge-graph - Install dependencies using Poetry:
poetry install - Set up environment variables:
- AWS_ACCESS_KEY_ID
- AWS_SECRET_ACCESS_KEY
- GOOGLE_API_KEY
- ANTHROPIC_API_KEY
- OPENAI_API_KEY
- Run the Flask application:
make run - Open a web browser and navigate to http://localhost:5000
- Use the interface to query nodes, enrich information, and visualize the knowledge graph.
- Node Query and Enrichment: Select a node from the dropdown and query or enrich its information using AI services.
- Graph Visualization: View the knowledge graph using an interactive Mermaid diagram.
- Export to JSON: Export the entire graph structure to a JSON file for further analysis or backup.
- Philosophers PageRank: View the importance of philosophers based on their connections in the graph.
- Top Nodes Similarity: Explore the similarity between the top nodes in the graph based on their distances.
- Bedrock Model Testing: Test different AWS Bedrock models with custom prompts and system prompts.
This project follows literate programming principles using org-mode. The main source code is generated from the README.org file using Babel.
To modify the source code:
- Edit the relevant code blocks in README.org
- Use C-c C-v t to tangle the code blocks and generate the Python files
make testmake lint- Fork the repository
- Create a new branch for your feature
- Make your changes and commit them
- Push to your fork and submit a pull request
Please ensure your code follows the project’s coding standards and includes appropriate tests.
(Add your chosen license information here)