Benjov commited on
Commit
f7ecfca
·
1 Parent(s): e38f553

04/08/2023

Browse files
Files changed (1) hide show
  1. app.py +50 -1
app.py CHANGED
@@ -11,11 +11,45 @@ from langchain.text_splitter import RecursiveCharacterTextSplitter
11
  from langchain.embeddings.openai import OpenAIEmbeddings
12
  from openai.embeddings_utils import get_embedding
13
  from openai.embeddings_utils import cosine_similarity
14
-
 
 
15
 
16
  # API de OpenAI
17
  openai.api_key = os.getenv("OPENAI_API_KEY")
18
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
19
  # Cargar el archivo
20
  #df_Normas_Embeddings = pd.read_csv( 'datos/CLEAN_EMBEDDINGS/Textos_Normas.csv' )
21
  df_Normas_Embeddings = pd.read_csv( 'https://raw.githubusercontent.com/benjov/Data_Fiscal/main/Textos_Normas.csv' )
@@ -126,6 +160,18 @@ def get_respuesta( user_message, informacion ):
126
  #
127
 
128
  #
 
 
 
 
 
 
 
 
 
 
 
 
129
  def Chat( user_message_1 ):
130
  #
131
  norma_y_tema_response_1 = get_topic( user_message_1 )
@@ -144,6 +190,9 @@ def Chat( user_message_1 ):
144
  #
145
  Textos = df_final[ 'Final_Text' ].tolist()
146
  #
 
 
 
147
  return get_respuesta( user_message_1, Textos ), '\n'.join(Textos)
148
 
149
 
 
11
  from langchain.embeddings.openai import OpenAIEmbeddings
12
  from openai.embeddings_utils import get_embedding
13
  from openai.embeddings_utils import cosine_similarity
14
+ import gspread # See: https://docs.gspread.org/en/v5.10.0/user-guide.html
15
+ from oauth2client.service_account import ServiceAccountCredentials
16
+ from datetime import datetime
17
 
18
  # API de OpenAI
19
  openai.api_key = os.getenv("OPENAI_API_KEY")
20
 
21
+ # Establece las credenciales y la API
22
+ type_s = os.getenv("type_s")
23
+ project_id = os.getenv("project_id")
24
+ private_key_id = os.getenv("private_key_id")
25
+ private_key = os.getenv("private_key")
26
+ client_email = os.getenv("client_email")
27
+ client_id = os.getenv("client_id")
28
+ auth_uri = os.getenv("auth_uri")
29
+ token_uri = os.getenv("token_uri")
30
+ auth_provider_x509_cert_url = os.getenv("auth_provider_x509_cert_url")
31
+ client_x509_cert_url = os.getenv("client_x509_cert_url")
32
+ universe_domain = os.getenv("universe_domain")
33
+
34
+ credentials = {
35
+ "type": type_s,
36
+ "project_id": project_id,
37
+ "private_key_id": private_key_id,
38
+ "private_key": private_key,
39
+ "client_email": client_email,
40
+ "client_id": client_id,
41
+ "auth_uri": auth_uri,
42
+ "token_uri": token_uri,
43
+ "auth_provider_x509_cert_url": auth_provider_x509_cert_url,
44
+ "client_x509_cert_url": client_x509_cert_url,
45
+ "universe_domain": universe_domain
46
+ }
47
+
48
+ gc = gspread.service_account_from_dict(credentials)
49
+
50
+ Google_URL = os.getenv("Google_URL")
51
+ sht = gc.open_by_url(Google_URL)
52
+
53
  # Cargar el archivo
54
  #df_Normas_Embeddings = pd.read_csv( 'datos/CLEAN_EMBEDDINGS/Textos_Normas.csv' )
55
  df_Normas_Embeddings = pd.read_csv( 'https://raw.githubusercontent.com/benjov/Data_Fiscal/main/Textos_Normas.csv' )
 
160
  #
161
 
162
  #
163
+
164
+ #
165
+ def update_records( user_message ):
166
+ #
167
+ sht.sheet1.get_all_records()
168
+ #
169
+ sht.sheet1.update_cell( len( sht.sheet1.get_all_records()[:] ) + 2 ,
170
+ 1 , datetime.now().strftime("%m/%d/%Y, %H:%M:%S") )
171
+ #
172
+ sht.sheet1.update_cell( len( sht.sheet1.get_all_records()[:] ) + 1 ,
173
+ 2 , user_message )
174
+ #
175
  def Chat( user_message_1 ):
176
  #
177
  norma_y_tema_response_1 = get_topic( user_message_1 )
 
190
  #
191
  Textos = df_final[ 'Final_Text' ].tolist()
192
  #
193
+ # Save Question and date time
194
+ update_records( user_message_1 )
195
+ #
196
  return get_respuesta( user_message_1, Textos ), '\n'.join(Textos)
197
 
198