152 lines
4.6 KiB
Plaintext
152 lines
4.6 KiB
Plaintext
{
|
|
"cells": [
|
|
{
|
|
"cell_type": "markdown",
|
|
"metadata": {},
|
|
"source": [
|
|
"# Tutorial: Uso de vLLM con un modelo local\n",
|
|
"En este tutorial aprenderás a utilizar **vLLM** para cargar un modelo descargado localmente y realizar inferencias.\n",
|
|
"\n",
|
|
"## ¿Qué es vLLM?\n",
|
|
"vLLM es un runtime de alto rendimiento para modelos de lenguaje grande (LLMs). Ofrece características avanzadas como el manejo eficiente de memoria y procesamiento paralelo.\n",
|
|
"\n",
|
|
"Este tutorial asumirá que ya tienes un modelo descargado localmente, por ejemplo, un modelo de Hugging Face."
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "markdown",
|
|
"metadata": {},
|
|
"source": [
|
|
"## Paso 1: Instalación de vLLM\n",
|
|
"Primero, necesitamos instalar la biblioteca **vLLM**. Puedes hacerlo con el siguiente comando."
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"metadata": {},
|
|
"outputs": [],
|
|
"source": [
|
|
"!pip install vllm"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "markdown",
|
|
"metadata": {},
|
|
"source": [
|
|
"## Paso 2: Verificación de dependencias\n",
|
|
"Asegúrate de que las dependencias requeridas, como PyTorch, estén instaladas. Si no tienes PyTorch, instálalo con el comando apropiado para tu entorno."
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"metadata": {},
|
|
"outputs": [],
|
|
"source": [
|
|
"!pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cpu"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "markdown",
|
|
"metadata": {},
|
|
"source": [
|
|
"## Paso 3: Carga del modelo local\n",
|
|
"Usaremos la clase `LLM` de vLLM para cargar el modelo desde una carpeta local. En este ejemplo, asumimos que el modelo está almacenado en un directorio llamado `./modelo_local`."
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"metadata": {},
|
|
"outputs": [],
|
|
"source": [
|
|
"from vllm import LLM\n",
|
|
"\n",
|
|
"# Ruta al modelo local\n",
|
|
"ruta_modelo = \"./modelo_local\"\n",
|
|
"\n",
|
|
"# Inicialización del modelo\n",
|
|
"llm = LLM(model=ruta_modelo)\n",
|
|
"print(\"Modelo cargado exitosamente.\")"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "markdown",
|
|
"metadata": {},
|
|
"source": [
|
|
"## Paso 4: Realización de inferencias\n",
|
|
"Con el modelo cargado, podemos realizar inferencias utilizando la función `generate`. Proporciona un texto de entrada y el modelo generará una respuesta."
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"metadata": {},
|
|
"outputs": [],
|
|
"source": [
|
|
"# Texto de entrada\n",
|
|
"texto_entrada = \"¿Cuál es la capital de Francia?\"\n",
|
|
"\n",
|
|
"# Generar respuesta\n",
|
|
"respuesta = llm.generate(texto_entrada)\n",
|
|
"print(\"Respuesta generada:\", respuesta)"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "markdown",
|
|
"metadata": {},
|
|
"source": [
|
|
"## Paso 5: Ajuste de parámetros (opcional)\n",
|
|
"Puedes ajustar parámetros como la temperatura o el número máximo de tokens generados para personalizar el comportamiento del modelo."
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"metadata": {},
|
|
"outputs": [],
|
|
"source": [
|
|
"# Ajuste de parámetros\n",
|
|
"respuesta_ajustada = llm.generate(\n",
|
|
" texto_entrada,\n",
|
|
" temperature=0.7, # Controla la aleatoriedad\n",
|
|
" max_tokens=100 # Límite de tokens generados\n",
|
|
")\n",
|
|
"print(\"Respuesta ajustada:\", respuesta_ajustada)"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "markdown",
|
|
"metadata": {},
|
|
"source": [
|
|
"## Paso 6: Conclusión\n",
|
|
"Has aprendido a instalar y usar vLLM para cargar un modelo local y realizar inferencias. Puedes explorar más características en la [documentación oficial de vLLM](https://vllm.org).\n",
|
|
"\n",
|
|
"¡Ahora estás listo para usar modelos de lenguaje eficientemente con vLLM!"
|
|
]
|
|
}
|
|
],
|
|
"metadata": {
|
|
"kernelspec": {
|
|
"display_name": "Python 3",
|
|
"language": "python",
|
|
"name": "python3"
|
|
},
|
|
"language_info": {
|
|
"codemirror_mode": {
|
|
"name": "ipython",
|
|
"version": 3
|
|
},
|
|
"file_extension": ".py",
|
|
"mimetype": "text/x-python",
|
|
"name": "python",
|
|
"nbconvert_exporter": "python",
|
|
"pygments_lexer": "ipython3",
|
|
"version": "3.8.5"
|
|
}
|
|
},
|
|
"nbformat": 4,
|
|
"nbformat_minor": 4
|
|
}
|
|
|