import socket
from openai import OpenAI
import os
from dotenv import load_dotenv, find_dotenv
_ = load_dotenv(find_dotenv(filename='.envv'))
# Configurar la clave API de OpenAI
client = OpenAI(api_key=os.getenv("OPENAI_API_KEY"))
def obtener_respuesta_gpt(mensaje):
messages = [{"role": "user", "content": mensaje}]
response = client.chat.completions.create(model="gpt-4-turbo",
messages=messages,
temperature=0)
return response.choices[0].message.content
# creamos un socket TCP/IP
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# especificamos la direccion y el puerto del servidor
server_address = ('localhost', 8070)
sock.bind(server_address)
sock.listen(1)
print('Esperando una conexión...')
conn, addr = sock.accept()
try:
print('Conexión desde', addr)
while True:
# recibimos la pregunta del cliente
data = conn.recv(1024)
if not data:
break
pregunta = data.decode('utf-8').strip()
# obtenemos la respuesta del chatbot GPT
respuesta = obtener_respuesta_gpt(pregunta)
# enviamos la respuesta al cliente
conn.sendall(respuesta.encode('utf-8'))
finally:
conn.close()
sock.close()