Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import os
- import openai
- import tiktoken
- print("mi openai ejercicio3 v0.3")
- OPENAI_API_KEY = ''
- client = openai.OpenAI(api_key=OPENAI_API_KEY)
- model = "gpt-3.5-turbo"
- system_text= "res un asistente de hotel que se llama Juan\
- Quiero que segun peticion del cliente le puedas decir a que area se tiene que deslocar, las areas son:\
- - Recepcion y reserva\
- - Cocina\
- - Servicio de habitaciones\
- - Taxis y desplazamiento\
- - Otras areas (gimnasio, sauna)\
- Si es un area desconocida, o sea no esta en este listado de arriva, asegurate de responder amablemente.\
- Muy importante contestar solo el area nada mas"
- messages = [
- {'role':'system', 'content': system_text}
- ]
- def response_me_openai(new_text):
- global messages
- global model
- print(f"$------- > > > > >")
- current_message = messages.copy()
- current_message.append( {'role':'user', 'content': new_text})
- response = client.chat.completions.create(
- model=model,
- messages=current_message,
- temperature=0,
- max_tokens=256,
- top_p=1
- )
- print(response.json())
- token_dict = {
- 'prompt_tokens': response.usage.prompt_tokens,
- 'completion_tokens': response.usage.completion_tokens,
- 'total_tokens': response.usage.total_tokens,
- }
- current_response = response.choices[0].message.content
- if (len(messages)>20):
- print(f"removing 2 responses")
- del messages[1:3]
- messages.append({'role':'user', 'content': new_text})
- messages.append({'role':'assistant', 'content': current_response})
- print(f"$token_dict>{token_dict}")
- print(f"messages({len(messages)})>{messages}")
- print(f"${new_text}>{current_response}")
- print("\n")
- return current_response
- while True:
- print(f"$----------------------------------------------------------------------------")
- t = input("$>")
- if (t == None or t == "" or t.lower() == "quit" or t.lower() == "exit"):
- break
- else:
- response_me_openai(t)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement