Skip to main content

GRKMemory (Graph Retrieve Knowledge Memory) - A semantic graph-based memory system for AI agents developed by MonkAI team

Project description

🧠 GRKMemory - Graph Retrieve Knowledge Memory

GRKMemory = Graph Retrieve Knowledge Memory

PyPI version Python 3.10+ License: MIT

GRKMemory é um sistema de memória semântica baseado em grafos para agentes de IA, desenvolvido pelo time MonkAI. Recuperação inteligente de conhecimento com economia de 95% em tokens.

🚀 Começando

1️⃣ Instalação

pip install grkmemory

2️⃣ Obter Token de Acesso

Para utilizar o GRKMemory, você precisa de um token fornecido pelo time MonkAI:

📧 Contato: contato@monkai.com.br
🌐 Site: www.monkai.com.br

3️⃣ Configurar Token

# Configurar como variável de ambiente
export GRKMEMORY_API_KEY="grk_seu_token_aqui"

# OpenAI (padrão)
export OPENAI_API_KEY="sua_openai_key"

# OU Azure OpenAI
export USE_AZURE_OPENAI="true"
export AZURE_OPENAI_API_KEY="sua_azure_key"
export AZURE_OPENAI_ENDPOINT="https://seu-recurso.openai.azure.com"
export AZURE_OPENAI_DEPLOYMENT="gpt-4o"
export AZURE_OPENAI_EMBEDDING_DEPLOYMENT="text-embedding-3-small"

4️⃣ Autenticar e Usar

from grkmemory import GRKMemory, GRKAuth, AuthenticatedGRK

# Autenticar com token MonkAI
auth = GRKAuth.from_env()  # Usa GRKMEMORY_API_KEY
print("✅ Autenticado!")

# Inicializar GRKMemory protegido
grk = GRKMemory()
secure = AuthenticatedGRK(grk, auth.get_current_token())

# Usar!
secure.save_conversation([
    {"role": "user", "content": "Olá!"},
    {"role": "assistant", "content": "Oi! Como posso ajudar?"}
])

results = secure.search("Olá")

🎯 Quick Start (Completo)

from grkmemory import GRKMemory, GRKAuth, AuthenticatedGRK
import os

# 1. Autenticar
api_key = os.getenv("GRKMEMORY_API_KEY")
auth = GRKAuth()
auth.authenticate(api_key)

# 2. Criar GRKMemory autenticado
grk = GRKMemory()
secure = AuthenticatedGRK(grk, api_key)

# 3. Salvar conversa
secure.save_conversation([
    {"role": "user", "content": "Vamos falar sobre Python"},
    {"role": "assistant", "content": "Claro! O que você quer saber?"}
])

# 4. Buscar memórias relevantes
results = secure.search("O que discutimos sobre Python?")

# 5. Chat com contexto de memória automático
response = secure.chat("Me conte sobre nossas discussões anteriores")

🔐 Autenticação

Token MonkAI

A autenticação é uma camada de proteção fornecida pelo time MonkAI. Todos os recursos requerem um token válido.

Permissão Descrição
read Buscar e consultar memórias
write Salvar novas memórias
admin Gerenciamento completo

Métodos de Autenticação

from grkmemory import GRKAuth

# Método 1: Via variável de ambiente (recomendado)
auth = GRKAuth.from_env()  # Usa GRKMEMORY_API_KEY

# Método 2: Diretamente
auth = GRKAuth()
auth.authenticate("grk_seu_token")

# Verificar permissões
print(f"Pode ler: {auth.check_permission('read')}")
print(f"Pode escrever: {auth.check_permission('write')}")

⚠️ Importante: Tokens são fornecidos exclusivamente pelo time MonkAI.

⚙️ Configuração

from grkmemory import GRKMemory, MemoryConfig

config = MemoryConfig(
    model="gpt-4o",
    memory_file="minhas_memorias.json",
    enable_embeddings=True,
    background_memory_method="graph",  # 'graph', 'embedding', 'tags', 'entities'
    background_memory_limit=5,
    background_memory_threshold=0.3,
    storage_format="json",   # 'json' (padrão) ou 'toon'
    output_format="json"     # 'json', 'toon' ou 'text'
)

grk = GRKMemory(config=config)

☁️ Azure OpenAI

GRKMemory suporta Azure OpenAI nativamente. Configure via variáveis de ambiente ou código:

Via Variáveis de Ambiente

export USE_AZURE_OPENAI="true"
export AZURE_OPENAI_API_KEY="sua-api-key"
export AZURE_OPENAI_ENDPOINT="https://seu-recurso.openai.azure.com"
export AZURE_OPENAI_DEPLOYMENT="gpt-4o"
export AZURE_OPENAI_EMBEDDING_DEPLOYMENT="text-embedding-3-small"
export AZURE_OPENAI_API_VERSION="2024-02-01"  # opcional

Via Código

from grkmemory import GRKMemory, MemoryConfig

# Configuração Azure OpenAI
config = MemoryConfig(
    use_azure=True,
    api_key="sua-azure-api-key",
    azure_endpoint="https://seu-recurso.openai.azure.com",
    azure_deployment="gpt-4o",
    azure_embedding_deployment="text-embedding-3-small",
    azure_api_version="2024-02-01"
)

grk = GRKMemory(config=config)

Tabela de Configurações Azure

Variável Config Descrição
USE_AZURE_OPENAI use_azure Ativar Azure (true/false)
AZURE_OPENAI_API_KEY api_key Chave da API Azure
AZURE_OPENAI_ENDPOINT azure_endpoint URL do recurso Azure
AZURE_OPENAI_DEPLOYMENT azure_deployment Nome do deployment (chat)
AZURE_OPENAI_EMBEDDING_DEPLOYMENT azure_embedding_deployment Nome do deployment (embeddings)
AZURE_OPENAI_API_VERSION azure_api_version Versão da API (default: 2024-02-01)

📦 Formatos de Armazenamento (JSON vs TOON)

GRKMemory suporta dois formatos de serialização:

Formato Vantagem Uso Recomendado
JSON Parsing 27x mais rápido Armazenamento (padrão)
TOON 25% menos tokens Contexto para LLM

Instalando TOON (opcional)

pip install toon_format

Estratégia Híbrida (Recomendada)

from grkmemory import MemoryRepository

# JSON para armazenamento (rápido) + TOON para LLM (economia de tokens)
repo = MemoryRepository(
    memory_file="memorias.json",
    storage_format="json",      # Parsing rápido
    output_format="toon"        # 25% menos tokens para LLM
)

# Buscar e formatar para LLM
results = repo.search("Python")
context = repo.format_for_llm(results)  # Retorna em TOON (~25% menos tokens)

Comparando Formatos

# Estimar economia de tokens
estimates = repo.get_token_estimate(results)
print(estimates)
# {'json': 689, 'toon': 512, 'savings_toon_vs_json': '25.7%'}

Convertendo entre Formatos

# Exportar para TOON
repo.export("backup.toon", format="toon")

# Converter armazenamento para TOON
repo.convert_storage_format("toon")

👥 Multi-tenant (user_id / session_id)

É possível isolar memórias por usuário e/ou sessão usando os parâmetros opcionais user_id e session_id em save_conversation e search. O armazenamento continua em um único arquivo; o filtro é aplicado na busca.

# Salvar conversa para um usuário/sessão
grk.save_conversation(
    [{"role": "user", "content": "Olá!"}, {"role": "assistant", "content": "Oi!"}],
    user_id="user_123",
    session_id="sess_abc"
)

# Buscar apenas memórias desse usuário
results = grk.search("Olá", user_id="user_123")

# Ou apenas dessa sessão
results = grk.search("Olá", session_id="sess_abc")

# Chat e save também aceitam user_id/session_id
response = grk.chat("O que discutimos?", user_id="user_123")

Sem user_id/session_id, o comportamento é o mesmo de antes (todas as memórias são consideradas).

⚡ API assíncrona

Para uso em código assíncrono (ex.: AtendentePro) sem bloquear o event loop, use os métodos *_async, que executam a lógica síncrona em thread (ex.: asyncio.to_thread em Python 3.9+):

