Skip to content

Commit

Permalink
fixup! format
Browse files Browse the repository at this point in the history
  • Loading branch information
jaceksan committed Apr 29, 2024
1 parent f01380a commit 862e130
Showing 1 changed file with 27 additions and 25 deletions.
52 changes: 27 additions & 25 deletions libs/community/langchain_community/vectorstores/duckdb.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@
import json
import uuid
from typing import Any, Iterable, List, Optional, Type
import pandas as pd

import pandas as pd
from langchain_core.documents import Document
from langchain_core.embeddings import Embeddings
from langchain_core.vectorstores import VST, VectorStore
Expand Down Expand Up @@ -79,14 +79,14 @@ class DuckDB(VectorStore):
"""

def __init__(
self,
*,
connection: Optional[Any] = None,
embedding: Embeddings,
vector_key: str = DEFAULT_VECTOR_KEY,
id_key: str = DEFAULT_ID_KEY,
text_key: str = DEFAULT_TEXT_KEY,
table_name: str = DEFAULT_TABLE_NAME,
self,
*,
connection: Optional[Any] = None,
embedding: Embeddings,
vector_key: str = DEFAULT_VECTOR_KEY,
id_key: str = DEFAULT_ID_KEY,
text_key: str = DEFAULT_TEXT_KEY,
table_name: str = DEFAULT_TABLE_NAME,
):
"""Initialize with DuckDB connection and setup for vector storage."""
try:
Expand Down Expand Up @@ -129,10 +129,10 @@ def embeddings(self) -> Optional[Embeddings]:
return self._embedding

def add_texts(
self,
texts: Iterable[str],
metadatas: Optional[List[dict]] = None,
**kwargs: Any,
self,
texts: Iterable[str],
metadatas: Optional[List[dict]] = None,
**kwargs: Any,
) -> List[str]:
"""Turn texts into embedding and add it to the database using Pandas DataFrame
Expand Down Expand Up @@ -161,12 +161,14 @@ def add_texts(
if metadatas and idx < len(metadatas)
else None
)
data.append({
self._id_key: ids[idx],
self._text_key: text,
self._vector_key: embedding,
"metadata": metadata,
})
data.append(
{
self._id_key: ids[idx],
self._text_key: text,
self._vector_key: embedding,
"metadata": metadata,
}
)
# noinspection PyUnusedLocal
df = pd.DataFrame.from_dict(data)
self._connection.execute(
Expand All @@ -175,7 +177,7 @@ def add_texts(
return ids

def similarity_search(
self, query: str, k: int = 4, **kwargs: Any
self, query: str, k: int = 4, **kwargs: Any
) -> List[Document]:
"""Performs a similarity search for a given query string.
Expand Down Expand Up @@ -219,11 +221,11 @@ def similarity_search(

@classmethod
def from_texts(
cls: Type[VST],
texts: List[str],
embedding: Embeddings,
metadatas: Optional[List[dict]] = None,
**kwargs: Any,
cls: Type[VST],
texts: List[str],
embedding: Embeddings,
metadatas: Optional[List[dict]] = None,
**kwargs: Any,
) -> DuckDB:
"""Creates an instance of DuckDB and populates it with texts and
their embeddings.
Expand Down

0 comments on commit 862e130

Please sign in to comment.