Spaces:
Paused
Paused
davidefiocco
commited on
Commit
·
53e30d5
1
Parent(s):
ad63a1e
Move to chatGPT to lower costs
Browse files- context.json +1 -1
- test_answers.py +1 -1
- utils.py +13 -15
context.json
CHANGED
@@ -1,3 +1,3 @@
|
|
1 |
-
{"info": "Sono Giuseppe Fiocco. Ho [AGE] anni. Sono nato nel mese di maggio, nell'anno 1952. Sono nato a Verona. Ho perso la memoria a causa di un'encefalite virale a gennaio 2021. Siamo nell'anno [YEAR] e la data di oggi è [TODAY]. I medici dicono che sto migliorando lentamente. Il mio codice fiscale é FCCGPP52E0etcetc. Mi sono laureato in Ingegneria elettronica a Padova. Lavoravo come ingegnere elettronico, ora sono in pensione. Ho una passione per le radio, e il mio identificativo di radioamatore è IZ3CAQ. Mi piace giocare a biliardo e passo le mie giornate a fare puzzle o a giocare con le carte. Ho un figlio di nome Davide. Davide ha 38 anni. Davide si prende cura di me e vive con me a Villafranca di Verona. L'indirizzo di casa mia è Corso Vittorio Emanuele II.
|
2 |
}
|
3 |
|
|
|
1 |
+
{"info": "Sono Giuseppe Fiocco. Ho [AGE] anni. Sono nato nel mese di maggio, nell'anno 1952. Sono nato a Verona. Ho perso la memoria a causa di un'encefalite virale a gennaio 2021. Siamo nell'anno [YEAR] e la data di oggi è [TODAY]. I medici dicono che sto migliorando lentamente. Il mio codice fiscale é FCCGPP52E0etcetc. Mi sono laureato in Ingegneria elettronica a Padova. Lavoravo come ingegnere elettronico, ora sono in pensione. Ho una passione per le radio, e il mio identificativo di radioamatore è IZ3CAQ. Mi piace giocare a biliardo e passo le mie giornate a fare puzzle o a giocare con le carte. Ho un figlio di nome Davide. Davide ha 38 anni. Davide si prende cura di me e vive con me a Villafranca di Verona. L'indirizzo di casa mia è Corso Vittorio Emanuele II. Mia (ex) moglie si chiama Raffaella e vive a Verona, abbiamo divorziato e non mi sono risposato. Con Raffaella non andavo molto d'accordo, ma ora ho rapporti cordiali con lei e mi aiuta. Raffaella sta bene. Alessandro, Giovanni e Grazia sono i miei fratelli e stanno bene. I miei genitori si chiamavano Gina e Davide. I miei cugini sono Giuliano, Maurizio, Paolo. La mia psicologa si chiama Ylenia. Di solito pranzo alle 13 e ceno alle 20."
|
2 |
}
|
3 |
|
test_answers.py
CHANGED
@@ -4,7 +4,7 @@ from utils import get_answer
|
|
4 |
def test_name():
|
5 |
q = "Come mi chiamo?"
|
6 |
a = get_answer(q)
|
7 |
-
assert "Giuseppe
|
8 |
|
9 |
|
10 |
def test_birthplace():
|
|
|
4 |
def test_name():
|
5 |
q = "Come mi chiamo?"
|
6 |
a = get_answer(q)
|
7 |
+
assert "Giuseppe" in a
|
8 |
|
9 |
|
10 |
def test_birthplace():
|
utils.py
CHANGED
@@ -10,7 +10,7 @@ logger = logging.getLogger(__name__)
|
|
10 |
logger.setLevel(logging.INFO)
|
11 |
|
12 |
|
13 |
-
def
|
14 |
|
15 |
BIRTHYEAR = 1952
|
16 |
BIRTHMONTH = 5
|
@@ -30,30 +30,28 @@ def get_prompt():
|
|
30 |
.replace("[OTHERAGE]", str(now.year - OTHERBIRTHYEAR))
|
31 |
)
|
32 |
|
33 |
-
|
34 |
-
|
35 |
-
|
36 |
|
37 |
-
return
|
38 |
|
39 |
|
40 |
def get_answer(input):
|
41 |
|
42 |
-
|
43 |
|
44 |
openai.api_key = st.secrets["OPENAI_API_KEY"]
|
45 |
|
46 |
-
response = openai.
|
47 |
-
model="
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
-
frequency_penalty=0.2,
|
53 |
-
presence_penalty=0.0,
|
54 |
)
|
55 |
|
56 |
-
ans = response["choices"][0]["
|
57 |
|
58 |
logger.info(f"Q: {input} - A: {ans}")
|
59 |
|
|
|
10 |
logger.setLevel(logging.INFO)
|
11 |
|
12 |
|
13 |
+
def get_system():
|
14 |
|
15 |
BIRTHYEAR = 1952
|
16 |
BIRTHMONTH = 5
|
|
|
30 |
.replace("[OTHERAGE]", str(now.year - OTHERBIRTHYEAR))
|
31 |
)
|
32 |
|
33 |
+
system = f"""Il mio nome utente è Giuseppe, ed ecco alcune informazioni su di me: '{context}' .
|
34 |
+
Di seguito, ti farò alcune domande di cui non ricordo la risposta, perché sono amnesico, e tu dovrai rispondermi in modo conciso.
|
35 |
+
"""
|
36 |
|
37 |
+
return system
|
38 |
|
39 |
|
40 |
def get_answer(input):
|
41 |
|
42 |
+
system_content = get_system()
|
43 |
|
44 |
openai.api_key = st.secrets["OPENAI_API_KEY"]
|
45 |
|
46 |
+
response = openai.ChatCompletion.create(
|
47 |
+
model="gpt-3.5-turbo",
|
48 |
+
messages=[
|
49 |
+
{"role": "system", "content": system_content},
|
50 |
+
{"role": "user", "content": input},
|
51 |
+
],
|
|
|
|
|
52 |
)
|
53 |
|
54 |
+
ans = response["choices"][0]["message"]["content"]
|
55 |
|
56 |
logger.info(f"Q: {input} - A: {ans}")
|
57 |
|