import asyncio
from grkmemory import GRKMemory

grk = GRKMemory()

async def main():
    results = await grk.search_async("IA")
    await grk.save_conversation_async([
        {"role": "user", "content": "Olá"},
        {"role": "assistant", "content": "Oi!"}
    ])
    response = await grk.chat_async("O que discutimos?")

asyncio.run(main())

Disponíveis: search_async, save_conversation_async, chat_async, chat_with_history_async. Com AuthenticatedGRK: search_async, save_conversation_async, chat_async (com checagem de permissão).

🔓 Modo Offline (Sem Token)

O modo offline usa MemoryRepository com enable_embeddings=False e serve como backend sem API key para testes ou ambientes restritos, usando apenas tags, entities e grafo semântico (sem embeddings). Você pode usar o MemoryRepository sem token/API key quando embeddings estão desabilitados:

from grkmemory import MemoryRepository

# Modo offline - não precisa de API key
repo = MemoryRepository(
    memory_file="memories.json",
    enable_embeddings=False  # ← Chave: desabilitar embeddings
)

# Funcionalidades disponíveis sem token:
# ✅ Salvar memórias
repo.save({
    "summary": "Conversa sobre Python",
    "tags": ["python", "programação"],
    "entities": ["Python"],
    "key_points": ["Linguagem interpretada"]
})

# ✅ Buscar por tags
results = repo.search("python", method="tags")

# ✅ Buscar por entities
results = repo.search("Python", method="entities")

# ✅ Buscar por grafo (sem embeddings)
results = repo.search("programação", method="graph")

# ❌ Busca por embedding requer API key
# results = repo.search("query", method="embedding")  # Retorna vazio sem API key

Nota: GRKMemory e MemoryConfig requerem API key. Apenas MemoryRepository com enable_embeddings=False funciona sem token.

💾 Salvando Conversas em JSON

O GRKMemory salva automaticamente as conversas em um arquivo JSON estruturado:

Estrutura do JSON

{
  "sessoes": [
    {
      "id": "sess_abc123",
      "timestamp": "2025-01-09T12:00:00",
      "summary": "Discussão sobre Python e IA",
      "tags": ["python", "ia", "programação"],
      "entities": ["Python", "OpenAI", "GPT"],
      "concepts": ["machine learning", "api"],
      "messages": [
        {"role": "user", "content": "..."},
        {"role": "assistant", "content": "..."}
      ]
    }
  ]
}

Estrutura do TOON (Token-Optimized Object Notation)

O mesmo conteúdo em TOON ocupa ~25% menos tokens, ideal para contexto de LLM:

sessoes[1]:
  - id: sess_abc123
    timestamp: "2025-01-09T12:00:00"
    summary: Discussão sobre Python e IA
    tags[3]: python,ia,programação
    entities[3]: Python,OpenAI,GPT
    concepts[2]: machine learning,api
    messages[2]{role,content}:
      user,Vamos falar sobre Python
      assistant,Claro! O que você quer saber?

Nota: TOON elimina chaves, colchetes e aspas redundantes, compactando listas e tabelas em notação posicional. Instale com pip install toon_format.

Usando o MemoryRepository diretamente

from grkmemory import MemoryRepository

# Inicializar repositório
repo = MemoryRepository(memory_file="minhas_memorias.json")

# Salvar memória estruturada
memoria = {
    "summary": "Conversa sobre Python",
    "tags": ["python", "programação"],
    "entities": ["Python", "VS Code"],
    "concepts": ["sintaxe", "bibliotecas"],
    "messages": [
        {"role": "user", "content": "Como instalar Python?"},
        {"role": "assistant", "content": "Baixe em python.org..."}
    ]
}
repo.save(memoria)

# Buscar memórias
resultados = repo.search("Python", method="tags")

📊 Métodos de Busca

Método Descrição
graph Grafo semântico (recomendado)
embedding Similaridade vetorial
tags Busca por tags
entities Busca por entidades
# Busca por grafo semântico
results = secure.search("IA", method="graph")

# Busca por embedding
results = secure.search("machine learning", method="embedding")

