[project] authors = [] license = {text = "MIT"} requires-python = "<4.0,>=3.9" dependencies = [] name = "langchain-monorepo" version = "0.0.1" description = "LangChain mono-repo" readme = "README.md" [project.urls] repository = "https://www.github.com/langchain-ai/langchain" [dependency-groups] lint = [ "ruff<1.0.0,>=0.5.0", ] dev = [ "langchain-core @ file:///${PROJECT_ROOT}/libs/core", "langchain-text-splitters @ file:///${PROJECT_ROOT}/libs/text-splitters", "langchain-community @ file:///${PROJECT_ROOT}/libs/community", "langchain @ file:///${PROJECT_ROOT}/libs/langchain", "langchain-openai @ file:///${PROJECT_ROOT}/libs/partners/openai", "ipykernel<7.0.0,>=6.29.2", ] codespell = [ "codespell<3.0.0,>=2.2.0", ] typing = [] test = [ "langchain-experimental @ git+https://github.com/langchain-ai/langchain-experimental.git#subdirectory=libs/experimental", "langchain-anthropic @ file:///${PROJECT_ROOT}/libs/partners/anthropic", "langchain-aws @ git+https://github.com/langchain-ai/langchain-aws.git#subdirectory=libs/aws", "langchain-chroma @ file:///${PROJECT_ROOT}/libs/partners/chroma", "langchain-fireworks @ file:///${PROJECT_ROOT}/libs/partners/fireworks", "langchain-google-vertexai @ git+https://github.com/langchain-ai/langchain-google.git#subdirectory=libs/vertexai", "langchain-groq @ file:///${PROJECT_ROOT}/libs/partners/groq", "langchain-mistralai @ file:///${PROJECT_ROOT}/libs/partners/mistralai", "langchain-together @ git+https://github.com/langchain-ai/langchain-together.git#subdirectory=libs/together", "langchain-unstructured @ git+https://github.com/langchain-ai/langchain-unstructured.git#subdirectory=libs/unstructured", "langgraph @ git+https://github.com/langchain-ai/langgraph.git#subdirectory=libs/langgraph", "jupyter<2.0.0,>=1.1.1", "click<9.0.0,>=8.1.7", "aiofiles<25.0.0,>=24.1.0", "faiss-cpu<2.0.0,>=1.7.4", "grandalf<1.0,>=0.8", "lark<2.0.0,>=1.1.9", "pandas<3,>=2", "rank-bm25<1.0.0,>=0.2.2", "tabulate<1.0.0,>=0.9.0", "unstructured[md]<1.0.0,>=0.16.11; python_version < \"3.13\"", "wikipedia<2.0.0,>=1.4.0", "pypdf<6.0.0,>=5.0.0", "vcrpy<7.0.0,>=6.0.1", ] [build-system] requires = ["pdm-backend"] build-backend = "pdm.backend" [tool.codespell] skip = '.git,*.pdf,*.svg,*.pdf,*.yaml,*.ipynb,poetry.lock,*.min.js,*.css,package-lock.json,example_data,_dist,examples,templates,*.trig' # Ignore latin etc ignore-regex = '.*(Stati Uniti|Tense=Pres).*' # whats is a typo but used frequently in queries so kept as is # aapply - async apply # unsecure - typo but part of API, decided to not bother for now ignore-words-list = 'momento,collison,ned,foor,reworkd,parth,whats,aapply,mysogyny,unsecure,damon,crate,aadd,symbl,precesses,accademia,nin,cann' [tool.ruff] extend-include = ["*.ipynb"] extend-exclude = [ "docs/docs/expression_language/why.ipynb", # TODO: look into why linter errors ] [tool.ruff.lint] select = ["D"] pydocstyle = { convention = "google" } [tool.ruff.lint.per-file-ignores] "**/{cookbook,docs}/*" = [ "E402", # allow imports to appear anywhere in docs "F401", # allow "imported but unused" example code "F811", # allow re-importing the same module, so that cells can stay independent "F841", # allow assignments to variables that are never read -- it's example code ] "!libs/langchain/langchain/model_laboratory.py"=["D"] # These files were failing the listed rules at the time ruff was adopted for notebooks. # Don't require them to change at once, though we should look into them eventually. "cookbook/gymnasium_agent_simulation.ipynb" = ["F821"] "docs/docs/integrations/document_loaders/tensorflow_datasets.ipynb" = ["F821"]