|
| 1 | +from mindsdb_sql_parser.ast.mindsdb.knowledge_base import * |
1 | 2 | from mindsdb_sql_parser import parse_sql, Variable
|
2 | 3 | from mindsdb_sql_parser.ast.mindsdb.knowledge_base import (
|
3 | 4 | CreateKnowledgeBase,
|
@@ -371,3 +372,38 @@ def test_insert_into_knowledge_base(self):
|
371 | 372 | ),
|
372 | 373 | )
|
373 | 374 | assert ast == expected_ast
|
| 375 | + |
| 376 | + def test_evaluate_knowledge_base(self): |
| 377 | + sql = """ |
| 378 | + EVALUATE KNOWLEDGE_BASE my_knowledge_base |
| 379 | + USING |
| 380 | + TEST_TABLE = my_database.some_table_1, |
| 381 | + SAVE_TO = my_database.some_table_2, |
| 382 | + LLM = { |
| 383 | + "provider": "openai", |
| 384 | + "model": "gpt-3.5-turbo", |
| 385 | + "api_key": "my_api_key" |
| 386 | + }, |
| 387 | + GENERATE_DATA = { |
| 388 | + "from_sql": "SELECT content FROM my_database.some_table", |
| 389 | + "count": 100 |
| 390 | + } |
| 391 | + """ |
| 392 | + ast = parse_sql(sql) |
| 393 | + expected_ast = EvaluateKnowledgeBase( |
| 394 | + name=Identifier("my_knowledge_base"), |
| 395 | + params={ |
| 396 | + "test_table": Identifier(parts=["my_database", "some_table_1"]), |
| 397 | + "save_to": Identifier(parts=["my_database", "some_table_2"]), |
| 398 | + "llm": { |
| 399 | + "provider": "openai", |
| 400 | + "model": "gpt-3.5-turbo", |
| 401 | + "api_key": "my_api_key" |
| 402 | + }, |
| 403 | + "generate_data": { |
| 404 | + "from_sql": "SELECT content FROM my_database.some_table", |
| 405 | + "count": 100 |
| 406 | + } |
| 407 | + } |
| 408 | + ) |
| 409 | + assert ast == expected_ast |
0 commit comments