|
import sqlite3
|
|
|
|
def tools_call(session_hash):
|
|
connection = sqlite3.connect(f'data_source_{session_hash}.db')
|
|
print("Querying Database in Tools.py");
|
|
cur=connection.execute('select * from data_source')
|
|
columns = [i[0] for i in cur.description]
|
|
print("COLUMNS 2")
|
|
print(columns)
|
|
cur.close()
|
|
connection.close()
|
|
|
|
return [
|
|
{
|
|
"type": "function",
|
|
"function": {
|
|
"name": "sql_query_func",
|
|
"description": f"This a tool useful to query a SQL table called 'data_source' with the following Columns: {columns}",
|
|
"parameters": {
|
|
"type": "object",
|
|
"properties": {
|
|
"queries": {
|
|
"type": "array",
|
|
"description": "The query to use in the search. Infer this from the user's message. It should be a question or a statement",
|
|
"items": {
|
|
"type": "string",
|
|
}
|
|
}
|
|
},
|
|
"required": ["question"],
|
|
},
|
|
},
|
|
},
|
|
{
|
|
"type": "function",
|
|
"function": {
|
|
"name": "rag_pipeline_func",
|
|
"description": f"This a tool useful to query a SQL table called 'data_source' with the following Columns: {columns}",
|
|
"parameters": {
|
|
"type": "object",
|
|
"properties": {
|
|
"queries": {
|
|
"type": "array",
|
|
"description": "The query to use in the search. Infer this from the user's message. It should be a question or a statement",
|
|
"items": {
|
|
"type": "string",
|
|
}
|
|
}
|
|
},
|
|
"required": ["question"],
|
|
},
|
|
},
|
|
}
|
|
] |