[tool.poetry] name = "langchain" version = "0.0.133" description = "Building applications with LLMs through composability" authors = [] license = "MIT" readme = "README.md" repository = "https://www.github.com/hwchase17/langchain" [tool.poetry.scripts] langchain-server = "langchain.server:main" [tool.poetry.dependencies] python = ">=3.8.1,<4.0" pydantic = "^1" SQLAlchemy = "^1" requests = "^2" PyYAML = ">=5.4.1" numpy = "^1" openapi-schema-pydantic = "^1.2" faiss-cpu = {version = "^1", optional = true} wikipedia = {version = "^1", optional = true} elasticsearch = {version = "^8", optional = true} opensearch-py = {version = "^2.0.0", optional = true} redis = {version = "^4", optional = true} manifest-ml = {version = "^0.0.1", optional = true} spacy = {version = "^3", optional = true} nltk = {version = "^3", optional = true} transformers = {version = "^4", optional = true} beautifulsoup4 = {version = "^4", optional = true} torch = {version = "^1", optional = true} jinja2 = {version = "^3", optional = true} tiktoken = {version = "^0.3.2", optional = true, python="^3.9"} pinecone-client = {version = "^2", optional = true} weaviate-client = {version = "^3", optional = true} google-api-python-client = {version = "2.70.0", optional = true} wolframalpha = {version = "5.0.0", optional = true} anthropic = {version = "^0.2.4", optional = true} qdrant-client = {version = "^1.1.1", optional = true, python = ">=3.8.1,<3.12"} dataclasses-json = "^0.5.7" tensorflow-text = {version = "^2.11.0", optional = true, python = "^3.10, <3.12"} tenacity = "^8.1.0" cohere = {version = "^3", optional = true} openai = {version = "^0", optional = true} nlpcloud = {version = "^1", optional = true} nomic = {version = "^1.0.43", optional = true} huggingface_hub = {version = "^0", optional = true} jina = {version = "^3.14", optional = true} google-search-results = {version = "^2", optional = true} sentence-transformers = {version = "^2", optional = true} aiohttp = "^3.8.3" pypdf = {version = "^3.4.0", optional = true} networkx = {version="^2.6.3", optional = true} aleph-alpha-client = {version="^2.15.0", optional = true} deeplake = {version = "^3.2.9", optional = true} pgvector = {version = "^0.1.6", optional = true} psycopg2-binary = {version = "^2.9.5", optional = true} boto3 = {version = "^1.26.96", optional = true} pyowm = {version = "^3.3.0", optional = true} async-timeout = {version = "^4.0.0", python = "<3.11"} [tool.poetry.group.docs.dependencies] autodoc_pydantic = "^1.8.0" myst_parser = "^0.18.1" nbsphinx = "^0.8.9" sphinx = "^4.5.0" sphinx-autobuild = "^2021.3.14" sphinx_book_theme = "^0.3.3" sphinx_rtd_theme = "^1.0.0" sphinx-typlog-theme = "^0.8.0" sphinx-panels = "^0.6.0" toml = "^0.10.2" myst-nb = "^0.17.1" linkchecker = "^10.2.1" sphinx-copybutton = "^0.5.1" [tool.poetry.group.test.dependencies] pytest = "^7.2.0" pytest-cov = "^4.0.0" pytest-dotenv = "^0.5.2" duckdb-engine = "^0.7.0" pytest-watcher = "^0.2.6" freezegun = "^1.2.2" responses = "^0.22.0" pytest-asyncio = "^0.20.3" [tool.poetry.group.test_integration] optional = true [tool.poetry.group.test_integration.dependencies] openai = "^0.27.4" elasticsearch = {extras = ["async"], version = "^8.6.2"} [tool.poetry.group.lint.dependencies] ruff = "^0.0.249" types-toml = "^0.10.8.1" types-redis = "^4.3.21.6" black = "^23.1.0" [tool.poetry.group.typing.dependencies] mypy = "^0.991" types-pyyaml = "^6.0.12.2" types-requests = "^2.28.11.5" [tool.poetry.group.dev] optional = true [tool.poetry.group.dev.dependencies] jupyter = "^1.0.0" playwright = "^1.28.0" setuptools = "^67.6.1" [tool.poetry.extras] llms = ["anthropic", "cohere", "openai", "nlpcloud", "huggingface_hub", "manifest-ml", "torch", "transformers"] qdrant = ["qdrant-client"] openai = ["openai"] cohere = ["cohere"] all = ["anthropic", "cohere", "openai", "nlpcloud", "huggingface_hub", "jina", "manifest-ml", "elasticsearch", "opensearch-py", "google-search-results", "faiss-cpu", "sentence_transformers", "transformers", "spacy", "nltk", "wikipedia", "beautifulsoup4", "tiktoken", "torch", "jinja2", "pinecone-client", "weaviate-client", "redis", "google-api-python-client", "wolframalpha", "qdrant-client", "tensorflow-text", "pypdf", "networkx", "nomic", "aleph-alpha-client", "deeplake", "pgvector", "psycopg2-binary", "boto3", "pyowm"] [tool.ruff] select = [ "E", # pycodestyle "F", # pyflakes "I", # isort ] [tool.mypy] ignore_missing_imports = "True" disallow_untyped_defs = "True" exclude = ["notebooks"] [tool.coverage.run] omit = [ "tests/*", ] [build-system] requires = ["poetry-core"] build-backend = "poetry.core.masonry.api"