File langchain.spec of Package langchain

#
# spec file for package python-langchain
#
# Copyright (c) 2024 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.

# Please submit bugfixes or comments via https://bugs.opensuse.org/
#

%define versionexpr [0-9]*[0-9]

Name:           langchain
Version:        0.1.14~git90.5a760879
Release:        0
Summary:        Building applications with LLMs through composability
License:        MIT
URL:            https://github.com/langchain-ai/langchain
Source:         https://files.pythonhosted.org/packages/source/l/langchain/langchain-%{version}.tar.gz
BuildRequires:  python-rpm-macros
BuildRequires:  %{python_module pip}
BuildRequires:  %{python_module setuptools}
BuildRequires:  %{python_module poetry}
BuildRequires:  %{python_module poetry-core}
BuildRequires:  %{python_module attrs}
BuildRequires:  %{python_module rpds-py}
BuildRequires:  %{python_module pycparser}
BuildRequires:  %{python_module pipx}
BuildRequires:  %{python_module PyYAML}
BuildRequires:  ca-certificates
BuildRequires:  fdupes

Requires: python3-PyYAML >= 5.3
Requires: python3-SQLAlchemy >= 1.4, python3-SQLAlchemy < 3
Requires: python3-aiohttp >= 3.8.3, python3-aiohttp < 4.0.0
Requires: python3-async-timeout >= 4.0.0, python3-async-timeout < 5.0.0
Requires: python3-dataclasses-json >=  0.5.7, python3-dataclasses-json  <  0.7
Requires: python3-jsonpatch >= 1.33.0, python3-jsonpatch < 2.0.0
Requires: python3-langchain-community >= 0.0.30, python3-langchain-community < 0.1
Requires: python3-langchain-core >= 0.1.37, python3-langchain-core < 1.0.0
Requires: python3-langchain-text-splitters >= 0.0.1, python3-langchain-text-splitters < 0.1
Requires: python3-langsmith >= 0.1.17, python3-langsmith < 1.0.0
Requires: python3-numpy >= 1.0.0, python3-numpy < 2.0.0
Requires: python3-pydantic >= 1, python3-pydantic < 3
Requires: python3-requests >= 2.0.0, python3-requests < 3.0.0
Requires: python3-tenacity >= 8.1.0, python3-tenacity < 9.0.0
Suggests: python3-aiosqlite >= 0.19.0, python3-aiosqlite < 1.0.0
Suggests: python3-aleph-alpha-client >= 2.15.0, python3-aleph-alpha-client < 3.0.0
Suggests: python3-anthropic >= 0.3.11, python3-anthropic < 1.0.0
Suggests: python3-arxiv >= 1.4.0, python3-arxiv < 2.0.0
Suggests: python3-assemblyai >= 0.17.0, python3-assemblyai < 1.0.0
Suggests: python3-atlassian-python-api >= 3.36.0, python3-atlassian-python-api < 4.0.0
Suggests: python3-azure-ai-formrecognizer >= 3.2.1, python3-azure-ai-formrecognizer < 4.0.0
Suggests: python3-azure-ai-textanalytics >= 5.3.0, python3-azure-ai-textanalytics < 6.0.0
Suggests: python3-azure-cognitiveservices-speech >= 1.28.0, python3-azure-cognitiveservices-speech < 2.0.0
Suggests: python3-azure-core >= 1.26.4, python3-azure-core < 2.0.0
Suggests: python3-azure-cosmos >= 4.0.0, python3-azure-cosmos < 5.0.0
Suggests: python3-azure-identity >= 1.12.0, python3-azure-identity < 2.0.0
Suggests: python3-azure-search-documents  11.4.0
Suggests: python3-beautifulsoup4 >= 4.0.0, python3-beautifulsoup4 < 5.0.0
Suggests: python3-bibtexparser >= 1.4.0, python3-bibtexparser < 2.0.0
Suggests: python3-cassio >= 0.1.0, python3-cassio < 1.0.0
Suggests: python3-chardet >= 5.1.0, python3-chardet < 6.0.0
Suggests: python3-clarifai >= 9.1.0
Suggests: python3-cohere >= 4, python3-cohere < 6
Suggests: python3-couchbase >= 4.1.9, python3-couchbase < 5.0.0
Suggests: python3-dashvector >= 1.0.1, python3-dashvector < 2.0.0
Suggests: python3-databricks-vectorsearch >= 0.21.0, python3-databricks-vectorsearch < 1.0.0
Suggests: python3-datasets >= 2.15.0, python3-datasets < 3.0.0
Suggests: python3-dgml-utils >= 0.3.0, python3-dgml-utils < 1.0.0
Suggests: python3-docarray >= 0.32.0, python3-docarray < 1.0.0
Suggests: python3-esprima >= 4.0.1, python3-esprima < 5.0.0
Suggests: python3-faiss-cpu >= 1.0.0, python3-faiss-cpu < 2.0.0
Suggests: python3-feedparser >= 6.0.10, python3-feedparser < 7.0.0
Suggests: python3-fireworks-ai >= 0.9.0, python3-fireworks-ai < 1.0.0
Suggests: python3-geopandas >= 0.13.1, python3-geopandas < 1.0.0
Suggests: python3-gitpython >= 3.1.32, python3-gitpython < 4.0.0
Suggests: python3-google-cloud-documentai >= 2.20.1, python3-google-cloud-documentai < 3.0.0
Suggests: python3-gql >= 3.4.1, python3-gql < 4.0.0
Suggests: python3-hologres-vector >= 0.0.6, python3-hologres-vector < 1.0.0
Suggests: python3-html2text >= 2020.1.16, python3-html2text < 2021.0.0
Suggests: python3-huggingface_hub >= 0.0.0, python3-huggingface_hub < 1.0.0
Suggests: python3-javelin-sdk >= 0.1.8, python3-javelin-sdk < 1.0.0
Suggests: python3-jinja2 >= 3.0.0, python3-jinja2 < 4.0.0
Suggests: python3-jq >= 1.4.1, python3-jq < 2.0.0
Suggests: python3-jsonschema > 1
Suggests: python3-langchain-openai >= 0.0.2, python3-langchain-openai < 0.1
Suggests: python3-lxml >= 4.9.3, python3-lxml < 6.0
Suggests: python3-manifest-ml >= 0.0.1, python3-manifest-ml < 1.0.0
Suggests: python3-markdownify >= 0.11.6, python3-markdownify < 1.0.0
Suggests: python3-motor >= 3.3.1, python3-motor < 4.0.0
Suggests: python3-msal >= 1.25.0, python3-msal < 2.0.0
Suggests: python3-mwparserfromhell >= 0.6.4, python3-mwparserfromhell < 1.0.0
Suggests: python3-mwxml >= 0.3.3, python3-mwxml < 1.0.0
Suggests: python3-newspaper3k >= 0.2.8, python3-newspaper3k < 1.0.0
Suggests: python3-nlpcloud >= 1.0.0, python3-nlpcloud < 2.0.0
Suggests: python3-numexpr >= 2.8.6, python3-numexpr < 3.0.0
Suggests: python3-openai < 2
Suggests: python3-openapi-pydantic >= 0.3.2, python3-openapi-pydantic < 1.0.0
Suggests: python3-openlm >= 0.0.5, python3-openlm < 1.0.0
Suggests: python3-pandas >= 2.0.1, python3-pandas < 3.0.0
Suggests: python3-pdfminer-six >= 20221105.0.0, python3-pdfminer-six < 20221106.0.0
Suggests: python3-pgvector >= 0.1.6, python3-pgvector < 1.0.0
Suggests: python3-praw >= 7.7.1, python3-praw < 8.0.0
Suggests: python3-psychicapi >= 0.8.0, python3-psychicapi < 1.0.0
Suggests: python3-py-trello >= 0.19.0, python3-py-trello < 1.0.0
Suggests: python3-pymupdf >= 1.22.3, python3-pymupdf < 2.0.0
Suggests: python3-pypdf >= 3.4.0, python3-pypdf < 4.0.0
Suggests: python3-pypdfium2 >= 4.10.0, python3-pypdfium2 < 5.0.0
Suggests: python3-pyspark >= 3.4.0, python3-pyspark < 4.0.0
Suggests: python3-qdrant-client >= 1.3.1, python3-qdrant-client < 2.0.0
Suggests: python3-rank-bm25 >= 0.2.2, python3-rank-bm25 < 1.0.0
Suggests: python3-rapidfuzz >= 3.1.1, python3-rapidfuzz < 4.0.0
Suggests: python3-rapidocr-onnxruntime >= 1.3.2, python3-rapidocr-onnxruntime < 2.0.0
Suggests: python3-rdflib  7.0.0
Suggests: python3-requests-toolbelt >= 1.0.0, python3-requests-toolbelt < 2.0.0
Suggests: python3-rspace_client >= 2.5.0, python3-rspace_client < 3.0.0
Suggests: python3-scikit-learn >= 1.2.2, python3-scikit-learn < 2.0.0
Suggests: python3-sentence-transformers >= 2.0.0, python3-sentence-transformers < 3.0.0
Suggests: python3-sqlite-vss >= 0.1.2, python3-sqlite-vss < 1.0.0
Suggests: python3-streamlit >= 1.18.0, python3-streamlit < 2.0.0
Suggests: python3-sympy >= 1.12.0, python3-sympy < 2.0.0
Suggests: python3-telethon >= 1.28.5, python3-telethon < 2.0.0
Suggests: python3-tiktoken >= 0.3.2, python3-tiktoken < 0.6.0
Suggests: python3-timescale-vector >= 0.0.1, python3-timescale-vector < 1.0.0
Suggests: python3-torch >= 1, python3-torch < 3
Suggests: python3-tqdm >= 4.48.0
Suggests: python3-transformers >= 4.0.0, python3-transformers < 5.0.0
Suggests: python3-typer >= 0.9.0, python3-typer < 1.0.0
Suggests: python3-upstash-redis >= 0.15.0, python3-upstash-redis < 1.0.0
Suggests: python3-xata >= 1.0.0, python3-xata < 2.0.0
Suggests: python3-xmltodict >= 0.13.0, python3-xmltodict < 1.0.0

