Skip to content

Commit 7496061

Browse files
added new unit tests with reranking model
1 parent 91061d7 commit 7496061

File tree

1 file changed

+89
-1
lines changed

1 file changed

+89
-1
lines changed

tests/test_mindsdb/test_knowledgebase.py

Lines changed: 89 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -230,6 +230,95 @@ def test_create_knowledge_base(self):
230230
)
231231
assert ast == expected_ast
232232

233+
# Create Knowledge Base with embedding model and reranking model.
234+
sql = """
235+
CREATE KNOWLEDGE_BASE my_knowledge_base
236+
USING
237+
EMBEDDING_MODEL={
238+
"model": "text-embedding-3-small",
239+
"api_key": "sk-1234567890"
240+
},
241+
RERANKING_MODEL={
242+
"model": "text-embedding-3-small",
243+
"api_key": "sk-1234567890"
244+
},
245+
STORAGE = my_vector_database.some_table
246+
"""
247+
ast = parse_sql(sql)
248+
249+
expected_ast = CreateKnowledgeBase(
250+
name=Identifier("my_knowledge_base"),
251+
if_not_exists=False,
252+
embedding_model={
253+
"model": "text-embedding-3-small",
254+
"api_key": "sk-1234567890",
255+
},
256+
reranking_model={
257+
"model": "text-embedding-3-small",
258+
"api_key": "sk-1234567890",
259+
},
260+
storage=Identifier(parts=["my_vector_database", "some_table"]),
261+
from_select=None,
262+
params={},
263+
)
264+
assert ast == expected_ast
265+
266+
# Create Knowledge Base with reranking model and without embedding model.
267+
sql = """
268+
CREATE KNOWLEDGE_BASE my_knowledge_base
269+
USING
270+
RERANKING_MODEL={
271+
"model": "text-embedding-3-small",
272+
"api_key": "sk-1234567890"
273+
},
274+
STORAGE = my_vector_database.some_table
275+
"""
276+
ast = parse_sql(sql)
277+
expected_ast = CreateKnowledgeBase(
278+
name=Identifier("my_knowledge_base"),
279+
if_not_exists=False,
280+
embedding_model=None,
281+
reranking_model={
282+
"model": "text-embedding-3-small",
283+
"api_key": "sk-1234567890",
284+
},
285+
storage=Identifier(parts=["my_vector_database", "some_table"]),
286+
from_select=None,
287+
params={},
288+
)
289+
assert ast == expected_ast
290+
291+
# Create Knowledge Base with emebedding model and reranking model and without storage.
292+
sql = """
293+
CREATE KNOWLEDGE_BASE my_knowledge_base
294+
USING
295+
EMBEDDING_MODEL={
296+
"model": "text-embedding-3-small",
297+
"api_key": "sk-1234567890"
298+
},
299+
RERANKING_MODEL={
300+
"model": "text-embedding-3-small",
301+
"api_key": "sk-1234567890"
302+
}
303+
"""
304+
ast = parse_sql(sql)
305+
expected_ast = CreateKnowledgeBase(
306+
name=Identifier("my_knowledge_base"),
307+
if_not_exists=False,
308+
embedding_model={
309+
"model": "text-embedding-3-small",
310+
"api_key": "sk-1234567890",
311+
},
312+
reranking_model={
313+
"model": "text-embedding-3-small",
314+
"api_key": "sk-1234567890",
315+
},
316+
storage=None,
317+
from_select=None,
318+
params={},
319+
)
320+
assert ast == expected_ast
321+
233322
def test_drop_knowledge_base(self):
234323
# drop if exists
235324
sql = """
@@ -308,7 +397,6 @@ def test_select_from_knowledge_base(self):
308397
)
309398
assert ast == expected_ast
310399

311-
312400
def test_delete_from_knowledge_base(self):
313401
# this is no different from a regular delete
314402
sql = """

0 commit comments

Comments
 (0)