Red Hat® AI InstructLab on IBM Cloud® es una solución de IA generativa segura, privada y preparada para la empresa, impulsada por Red Hat Enterprise Linux AI.

Iniciación a Red Hat AI InstructLab on IBM Cloud

¡Prepárese para sumergirse en la IACapacidad de adquirir, procesar, crear y aplicar conocimientos en forma de modelo para hacer predicciones, recomendaciones o tomar decisiones. con Red Hat® AI InstructLab on IBM Cloud®!

InstructLab es un proyecto de código abierto de IBM y Red Hat que pretende ser un punto de entrada rentable en el mundo del aprendizaje automáticoRama de la inteligencia artificial (IA) y la informática que se centra en el uso de datos y algoritmos para imitar el modo en que aprenden los humanos, mejorando gradualmente la precisión de los modelos de IA.. Puede utilizar InstructLab para realizar aportaciones a un modelo lingüístico de gran tamaño sin tener que poseer y explotar una infraestructura de hardware.

Más información sobre InstructLab.

¿Qué es Red Hat AI InstructLab?

Para utilizar InstructLab, no es necesario tener conocimientos previos. Ni siquiera necesitas tener una idea de lo que vas a crear. Empecemos por familiarizarnos con los conceptos.

InstructLab es un proyecto para mejorar los grandes modelos lingüísticos (LLM), que son modelos de IA que utilizan técnicas de aprendizaje automático para generar lenguaje humano. Se empieza por proporcionar los conocimientos y habilidades que más importan a su empresa en lo que se conoce como una taxonomía, o un directorio de datos. La taxonomía se utiliza para generar datos sintéticos, que luego se emplean para entrenar el modelo a través de múltiples fases de ajuste. Este proceso alinea su LLM con sus objetivos proporcionándole no sólo conocimientos generales, sino las habilidades y contextos específicos que son más importantes para sus necesidades empresariales únicas.

Para más información, consulte Cómo funciona. También puede empezar a preparar y cargar su primera taxonomía.

Configure su cuenta IBM Cloud®

Asegúrate de tener lo siguiente antes de continuar.

Optativo: Preparar una taxonomía

  1. Utilice la taxonomía IBM Cloud o cree la suya propia.

    • Si aún no tiene una taxonomía, puede hacer un fork del repositorio de taxonomías IBM Cloud y clonarlo en su máquina local. Esta taxonomía tiene la estructura de archivos correcta ya creada para usted. Puede añadir conocimientos y competencias en los directorios correspondientes.

    • Para crear su propia taxonomía en su lugar, consulte Preparar taxonomías para obtener más información.

    También puede utilizar el cuaderno Jupyter de la comunidad IBM Cloud para crear su taxonomía. Para obtener más información, consulte redhat-ai-instructlab-jupyter-notebooks GitHub repo

  2. Actualice su taxonomía. El siguiente ejemplo añade preguntas con rima al directorio de lingüística.

    a. En tu fork, en el directorio compositional_skills/linguistics, crea un archivo qna.yaml.

    b. En el archivo qna.yml, agregue una pregunta relacionada con palabras que riman.

    - answer: 'Here are two rhyming words for "cave":
        1\. Brave
    
        2\. Gave'
      question: 'Give me two words that rhyme with cave'
    

    c. Si tus añadidos incluyen documentos de referencia, como artículos web o archivos en Github, puedes hacer referencia al repositorio público GitHub y al SHA de un archivo como en este ejemplo.

    document:
    repo: https://github.com/<organization>/<repository>
    commit: <commit_sha>
    patterns:
        - <filename>.md
    

    d. Guarde los cambios y envíelos a la bifurcación.

    f. Opcional: Validar la taxonomía actualizada.

  3. En un navegador, abra la página Releases (Versiones) de su repositorio de Github. Por ejemplo: https://github.com/<my-org>/taxonomy/releases.

  4. Haga clic en Crear una liberación.

  5. Cree una etiqueta, seleccione una sucursal de destino e introduzca un nombre para el comunicado.

  6. Haga clic en Publicar un comunicado.

  7. Descargue el archivo tar.gz empaquetado que se generó automáticamente a partir de la versión haciendo clic en Código fuente ( tar.gz ).

  8. Opcional: Si está utilizando un repositorio privado para sus documentos de conocimiento de taxonomía, complete los siguientes pasos.

    1. Siga la documentación GitHub para crear un token de acceso personal(PAT)clásico.

    2. En la sección Acceso al repositorio, delimite su PAT a su repositorio de taxonomía.

    3. En la sección de permisos del repositorio, seleccione Contenidos > read-only y Metadatos > read-only.

Cargue su taxonomía utilizando la consola

Complete los siguientes pasos para almacenar su taxonomía en Object Storage.

  1. En la página Proyectos, seleccione su proyecto.

  2. Haga clic en Taxonomías.

  3. Haga clic en Cargar e introduzca los siguientes datos.

    Archivo de taxonomía
    Seleccione su archivo .tar.gz.
    Nombre de la taxonomía
    Asigne un nombre alfanumérico a la taxonomía.
    Acceso a repositorios privados
    Active esta opción si sus documentos de conocimiento de taxonomía se encuentran en un repositorio privado.
    Secrets Manager instancia de servicio: Seleccione una instancia existente o cree una.
    Secrets Manager secreto: Seleccione un secreto existente o cree uno. Si está creando un secreto, seleccione el tipo de secreto Clave-Valor y añada su testigo de acceso personal con el siguiente formato. Tenga en cuenta que el valor de github_url debe contener https://. El URL es el mismo URL que utilizó en la sección repo de la referencia de su documento de taxonomía.
    {
    "github_url": "https://...",
    "github_pat": "xxxxx"
    }
    

    Para más información, consulte Creación de secretos clave-valor.

    Almacenamiento en la nube
    Seleccione una instancia y un bucket de Object Storage o cree una instancia y un bucket.
    Autorización de servicio
    Marque la casilla para permitir que InstructLab escriba su taxonomía en Object Storage
    Ajustes opcionales de almacenamiento
    Especifique la ruta en la que desea almacenar la taxonomía tar.gz en Object Storage.
  4. Haga clic en Cargar

