Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
@@ -388,6 +388,30 @@ def style_metric_container(label, value):
|
|
388 |
|
389 |
# --- OpenAI GPT-3 Assistant ---
|
390 |
def generate_gpt_response(prompt):
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
391 |
# Ensure the API key is set securely
|
392 |
# You can use Streamlit's secrets management or environment variables
|
393 |
openai.api_key = os.getenv("GPT_TOKEN")
|
|
|
388 |
|
389 |
# --- OpenAI GPT-3 Assistant ---
|
390 |
def generate_gpt_response(prompt):
|
391 |
+
"""
|
392 |
+
First look up the dataset for relevant information. If no matches are found,
|
393 |
+
generate a GPT response.
|
394 |
+
"""
|
395 |
+
# Extract make and model from the prompt (simplified NLP parsing)
|
396 |
+
prompt_lower = prompt.lower()
|
397 |
+
make = None
|
398 |
+
model = None
|
399 |
+
|
400 |
+
# Example: Parse make and model from user query
|
401 |
+
for word in prompt_lower.split():
|
402 |
+
if word in dataset['Make'].str.lower().unique():
|
403 |
+
make = word
|
404 |
+
elif word in dataset['Model'].str.lower().unique():
|
405 |
+
model = word
|
406 |
+
|
407 |
+
# If we find relevant data, use it to respond
|
408 |
+
if make:
|
409 |
+
dataset_response = search_dataset(dataset, make, model)
|
410 |
+
if dataset_response is not None:
|
411 |
+
st.write("### Dataset Match Found")
|
412 |
+
st.dataframe(dataset_response) # Show results to the user
|
413 |
+
return f"I found some information in our dataset about {make.title()} {model.title() if model else ''}. Please see the details above."
|
414 |
+
|
415 |
# Ensure the API key is set securely
|
416 |
# You can use Streamlit's secrets management or environment variables
|
417 |
openai.api_key = os.getenv("GPT_TOKEN")
|