Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
226 changes: 226 additions & 0 deletions week1/community-contributions/day2 EXERCISE-LLM_Studio.ipynb
Original file line number Diff line number Diff line change
@@ -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
}