@@ -45,15 +45,18 @@ async def item_handler(database_session: DBSession, id: int) -> ItemPublic:
4545
4646
4747@router .get ("/similar" , response_model = list [ItemWithDistance ])
48- async def similar_handler (database_session : DBSession , id : int , n : int = 5 ) -> list [ItemWithDistance ]:
48+ async def similar_handler (
49+ context : CommonDeps , database_session : DBSession , id : int , n : int = 5
50+ ) -> list [ItemWithDistance ]:
4951 """A similarity API to find items similar to items with given ID."""
5052 item = (await database_session .scalars (select (Item ).where (Item .id == id ))).first ()
5153 if not item :
5254 raise HTTPException (detail = f"Item with ID { id } not found." , status_code = 404 )
55+
5356 closest = await database_session .execute (
54- select (Item , Item .embedding .l2_distance (item .embedding ))
57+ select (Item , Item .embedding_ada002 .l2_distance (item .embedding_ada002 ))
5558 .filter (Item .id != id )
56- .order_by (Item .embedding .l2_distance (item .embedding ))
59+ .order_by (Item .embedding_ada002 .l2_distance (item .embedding_ada002 ))
5760 .limit (n )
5861 )
5962 return [
@@ -78,6 +81,7 @@ async def search_handler(
7881 embed_deployment = context .openai_embed_deployment ,
7982 embed_model = context .openai_embed_model ,
8083 embed_dimensions = context .openai_embed_dimensions ,
84+ embedding_column = context .embedding_column ,
8185 )
8286 results = await searcher .search_and_embed (
8387 query , top = top , enable_vector_search = enable_vector_search , enable_text_search = enable_text_search
@@ -99,6 +103,7 @@ async def chat_handler(
99103 embed_deployment = context .openai_embed_deployment ,
100104 embed_model = context .openai_embed_model ,
101105 embed_dimensions = context .openai_embed_dimensions ,
106+ embedding_column = context .embedding_column ,
102107 )
103108 rag_flow : SimpleRAGChat | AdvancedRAGChat
104109 if chat_request .context .overrides .use_advanced_flow :
@@ -139,6 +144,7 @@ async def chat_stream_handler(
139144 embed_deployment = context .openai_embed_deployment ,
140145 embed_model = context .openai_embed_model ,
141146 embed_dimensions = context .openai_embed_dimensions ,
147+ embedding_column = context .embedding_column ,
142148 )
143149
144150 rag_flow : SimpleRAGChat | AdvancedRAGChat
0 commit comments