Files
llm-server-setup/README.md
T

93 lines
2.4 KiB
Markdown

# LLM Server - Deployment Automatizado
Sistema completo de IA agentica con LLMs locales (Phi + DeepSeek 33B) en Ubuntu 22.04.
## Requisitos Mínimos
- **CPU**: Intel i3-10105 (4 cores)
- **RAM**: 16GB DDR4
- **GPU**: NVIDIA RTX 3090 (24GB VRAM)
- **PSU**: 850W+
- **SO**: Ubuntu 22.04 LTS
## Solución para tool calling con rutas de Windows
Cuando el LLM intenta ejecutar una herramienta, la respuesta no debe mostrarse como texto plano. Debe ser manejada como un `tool_call` o `function_call` y ejecutada localmente.
### Regla importante
Añade esta instrucción al `System Prompt`:
```text
When outputting Windows file paths in JSON arguments, you must strictly escape all backslashes (for example: C:\\Users\\name\\file.txt).
```
### Patrón recomendado
1. El LLM devuelve una llamada como JSON.
2. Tu cliente detecta `tool_calls` o `function_call`.
3. Tu código ejecuta la función localmente.
4. Se envía de vuelta al LLM el resultado con rol `tool` o `function`.
### Ejemplo de implementación
El proyecto incluye un ejemplo funcional en `tool_call_demo.py` que:
- simula un `tool_call` del modelo,
- valida que la ruta JSON esté escapada correctamente,
- lee el archivo físico en disco,
- devuelve el contenido al modelo para continuar.
```bash
python tool_call_demo.py
```
### Ejemplo de payload válido
```json
{
"tool_calls": [
{
"id": "call_read_001",
"type": "function",
"function": {
"name": "read_file",
"arguments": "{\"path\": \"c:\\\\Workspace\\\\llm-server-setup\\\\README.md\"}"
}
}
]
}
```
> Si el JSON tiene barras invertidas sin escape, el parser falla y el modelo parece "no responder". Usar rutas con `\\` en JSON es obligatorio en Windows.
## Instalación Rápida
```bash
# 1. Clonar repositorio
git clone https://github.com/tuuser/llm-server-setup.git
cd llm-server-setup
# 2. Instalar OpenClaw sin iniciar el asistente
bash install_openclaw.sh
# 3. Ejecutar el asistente inicial cuando quieras
openclaw onboard --install-daemon
# También puedes instalar y abrir el asistente en el mismo paso
bash install_openclaw.sh --onboard
```
El script está pensado para Ubuntu 22.04/24.04 y WSL2. Usa el instalador oficial
de OpenClaw, que instala Node.js si es necesario. Revisa las instrucciones
oficiales si vas a usar otra distribución o un entorno restringido.
## Instalación del servidor LLM
```bash
nano setup_llm_server.sh
chmod +x setup_llm_server.sh
sudo ./setup_llm_server.sh
```