Advertisement
OscarBesga_Panel

ejercicio hotel python

Apr 17th, 2024 (edited)
662
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.00 KB | None | 0 0
  1. import os
  2. import openai
  3. import tiktoken
  4. print("mi openai ejercicio3 v0.3")
  5.  
  6. OPENAI_API_KEY = ''
  7.  
  8. client = openai.OpenAI(api_key=OPENAI_API_KEY)
  9. model = "gpt-3.5-turbo"
  10.  
  11. system_text= "res un asistente de hotel que se llama Juan\
  12. Quiero que segun peticion del cliente le puedas decir a que area se tiene que deslocar, las areas son:\
  13. - Recepcion y reserva\
  14. - Cocina\
  15. - Servicio de habitaciones\
  16. - Taxis y desplazamiento\
  17. - Otras areas (gimnasio, sauna)\
  18. Si es un area desconocida, o sea no esta en este listado de arriva, asegurate de  responder amablemente.\
  19. Muy importante contestar solo el area nada mas"
  20. messages =  [
  21.     {'role':'system', 'content': system_text}
  22. ]
  23.  
  24. def response_me_openai(new_text):
  25.     global messages
  26.     global model
  27.     print(f"$------- > > > > >")
  28.     current_message = messages.copy()
  29.     current_message.append( {'role':'user', 'content': new_text})
  30.     response = client.chat.completions.create(
  31.         model=model,
  32.         messages=current_message,
  33.         temperature=0,
  34.         max_tokens=256,
  35.         top_p=1
  36.     )
  37.  
  38.     print(response.json())
  39.     token_dict = {
  40.         'prompt_tokens': response.usage.prompt_tokens,
  41.         'completion_tokens': response.usage.completion_tokens,
  42.         'total_tokens': response.usage.total_tokens,
  43.     }
  44.     current_response = response.choices[0].message.content
  45.     if (len(messages)>20):
  46.         print(f"removing 2 responses")
  47.         del messages[1:3]
  48.     messages.append({'role':'user', 'content': new_text})
  49.     messages.append({'role':'assistant', 'content': current_response})
  50.     print(f"$token_dict>{token_dict}")
  51.     print(f"messages({len(messages)})>{messages}")
  52.     print(f"${new_text}>{current_response}")
  53.     print("\n")
  54.     return current_response
  55.  
  56.  
  57. while True:
  58.     print(f"$----------------------------------------------------------------------------")
  59.     t = input("$>")
  60.     if (t == None or t == "" or t.lower() == "quit" or t.lower() == "exit"):
  61.         break
  62.     else:
  63.         response_me_openai(t)
  64.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement