Lets go
Browse files- controller.py +12 -4
controller.py
CHANGED
@@ -15,9 +15,8 @@ from pandasai import SmartDataframe
|
|
15 |
from langchain_groq.chat_models import ChatGroq
|
16 |
from dotenv import load_dotenv
|
17 |
from pydantic import BaseModel
|
18 |
-
from csv_service import clean_data, extract_chart_filenames
|
19 |
from urllib.parse import unquote
|
20 |
-
import csv_service
|
21 |
from langchain_groq import ChatGroq
|
22 |
import pandas as pd
|
23 |
from langchain_experimental.tools import PythonAstREPLTool
|
@@ -99,7 +98,12 @@ async def basic_csv_data(request: CsvUrlRequest):
|
|
99 |
try:
|
100 |
decoded_url = unquote(request.csv_url)
|
101 |
logger.info(f"Fetching CSV data from URL: {decoded_url}")
|
102 |
-
csv_data =
|
|
|
|
|
|
|
|
|
|
|
103 |
logger.info(f"CSV data fetched successfully: {csv_data}")
|
104 |
return {"data": csv_data}
|
105 |
except Exception as e:
|
@@ -136,7 +140,11 @@ async def get_csv_data(request: CsvUrlRequest):
|
|
136 |
try:
|
137 |
decoded_url = unquote(request.csv_url)
|
138 |
logger.info(f"Fetching CSV data from URL: {decoded_url}")
|
139 |
-
csv_data =
|
|
|
|
|
|
|
|
|
140 |
return csv_data
|
141 |
except Exception as e:
|
142 |
logger.error(f"Error while fetching CSV data: {e}")
|
|
|
15 |
from langchain_groq.chat_models import ChatGroq
|
16 |
from dotenv import load_dotenv
|
17 |
from pydantic import BaseModel
|
18 |
+
from csv_service import clean_data, extract_chart_filenames, generate_csv_data, get_csv_basic_info
|
19 |
from urllib.parse import unquote
|
|
|
20 |
from langchain_groq import ChatGroq
|
21 |
import pandas as pd
|
22 |
from langchain_experimental.tools import PythonAstREPLTool
|
|
|
98 |
try:
|
99 |
decoded_url = unquote(request.csv_url)
|
100 |
logger.info(f"Fetching CSV data from URL: {decoded_url}")
|
101 |
+
# csv_data = await get_csv_basic_info(decoded_url)
|
102 |
+
# Run the synchronous function in a thread pool executor
|
103 |
+
loop = asyncio.get_running_loop()
|
104 |
+
csv_data = await loop.run_in_executor(
|
105 |
+
process_executor, get_csv_basic_info, decoded_url
|
106 |
+
)
|
107 |
logger.info(f"CSV data fetched successfully: {csv_data}")
|
108 |
return {"data": csv_data}
|
109 |
except Exception as e:
|
|
|
140 |
try:
|
141 |
decoded_url = unquote(request.csv_url)
|
142 |
logger.info(f"Fetching CSV data from URL: {decoded_url}")
|
143 |
+
# csv_data = await generate_csv_data(decoded_url)
|
144 |
+
loop = asyncio.get_running_loop()
|
145 |
+
csv_data = await loop.run_in_executor(
|
146 |
+
process_executor, generate_csv_data, decoded_url
|
147 |
+
)
|
148 |
return csv_data
|
149 |
except Exception as e:
|
150 |
logger.error(f"Error while fetching CSV data: {e}")
|