Herramientas de usuario

Herramientas del sitio


lia20260529

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Próxima revisión
Revisión previa
lia20260529 [2026/05/30 00:05] – creado jaredlia20260529 [2026/05/30 02:05] (actual) jared
Línea 1: Línea 1:
 ====== Linux + IA 2025/05/27 ====== ====== Linux + IA 2025/05/27 ======
 +===== Personalizando Modelfile Ollama =====
 +  * Tomando como base el archivo descargado Llama-3.2-3B-Instruct-Q4_K_M.gguf
 +  * Dentro de la carpeta gguf/
 +    * cd ~/gguf
 +    * crear el archivos Modelfile
 +      * <file txt Modelfile>
 +FROM ./Llama-3.2-3B-Instruct-Q4_K_M.gguf
 +
 +
 +SYSTEM """
 +Eres un asistente técnico especializado exclusivamente en Ubuntu 24.04 LTS.
 +Tu función es responder preguntas sobre instalación, administración, troubleshooting, redes, systemd, paquetes APT, permisos, usuarios, servicios, Docker, Podman y seguridad básica en Ubuntu 24.04.
 +
 +Reglas:
 +- Responde siempre en español.
 +- Si la pregunta no está relacionada con Ubuntu 24.04, indica que solo respondes sobre Ubuntu 24.04.
 +- Da respuestas prácticas, directas y con pasos concretos.
 +- Cuando sea útil, muestra comandos listos para copiar y pegar.
 +- Si un comando puede ser destructivo, advierte antes de usarlo.
 +- Si faltan datos, haz una sola pregunta de aclaración.
 +- Actúa como agente técnico: propone diagnóstico, verificación y corrección.
 +- Prioriza soluciones seguras y compatibles con Ubuntu 24.04 LTS.
 +"""
 +
 +TEMPLATE """
 +{{ if .System }}<|start_header_id|>system<|end_header_id|>
 +{{ .System }}<|eot_id|>{{ end }}
 +{{ if .Prompt }}<|start_header_id|>user<|end_header_id|>
 +{{ .Prompt }}<|eot_id|>{{ end }}
 +<|start_header_id|>assistant<|end_header_id|>
 +"""
 +
 +PARAMETER temperature 0.2
 +PARAMETER top_p 0.9
 +PARAMETER num_ctx 4096
 +PARAMETER repeat_penalty 1.1
 +PARAMETER num_predict 512
 +</file>
 +      * Generar el nuevo modelo
 +        * <code bash>ollama create llamaubuntu24 -f Modelfile</code>
 +      * Listamos
 +        * <code bash>ollama list</code>
 +      * Utilizamos
 +        * <code bash>ollama run llamaubuntu24:latest</code>
 +      * Detener el modelo para despues ejecutarlo con llama.cpp
 +        * <code bash>ollama stop llamaubuntu24:latest</code>
 +
 +===== Personalizando llama.cpp =====
 +  * No se puede utilizar un GGUF modificado ya que no toma en cuenta las modificaciones.
 +  * La forma correcta es pasarle en un prompt inicial las limitaciones
 +    * <code bash>llama-cli -m Llama-3.2-3B-Instruct-Q4_K_M.gguf   -p "Eres un asistente técnico especializado exclusivamente en Ubuntu 24.04 LTS."   -n 512 -cnv</code>
 +* Para que sea persistente se deben realizar las siguientes modificaciones.
 +  * En el mismo lugar del script start-llama.sh crear el archivo
 +    * nano template.json
 +    * <file json template.json>
 +{
 +  "system_message": "Eres un asistente técnico especializado exclusivamente en Ubuntu 24.04 LTS. Da respuestas prácticas, directas y con pasos concretos. Sin explicaciones. Si un comando puede ser destructivo, advierte antes de usarlo.
 +  "
 +}
 +</file>
 +  * Copiar el archivo 
 +    * cp start-llama.sh start-llama-ubuntu.sh
 +  * Editarlo
 +    * <file bash start-llama-ubuntu.sh>
 +#!/bin/bash
 +
 +# Cambiar esta ruta cuando quieras otro modelo
 +MODEL="$HOME/gguf/Llama-3.2-3B-Instruct-Q4_K_M.gguf"
 +
 +nohup llama-server \
 +    --jinja \
 +    -m "$MODEL" \
 +    --chat-template "custom" \
 +    --chat-template-file ./template.json \
 +    --host 127.0.0.1 \
 +    --port 11435 \
 +    -c 8192 \
 +    -t 4 \
 +    > /tmp/llama-server.log 2>&1 &
 +
 +echo $! > /tmp/llama-server.pid
 +echo "Servidor iniciado. PID: $(cat /tmp/llama-server.pid)"
 +
 +</file>
 +===== Nvidia llama.cpp =====
 +  * Requerimiento previo: 
 +    * Tener configurado correctamente los drivers de Nvidia.
 +    * Y tener actualizado el sistema.
 +    * Verificación ejecutar <code bash>nvidia-smi</code>
 +    * <code bash>sudo apt install -y nvidia-cuda-toolkit
 +nvcc --version</code>
 +  * Compilación
 +    * <code bash>git clone https://github.com/ggerganov/llama.cpp
 +cd llama.cpp
 +cmake -B build -DGGML_CUDA=ON -DCMAKE_CUDA_ARCHITECTURES="86" -DCMAKE_BUILD_TYPE=Release
 +cmake --build build --config Release -j$(nproc)
 +</code>
 +  * Adicionar PATH
 +    * <code bash>nano .bashrc</code>
 +    * Adicionar al final <code bash>export PATH="$HOME/llama.cpp/build/bin:$PATH"</code>
 +    * <code bash>source .bashrc</code>
 +  * Primera consulta
 +    * <code bash>llama-cli --version
 +llama-cli -m gguf/Llama-3.2-3B-Instruct-Q4_K_M.gguf --gpu-layers -1 -p "Hola" -n 50
 +</code>
 +
 +==== OpenCode ====
 +  * Ejecutar con ollama
 +    * <code bash>ollama launch opencode</code>
 +
  
lia20260529.1780099531.txt.gz · Última modificación: por jared