Añada la taxonomía a Object Storage utilizando la CLI

Complete los siguientes pasos para almacenar su taxonomía en Object Storage.

Puede utilizar el comando set para guardar los detalles y credenciales del cubo Object Storage, y mucho más. Esto puede simplificar sus órdenes en el futuro. Tenga en cuenta que al utilizar el comando set, debe establecer cada valor individualmente. Para más información, consulte la referencia del comando Config.

  1. Inicie sesión en su cuenta IBM Cloud desde la CLI.

    ibmcloud login -a https://cloud.ibm.com --sso -r us-east
    
  2. Si planea permitir que InstructLab cree recursos de Instancia IBM Cloud® Object Storage por usted, diríjase a un grupo de recursos.

    ibmcloud target -g <resource_group>
    

    Ejemplo:

    ibmcloud target -g Default
    
  1. Cree la política de autorización para InstructLab y Object Storage.

    ibmcloud iam authorization-policy-create Writer --source-service-name instructlab --target-service-name cloud-object-storage
    
  2. Opcional: Si está utilizando un repositorio privado para almacenar sus documentos de conocimiento de taxonomía, complete los siguientes pasos.

    1. Cree una autorización de servicio para permitir que InstructLab acceda a su instancia Secrets Manager y a sus secretos.

      ibmcloud iam authorization-policy-create Reader --source-service-name instructlab --target-service-name secrets-manager
      
    2. Añada su testigo de acceso personal (PAT) a Secrets Manager creando un secreto clave-valor. Asegúrese de que sus detalles clave-valor se almacenan en el siguiente formato.

      {
      "github_url": "https://...",
      "github_pat": "xxxxx"
      }
      

      Ejemplo de comando para crear un secreto clave-valor.

      ibmcloud secrets-manager secret-create --secret-prototype='{"name": "my-secret","description": "Description of my key-value secret.","secret_type": "kv","secret_group_id": "67d025e1-0248-418f-83ba-deb0ebfb9b4a","labels": ["dev","us-south"],"data": {"github_url": "https://...","github_pat": "xxxxx"},"custom_metadata": {"metadata_custom_key": "metadata_custom_value"},"version_custom_metadata": {"custom_version_key": "custom_version_value"}}'
      

      Para más información, consulte Creación de secretos clave-valor.

    3. Enumere sus instancias en Secrets Manager.

      ibmcloud resource service-instances --service-name secrets-manager
      
    4. Obtenga los datos de su instancia.

      ibmcloud resource service-instance INSTANCE
      
  3. Ejecute el comando taxonomy add --help y revise las opciones del comando.

    ibmcloud ilab taxonomy add --help
    
  4. Opcional Si ya dispone de una instancia de Object Storage que desea utilizar, obtenga los detalles de su instancia de servicio.

    1. Enumere sus instancias en Object Storage.
      ibmcloud resource service-instances --service-name cloud-object-storage
      
    2. Obtenga los datos de su instancia.
      ibmcloud resource service-instances INSTANCE
      
  5. Añada su taxonomía a su cubo Object Storage. Revisa los siguientes comandos ejemplo.

    Inicio rápido Comando de ejemplo para crear automáticamente una instancia y un bucket Object Storage en su cuenta y cargar en ellos una taxonomía de su carpeta ./taxonomy.

    ibmcloud ilab taxonomy add \
    --name example-taxonomy-1 \
    --taxonomy-path "./taxonomy"
    

    Ejemplo de comando para cargar una taxonomía desde una carpeta taxonomy en su máquina a una instancia y cubo Object Storage existentes.

    ibmcloud ilab taxonomy add \
    	--name example-taxonomy-name-1 \
    	--taxonomy-path-cos "taxonomies/taxonomy.tar.gz" \
    	--taxonomy-path "./taxonomy" \
    	--cos-bucket example-cloud-object-storage-bucket-1 \
    	--cos-endpoint https://s3.us-east.cloud-object-storage.appdomain.cloud
    

    Ejemplo de comando para utilizar una instancia y un bucket de Object Storage existentes, así como las credenciales de Secrets Manager.

    ibmcloud ilab taxonomy add \
    --name example-taxonomy-1 \
    --taxonomy-path-cos taxonomies/taxonomy.tar.gz \
    --taxonomy-path "./taxonomy" \
    --cos-endpoint https://s3.us-east.cloud-object-storage.appdomain.cloud \
    --secrets-manager-git-id SEC-MGR-ID
    --secrets-manager-git-url https://URL
    

    Ejemplo de comando para subir una taxonomía desde su carpeta /Users/USER/instructlab-taxonomy a un nuevo cubo creado automáticamente.

    ibmcloud ilab taxonomy add \
    --name test \
    --taxonomy-path "/Users/USER/instructlab-taxonomy" \
    --cos-endpoint https://s3.us-east.cloud-object-storage.appdomain.cloud \
    --cos-id 628e4348-2183-42fa-a03a-6f0f78453530
    

¿Qué hacer a continuación?

Ahora que ha cargado una taxonomía, el siguiente paso es Generar datos a partir de su taxonomía.