BuildArch:      noarch
%python_subpackages

%description
LangChain

Building applications with LLMs through composability

Large language models (LLMs) are emerging as a transformative technology, enabling developers to build applications that they previously could not. However, using these LLMs in isolation is often insufficient for creating a truly powerful app - the real power comes when you can combine them with other sources of computation or knowledge.

This library aims to assist in the development of those types of applications.

%package server
Summary: Langchain Server
Group: Python/AI
Requires(post):   update-alternatives
Requires(postun): update-alternatives

%description server
The Server for Langchain

%package cli
Summary: Langchain cli module
Group: Python/AI
Requires: python3-gitpython >= 3.1.40, python3-gitpython < 4.0.0
Requires: python3-langserve >= 0.0.51
Requires: python3-tomlkit >= 0.12.2, python3-tomlkit < 1.0.0
Requires: python3-typer >= 0.9.0, python3-typer < 1.0.0
Requires: python3-uvicorn >= 0.23.2, python3-uvicorn < 1.0.0
Requires(post):   update-alternatives
Requires(postun): update-alternatives

%description cli
This package contains the langchain cli and cli support module.

%package community
Summary: Langchain community module
Group: Python/AI
Requires: python3-langchain-core = %{version}-%{release}
Requires: python3-PyYAML >= 5.3
Requires: python3-SQLAlchemy >= 1.4, python3-SQLAlchemy < 3
Requires: python3-aiohttp >= 3.8.3, python3-aiohttp < 4.0.0
Requires: python3-dataclasses-json >=  0.5.7, python3-dataclasses-json  <  0.7
Requires: python3-langchain-core >= 0.1.37, python3-langchain-core < 1.0.0
Requires: python3-langsmith >= 0.1.0, python3-langsmith < 1.0.0
Requires: python3-numpy >= 1.0.0, python3-numpy < 2.0.0
Requires: python3-requests >= 2.0.0, python3-requests < 3.0.0
Requires: python3-tenacity >= 8.1.0, python3-tenacity < 9.0.0
Suggests: python3-aiosqlite >= 0.19.0, python3-aiosqlite < 1.0.0
Suggests: python3-aleph-alpha-client >= 2.15.0, python3-aleph-alpha-client < 3.0.0
Suggests: python3-anthropic >= 0.3.11, python3-anthropic < 1.0.0
Suggests: python3-arxiv >= 1.4.0, python3-arxiv < 2.0.0
Suggests: python3-assemblyai >= 0.17.0, python3-assemblyai < 1.0.0
Suggests: python3-atlassian-python-api >= 3.36.0, python3-atlassian-python-api < 4.0.0
Suggests: python3-azure-ai-documentintelligence >= 1.0.0, python3-azure-ai-documentintelligence < 2.0.0
Suggests: python3-beautifulsoup4 >= 4.0.0, python3-beautifulsoup4 < 5.0.0
Suggests: python3-bibtexparser >= 1.4.0, python3-bibtexparser < 2.0.0
Suggests: python3-cassio >= 0.1.0, python3-cassio < 1.0.0
Suggests: python3-chardet >= 5.1.0, python3-chardet < 6.0.0
Suggests: python3-cloudpickle >= 2.0.0
Suggests: python3-cohere >= 4.0.0, python3-cohere < 5.0.0
Suggests: python3-databricks-vectorsearch >= 0.21.0, python3-databricks-vectorsearch < 1.0.0
Suggests: python3-datasets >= 2.15.0, python3-datasets < 3.0.0
Suggests: python3-dgml-utils >= 0.3.0, python3-dgml-utils < 1.0.0
Suggests: python3-elasticsearch >= 8.12.0, python3-elasticsearch < 9.0.0
Suggests: python3-esprima >= 4.0.1, python3-esprima < 5.0.0
Suggests: python3-faiss-cpu >= 1.0.0, python3-faiss-cpu < 2.0.0
Suggests: python3-feedparser >= 6.0.10, python3-feedparser < 7.0.0
Suggests: python3-fireworks-ai >= 0.9.0, python3-fireworks-ai < 1.0.0
Suggests: python3-friendli-client >= 1.2.4, python3-friendli-client < 2.0.0
Suggests: python3-geopandas >= 0.13.1, python3-geopandas < 1.0.0
Suggests: python3-gitpython >= 3.1.32, python3-gitpython < 4.0.0
Suggests: python3-google-cloud-documentai >= 2.20.1, python3-google-cloud-documentai < 3.0.0
Suggests: python3-gql >= 3.4.1, python3-gql < 4.0.0
Suggests: python3-gradientai >= 1.4.0, python3-gradientai < 2.0.0
Suggests: python3-hdbcli >= 2.19.21, python3-hdbcli < 3.0.0
Suggests: python3-hologres-vector >= 0.0.6, python3-hologres-vector < 1.0.0
Suggests: python3-html2text >= 2020.1.16, python3-html2text < 2021.0.0
Suggests: python3-httpx >= 0.24.1, python3-httpx < 1.0.0
Suggests: python3-httpx-sse >= 0.4.0, python3-httpx-sse < 1.0.0
Suggests: python3-javelin-sdk >= 0.1.8, python3-javelin-sdk < 1.0.0
Suggests: python3-jinja2 >= 3.0.0, python3-jinja2 < 4.0.0
Suggests: python3-jq >= 1.4.1, python3-jq < 2.0.0
Suggests: python3-jsonschema > 1
Suggests: python3-lxml >= 4.9.3, python3-lxml < 6.0
Suggests: python3-markdownify >= 0.11.6, python3-markdownify < 1.0.0
Suggests: python3-motor >= 3.3.1, python3-motor < 4.0.0
Suggests: python3-msal >= 1.25.0, python3-msal < 2.0.0
Suggests: python3-mwparserfromhell >= 0.6.4, python3-mwparserfromhell < 1.0.0
Suggests: python3-mwxml >= 0.3.3, python3-mwxml < 1.0.0
Suggests: python3-newspaper3k >= 0.2.8, python3-newspaper3k < 1.0.0
Suggests: python3-numexpr >= 2.8.6, python3-numexpr < 3.0.0
Suggests: python3-nvidia-riva-client >= 2.14.0, python3-nvidia-riva-client < 3.0.0
Suggests: python3-oci >= 2.119.1, python3-oci < 3.0.0
Suggests: python3-openai < 2
Suggests: python3-openapi-pydantic >= 0.3.2, python3-openapi-pydantic < 1.0.0
Suggests: python3-oracle-ads >= 2.9.1, python3-oracle-ads < 3.0.0
Suggests: python3-pandas >= 2.0.1, python3-pandas < 3.0.0
Suggests: python3-pdfminer-six >= 20221105.0.0, python3-pdfminer-six < 20221106.0.0
Suggests: python3-pgvector >= 0.1.6, python3-pgvector < 1.0.0
Suggests: python3-praw >= 7.7.1, python3-praw < 8.0.0
Suggests: python3-premai >= 0.3.25, python3-premai < 1.0.0
Suggests: python3-psychicapi >= 0.8.0, python3-psychicapi < 1.0.0
Suggests: python3-py-trello >= 0.19.0, python3-py-trello < 1.0.0
Suggests: python3-pyjwt >= 2.8.0, python3-pyjwt < 3.0.0
Suggests: python3-pymupdf >= 1.22.3, python3-pymupdf < 2.0.0
Suggests: python3-pypdf >= 3.4.0, python3-pypdf < 4.0.0
Suggests: python3-pypdfium2 >= 4.10.0, python3-pypdfium2 < 5.0.0
Suggests: python3-pyspark >= 3.4.0, python3-pyspark < 4.0.0
Suggests: python3-rank-bm25 >= 0.2.2, python3-rank-bm25 < 1.0.0
Suggests: python3-rapidfuzz >= 3.1.1, python3-rapidfuzz < 4.0.0
Suggests: python3-rapidocr-onnxruntime >= 1.3.2, python3-rapidocr-onnxruntime < 2.0.0
Suggests: python3-rdflib  7.0.0
Suggests: python3-requests-toolbelt >= 1.0.0, python3-requests-toolbelt < 2.0.0
Suggests: python3-rspace_client >= 2.5.0, python3-rspace_client < 3.0.0
Suggests: python3-scikit-learn >= 1.2.2, python3-scikit-learn < 2.0.0
Suggests: python3-sqlite-vss >= 0.1.2, python3-sqlite-vss < 1.0.0
Suggests: python3-streamlit >= 1.18.0, python3-streamlit < 2.0.0
Suggests: python3-sympy >= 1.12.0, python3-sympy < 2.0.0
Suggests: python3-telethon >= 1.28.5, python3-telethon < 2.0.0
Suggests: python3-tidb-vector >= 0.0.3, python3-tidb-vector < 1.0.0
Suggests: python3-timescale-vector >= 0.0.1, python3-timescale-vector < 1.0.0
Suggests: python3-tqdm >= 4.48.0
Suggests: python3-tree-sitter >= 0.20.2, python3-tree-sitter < 1.0.0
Suggests: python3-tree-sitter-languages >= 1.8.0, python3-tree-sitter-languages < 2.0.0
Suggests: python3-typer >= 0.9.0, python3-typer < 1.0.0
Suggests: python3-upstash-redis >= 0.15.0, python3-upstash-redis < 1.0.0
Suggests: python3-vdms >= 0.0.20, python3-vdms < 1.0.0
Suggests: python3-xata >= 1.0.0, python3-xata < 2.0.0
Suggests: python3-xmltodict >= 0.13.0, python3-xmltodict < 1.0.0

%description community
This package contains the langchain community support module.

%package core
Summary: Langchain core module
Group: Python/AI
Requires: python3-PyYAML >= 5.3
Requires: python3-jsonpatch >= 1.33.0, python3-jsonpatch < 2.0.0
Requires: python3-langsmith >= 0.1.0, python3-langsmith < 1.0.0
Requires: python3-packaging >= 23.2.0, python3-packaging < 24.0.0
Requires: python3-pydantic >= 1, python3-pydantic < 3
Requires: python3-tenacity >= 8.1.0, python3-tenacity < 9.0.0
Suggests: python3-jinja2 >= 3.0.0, python3-jinja2 < 4.0.0

%description core
This package contains the langchain core support module.

%package experimental
Summary: Langchain experimental module
Group: Python/AI
Requires: python3-langchain-core = %{version}-%{release}
Requires: python3-langchain = %{version}-%{release}
Requires: python3-langchain >= 0.1.14, python3-langchain < 1.0.0
Requires: python3-langchain-core >= 0.1.37, python3-langchain-core < 1.0.0
Suggests: python3-faker >= 19.3.1, python3-faker < 20.0.0
Suggests: python3-jinja2 >= 3.0.0, python3-jinja2 < 4.0.0
Suggests: python3-pandas >= 2.0.1, python3-pandas < 3.0.0
Suggests: python3-presidio-analyzer >= 2.2.352, python3-presidio-analyzer < 3.0.0
Suggests: python3-presidio-anonymizer >= 2.2.352, python3-presidio-anonymizer < 3.0.0
Suggests: python3-sentence-transformers >= 2.0.0, python3-sentence-transformers < 3.0.0
Suggests: python3-tabulate >= 0.9.0, python3-tabulate < 1.0.0
Suggests: python3-vowpal-wabbit-next  0.6.0

