Este artículo te enseñará cómo ejecutar un chatGPT local entrenado en tus datos personalizados en 5 minutos.

Un bot LLM entrenado a medida puede ser genial para escanear grandes cantidades de datos y tener una conversación específica de un dominio. Por ejemplo, puedes entrenar a tu bot en una base de conocimientos de la empresa, materiales educativos, legales financieros, o incluso compartir tus ideas de viaje para planificar tu ruta perfecta 🙂

Esto se puede hacer en 5 minutos; manos a la obra.

Tabla de contenidos

Requisitos previos

  • Este artículo asume que tienes Python 3.. y Pip instalados (se pueden descargar aquí). Para verificar esto, por favor abre tu terminal y escribe: python –version OR python3 –version
    Y si lo tienes correctamente configurado, deberías obtener algo como lo siguiente:

(Asegúrate de utilizar la referencia Python correcta a lo largo de esta guía)

  • pip –version O pip3 –version
    Y si lo has configurado correctamente, deberías obtener algo como lo siguiente:

(Asegúrate de utilizar siempre la referencia Pip correcta a lo largo de esta guía)

  • Este artículo asume que ya tienes una cuenta OpenAi (que se puede crear aquí)
  • Prepara algunos datos en inglés; te sugiero que empieces con menos de 100MB y poco a poco vayas añadiendo más. Por ejemplo, los datos pueden estar en formato PDF, CSV o TXT.

Empecemos

(1) En el terminal:

  • Actualizar Pip (gestor de paquetes de Python):
    python -m pip install -U pip
  • Instala las siguientes bibliotecas:
    pip install openai gpt_index==0.4.24 langchain==0.0.118 PyPDF2 PyCryptodome gradio

OpenAI – Large Language Model (LLM) para crear y entrenar el chatbot de IA.
GPT Index – para conectar con sus datos.
PyPDF2 – para redactar PDFs.
Gradio – chatbot UI.
Lang Chain – un marco para desarrollar aplicaciones basadas en modelos lingüísticos.

Ahora vamos a crear tu bot. Navega a la carpeta en la que desea crear el bot:

  • mkdir chatbot
  • cd chatbot
  • mkdir docs
  • touch app.py

(2) En tu editor de código o texto favorito, abre app.py, y pega el siguiente código en él, y guárdalo después:

from gpt_index import SimpleDirectoryReader, GPTListIndex, GPTSimpleVectorIndex, LLMPredictor, PromptHelper from langchain.chat_models import ChatOpenAI import gradio as gr import sys import os os.environ["OPENAI_API_KEY"] = 'Your Secret API Key' def construct_index(directory_path): max_input_size = 4096 num_outputs = 512 max_chunk_overlap = 20 chunk_size_limit = 600 prompt_helper = PromptHelper(max_input_size, num_outputs, max_chunk_overlap, chunk_size_limit=chunk_size_limit) llm_predictor = LLMPredictor(llm=ChatOpenAI(temperature=0.7, model_name="gpt-3.5-turbo", max_tokens=num_outputs)) documents = SimpleDirectoryReader(directory_path).load_data() index = GPTSimpleVectorIndex(documents, llm_predictor=llm_predictor, prompt_helper=prompt_helper) index.save_to_disk('index.json') return index def chatbot(input_text): index = GPTSimpleVectorIndex.load_from_disk('index.json') response = index.query(input_text, response_mode="compact") return response.response iface = gr.Interface(fn=chatbot, inputs=gr.components.Textbox(lines=7, label="Enter your text"), outputs="text", title="Custom-trained AI Chatbot") index = construct_index("docs") iface.launch(share=True)

(3) Ahora mueve tus archivos de datos a la recién creada carpeta /chatbot/docs.
(4) En el navegador:

  1. Obtén una clave API gratuita para OpenAi, navegando a: https://platform.openai.com/account/api-keys
  2. Inicia sesión si es necesario.
  3. Haz clic en «+ Crear nueva clave secreta».
  4. Dale un nombre a tu clave y haz clic en «Crear clave secreta».
  5. Copia la clave y guárdala para los siguientes pasos.
  6. Pega la clave en app.py, sustituyendo «Tu clave secreta de API».

(5) De vuelta en el terminal en la carpeta /chatbot/ ejecuta: python app.py
(6) Abre tu navegador favorito y abre esta URL: http://127.0.0.1:7860
Y ya está. Ya has terminado. Y deberías ver algo como esto

Ahora te toca a ti encontrar información valiosa para enseñar a tu bot y aprender cómo puedes beneficiarte de ella.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *