File size: 1,368 Bytes
dcf6f0c
4bed6fd
b39f806
 
46152dd
21b7e19
4bed6fd
b37eabc
21b7e19
dcf6f0c
5d92ad1
d8d8f1a
5d92ad1
dcf6f0c
 
 
34129b5
 
 
7bdd50b
5d92ad1
d8d8f1a
 
 
 
f74ef39
34129b5
dcf6f0c
21b7e19
 
 
 
 
 
 
 
 
46152dd
21b7e19
46152dd
21b7e19
46152dd
21b7e19
 
 
 
 
 
 
 
46152dd
 
21b7e19
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
import datetime
import json
import random

import streamlit as st
import openai


def get_prompt():

    BIRTHYEAR = 1952
    BIRTHMONTH = 5
    OTHERBIRTHYEAR = 1984
    now = datetime.datetime.now()

    with open("context.json") as f:
        context = (
            json.load(f)["info"]
            .replace("[YEAR]", str(now.year))
            .replace("[TODAY]", f"{now:%d-%m-%Y}")
            .replace("[BIRTHYEAR]", str(BIRTHYEAR))
            .replace(
                "[AGE]",
                str((now - datetime.datetime(BIRTHYEAR, BIRTHMONTH, 1)).days // 365),
            )
            .replace("[OTHERAGE]", str(now.year - OTHERBIRTHYEAR))
        )

    prompt = f"""Sono amnesico, ecco alcune informazioni su di me: '{context}' Ora mi dimenticherò di quanto sopra, e ti farò delle domande, e voglio che tu mi fornisca le risposte, in maniera concisa, devi darmi del tu.
    Domanda:"""

    return prompt


def get_answer(input):

    prompt = get_prompt()

    openai.api_key = st.secrets("OPENAI_API_KEY")

    print(prompt + input)

    response = openai.Completion.create(
        model="text-davinci-003",
        prompt=prompt + input,
        temperature=0,
        max_tokens=520,
        top_p=1.0,
        frequency_penalty=0.2,
        presence_penalty=0.0,
    )

    return response["choices"][0]["text"].replace("Risposta:", "").strip()