Update app.py
Browse files
app.py
CHANGED
|
@@ -42,15 +42,15 @@ class QueryRequest(BaseModel):
|
|
| 42 |
# Messaggio di sistema con RDF incluso
|
| 43 |
def create_system_message(rdf_context):
|
| 44 |
return f"""
|
| 45 |
-
Sei un assistente specializzato nella generazione e
|
| 46 |
La base di conoscenza RDF è la seguente:
|
| 47 |
{rdf_context}
|
| 48 |
Il tuo compito principale è:
|
| 49 |
1. Analizzare lo schema RDF o i dati RDF forniti e la domanda in linguaggio naturale posta dall'utente.
|
| 50 |
2. Generare una query SPARQL valida che recuperi le informazioni richieste dai dati RDF.
|
| 51 |
-
3.
|
| 52 |
Regole:
|
| 53 |
-
-
|
| 54 |
- Se la domanda non può essere soddisfatta con una query SPARQL, rispondi con: \"Non posso generare una query per questa domanda.\"
|
| 55 |
"""
|
| 56 |
|
|
@@ -94,7 +94,10 @@ async def generate_query(request: QueryRequest):
|
|
| 94 |
if not is_valid:
|
| 95 |
raise HTTPException(status_code=400, detail="La query generata non è valida rispetto al file RDF fornito.")
|
| 96 |
|
| 97 |
-
|
|
|
|
|
|
|
|
|
|
| 98 |
|
| 99 |
# Endpoint per verificare se il server è attivo
|
| 100 |
@app.get("/")
|
|
|
|
| 42 |
# Messaggio di sistema con RDF incluso
|
| 43 |
def create_system_message(rdf_context):
|
| 44 |
return f"""
|
| 45 |
+
Sei un assistente specializzato nella generazione e spiegazione di query SPARQL basate su dati RDF.
|
| 46 |
La base di conoscenza RDF è la seguente:
|
| 47 |
{rdf_context}
|
| 48 |
Il tuo compito principale è:
|
| 49 |
1. Analizzare lo schema RDF o i dati RDF forniti e la domanda in linguaggio naturale posta dall'utente.
|
| 50 |
2. Generare una query SPARQL valida che recuperi le informazioni richieste dai dati RDF.
|
| 51 |
+
3. Spiegare in modo prolisso e naturale il significato dei risultati, come farebbe una guida in un museo.
|
| 52 |
Regole:
|
| 53 |
+
- Genera solo query SPARQL in una singola riga, senza formattazioni aggiuntive.
|
| 54 |
- Se la domanda non può essere soddisfatta con una query SPARQL, rispondi con: \"Non posso generare una query per questa domanda.\"
|
| 55 |
"""
|
| 56 |
|
|
|
|
| 94 |
if not is_valid:
|
| 95 |
raise HTTPException(status_code=400, detail="La query generata non è valida rispetto al file RDF fornito.")
|
| 96 |
|
| 97 |
+
explanation = f"La query generata è: {response.replace('\n', ' ').strip()}. "
|
| 98 |
+
explanation += "Questa query è stata progettata per estrarre informazioni specifiche dai dati RDF, consentendo di rispondere alla tua domanda. Risultati ottenuti da questa query possono includere dettagli come entità, relazioni o attributi collegati al contesto fornito."
|
| 99 |
+
|
| 100 |
+
return {"query": response.replace("\n", " ").strip(), "explanation": explanation}
|
| 101 |
|
| 102 |
# Endpoint per verificare se il server è attivo
|
| 103 |
@app.get("/")
|