GPTChatServer

GPTChatServer#

!pip install openai 
!pip install dotenv
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()
Esperando una conexión...
Conexión desde ('127.0.0.1', 53000)
!hostname -I