Files
project-lyra/neomem/pyproject.toml
2025-11-16 03:17:32 -05:00

160 lines
2.9 KiB
TOML

[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[project]
name = "nvgram"
version = "0.1.0"
description = "Vector-centric memory subsystem forked from Mem0 OSS"
authors = [{ name = "Brian", email = "serversdown@serversdown.net" }]
dependencies = [
"fastapi>=0.115.8",
"uvicorn>=0.34.0",
"pydantic>=2.10.4",
"psycopg>=3.2.8",
"python-dotenv>=1.0.1",
"ollama",
"mem0ai>=0.1.48", # optional, can remove once full parity
]
[project.optional-dependencies]
graph = [
"langchain-neo4j>=0.4.0",
"langchain-aws>=0.2.23",
"langchain-memgraph>=0.1.0",
"neo4j>=5.23.1",
"rank-bm25>=0.2.2",
"kuzu>=0.11.0",
]
vector_stores = [
"vecs>=0.4.0",
"chromadb>=0.4.24",
"weaviate-client>=4.4.0,<4.15.0",
"pinecone<=7.3.0",
"pinecone-text>=0.10.0",
"faiss-cpu>=1.7.4",
"upstash-vector>=0.1.0",
"azure-search-documents>=11.4.0b8",
"psycopg>=3.2.8",
"psycopg-pool>=3.2.6,<4.0.0",
"pymongo>=4.13.2",
"pymochow>=2.2.9",
"pymysql>=1.1.0",
"dbutils>=3.0.3",
"valkey>=6.0.0",
"databricks-sdk>=0.63.0",
"azure-identity>=1.24.0",
"redis>=5.0.0,<6.0.0",
"redisvl>=0.1.0,<1.0.0",
"elasticsearch>=8.0.0,<9.0.0",
"pymilvus>=2.4.0,<2.6.0",
"langchain-aws>=0.2.23",
]
llms = [
"groq>=0.3.0",
"together>=0.2.10",
"litellm>=1.74.0",
"openai>=1.90.0",
"ollama>=0.1.0",
"vertexai>=0.1.0",
"google-generativeai>=0.3.0",
"google-genai>=1.0.0",
]
extras = [
"boto3>=1.34.0",
"langchain-community>=0.0.0",
"sentence-transformers>=5.0.0",
"elasticsearch>=8.0.0,<9.0.0",
"opensearch-py>=2.0.0",
]
test = [
"pytest>=8.2.2",
"pytest-mock>=3.14.0",
"pytest-asyncio>=0.23.7",
]
dev = [
"ruff>=0.6.5",
"isort>=5.13.2",
"pytest>=8.2.2",
]
[tool.pytest.ini_options]
pythonpath = ["."]
[tool.hatch.build]
include = [
"nvgram/**/*.py",
]
exclude = [
"**/*",
"!nvgram/**/*.py",
]
[tool.hatch.build.targets.wheel]
packages = ["nvgram"]
only-include = ["nvgram"]
[tool.hatch.build.targets.wheel.shared-data]
"README.md" = "README.md"
[tool.hatch.envs.dev_py_3_9]
python = "3.9"
features = [
"test",
"graph",
"vector_stores",
"llms",
"extras",
]
[tool.hatch.envs.dev_py_3_10]
python = "3.10"
features = [
"test",
"graph",
"vector_stores",
"llms",
"extras",
]
[tool.hatch.envs.dev_py_3_11]
python = "3.11"
features = [
"test",
"graph",
"vector_stores",
"llms",
"extras",
]
[tool.hatch.envs.dev_py_3_12]
python = "3.12"
features = [
"test",
"graph",
"vector_stores",
"llms",
"extras",
]
[tool.hatch.envs.default.scripts]
format = [
"ruff format",
]
format-check = [
"ruff format --check",
]
lint = [
"ruff check",
]
lint-fix = [
"ruff check --fix",
]
test = [
"pytest tests/ {args}",
]
[tool.ruff]
line-length = 120
exclude = ["embedchain/", "openmemory/"]