replace eval by litteral eval
Browse files
climateqa/engine/chains/retrieve_documents.py
CHANGED
|
@@ -21,7 +21,7 @@ from langchain_core.prompts import ChatPromptTemplate
|
|
| 21 |
from langchain_core.output_parsers import StrOutputParser
|
| 22 |
from ..vectorstore import get_pinecone_vectorstore
|
| 23 |
from ..embeddings import get_embeddings_function
|
| 24 |
-
|
| 25 |
|
| 26 |
import asyncio
|
| 27 |
|
|
@@ -580,7 +580,7 @@ async def get_relevant_toc_level_for_query(
|
|
| 580 |
response = chain.invoke({"query": query, "doc_list": doc_list})
|
| 581 |
|
| 582 |
try:
|
| 583 |
-
relevant_tocs =
|
| 584 |
except Exception as e:
|
| 585 |
print(f" Failed to parse the result because of : {e}")
|
| 586 |
|
|
|
|
| 21 |
from langchain_core.output_parsers import StrOutputParser
|
| 22 |
from ..vectorstore import get_pinecone_vectorstore
|
| 23 |
from ..embeddings import get_embeddings_function
|
| 24 |
+
import ast
|
| 25 |
|
| 26 |
import asyncio
|
| 27 |
|
|
|
|
| 580 |
response = chain.invoke({"query": query, "doc_list": doc_list})
|
| 581 |
|
| 582 |
try:
|
| 583 |
+
relevant_tocs = ast.literal_eval(response)
|
| 584 |
except Exception as e:
|
| 585 |
print(f" Failed to parse the result because of : {e}")
|
| 586 |
|
climateqa/engine/talk_to_data/input_processing.py
CHANGED
|
@@ -11,6 +11,7 @@ from climateqa.engine.talk_to_data.objects.location import Location
|
|
| 11 |
from climateqa.engine.talk_to_data.objects.plot import Plot
|
| 12 |
from climateqa.engine.talk_to_data.objects.states import State
|
| 13 |
import time
|
|
|
|
| 14 |
|
| 15 |
async def detect_location_with_openai(sentence: str) -> str:
|
| 16 |
"""
|
|
@@ -114,7 +115,7 @@ async def detect_year_with_openai(sentence: str) -> str:
|
|
| 114 |
structured_llm = llm.with_structured_output(ArrayOutput)
|
| 115 |
chain = prompt | structured_llm
|
| 116 |
response: ArrayOutput = await chain.ainvoke({"sentence": sentence})
|
| 117 |
-
years_list =
|
| 118 |
if len(years_list) > 0:
|
| 119 |
return years_list[0]
|
| 120 |
else:
|
|
|
|
| 11 |
from climateqa.engine.talk_to_data.objects.plot import Plot
|
| 12 |
from climateqa.engine.talk_to_data.objects.states import State
|
| 13 |
import time
|
| 14 |
+
import ast
|
| 15 |
|
| 16 |
async def detect_location_with_openai(sentence: str) -> str:
|
| 17 |
"""
|
|
|
|
| 115 |
structured_llm = llm.with_structured_output(ArrayOutput)
|
| 116 |
chain = prompt | structured_llm
|
| 117 |
response: ArrayOutput = await chain.ainvoke({"sentence": sentence})
|
| 118 |
+
years_list = ast.literal_eval(response['array'])
|
| 119 |
if len(years_list) > 0:
|
| 120 |
return years_list[0]
|
| 121 |
else:
|