📈 Estatísticas

# Estatísticas gerais
stats = secure.get_stats()
print(f"Total de memórias: {stats['total_memories']}")

# Estatísticas do grafo
graph_stats = secure.get_graph_stats()
print(f"Nós: {graph_stats['total_nodes']}")
print(f"Arestas: {graph_stats['total_edges']}")

📁 Estrutura do Projeto

GRKMemory/
├── grkmemory/              # 📦 Pacote principal
│   ├── core/               # Classes principais
│   ├── memory/             # Repositório de memória
│   ├── graph/              # Grafo semântico
│   ├── auth/               # Autenticação
│   └── utils/              # Utilitários
├── examples/               # 💡 Exemplos de uso
├── papers/                 # 📄 Documentação técnica
└── README.md

📚 Exemplos

Veja a pasta examples/ para exemplos completos:

Exemplo Descrição
01_basic_usage.py Uso básico
02_custom_config.py Configuração personalizada
03_chatbot_with_memory.py Chatbot com memória
04_graph_analysis.py Análise do grafo
05_batch_processing.py Processamento em lote
06_authentication.py Uso com autenticação
07_storage_formats.py Formatos de armazenamento (JSON/TOON)
08_azure_openai.py Integração com Azure OpenAI
09_multi_tenant.py Multi-tenant com user_id e session_id
10_async_usage.py Uso da API assíncrona (search_async, chat_async)

🔬 Performance

Métrica Context Window GRKMemory
Tokens/query ~50.000 ~2.500
Economia - 95%
Precisão Variável 95%
Velocidade Lenta 10x mais rápido

🏅 Certificado de Qualidade

O GRKMemory v1.3.0 foi auditado e certificado pelo Claude AI Quality Auditor (Anthropic) nos pilares de Segurança, Usabilidade e Escalabilidade.

Pilar Score Status
Segurança 8.5 / 10 Aprovado
Usabilidade 9.0 / 10 Excelente
Escalabilidade 7.8 / 10 Aprovado
Score Final 8.4 / 10 Certificado

Serial Number: CQC-03E6B8B9-883CEBB9-4B6C1D38-672D37CF

Verificar autenticidade:

echo -n "GRKMemory|1.3.0|MonkAI|ArthurVaz|2026-03-01|CLAUDE-QUALITY-AUDIT" | shasum -a 256

Veja o relatório completo para detalhes da auditoria.

📞 Contato

Para obter seu token de acesso ou suporte:

📧 Email: contato@monkai.com.br
🌐 Site: www.monkai.com.br

📄 Licença

MIT License - veja LICENSE

👨‍💻 Autor

Arthur Vaz - MonkAI

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

grkmemory-1.4.7-cp313-cp313-win_amd64.whl (612.9 kB view details)

Uploaded CPython 3.13Windows x86-64

