cognee/iterations/level_2
2023-12-14 10:03:31 +01:00
..
auth Refactor the readme and move previous iterations to sub-directories 2023-12-14 10:03:31 +01:00
chunkers Refactor the readme and move previous iterations to sub-directories 2023-12-14 10:03:31 +01:00
loaders Refactor the readme and move previous iterations to sub-directories 2023-12-14 10:03:31 +01:00
modulators Refactor the readme and move previous iterations to sub-directories 2023-12-14 10:03:31 +01:00
personal_receipts/2017/de/public_transport Refactor the readme and move previous iterations to sub-directories 2023-12-14 10:03:31 +01:00
schema/semantic Refactor the readme and move previous iterations to sub-directories 2023-12-14 10:03:31 +01:00
schema_registry Refactor the readme and move previous iterations to sub-directories 2023-12-14 10:03:31 +01:00
shared Refactor the readme and move previous iterations to sub-directories 2023-12-14 10:03:31 +01:00
tests Refactor the readme and move previous iterations to sub-directories 2023-12-14 10:03:31 +01:00
vectordb Refactor the readme and move previous iterations to sub-directories 2023-12-14 10:03:31 +01:00
.env.template Refactor the readme and move previous iterations to sub-directories 2023-12-14 10:03:31 +01:00
api.py Refactor the readme and move previous iterations to sub-directories 2023-12-14 10:03:31 +01:00
docker-compose.yml Refactor the readme and move previous iterations to sub-directories 2023-12-14 10:03:31 +01:00
Dockerfile Refactor the readme and move previous iterations to sub-directories 2023-12-14 10:03:31 +01:00
entrypoint.sh Refactor the readme and move previous iterations to sub-directories 2023-12-14 10:03:31 +01:00
fetch_secret.py Refactor the readme and move previous iterations to sub-directories 2023-12-14 10:03:31 +01:00
level_2_pdf_vectorstore__dlt_contracts.py Refactor the readme and move previous iterations to sub-directories 2023-12-14 10:03:31 +01:00
poetry.lock Refactor the readme and move previous iterations to sub-directories 2023-12-14 10:03:31 +01:00
pyproject.toml Refactor the readme and move previous iterations to sub-directories 2023-12-14 10:03:31 +01:00
Readme.md Refactor the readme and move previous iterations to sub-directories 2023-12-14 10:03:31 +01:00
utils.py Refactor the readme and move previous iterations to sub-directories 2023-12-14 10:03:31 +01:00

PromethAI Memory Manager

Description

Initial code lets you do three operations:

  1. Add to memory
  2. Retrieve from memory
  3. Structure the data to schema
  4. Load to a database

#How to use

Installation

docker compose build promethai_mem

Run

docker compose up promethai_mem

Usage

The fast API endpoint accepts prompts and stores data with the help of the Memory Manager

The types of memory are: Episodic, Semantic, Buffer

Endpoint Overview The Memory API provides the following endpoints:

  • /[memory_type]/add-memory (POST)
  • /[memory_type]/fetch-memory (POST)
  • /[memory_type]/delete-memory (POST)
  • /available-buffer-actions (GET)
  • /run-buffer (POST)
  • /buffer/create-context (POST)

How To Get Started

  1. We do a post request to add-memory endpoint with the following payload: It will upload Jack London "Call of the Wild" to SEMANTIC memory
curl -X POST http://localhost:8000/semantic/add-memory -H "Content-Type: application/json" -d '{
  "payload": {
    "user_id": "681",
    "prompt": "I am adding docs",
    "params": {
        "version": "1.0",
        "agreement_id": "AG123456",
        "privacy_policy": "https://example.com/privacy",
        "terms_of_service": "https://example.com/terms",
        "format": "json",
        "schema_version": "1.1",
        "checksum": "a1b2c3d4e5f6",
        "owner": "John Doe",
        "license": "MIT",
        "validity_start": "2023-08-01",
        "validity_end": "2024-07-31"
    },
    "loader_settings": {
        "format": "PDF",
        "source": "url",
        "path": "https://www.ibiblio.org/ebooks/London/Call%20of%20Wild.pdf"
    }
  }
}'
  1. We run the buffer with the prompt "I want to know how does Buck adapt to life in the wild and then have that info translated to German "
curl -X POST http://localhost:8000/run-buffer -H "Content-Type: application/json" -d '{
  "payload": {
    "user_id": "681",
    "prompt": "I want to know how does Buck adapt to life in the wild and then have that info translated to German ",
    "params": {
        "version": "1.0",
        "agreement_id": "AG123456",
        "privacy_policy": "https://example.com/privacy",
        "terms_of_service": "https://example.com/terms",
        "format": "json",
        "schema_version": "1.1",
        "checksum": "a1b2c3d4e5f6",
        "owner": "John Doe",
        "license": "MIT",
        "validity_start": "2023-08-01",
        "validity_end": "2024-07-31"
    },
    "attention_modulators": {
        "relevance": 0.0,
        "saliency": 0.1
    }
  }
}'

Other attention modulators that could be implemented:

    "frequency": 0.5, 
    "repetition": 0.5,
    "length": 0.5,
    "position": 0.5,
    "context": 0.5,
    "emotion": 0.5,
    "sentiment": 0.5,
    "perspective": 0.5,
    "style": 0.5,
    "grammar": 0.5,
    "spelling": 0.5,
    "logic": 0.5,
    "coherence": 0.5,
    "cohesion": 0.5,
    "plausibility": 0.5,
    "consistency": 0.5,
    "informativeness": 0.5,
    "specificity": 0.5,
    "detail": 0.5,
    "accuracy": 0.5,
    "topicality": 0.5,
    "focus": 0.5,
    "clarity": 0.5,
    "simplicity": 0.5,
    "naturalness": 0.5,
    "fluency": 0.5,
    "variety": 0.5,
    "vividness": 0.5,
    "originality": 0.5,
    "creativity": 0.5,
    "humor": 0.5,