%description experimental
This package contains the langchain experimental support module.


%package text_splitters
Summary: Langchain text_splitters module
Group: Python/AI
Requires: python3-langchain-core = %{version}-%{release}
Requires: python3-langchain-core >= 0.1.28, python3-langchain-core < 1.0.0
Suggests: python3-beautifulsoup4 >= 4.12.3, python3-beautifulsoup4 < 5.0.0
Suggests: python3-lxml >= 4.9.3, python3-lxml < 6.0

%description text_splitters
This package contains the langchain text_splitters support module.

%package ai21
Summary: Langchain ai21 module
Group: Python/AI
Requires: python3-langchain-core = %{version}-%{release}
Requires: python3-langchain-text-splitters = %{version}-%{release}
Requires: python3-ai21 >= 2.1.2, python3-ai21 < 3.0.0
Requires: python3-langchain-core >= 0.1.28, python3-langchain-core < 1.0.0
Requires: python3-langchain-text-splitters >= 0.0.1, python3-langchain-text-splitters < 1.0.0

%description ai21
This package contains the langchain ai21 support module.

%package airbyte
Summary: Langchain airbyte module
Group: Python/AI
Requires: python3-langchain-core = %{version}-%{release}
Requires: python3-airbyte >= 0.7.3, python3-airbyte < 1.0.0
Requires: python3-langchain-core >= 0.1.5, python3-langchain-core < 1.0.0