grkmemory-1.4.7-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (4.5 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

grkmemory-1.4.7-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.whl (4.4 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

grkmemory-1.4.7-cp313-cp313-macosx_10_13_x86_64.whl (712.7 kB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

grkmemory-1.4.7-cp312-cp312-win_amd64.whl (615.9 kB view details)

Uploaded CPython 3.12Windows x86-64

grkmemory-1.4.7-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (4.5 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

grkmemory-1.4.7-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.whl (4.4 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

grkmemory-1.4.7-cp312-cp312-macosx_26_0_arm64.whl (706.4 kB view details)

Uploaded CPython 3.12macOS 26.0+ ARM64

grkmemory-1.4.7-cp312-cp312-macosx_10_13_x86_64.whl (716.4 kB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

grkmemory-1.4.7-cp311-cp311-win_amd64.whl (627.3 kB view details)

Uploaded CPython 3.11Windows x86-64

grkmemory-1.4.7-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (4.5 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

grkmemory-1.4.7-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.whl (4.5 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

grkmemory-1.4.7-cp311-cp311-macosx_10_9_x86_64.whl (718.9 kB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

grkmemory-1.4.7-cp310-cp310-win_amd64.whl (624.8 kB view details)

Uploaded CPython 3.10Windows x86-64

grkmemory-1.4.7-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (4.2 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

grkmemory-1.4.7-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.whl (4.3 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

grkmemory-1.4.7-cp310-cp310-macosx_10_9_x86_64.whl (724.0 kB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

File details

Details for the file grkmemory-1.4.7-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: grkmemory-1.4.7-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 612.9 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for grkmemory-1.4.7-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 551186c5d34546ca8483fee65701316e058288ad5c3565581dd9279773ac7ab1
MD5 92fab957eb0aa6bfaa3eb74532caab9e
BLAKE2b-256 1fad96197978ca9c75e37cef7ca0f9dea2427072efa7b2c158945a8e3cf0f72f

See more details on using hashes here.

File details

Details for the file grkmemory-1.4.7-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for grkmemory-1.4.7-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 4644614a421c9c6968d105bebc6967691fd6d8490b42f4c0198ca7df62bde473
MD5 60a76730af6df2e3a805560ed9dac3fc
BLAKE2b-256 33ecb1f390426ccf0549beab6cc56f6bd3b76b34f7a543268ad3f5680701dbfe

See more details on using hashes here.

File details

Details for the file grkmemory-1.4.7-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.whl.

File metadata

File hashes

Hashes for grkmemory-1.4.7-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.whl
Algorithm Hash digest
SHA256 880acc0f1f968d388c63e47b7d7c80231ddf9470994097912bb72739a39468e2
MD5 65bae82bfb6d0ebcb7101c7b58bf8887
BLAKE2b-256 83b45d74c945507d65d9fddfa81ba47941ac14fc8ec3e7889ba22eb8bfb831b2

See more details on using hashes here.

File details

Details for the file grkmemory-1.4.7-cp313-cp313-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for grkmemory-1.4.7-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 a41afa83488b0c67f16b4fddfbd99b71ecf26cd57c534f5a5201a9b9c4a31a23
MD5 d015e816d205578dbe9d1e53f1dc62ec
BLAKE2b-256 c1daf3218b4cdb174e5c6a75d3aee3da93547b90129dd62c33798e8ca08a997f

See more details on using hashes here.

File details

Details for the file grkmemory-1.4.7-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: grkmemory-1.4.7-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 615.9 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for grkmemory-1.4.7-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 84fdb4131f2d67ddc3da051945e9673c537ae46cae335ce9f68e4f8e8ee1f395
MD5 2a30c85686ea1f8005d5b89db32bea58
BLAKE2b-256 ae445a1264e18b02bec718c24a3afbc00a40af368c6c19c3ec603be697aa0327

See more details on using hashes here.

File details

Details for the file grkmemory-1.4.7-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for grkmemory-1.4.7-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 322fef2b09916d89b1df4e9505dd3ddf7b3f5052d1220b0d550b83a4aed99b64
MD5 fbf8651b5c56b107527360b2394e3554
BLAKE2b-256 bde4c3f4fe8c070b014b0d62e957596a554bc558ccbb57696ceaae5f4fac001d

See more details on using hashes here.

File details

Details for the file grkmemory-1.4.7-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.whl.

File metadata

File hashes

Hashes for grkmemory-1.4.7-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.whl
Algorithm Hash digest
SHA256 fb952c0b98940bcac37071f183939419a314ebf71493e232be2ffcb895767e20
MD5 8804bbf339e43b7d3444cf29c517d9d6
BLAKE2b-256 9f00c47c2aedf170843e574987e08a7430e982e0fa88e5743f8d7a78bb43234b

See more details on using hashes here.

File details

Details for the file grkmemory-1.4.7-cp312-cp312-macosx_26_0_arm64.whl.

File metadata

File hashes

Hashes for grkmemory-1.4.7-cp312-cp312-macosx_26_0_arm64.whl
Algorithm Hash digest
SHA256 661066a6c1def1bf0ed6308d9b920b6bf78a1895b10797d2f77fb812deb4148a
MD5 bd687fe234dbf8ed22080c5ff46b75c0
BLAKE2b-256 69c4d758e75c496213eb7640111eedbaaa1760cdcedac815ab670a2559828317

See more details on using hashes here.

File details

Details for the file grkmemory-1.4.7-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for grkmemory-1.4.7-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 9847ed5ab4887cd186c5da9a38f36cc3be0466c63e0c805c60d0d0d4e82d7500
MD5 3ea0d32488a1f24eca11b4b20f122aef
BLAKE2b-256 44bbeab0eb87bd02ac623fe3ba7166c7cd4e83fd8466453af2b54c85a07837b2

See more details on using hashes here.

File details

Details for the file grkmemory-1.4.7-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: grkmemory-1.4.7-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 627.3 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for grkmemory-1.4.7-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 e48b4e3a39f8c0c7a2e4fe553273127c3ab375b66858576dd17fdb9af9239cc5
MD5 8996d9483c50d563197526b0c7a80155
BLAKE2b-256 0c78c515b71a67d9bc019def0a9243cf56793d2b8d16a7217253efee742ede18

See more details on using hashes here.

File details

Details for the file grkmemory-1.4.7-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for grkmemory-1.4.7-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 5980b205001344d2bcfb4e5af80eafdecee183b4fec414478c3908e621209f29
MD5 16c762881e79eb9be066fd6ad80df5a1
BLAKE2b-256 8f082e5f834b829174e97d4b856b39271a533ac0bc13f97a97324ff7d21a3979

See more details on using hashes here.

File details

Details for the file grkmemory-1.4.7-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.whl.

File metadata

File hashes

Hashes for grkmemory-1.4.7-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.whl
Algorithm Hash digest
SHA256 4da7751536589364e0681f19de5d5d658fb5749229435999aea5d78a1b618888
MD5 8f150f2e16e6a5ee48992909addfcf79
BLAKE2b-256 2a7a57b33bf6998814390ed121e7ff1dc4a5d85b05c33f6a78a38e95376aad93

See more details on using hashes here.

File details

Details for the file grkmemory-1.4.7-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for grkmemory-1.4.7-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 0dc6a854417b93d18f06d800c549b8472672b8fdf4021fc5ebacc750a96ca145
MD5 95ef1e5a208b1db0c967a110f8136764
BLAKE2b-256 3f943c21b3caecded446dbcf05859239a2a100b23e10ef9114e4c9f06b42d18f

See more details on using hashes here.

File details

Details for the file grkmemory-1.4.7-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: grkmemory-1.4.7-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 624.8 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for grkmemory-1.4.7-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 0604333abc7f12868c6c8f2687f9d615a35e6cdf62fe03c35f4f4ccd0aaa472d
MD5 7a6dee27209d2d5598ed0cc695051b07
BLAKE2b-256 27167f84aa8916960424c02580588fc2582b103d0e0ad9ef878576f88b2c741f

See more details on using hashes here.

File details

Details for the file grkmemory-1.4.7-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for grkmemory-1.4.7-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 6d6e82c9752b5b807e9aebd5200909b3fd5eba43124422e4d25c1a8272b47d4c
MD5 97f7651c2f72ae5c442d54bf85046c14
BLAKE2b-256 613d9a7f1f9743a7f95e861837d4ca47e18b941dad50658c6fdf540c0db4194c

See more details on using hashes here.

File details

Details for the file grkmemory-1.4.7-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.whl.

File metadata

File hashes

Hashes for grkmemory-1.4.7-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.whl
Algorithm Hash digest
SHA256 1b5a510d98fcff6721a042eca884ba6e029213b3c442567db9f3410d987741e0
MD5 fc8e4d9c8e34a02dec018cfaf1687528
BLAKE2b-256 f8b0c1aa210c21eca02234540231558ec95a73707095301258c0ef7ee0e488fa

See more details on using hashes here.

File details

Details for the file grkmemory-1.4.7-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for grkmemory-1.4.7-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 d87493f3dc5a36645ebb6dd85358139a91e996450d1be79eb440815862d7d78c
MD5 c7312b8849460183613c5cf35fcf5f66
BLAKE2b-256 400366341dfe53aa42ad475ef5d13b22a9614db9267ac94c90a33db6d0c7ef42

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page