Skip to content

Commit

Permalink
Merge pull request #280884 from natsukium/langchain/update
Browse files Browse the repository at this point in the history
python311Packages.langchain: 0.0.344 -> 0.1.0
  • Loading branch information
natsukium committed Jan 15, 2024
2 parents 7de38d4 + ba1518e commit eae668f
Show file tree
Hide file tree
Showing 5 changed files with 144 additions and 119 deletions.
64 changes: 64 additions & 0 deletions pkgs/development/python-modules/langchain-community/default.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
{ lib
, buildPythonPackage
, fetchPypi
, poetry-core
, pythonOlder
, aiohttp
, dataclasses-json
, langchain-core
, langsmith
, numpy
, pyyaml
, requests
, sqlalchemy
, tenacity
, typer
}:

buildPythonPackage rec {
pname = "langchain-community";
version = "0.0.12";
pyproject = true;

disabled = pythonOlder "3.8";

src = fetchPypi {
pname = "langchain_community";
inherit version;
hash = "sha256-fP42xSsfuGwQldTewM9Gahx1KnRGEE6LOc8PcFEqSFE=";
};

nativeBuildInputs = [
poetry-core
];

propagatedBuildInputs = [
aiohttp
dataclasses-json
langchain-core
langsmith
numpy
pyyaml
requests
sqlalchemy
tenacity
];

passthru.optional-dependencies = {
cli = [
typer
];
};

pythonImportsCheck = [ "langchain_community" ];

# PyPI source does not have tests
doCheck = false;

meta = with lib; {
description = "Community contributed LangChain integrations";
homepage = "https://github.com/langchain-ai/langchain/tree/master/libs/community";
license = licenses.mit;
maintainers = with maintainers; [ natsukium ];
};
}
55 changes: 55 additions & 0 deletions pkgs/development/python-modules/langchain-core/default.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
{ lib
, buildPythonPackage
, fetchPypi
, pythonOlder
, poetry-core
, anyio
, jsonpatch
, langsmith
, packaging
, pydantic
, pyyaml
, requests
, tenacity
}:

buildPythonPackage rec {
pname = "langchain-core";
version = "0.1.10";
pyproject = true;

disabled = pythonOlder "3.8";

src = fetchPypi {
pname = "langchain_core";
inherit version;
hash = "sha256-PJ4TgyZMEC/Mb4ZXANu5QWxJMaJdCsIZX2MRxrhnqhc=";
};

nativeBuildInputs = [
poetry-core
];

propagatedBuildInputs = [
anyio
jsonpatch
langsmith
packaging
pydantic
pyyaml
requests
tenacity
];

pythonImportsCheck = [ "langchain_core" ];

# PyPI source does not have tests
doCheck = false;

meta = with lib; {
description = "Building applications with LLMs through composability";
homepage = "https://github.com/langchain-ai/langchain/tree/master/libs/core";
license = licenses.mit;
maintainers = with maintainers; [ natsukium ];
};
}
132 changes: 16 additions & 116 deletions pkgs/development/python-modules/langchain/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -6,72 +6,40 @@
, pythonRelaxDepsHook
, poetry-core
, aiohttp
, anyio
, async-timeout
, dataclasses-json
, jsonpatch
, langsmith
, langchain-core
, langchain-community
, numpy
, pydantic
, pyyaml
, requests
, sqlalchemy
, tenacity
# optional dependencies
, atlassian-python-api
, azure-core
, azure-cosmos
, azure-identity
, beautifulsoup4
, chardet
, clarifai
, cohere
, duckduckgo-search
, elasticsearch
, esprima
, faiss
, google-api-python-client
, google-auth
, google-search-results
, gptcache
, html2text
, huggingface-hub
, jinja2
, jq
, lark
, librosa
, lxml
, manifest-ml
, neo4j
, networkx
, nlpcloud
, nltk
, openai
, opensearch-py
, pdfminer-six
, pgvector
, pinecone-client
, psycopg2
, pymongo
, pyowm
, pypdf
, pytesseract
, python-arango
, qdrant-client
, rdflib
, redis
, requests-toolbelt
, sentence-transformers
, tiktoken
, torch
, transformers
, typer
, weaviate-client
, wikipedia
# test dependencies
, freezegun
, pandas
, pexpect
, pytest-asyncio
, pytest-mock
, pytest-socket
Expand All @@ -84,16 +52,16 @@

