From b8bfebd382caff3cebeb2d2ca158df4176816d8a Mon Sep 17 00:00:00 2001 From: Yuki Watanabe <31463517+B-Step62@users.noreply.github.com> Date: Wed, 16 Oct 2024 11:20:40 +0900 Subject: [PATCH] community: Add deprecation notice for Databricks integration in langchain-community (#27355) We have released the [langchain-databricks](https://github.com/langchain-ai/langchain-databricks) package for Databricks integration. This PR deprecates the legacy classes within `langchain-community`. --------- Signed-off-by: B-Step62 Co-authored-by: Erick Friis --- .../langchain_community/chat_models/databricks.py | 7 +++++++ .../community/langchain_community/embeddings/databricks.py | 7 +++++++ libs/community/langchain_community/llms/databricks.py | 6 ++++++ .../vectorstores/databricks_vector_search.py | 7 ++++++- 4 files changed, 26 insertions(+), 1 deletion(-) diff --git a/libs/community/langchain_community/chat_models/databricks.py b/libs/community/langchain_community/chat_models/databricks.py index 992adf574cc..5f17e3690aa 100644 --- a/libs/community/langchain_community/chat_models/databricks.py +++ b/libs/community/langchain_community/chat_models/databricks.py @@ -1,11 +1,18 @@ import logging from urllib.parse import urlparse +from langchain_core._api import deprecated + from langchain_community.chat_models.mlflow import ChatMlflow logger = logging.getLogger(__name__) +@deprecated( + since="0.3.3", + removal="1.0", + alternative_import="langchain_databricks.ChatDatabricks", +) class ChatDatabricks(ChatMlflow): """`Databricks` chat models API. diff --git a/libs/community/langchain_community/embeddings/databricks.py b/libs/community/langchain_community/embeddings/databricks.py index 8ea3867fa42..b83f15fa198 100644 --- a/libs/community/langchain_community/embeddings/databricks.py +++ b/libs/community/langchain_community/embeddings/databricks.py @@ -3,6 +3,8 @@ from __future__ import annotations from typing import Iterator, List from urllib.parse import urlparse +from langchain_core._api import deprecated + from langchain_community.embeddings.mlflow import MlflowEmbeddings @@ -11,6 +13,11 @@ def _chunk(texts: List[str], size: int) -> Iterator[List[str]]: yield texts[i : i + size] +@deprecated( + since="0.3.3", + removal="1.0", + alternative_import="langchain_databricks.DatabricksEmbeddings", +) class DatabricksEmbeddings(MlflowEmbeddings): """Databricks embeddings. diff --git a/libs/community/langchain_community/llms/databricks.py b/libs/community/langchain_community/llms/databricks.py index 9f535d7373d..3f7aa42f2fd 100644 --- a/libs/community/langchain_community/llms/databricks.py +++ b/libs/community/langchain_community/llms/databricks.py @@ -5,6 +5,7 @@ from abc import ABC, abstractmethod from typing import Any, Callable, Dict, List, Mapping, Optional import requests +from langchain_core._api import deprecated from langchain_core.callbacks import CallbackManagerForLLMRun from langchain_core.language_models import LLM from pydantic import ( @@ -262,6 +263,11 @@ def _pickle_fn_to_hex_string(fn: Callable) -> str: raise ValueError(f"Failed to pickle the function: {e}") +@deprecated( + since="0.3.3", + removal="1.0", + alternative_import="langchain_databricks.ChatDatabricks", +) class Databricks(LLM): """Databricks serving endpoint or a cluster driver proxy app for LLM. diff --git a/libs/community/langchain_community/vectorstores/databricks_vector_search.py b/libs/community/langchain_community/vectorstores/databricks_vector_search.py index 2c0727647a8..9d8e1228515 100644 --- a/libs/community/langchain_community/vectorstores/databricks_vector_search.py +++ b/libs/community/langchain_community/vectorstores/databricks_vector_search.py @@ -16,7 +16,7 @@ from typing import ( ) import numpy as np -from langchain_core._api import warn_deprecated +from langchain_core._api import deprecated, warn_deprecated from langchain_core.documents import Document from langchain_core.embeddings import Embeddings from langchain_core.vectorstores import VST, VectorStore @@ -29,6 +29,11 @@ if TYPE_CHECKING: logger = logging.getLogger(__name__) +@deprecated( + since="0.3.3", + removal="1.0", + alternative_import="langchain_databricks.DatabricksVectorSearch", +) class DatabricksVectorSearch(VectorStore): """`Databricks Vector Search` vector store.