Skip to content

Commit a8cc5a2

Browse files
authored
fix: query and return only selected metadata columns (#253)
1 parent 702154f commit a8cc5a2

File tree

1 file changed

+11
-1
lines changed

1 file changed

+11
-1
lines changed

src/langchain_google_cloud_sql_pg/async_vectorstore.py

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -485,8 +485,18 @@ async def __query_collection(
485485
operator = self.distance_strategy.operator
486486
search_function = self.distance_strategy.search_function
487487

488+
columns = self.metadata_columns + [
489+
self.id_column,
490+
self.content_column,
491+
self.embedding_column,
492+
]
493+
if self.metadata_json_column:
494+
columns.append(self.metadata_json_column)
495+
496+
column_names = ", ".join(f'"{col}"' for col in columns)
497+
488498
filter = f"WHERE {filter}" if filter else ""
489-
stmt = f"SELECT *, {search_function}({self.embedding_column}, '{embedding}') as distance FROM \"{self.schema_name}\".\"{self.table_name}\" {filter} ORDER BY {self.embedding_column} {operator} '{embedding}' LIMIT {k};"
499+
stmt = f"SELECT {column_names}, {search_function}({self.embedding_column}, '{embedding}') as distance FROM \"{self.schema_name}\".\"{self.table_name}\" {filter} ORDER BY {self.embedding_column} {operator} '{embedding}' LIMIT {k};"
490500
if self.index_query_options:
491501
async with self.pool.connect() as conn:
492502
await conn.execute(

0 commit comments

Comments
 (0)