%description airbyte
This package contains the langchain airbyte support module.

%package anthropic
Summary: Langchain anthropic module
Group: Python/AI
Requires: python3-langchain-core = %{version}-%{release}
Requires: python3-anthropic >= 0.23.0, python3-anthropic < 1
Requires: python3-langchain-core >= 0.1.33, python3-langchain-core < 1.0.0
Requires: python3-defusedxml >= 0.7.1, python3-defusedxml < 1.0.0

%description anthropic
This package contains the langchain anthropic support module.

%package cohere
Summary: Langchain cohere module
Group: Python/AI
Requires: python3-langchain-core = %{version}-%{release}
Requires: python3-cohere >= 5.1.8, python3-cohere < 5.2
Requires: python3-langchain-core >= 0.1.32, python3-langchain-core < 1.0.0

%description cohere
This package contains the langchain cohere support module.

%package exa
Summary: Langchain exa module
Group: Python/AI
Requires: python3-langchain-core = %{version}-%{release}
Requires: python3-exa-py >= 1.0.8, python3-exa-py < 2.0.0
Requires: python3-langchain-core >= 0.1.0, python3-langchain-core < 1.0.0

%description exa
This package contains the langchain exa support module.

%package fireworks
Summary: Langchain fireworks module
Group: Python/AI
Requires: python3-langchain-core = %{version}-%{release}
Requires: python3-aiohttp >= 3.9.1, python3-aiohttp < 4.0.0
Requires: python3-fireworks-ai >= 0.13.0
Requires: python3-langchain-core >= 0.1.27, python3-langchain-core < 1.0.0
Requires: python3-openai >= 1.10.0, python3-openai < 2.0.0
Requires: python3-requests >= 2.0.0, python3-requests < 3.0.0

