[tool.poetry] name = "letta" version = "0.4.1" packages = [ {include = "letta"} ] description = "Create LLM agents with long-term memory and custom tools" authors = [ "Letta Team ", ] license = "Apache License" readme = "README.md" [tool.poetry.scripts] letta = "letta.main:app" [tool.poetry.dependencies] python = "<3.13,>=3.10" typer = {extras = ["all"], version = "^0.9.0"} questionary = "^2.0.1" pytz = "^2023.3.post1" tqdm = "^4.66.1" black = {extras = ["jupyter"], version = "^24.2.0"} setuptools = "^68.2.2" datasets = { version = "^2.14.6", optional = true} prettytable = "^3.9.0" pgvector = { version = "^0.2.3", optional = true } pre-commit = {version = "^3.5.0", optional = true } pg8000 = {version = "^1.30.3", optional = true} websockets = {version = "^12.0", optional = true} docstring-parser = ">=0.16,<0.17" httpx = "^0.27.2" numpy = "^1.26.2" demjson3 = "^3.0.6" #tiktoken = ">=0.7.0,<0.8.0" pyyaml = "^6.0.1" chromadb = ">=0.4.24,<0.5.0" sqlalchemy-json = "^0.7.0" fastapi = {version = "^0.104.1", optional = true} uvicorn = {version = "^0.24.0.post1", optional = true} pydantic = "^2.7.4" pyautogen = {version = "0.2.22", optional = true} html2text = "^2020.1.16" docx2txt = "^0.8" sqlalchemy = "^2.0.25" pexpect = {version = "^4.9.0", optional = true} pyright = {version = "^1.1.347", optional = true} qdrant-client = {version="^1.9.1", optional = true} pymilvus = {version ="^2.4.3", optional = true} python-box = "^7.1.1" sqlmodel = "^0.0.16" autoflake = {version = "^2.3.0", optional = true} #llama-index-embeddings-huggingface = {version = "^0.2.0", optional = true} #llama-index-embeddings-azure-openai = "^0.1.6" #llama-index-embeddings-ollama = {version = "^0.1.2", optional = true} python-multipart = "^0.0.9" sqlalchemy-utils = "^0.41.2" pytest-order = {version = "^1.2.0", optional = true} pytest-asyncio = {version = "^0.23.2", optional = true} pydantic-settings = "^2.2.1" httpx-sse = "^0.4.0" isort = { version = "^5.13.2", optional = true } crewai = {version = "^0.41.1", optional = true} crewai-tools = {version = "^0.8.3", optional = true} docker = {version = "^7.1.0", optional = true} tiktoken = "^0.7.0" nltk = "^3.8.1" jinja2 = "^3.1.4" locust = "^2.31.5" llama-index = "^0.11.9" llama-index-embeddings-openai = "^0.2.5" llama-index-embeddings-ollama = "^0.3.1" #llama-index-embeddings-huggingface = {version = "^0.2.0", optional = true} wikipedia = {version = "^1.4.0", optional = true} langchain = {version = "^0.2.16", optional = true} langchain-community = {version = "^0.2.17", optional = true} composio-langchain = "^0.5.28" composio-core = "^0.5.28" alembic = "^1.13.3" [tool.poetry.extras] #local = ["llama-index-embeddings-huggingface"] postgres = ["pgvector", "pg8000", "psycopg2-binary"] milvus = ["pymilvus"] dev = ["pytest", "pytest-asyncio", "pexpect", "black", "pre-commit", "datasets", "pyright", "pytest-order", "autoflake", "isort"] server = ["websockets", "fastapi", "uvicorn"] autogen = ["pyautogen"] qdrant = ["qdrant-client"] ollama = ["llama-index-embeddings-ollama"] external-tools = ["crewai", "docker", "crewai-tools", "langchain", "wikipedia", "langchain-community", "composio-core", "composio-langchain"] tests = ["wikipedia"] [tool.poetry.group.dev.dependencies] black = "^24.4.2" ipykernel = "^6.29.5" ipdb = "^0.13.13" [tool.black] line-length = 140 target-version = ['py310', 'py311'] extend-exclude = "examples/*" [build-system] requires = ["poetry-core"] build-backend = "poetry.core.masonry.api"