mirror of
https://github.com/hwchase17/langchain.git
synced 2025-08-06 11:37:12 +00:00
**TL;DR much of the provided `Makefile` targets were broken, and any
time I wanted to preview changes locally I either had to refer to a
command Chester gave me or try waiting on a Vercel preview deployment.
With this PR, everything should behave like normal.**
Significant updates to the `Makefile` and documentation files, focusing
on improving usability, adding clear messaging, and fixing/enhancing
documentation workflows.
### Updates to `Makefile`:
#### Enhanced build and cleaning processes:
- Added informative messages (e.g., "📚 Building LangChain
documentation...") to makefile targets like `docs_build`, `docs_clean`,
and `api_docs_build` for better user feedback during execution.
- Introduced a `clean-cache` target to the `docs` `Makefile` to clear
cached dependencies and ensure clean builds.
#### Improved dependency handling:
- Modified `install-py-deps` to create a `.venv/deps_installed` marker,
preventing redundant/duplicate dependency installations and improving
efficiency.
#### Streamlined file generation and infrastructure setup:
- Added caching for the LangServe README download and parallelized
feature table generation
- Added user-friendly completion messages for targets like `copy-infra`
and `render`.
#### Documentation server updates:
- Enhanced the `start` target with messages indicating server start and
URL for local documentation viewing.
---
### Documentation Improvements:
#### Content clarity and consistency:
- Standardized section titles for consistency across documentation
files.
[[1]](diffhunk://#diff-9b1a85ea8a9dcf79f58246c88692cd7a36316665d7e05a69141cfdc50794c82aL1-R1)
[[2]](diffhunk://#diff-944008ad3a79d8a312183618401fcfa71da0e69c75803eff09b779fc8e03183dL1-R1)
- Refined phrasing and formatting in sections like "Dependency
management" and "Formatting and linting" for better readability.
[[1]](diffhunk://#diff-2069d4f956ab606ae6d51b191439283798adaf3a6648542c409d258131617059L6-R6)
[[2]](diffhunk://#diff-2069d4f956ab606ae6d51b191439283798adaf3a6648542c409d258131617059L84-R82)
#### Enhanced workflows:
- Updated instructions for building and viewing documentation locally,
including tips for specifying server ports and handling API reference
previews.
[[1]](diffhunk://#diff-048deddcfd44b242e5b23aed9f2e9ec73afc672244ce14df2a0a316d95840c87L60-R94)
[[2]](diffhunk://#diff-048deddcfd44b242e5b23aed9f2e9ec73afc672244ce14df2a0a316d95840c87L82-R126)
- Expanded guidance on cleaning documentation artifacts and using
linting tools effectively.
[[1]](diffhunk://#diff-048deddcfd44b242e5b23aed9f2e9ec73afc672244ce14df2a0a316d95840c87L82-R126)
[[2]](diffhunk://#diff-048deddcfd44b242e5b23aed9f2e9ec73afc672244ce14df2a0a316d95840c87L107-R142)
#### API reference documentation:
- Improved instructions for generating and formatting in-code
documentation, highlighting best practices for docstring writing.
[[1]](diffhunk://#diff-048deddcfd44b242e5b23aed9f2e9ec73afc672244ce14df2a0a316d95840c87L107-R142)
[[2]](diffhunk://#diff-048deddcfd44b242e5b23aed9f2e9ec73afc672244ce14df2a0a316d95840c87L144-R186)
---
### Minor Changes:
- Added support for a new package name (`langchain_v1`) in the API
documentation generation script.
- Fixed minor capitalization and formatting issues in documentation
files.
[[1]](diffhunk://#diff-2069d4f956ab606ae6d51b191439283798adaf3a6648542c409d258131617059L40-R40)
[[2]](diffhunk://#diff-2069d4f956ab606ae6d51b191439283798adaf3a6648542c409d258131617059L166-R160)
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
116 lines
4.2 KiB
TOML
116 lines
4.2 KiB
TOML
[project]
|
|
authors = []
|
|
license = { text = "MIT" }
|
|
requires-python = ">=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<0.13,>=0.12.2"]
|
|
dev = [
|
|
"langchain-core",
|
|
"langchain-text-splitters",
|
|
"langchain-community",
|
|
"langchain",
|
|
"langchain-openai",
|
|
"ipykernel<7.0.0,>=6.29.2",
|
|
]
|
|
codespell = [
|
|
"codespell<3.0.0,>=2.2.0",
|
|
"tomli>=2.2.1",
|
|
]
|
|
typing = []
|
|
test = [
|
|
"langchain-experimental @ git+https://github.com/langchain-ai/langchain-experimental.git#subdirectory=libs/experimental",
|
|
"langchain-anthropic",
|
|
"langchain-aws @ git+https://github.com/langchain-ai/langchain-aws.git#subdirectory=libs/aws",
|
|
"langchain-chroma",
|
|
"langchain-fireworks",
|
|
"langchain-google-vertexai @ git+https://github.com/langchain-ai/langchain-google.git#subdirectory=libs/vertexai",
|
|
"langchain-google-genai @ git+https://github.com/langchain-ai/langchain-google.git#subdirectory=libs/genai",
|
|
"langchain-groq",
|
|
"langchain-mistralai",
|
|
"langchain-tavily",
|
|
"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",
|
|
"msgpack",
|
|
"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",
|
|
"linkchecker>=10.5.0",
|
|
]
|
|
docs = [
|
|
"toml>=0.10.2",
|
|
"autodoc-pydantic>=2,<3",
|
|
"sphinx>=6,<8",
|
|
"myst-parser>=3",
|
|
"sphinx-autobuild>=2024",
|
|
"pydata-sphinx-theme>=0.15",
|
|
"myst-nb>=1.1.1",
|
|
"pyyaml",
|
|
"sphinx-design",
|
|
"sphinx-copybutton",
|
|
"beautifulsoup4",
|
|
"sphinxcontrib-googleanalytics",
|
|
]
|
|
|
|
[tool.uv.sources]
|
|
langchain-core = { path = "./libs/core", editable = true }
|
|
langchain-text-splitters = { path = "./libs/text-splitters", editable = true }
|
|
langchain-tests = { path = "./libs/standard-tests", editable = true }
|
|
langchain = { path = "./libs/langchain", editable = true }
|
|
langchain-openai = { path = "./libs/partners/openai", editable = true }
|
|
langchain-anthropic = { path = "./libs/partners/anthropic", editable = true }
|
|
langchain-chroma = { path = "./libs/partners/chroma", editable = true }
|
|
langchain-fireworks = { path = "./libs/partners/fireworks", editable = true }
|
|
langchain-groq = { path = "./libs/partners/groq", editable = true }
|
|
langchain-mistralai = { path = "./libs/partners/mistralai", editable = true }
|
|
|
|
[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,*cache*,*.msgpack.zlib,*.csv,*.lock,*.png,*.jpg,*.jpeg,*.gif,*.bmp,*.ico,*.webp,*.tiff,*.mp4,*.mp3,*.wav,*.avi,*.mov,*.zip,*.tar,*.gz,*.rar,*.7z,*.exe,*.dll,*.so,*.dylib,*.bin,*.dat,*.db,*.sqlite'
|
|
# 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"]
|
|
|
|
[tool.ruff.lint]
|
|
select = ["D"] # global select for pydocstyle
|
|
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"]
|