%description fireworks
This package contains the langchain fireworks support module.

%package groq
Summary: Langchain groq module
Group: Python/AI
Requires: python3-langchain-core = %{version}-%{release}
Requires: python3-groq >= 0.4.1, python3-groq < 1
Requires: python3-langchain-core >= 0.1.40, python3-langchain-core < 1.0.0

%description groq
This package contains the langchain groq support module.

%package ibm
Summary: Langchain ibm module
Group: Python/AI
Requires: python3-langchain-core = %{version}-%{release}
Requires: python3-ibm-watsonx-ai >= 0.2.0, python3-ibm-watsonx-ai < 1.0.0
Requires: python3-langchain-core >= 0.1.29, python3-langchain-core < 1.0.0

%description ibm
This package contains the langchain ibm support module.

%package mistralai
Summary: Langchain mistralai module
Group: Python/AI
Requires: python3-langchain-core = %{version}-%{release}
Requires: python3-httpx >= 0.25.2, python3-httpx < 1
Requires: python3-httpx-sse >= 0.3.1, python3-httpx-sse < 1
Requires: python3-langchain-core >= 0.1.31, python3-langchain-core < 1.0.0
Requires: python3-tokenizers >= 0.15.1, python3-tokenizers < 1.0.0

%description mistralai
This package contains the langchain mistralai support module.

