No description
Find a file
Daniel Chalef c90b4e01ab
chore: enable mypy; actions cleanup (#21)
* chore: eenable mypy

* chore: Update MyPy command in typecheck.yml workflow

* fix caching. makefile lint improvements

* chore: Fix sed command in typecheck.yml workflow

* chore: Update sed command in typecheck.yml workflow

* chore: Update Python version to 3.10 in typecheck.yml workflow

* remove pretty

* pipefail
2024-08-22 15:10:24 -07:00
.github chore: enable mypy; actions cleanup (#21) 2024-08-22 15:10:24 -07:00
core Invalidation updates && improvements (#20) 2024-08-22 18:09:44 -04:00
examples/podcast ruff action (#17) 2024-08-22 13:06:42 -07:00
tests ruff action (#17) 2024-08-22 13:06:42 -07:00
.env.example add nodes and edges 2024-08-13 14:35:43 -04:00
.gitignore feat: Initial version of temporal invalidation + tests (#8) 2024-08-20 16:29:19 -04:00
conftest.py format and linting (#18) 2024-08-22 12:26:13 -07:00
Makefile chore: enable mypy; actions cleanup (#21) 2024-08-22 15:10:24 -07:00
poetry.lock ruff action (#17) 2024-08-22 13:06:42 -07:00
pyproject.toml ruff action (#17) 2024-08-22 13:06:42 -07:00
pytest.ini feat: Initial version of temporal invalidation + tests (#8) 2024-08-20 16:29:19 -04:00
README.md format and linting (#18) 2024-08-22 12:26:13 -07:00
runner.py Invalidation updates && improvements (#20) 2024-08-22 18:09:44 -04:00
SECURITY.md format and linting (#18) 2024-08-22 12:26:13 -07:00

Graphiti (LLM generated readme)

Graphiti is a Python library for building and managing knowledge graphs using Neo4j and OpenAI's language models. It provides a flexible framework for processing episodes of information, extracting semantic nodes and edges, and maintaining a dynamic graph structure.

Features

  • Asynchronous interaction with Neo4j database
  • Integration with OpenAI's GPT models for natural language processing
  • Automatic extraction of semantic nodes and edges from episodic data
  • Temporal tracking of relationships and facts
  • Flexible schema management

Installation

(Add installation instructions here)

Quick Start

from graphiti import Graphiti

# Initialize Graphiti
graphiti = Graphiti("bolt://localhost:7687", "neo4j", "password")

# Process an episode
await graphiti.process_episode(
    name="Example Episode",
    episode_body="Alice met Bob at the coffee shop.",
    source_description="User input",
    reference_time=datetime.now()
)

# Retrieve recent episodes
recent_episodes = await graphiti.retrieve_episodes(last_n=5)

# Close the connection
graphiti.close()

Documentation

(Add link to full documentation when available)

Contributing

(Add contribution guidelines)

License

(Add license information)