Plan Maestro - CllamaServer (servidor llama.cpp)
Resumen
CllamaServer está implementado en el modo Server de llama.cpp, que permite iniciar localmente un servidor compatible con la API de OpenAI y soporta múltiples funciones:
- Servicio local de inferencia: Inicia un servidor de inferencia de IA localmente, sin necesidad de depender de API externas.
- Compatibilidad con la API de OpenAI: Utiliza un formato de API compatible con OpenAI, facilitando la migración e integración.
- Soporte para múltiples sesiones: Admite múltiples solicitudes simultáneas
- Llamada de herramientas: Soporta la funcionalidad de llamada a funciones.
- Voz a texto: Compatible con la función Speech-to-Text
- Gestión visual: El editor incluye una interfaz de gestión de servidores integrada.
Diferencias con Cllama: * Cllama: Carga directamente el modelo dentro del proceso para la inferencia, solo puede manejar una solicitud a la vez. * CllamaServer: Inicia un servidor HTTP independiente capaz de manejar múltiples solicitudes concurrentes, compatible con la API en formato OpenAI.
Preparativos
Al ejecutarse localmente, es necesario preparar primero los archivos del modelo offline, como descargar desde HuggingFace: Qwen1.5-1.8B-Chat-Q8_0.gguf
Coloca el modelo en alguna carpeta, por ejemplo, dentro del directorio del proyecto del juego en Content/LLAMA.
Crear CllamaServer
Crear un servidor usando Blueprint
Haz clic derecho en el plano para crear el nodo Crear Servidor Cllama En El Mundo.
Configurar parámetros del Servidor
Crear el nodo Cllama Server Param y configurar los parámetros clave:
- Modelo: Ruta del archivo del modelo (obligatorio)
- Puerto: Puerto del servidor (0 indica asignación automática)
- Host: Dirección de escucha, por defecto
127.0.0.1 - NGpuLayers: Número de capas de GPU (-1 significa usar toda la GPU)
Vincular eventos de devolución de llamada
Vinculación de eventos de retroalimentación del Servidor:
- On Started: Se activa cuando el servidor se inicia correctamente.
- On Stopped: Se activa cuando el servidor se detiene
- On Failed: Se activa cuando falla el inicio del servidor
Plan completo de creación
El plan completo para la creación del servidor es el siguiente:
Después de ejecutar el plano, el inicio exitoso del servidor desencadenará el evento On Started.
Detalles de los parámetros del servidor
La estructura FAIChatPlus_CllamaServerParam contiene los siguientes parámetros:
Parámetros comunes
| Parámetro | Tipo | Valor predeterminado | Descripción |
|---|---|---|---|
| Modelo | FString | - | Ruta del archivo del modelo (requerido) |
| Puerto | int32 | 0 | Puerto de escucha, 0 indica asignación automática |
| Host | FString | 127.0.0.1 | Dirección de escucha |
| NGpuLayers | int32 | -1 | Capas de GPU, -1 significa todas |
| bUseJinja | bool | false | Utilizar plantilla Jinja |
| MMProj | FString | - | Ruta del archivo de proyección multimodal |
| Temperatura | float | 0.8 | Temperatura de muestreo |
Argumentos de razonamiento
| Parámetro | Tipo | Valor por defecto | Descripción |
|---|---|---|---|
| CtxSize | int32 | 4096 | Tamaño del contexto |
| NPredict | int32 | -1 | Cantidad de Tokens a predecir, -1 significa infinito |
| Hilos | int32 | -1 | Número de hilos de CPU, -1 indica automático |
| BatchSize | int32 | 2048 | Tamaño del lote |
Parámetros de muestreo
| Parámetro | Tipo | Valor predeterminado | Descripción |
|---|---|---|---|
| TopK | int32 | 40 | Muestreo Top-K |
| TopP | flotante | 0.9 | Muestreo Top-P |
| MinP | flotante | 0.1 | Muestreo Min-P |
| RepeatPenalty | float | 1.0 | Penalización por repetición |
Parámetros del servidor
| Parámetro | Tipo | Valor predeterminado | Descripción |
|---|---|---|---|
| ApiKey | FString | - | Clave API (opcional) |
| Tiempo de espera | int32 | 600 | Tiempo límite (segundos) |
| Paralelo | int32 | 1 | Número de secuencias paralelas |
| bNoWebUI | bool | false | Deshabilitar la interfaz web |
| bVerbose | bool | false | Registro detallado |
Usar CllamaServer para chatear
Crear Solicitud de Chat
Una vez que el servidor se haya iniciado con éxito, puedes utilizar el nodo Send CllamaServer Chat Request para enviar solicitudes de chat.
Configurar Opciones del Chat
Crear el nodo CllamaServer Chat Request Options, establecer BaseUrl como la dirección del servidor.
Se puede obtener la información del servidor mediante el nodo Get Server Info By ID.
Crear Mensajes
Crear un arreglo de Messages, agregar System Message y User Message.
Vincular retrollamada para manejar la respuesta
Vincula los eventos On Message o On Message Finished para recibir respuestas del modelo.
Plan maestro de chat completo
El plan completo del chat es el siguiente:
Resultado de la ejecución
Ejecuta el esquema y verás que el mensaje devuelto por el modelo se muestra en la pantalla.
Gestión del Servidor
Obtener información del Servidor
Usa el nodo Get Server Info para obtener los detalles del Servidor.
Server Info contiene la siguiente información: * ServerID: ID único del servidor * Anfitrión: Dirección de escucha * Puerto: Puerto de escucha * Dirección: Dirección completa (host:port) * HttpAddress: Dirección HTTP (http://host:port) * bIsRunning: ¿Se está ejecutando? * Param: Parámetro del servidor
Detener Servidor
Utiliza el nodo Stop Server By ID para detener el servidor actual.
Funciones de gestión estática
AIChatPlus ofrece una serie de funciones estáticas para gestionar todos los Servidores.
| Función | Descripción |
|---|---|
Is Server Valid (Static) |
Comprueba si el servidor es válido |
Is Server Running (Static) |
Verificar si el Servidor está en funcionamiento |
Stop Server By ID |
Detener Servidor Específico por ID |
Stop All Servers |
Detener todos los Servidores |
Get Server Info By ID |
Obtener información del servidor por ID |
Obtener todos los IDs de servidor |
Obtener todos los IDs de servidor |
Obtener Servidor por ID |
Obtener instancia de Servidor mediante ID |
Soporte multimodal
CllamaServer admite modelos multimodales (como Moondream, Qwen2-VL, etc.).
Configurar parámetros multimodales
En el parámetro del Servidor, establece MMProj (ruta del archivo de proyección multimodal):
Enviar mensaje de imagen
Agregar imágenes en Mensajes:
Resultados de la ejecución
Tool Calling
CllamaServer es compatible con la función Tool Calling (llamada de funciones), cuyo uso es similar al de OpenAI.
Para un uso detallado, consulte Tool CallDocumento.
Al usar CllamaServer para Tool Call, es necesario:
1. En los parámetros del Server, configura bUseJinja = true
2. Definir herramientas en el campo Tools de Chat Options
Editor Administración del Servidor
AIChatPlus ofrece una interfaz visual de gestión de CllamaServer dentro de sus herramientas de editor, facilitando la creación, supervisión y administración de múltiples servidores.
Abre la herramienta del editor: Herramientas -> AIChatPlus -> AIChat, abre la pestaña del Administrador del Servidor Cllama.
En el editor puedes: * Crear nuevo Servidor * Verificar el estado del Servidor en ejecución * Detener el Servidor especificado * Configurar parámetros del servidor * La configuración del servidor se guardará automáticamente
Relación con otras API
Dado que CllamaServer es compatible con el formato de API de OpenAI, también puedes utilizar el nodo Chat Request de OpenAI para comunicarte con CllamaServer, solo necesitas configurar BaseUrl con la dirección de CllamaServer.
Original: https://wiki.disenone.site/es
This post is protected by CC BY-NC-SA 4.0 agreement, should be reproduced with attribution.
Visitors. Total Visits. Page Visits.
Esta publicación ha sido traducida usando ChatGPT. Por favor, proporciona tus comentarios en retroalimentaciónSeñalar cualquier omisión en el texto.

