%package mongodb
Summary: Langchain mongodb module
Group: Python/AI
Requires: python3-langchain-core = %{version}-%{release}
Requires: python3-langchain-core >= 0.1.25, python3-langchain-core < 1.0.0
Requires: python3-numpy >= 1.0.0, python3-numpy < 2.0.0
Requires: python3-pymongo >= 4.6.1, python3-pymongo < 5.0

%description mongodb
This package contains the langchain mongodb support module.

%package nomic
Summary: Langchain nomic module
Group: Python/AI
Requires: python3-langchain-core = %{version}-%{release}
Requires: python3-langchain-core >= 0.1.0, python3-langchain-core < 1.0.0
Requires: python3-nomic >= 3.0.12, python3-nomic < 4.0.0

%description nomic
This package contains the langchain nomic support module.

%package openai
Summary: Langchain openai module
Group: Python/AI
Requires: python3-langchain-core = %{version}-%{release}
Requires: python3-langchain-core >= 0.1.33, python3-langchain-core < 1.0.0
Requires: python3-openai >= 1.10.0, python3-openai < 2.0.0
Requires: python3-tiktoken >= 0.5.2, python3-tiktoken < 1

%description openai
This package contains the langchain openai support module.

%package pinecone
Summary: Langchain pinecone module
Group: Python/AI
Requires: python3-langchain-core = %{version}-%{release}
Requires: python3-langchain-core >= 0.1.0, python3-langchain-core < 1.0.0
Requires: python3-numpy >= 1.0.0, python3-numpy < 2.0.0
Requires: python3-pinecone-client >= 3.2.2, python3-pinecone-client < 4.0.0

%description pinecone
This package contains the langchain pinecone support module.

%package postgres
Summary: Langchain postgres module
Group: Python/AI
Requires: python3-langchain-core = %{version}-%{release}
Requires: python3-langchain-core >= 0.1.0, python3-langchain-core < 1.0.0
Requires: python3-psycopg >= 3.1.18, python3-psycopg < 4.0.0

%description postgres
This package contains the langchain postgres support module.

%package robocorp
Summary: Langchain robocorp module
Group: Python/AI
Requires: python3-langchain-core = %{version}-%{release}
Requires: python3-langchain-core >= 0.1.31, python3-langchain-core < 1.0.0
Requires: python3-requests >= 2.31.0, python3-requests < 3.0.0
Requires: python3-types-requests >= 2.0.0, python3-types-requests < 3.0.0

%description robocorp
This package contains the langchain robocorp support module.

%package together
Summary: Langchain together module
Group: Python/AI
Requires: python3-langchain-core = %{version}-%{release}
Requires: python3-aiohttp >= 3.9.1, python3-aiohttp < 4.0.0
Requires: python3-langchain-core >= 0.1.0, python3-langchain-core < 1.0.0
Requires: python3-requests >= 2.0.0, python3-requests < 3.0.0
Requires: python3-together >= 0.2.10, python3-together < 1.0.0

%description together
This package contains the langchain together support module.

%package voyageai
Summary: Langchain voyageai module
Group: Python/AI
Requires: python3-langchain-core = %{version}-%{release}
Requires: python3-langchain-core >= 0.1.32, python3-langchain-core < 1.0.0
Requires: python3-voyageai >= 0.2.1, python3-voyageai < 1

%description voyageai
This package contains the langchain voyageai support module.

%prep
%autosetup