buildPythonPackage rec {
pname = "langchain";
version = "0.0.344";
version = "0.1.0";
pyproject = true;

disabled = pythonOlder "3.8";

src = fetchFromGitHub {
owner = "hwchase17";
owner = "langchain-ai";
repo = "langchain";
rev = "refs/tags/v${version}";
hash = "sha256-pvoY2QuGTZhqeCi9oLOH1XrxfT4FMfHwNkIGIaYTEo8=";
hash = "sha256-izaSah1S0INsskdzE9b7Iw4yWBsNmN5fBI6BQgaHgE4=";
};

sourceRoot = "${src.name}/libs/langchain";
Expand All @@ -108,17 +76,18 @@ buildPythonPackage rec {
];

propagatedBuildInputs = [
langchain-core
langchain-community
pydantic
sqlalchemy
requests
pyyaml
numpy
dataclasses-json
tenacity
aiohttp
langsmith
anyio
tenacity
jsonpatch
dataclasses-json
langsmith
] ++ lib.optionals (pythonOlder "3.11") [
async-timeout
];
Expand Down Expand Up @@ -169,81 +138,9 @@ buildPythonPackage rec {
# azure-ai-vision
# azure-cognitiveservices-speech
# azure-search-documents
# azure-ai-textanalytics
];
all = [
clarifai
cohere
openai
nlpcloud
huggingface-hub
manifest-ml
elasticsearch
opensearch-py
google-search-results
faiss
sentence-transformers
transformers
nltk
wikipedia
beautifulsoup4
tiktoken
torch
jinja2
pinecone-client
# pinecone-text
# marqo
pymongo
weaviate-client
redis
google-api-python-client
google-auth
# wolframalpha
qdrant-client
# tensorflow-text
pypdf
networkx
# nomic
# aleph-alpha-client
# deeplake
# libdeeplake
pgvector
psycopg2
pyowm
pytesseract
html2text
atlassian-python-api
gptcache
duckduckgo-search
# arxiv
azure-identity
# clickhouse-connect
azure-cosmos
# lancedb
# langkit
lark
pexpect
# pyvespa
# O365
jq
# docarray
pdfminer-six
lxml
requests-toolbelt
neo4j
# openlm
# azure-ai-formrecognizer
# azure-ai-vision
# azure-cognitiveservices-speech
# momento
# singlestoredb
# tigrisdb
# nebula3-python
# awadb
esprima
rdflib
# amadeus
librosa
python-arango
];
cli = [
typer
Expand Down Expand Up @@ -277,6 +174,9 @@ buildPythonPackage rec {

# these tests have network access
"test_socket_disabled"

# this test may require a specific version of langchain-community
"test_compatible_vectorstore_documentation"
];

pythonImportsCheck = [
Expand All @@ -285,8 +185,8 @@ buildPythonPackage rec {

meta = with lib; {
description = "Building applications with LLMs through composability";
homepage = "https://github.com/hwchase17/langchain";
changelog = "https://github.com/hwchase17/langchain/releases/tag/v${version}";
homepage = "https://github.com/langchain-ai/langchain";
changelog = "https://github.com/langchain-ai/langchain/releases/tag/v${version}";
license = licenses.mit;
maintainers = with maintainers; [ natsukium ];
};
Expand Down
8 changes: 5 additions & 3 deletions pkgs/development/python-modules/langsmith/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -12,16 +12,16 @@

buildPythonPackage rec {
pname = "langsmith";
version = "0.0.75";
format = "pyproject";
version = "0.0.80";
pyproject = true;

disabled = pythonOlder "3.8";

src = fetchFromGitHub {
owner = "langchain-ai";
repo = "langsmith-sdk";
rev = "refs/tags/v${version}";
hash = "sha256-BbDB3xP3OCRXxbOqFIzFNrpK5+wHbIZ/VlurNXrXpTw=";
hash = "sha256-YFXwM/YiQJzJ1Nf76kuq3WtFhU6dUIHzK4K33+VO/lQ=";
};

sourceRoot = "${src.name}/python";
Expand Down Expand Up @@ -49,6 +49,8 @@ buildPythonPackage rec {
"test_as_runnable_batch"
"test_as_runnable_async"
"test_as_runnable_async_batch"
# requires git repo
"test_git_info"
];

disabledTestPaths = [
Expand Down
4 changes: 4 additions & 0 deletions pkgs/top-level/python-packages.nix
Original file line number Diff line number Diff line change
Expand Up @@ -6184,6 +6184,10 @@ self: super: with self; {

langchain = callPackage ../development/python-modules/langchain { };

langchain-community = callPackage ../development/python-modules/langchain-community { };

langchain-core = callPackage ../development/python-modules/langchain-core { };

langcodes = callPackage ../development/python-modules/langcodes { };

langdetect = callPackage ../development/python-modules/langdetect { };
Expand Down

0 comments on commit eae668f

Please sign in to comment.