From 3819db80f6403b14f5db636ab191dd7e41b445b0 Mon Sep 17 00:00:00 2001 From: Jhon Castrillon Date: Thu, 14 Aug 2025 00:30:29 +0200 Subject: [PATCH] Create day2 EXERCISE-LLM_Studio.ipynb --- .../day2 EXERCISE-LLM_Studio.ipynb | 226 ++++++++++++++++++ 1 file changed, 226 insertions(+) create mode 100644 week1/community-contributions/day2 EXERCISE-LLM_Studio.ipynb diff --git a/week1/community-contributions/day2 EXERCISE-LLM_Studio.ipynb b/week1/community-contributions/day2 EXERCISE-LLM_Studio.ipynb new file mode 100644 index 0000000000..91f9e18505 --- /dev/null +++ b/week1/community-contributions/day2 EXERCISE-LLM_Studio.ipynb @@ -0,0 +1,226 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "d15d8294-3328-4e07-ad16-8a03e9bbfdb9", + "metadata": {}, + "source": [ + "# TAREA DE EJERCICIO\n", + "\n", + "Actualiza el proyecto del día 1 para resumir una página web y utilizar un modelo de código abierto que se ejecute localmente a través de Ollama en lugar de OpenAI\n", + "\n", + "Podrás utilizar esta técnica para todos los proyectos posteriores si prefiere no utilizar API de pago (closed source).\n", + "\n", + "**Beneficios:**\n", + "1. Sin cargos por API: código abierto\n", + "2. Los datos no salen de su ordenador\n", + "\n", + "**Desventajas:**\n", + "1. Tiene mucha menos potencia (parámetros) que el modelo Frontier\n", + "\n", + "## Resumen de la instalación de Ollama\n", + "\n", + "¡Simplemente visita [ollama.com](https://ollama.com) e instálalo!\n", + "\n", + "Una vez que hayas terminado, el servidor ollama ya debería estar ejecutándose localmente.\n", + "Si entras en:\n", + "[http://localhost:11434/](http://localhost:11434/)\n", + "\n", + "Debería ver el mensaje `Ollama se está ejecutando`.\n", + "\n", + "De lo contrario, abre una nueva Terminal (Mac) o Powershell (Windows) e introduce `ollama serve`.\n", + "Luego, intenta entrar em [http://localhost:11434/](http://localhost:11434/) nuevamente." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "4e2a9393-7767-488e-a8bf-27c12dca35bd", + "metadata": {}, + "outputs": [], + "source": [ + "# imports\n", + "\n", + "import requests\n", + "from bs4 import BeautifulSoup\n", + "from IPython.display import Markdown, display" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "29ddd15d-a3c5-4f4e-a678-873f56162724", + "metadata": {}, + "outputs": [], + "source": [ + "# Constantes\n", + "\n", + "OLLAMA_API = \"http://localhost:11434/api/chat\"\n", + "HEADERS = {\"Content-Type\": \"application/json\"}\n", + "MODEL = \"llama3.2\"" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "dac0a679-599c-441f-9bf2-ddc73d35b940", + "metadata": {}, + "outputs": [], + "source": [ + "# Crea una lista de mensajes utilizando el mismo formato que usamos para OpenAI\n", + "\n", + "messages = [\n", + " {\"role\": \"user\", \"content\": \"Describe algunas de las aplicaciones comerciales de la IA generativa.\"}\n", + "]" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "7bb9c624-14f0-4945-a719-8ddb64f66f47", + "metadata": {}, + "outputs": [], + "source": [ + "payload = {\n", + " \"model\": MODEL,\n", + " \"messages\": messages,\n", + " \"stream\": False\n", + " }" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "42b9f644-522d-4e05-a691-56e7658c0ea9", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "La inteligencia artificial (IA) generativa es un campo en constante crecimiento, y sus aplicaciones comerciales están expandiendo su alcance. A continuación, se presentan algunas de las aplicaciones comerciales más destacadas:\n", + "\n", + "1. **Generación de contenido**: La IA generativa puede crear contenido automático, como artículos de blogs, descripciones de productos y redes sociales. Esto permite a las empresas ahorrar tiempo y recursos en la creación de contenido.\n", + "2. **Diseño de productos y arquitectura**: Las herramientas de IA generativa pueden ayudar a diseñadores y arquitectos a crear modelos 3D y renderizaciones de alta calidad, lo que puede acelerar el proceso de diseño y reducir los costos.\n", + "3. **Sintesis de imágenes y videos**: La IA generativa puede crear imágenes y videos de alta calidad que pueden ser utilizados en marketing, publicidad y contenido de medios sociales.\n", + "4. **Generación de música y audio**: Las herramientas de IA generativa pueden crear música y audio original, lo que puede ser utilizado en proyectos de marketing, publicidad y entretenimiento.\n", + "5. **Análisis de datos y visualización**: La IA generativa puede analizar grandes cantidades de datos y generar visualizaciones de alta calidad, lo que puede ayudar a las empresas a tomar decisiones informadas.\n", + "6. **Automatización de procesos**: La IA generativa puede automatizar procesos administrativos y de gestión, lo que puede reducir costos y mejorar la eficiencia de las operaciones.\n", + "7. **Sistemas de recomendación**: Las herramientas de IA generativa pueden analizar datos de comportamiento y recomendar productos o servicios a los clientes.\n", + "8. **Modelado de riesgos**: La IA generativa puede ayudar a las empresas a modelar riesgos y predecir eventos potenciales, lo que puede mejorar la toma de decisiones y la gestión de riesgos.\n", + "9. **Generación de software**: Las herramientas de IA generativa pueden ayudar a desarrolladores a crear software más rápido y eficiente.\n", + "10. **Servicios de asistencia virtual**: La IA generativa puede proporcionar servicios de asistencia virtual, como atención al cliente y respuesta a preguntas frecuentes.\n", + "\n", + "En resumen, la IA generativa tiene una amplia gama de aplicaciones comerciales que pueden mejorar la eficiencia, reducir costos y aumentar la productividad de las empresas.\n" + ] + } + ], + "source": [ + "response = requests.post(OLLAMA_API, json=payload, headers=HEADERS)\n", + "print(response.json()['message']['content'])" + ] + }, + { + "cell_type": "markdown", + "id": "6a021f13-d6a1-4b96-8e18-4eae49d876fe", + "metadata": {}, + "source": [ + "# Presentación del paquete ollama\n", + "\n", + "Ahora haremos lo mismo, pero utilizando el elegante paquete de Python ollama en lugar de una llamada HTTP directa.\n", + "\n", + "En esencia, se realiza la misma llamada que se indicó anteriormente al servidor ollama que se ejecuta en localhost:11434" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "id": "7745b9c4-57dc-4867-9180-61fa5db55eb8", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "La inteligencia artificial (IA) generativa es un campo en constante evolución que permite a los sistemas informáticos crear contenido nuevo y valioso sin intervención humana directa. A continuación, se presentan algunas de las aplicaciones comerciales más destacadas de la IA generativa:\n", + "\n", + "1. **Generación de contenido**: La IA generativa puede generar texto, imágenes y videos en función de un conjunto de instrucciones o patrones. Esto permite a las empresas crear contenido de alta calidad sin tener que invertir recursos en personas con habilidades creativas.\n", + "\n", + "2. **Diseño de productos virtuales**: Las herramientas de IA generativa permiten diseñar productos virtuales, como ropa, accesorios y elementos decorativos, lo que facilita la creación de visualizaciones para marketing y diseño.\n", + "\n", + "3. **Edición de imágenes**: La IA generativa puede mejorar las ediciones de imágenes automatizando el proceso de corrección de tonalidad, contraste, etc.\n", + "\n", + "4. **Creación de música**: Los sistemas de IA generativos pueden generar música original en función de patrones musicales y estilos específicos.\n", + "\n", + "5. **Análisis de datos**: La IA generativa se utiliza para analizar grandes cantidades de datos y extraer patrones y tendencias que pueden ser utilizados para tomar decisiones informadas.\n", + "\n", + "6. **Generación de código fuente**: Los sistemas de IA generativos pueden generar código fuente en lenguajes como Python, JavaScript o C++.\n", + "\n", + "7. **Generación de contenido de marketing**: La IA generativa puede crear contenidos de marketing personalizados y relevantes para los clientes, como publicidad dirigida y correos electrónicos promocionales.\n", + "\n", + "8. **Diseño de interfaces de usuario**: Las herramientas de IA generativa permiten diseñar interiores de interfaces de usuario que son más atractivas y fáciles de usar.\n", + "\n", + "9. **Generación de narrativas**: Los sistemas de IA generativos pueden generar historias, guiones o incluso personajes para proyectos de cine, televisión o literatura.\n", + "\n", + "10. **Análisis de sentimiento**: La IA generativa se utiliza para analizar los sentimientos y emociones de las personas a través de textos, imágenes y audio.\n", + "\n", + "Estas son solo algunas de las aplicaciones comerciales más destacadas de la IA generativa. El campo está en constante evolución y se espera que aumenten el número de posibilidades creativas y productivas para las empresas.\n" + ] + } + ], + "source": [ + "import ollama\n", + "\n", + "response = ollama.chat(model=MODEL, messages=messages)\n", + "print(response['message']['content'])" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "9a611b05-b5b0-4c83-b82d-b3a39ffb917d", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "id": "1622d9bb-5c68-4d4e-9ca4-b492c751f898", + "metadata": {}, + "source": [ + "# AHORA el ejercicio para ti\n", + "\n", + "Toma el código del día 1 e incorpóralo aquí para crear un resumidor de sitios web que use Llama 3.2 ejecutándose localmente en lugar de OpenAI" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "4a3d6881-35af-469e-a8ff-a8b62b721d95", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "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.11.13" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +}