Skip to content

A web-based neurosymbolic knowledge graph system for visualizing and analyzing philosophical concepts and their relationships with AI-powered enrichment

Notifications You must be signed in to change notification settings

jwalsh/neuro-graph-dynamics

Repository files navigation

Project Description

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.

Prerequisites

  • Python 3.11+
  • Poetry (for dependency management)

Installation

  1. Clone the repository:
    git clone https://github.com/yourusername/neurosymbolic-knowledge-graph.git
    cd neurosymbolic-knowledge-graph
        
  2. Install dependencies using Poetry:
    poetry install
        
  3. Set up environment variables:
    • AWS_ACCESS_KEY_ID
    • AWS_SECRET_ACCESS_KEY
    • GOOGLE_API_KEY
    • ANTHROPIC_API_KEY
    • OPENAI_API_KEY

Usage

  1. Run the Flask application:
    make run
        
  2. Open a web browser and navigate to http://localhost:5000
  3. Use the interface to query nodes, enrich information, and visualize the knowledge graph.

Features

  • 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.

Development

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:

  1. Edit the relevant code blocks in README.org
  2. Use C-c C-v t to tangle the code blocks and generate the Python files

Testing

make test

Linting

make lint

Contributing

  1. Fork the repository
  2. Create a new branch for your feature
  3. Make your changes and commit them
  4. Push to your fork and submit a pull request

Please ensure your code follows the project’s coding standards and includes appropriate tests.

License

(Add your chosen license information here)

About

A web-based neurosymbolic knowledge graph system for visualizing and analyzing philosophical concepts and their relationships with AI-powered enrichment

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published