%build
for mod in libs/* libs/partners/*; do
    modname=$(basename $mod|tr - _)
    if test -e $mod/pyproject.toml; then
	%pyproject_wheel $mod
    fi
done

%install
for mod in libs/* libs/partners/*; do
    modname=$(basename $mod|tr - _)
    if test -e $mod/pyproject.toml; then
	%pyproject_install --no-build-isolation $mod
	path=$modname
	if test "$path" != "langchain"; then
	    path=langchain_$modname
	fi
    fi
done

# These are the same but a symlink creates file conflicts
%python_clone -a %{buildroot}/%{_bindir}/langchain
%python_clone -a %{buildroot}/%{_bindir}/langchain-cli

%python_clone -a %{buildroot}/%{_bindir}/langchain-server

find %{buildroot} -name .gitignore -delete

for mod in libs/* libs/partners/*; do
    modname=$(basename $mod|tr - _)
    if test -e $mod/pyproject.toml; then
	path=$modname
	if test "$path" != "langchain"; then
	    path=langchain_$modname
	fi
	%python_expand %fdupes %{buildroot}/%{$python_sitelib}/$path
    fi
done


%check

%files %{python_files}
%{python_sitelib}/langchain
%{python_sitelib}/langchain-%{versionexpr}.dist-info


%files %{python_files server}
%python_alternative %{_bindir}/langchain-server

%files %{python_files cli}
%{python_sitelib}/langchain_cli
%{python_sitelib}/langchain_cli-%{versionexpr}.dist-info
%python_alternative %{_bindir}/langchain
%python_alternative %{_bindir}/langchain-cli

%files %{python_files community}
%{python_sitelib}/langchain_community
%{python_sitelib}/langchain_community-%{versionexpr}.dist-info

%files %{python_files core}
%{python_sitelib}/langchain_core
%{python_sitelib}/langchain_core-%{versionexpr}.dist-info

%files %{python_files experimental}
%{python_sitelib}/langchain_experimental
%{python_sitelib}/langchain_experimental-%{versionexpr}.dist-info

%files %{python_files text_splitters}
%{python_sitelib}/langchain_text_splitters
%{python_sitelib}/langchain_text_splitters-%{versionexpr}.dist-info

%files %{python_files ai21}
%{python_sitelib}/langchain_ai21
%{python_sitelib}/langchain_ai21-%{versionexpr}.dist-info

%files %{python_files airbyte}
%{python_sitelib}/langchain_airbyte
%{python_sitelib}/langchain_airbyte-%{versionexpr}.dist-info

%files %{python_files anthropic}
%{python_sitelib}/langchain_anthropic
%{python_sitelib}/langchain_anthropic-%{versionexpr}.dist-info

%files %{python_files cohere}
%{python_sitelib}/langchain_cohere
%{python_sitelib}/langchain_cohere-%{versionexpr}.dist-info

%files %{python_files exa}
%{python_sitelib}/langchain_exa
%{python_sitelib}/langchain_exa-%{versionexpr}.dist-info

%files %{python_files fireworks}
%{python_sitelib}/langchain_fireworks
%{python_sitelib}/langchain_fireworks-%{versionexpr}.dist-info

%files %{python_files groq}
%{python_sitelib}/langchain_groq
%{python_sitelib}/langchain_groq-%{versionexpr}.dist-info

%files %{python_files ibm}
%{python_sitelib}/langchain_ibm
%{python_sitelib}/langchain_ibm-%{versionexpr}.dist-info

%files %{python_files mistralai}
%{python_sitelib}/langchain_mistralai
%{python_sitelib}/langchain_mistralai-%{versionexpr}.dist-info

%files %{python_files mongodb}
%{python_sitelib}/langchain_mongodb
%{python_sitelib}/langchain_mongodb-%{versionexpr}.dist-info

%files %{python_files nomic}
%{python_sitelib}/langchain_nomic
%{python_sitelib}/langchain_nomic-%{versionexpr}.dist-info

%files %{python_files openai}
%{python_sitelib}/langchain_openai
%{python_sitelib}/langchain_openai-%{versionexpr}.dist-info

%files %{python_files pinecone}
%{python_sitelib}/langchain_pinecone
%{python_sitelib}/langchain_pinecone-%{versionexpr}.dist-info

%files %{python_files postgres}
%{python_sitelib}/langchain_postgres
%{python_sitelib}/langchain_postgres-%{versionexpr}.dist-info

%files %{python_files robocorp}
%{python_sitelib}/langchain_robocorp
%{python_sitelib}/langchain_robocorp-%{versionexpr}.dist-info

%files %{python_files together}
%{python_sitelib}/langchain_together
%{python_sitelib}/langchain_together-%{versionexpr}.dist-info

%files %{python_files voyageai}
%{python_sitelib}/langchain_voyageai
%{python_sitelib}/langchain_voyageai-%{versionexpr}.dist-info

%post cli
%{python_install_alternative langchain langchain-cli}

%postun cli
%{python_uninstall_alternative langchain}

%post server
%{python_install_alternative langchain-server}

%postun server
%{python_uninstall_alternative langchain-server}

%changelog
openSUSE Build Service is sponsored by