1 00:00:07,080 --> 00:00:09,840 Bueno, vamos a dar comienzo. 2 00:00:09,840 --> 00:00:11,840 Buenos días a todos. 3 00:00:11,840 --> 00:00:14,480 Una sesión más esta vez, 4 00:00:14,480 --> 00:00:17,880 Programación de software asistida con inteligencia artificial. 5 00:00:18,440 --> 00:00:22,760 Que bueno, como la verdad que ha tenido muchísima, muchísima aceptación. 6 00:00:22,800 --> 00:00:24,840 Ha habido muchísimos escritos y ya veo por aquí 7 00:00:24,840 --> 00:00:28,640 a muchísima gente conectada para hacer un tema tan tan específico. 8 00:00:28,640 --> 00:00:30,600 Y bueno, es que está cambiando mucho 9 00:00:30,600 --> 00:00:34,040 el tema de la programación con la IA y en general la ingeniería del software. 10 00:00:34,720 --> 00:00:39,480 Esta sesión va a ser impartida por Javier Conde y Enrique Barra. 11 00:00:39,640 --> 00:00:44,520 ¿Ha habido un cambio en la programación y bueno, pero eh, contamos, 12 00:00:44,520 --> 00:00:48,960 hemos contado en otras ocasiones con Enrique y eh, Javier eh, 13 00:00:49,000 --> 00:00:53,400 la verdad que que seguro que que nos cuentan muchísimas cosas. 14 00:00:53,400 --> 00:00:55,440 Sobre todo sobre todo este tema. 15 00:00:55,440 --> 00:00:58,440 Recordad simplemente que nos quedan cinco sesiones más 16 00:00:58,600 --> 00:01:04,360 y la jornada de IA, que es el día 19, que todavía estáis a tiempo de apuntaros. 17 00:01:04,360 --> 00:01:04,680 Nada más. 18 00:01:04,680 --> 00:01:08,920 Por mi parte doy paso a esta sesión que la verdad que se plantea superinteresante. 19 00:01:08,920 --> 00:01:09,760 Muchísimas gracias. 20 00:01:11,520 --> 00:01:12,240 Vale, pues nada, 21 00:01:12,240 --> 00:01:15,240 muchas gracias Jessica por la presentación. 22 00:01:15,280 --> 00:01:15,960 Entonces voy a empezar 23 00:01:15,960 --> 00:01:20,040 yo, después más adelante se unirá Quique para explicar más cosillas. 24 00:01:20,520 --> 00:01:21,960 Entonces veo que somos muchos. 25 00:01:21,960 --> 00:01:25,080 Entonces lo mejor es que utilicemos el chat para dudas. 26 00:01:25,320 --> 00:01:28,040 ¿Y a mí sí que me gusta ir leyendo el chat, eh? 27 00:01:28,040 --> 00:01:30,120 Más que ir contando yo, pues lo que se me ocurre, 28 00:01:30,120 --> 00:01:33,360 pues que plasme vuestras dudas, pero de primeras a través del chat, 29 00:01:33,360 --> 00:01:36,440 porque como somos tantos, si no va a ser un poco un poco caótico. 30 00:01:36,880 --> 00:01:40,720 ¿Entonces qué os vamos a contar Quique y yo en esta sesión de dos horas? 31 00:01:41,160 --> 00:01:44,640 ¿Pues básicamente cómo está el panorama actual en el tema 32 00:01:44,640 --> 00:01:47,640 de desarrollo de software con inteligencia artificial? 33 00:01:47,640 --> 00:01:49,400 Esto evoluciona muy rápido. 34 00:01:49,400 --> 00:01:53,520 De lo que os contemos hoy en varios meses habrán surgido nuevas cosas, 35 00:01:53,920 --> 00:01:58,040 pero bueno, saber el estado actual yo creo que es muy interesante, sobre todos 36 00:01:58,080 --> 00:02:03,200 aquellos que igual no estéis muy metidos en inteligencia artificial y programación. 37 00:02:03,360 --> 00:02:08,280 Porque es un cambio de paradigma, eh, brutal en algunos, en algunos aspectos. 38 00:02:08,680 --> 00:02:13,680 ¿Entonces bueno, eh, vamos a ir explorando un poco todas las eh actualidad 39 00:02:13,840 --> 00:02:18,240 y el objetivo también es que aprendáis vosotros que se puede hacer hoy en 40 00:02:18,240 --> 00:02:22,440 día a través de vemos que vamos a ir a ir haciendo vale? 41 00:02:22,520 --> 00:02:26,400 Siempre os recordamos que este sí es este informe que se eh 42 00:02:26,400 --> 00:02:29,920 que se hizo el curso pasado sobre, eh, 43 00:02:30,000 --> 00:02:32,920 la inteligencia artificial en la educación superior, pero lo tenéis ahí. 44 00:02:32,920 --> 00:02:34,440 La referencia que yo creo que también es 45 00:02:34,440 --> 00:02:37,920 es bueno leer lo que estamos haciendo en en la Politécnica, 46 00:02:38,600 --> 00:02:41,040 eh también más cosas así pues, por ejemplo, en en nuestro grupo 47 00:02:41,040 --> 00:02:44,400 hacemos un MOOC sobre introducción a la IA generativa, a través del LMS 48 00:02:44,640 --> 00:02:48,000 y sé que hay muchos más MOOCs relacionadas con esta temática. 49 00:02:48,000 --> 00:02:51,520 Pues también os invito a que veáis todos esos cursos online gratuitos 50 00:02:51,520 --> 00:02:55,280 con los que podéis seguir eh formando Este solo es un un ejemplo. 51 00:02:55,280 --> 00:02:58,160 ¿Pero bueno, como contamos nosotros, pues vendemos nuestro libro, no? 52 00:02:59,680 --> 00:03:01,040 Además, recursos que 53 00:03:01,040 --> 00:03:04,360 que tenéis a vuestra disposición en la página de Innovación educativa 54 00:03:04,360 --> 00:03:08,840 tenéis multitud de vídeos sobre como utilizar diferentes herramientas 55 00:03:09,080 --> 00:03:12,080 que tenemos disponible, la UPM y que no, etcétera etcétera 56 00:03:12,480 --> 00:03:15,520 Y es mucha información al final y yo creo que es bueno saber 57 00:03:15,520 --> 00:03:18,560 al menos los punteros, porque cuando tengáis alguna duda 58 00:03:18,560 --> 00:03:23,200 posiblemente ya haya algún EH de material incluso creado por la propia Politécnica, 59 00:03:23,200 --> 00:03:26,600 que está muy alineado con con nosotros vamos básicamente 60 00:03:27,840 --> 00:03:31,360 bien, entonces un poco de la introducción que sepáis de los materiales 61 00:03:32,040 --> 00:03:35,120 o también que conozcáis todas las estas sesiones que se están celebrando. 62 00:03:35,120 --> 00:03:38,120 ¿Como dice Jessica, quedan cinco, eh? 63 00:03:38,280 --> 00:03:41,280 ¿Y son todas muy variadas, o sea que que son muy interesantes 64 00:03:42,080 --> 00:03:44,040 a nivel de de objetivos, eh? 65 00:03:44,040 --> 00:03:47,600 ¿Pues vamos a hablar de todos estos temas, eh? 66 00:03:47,600 --> 00:03:50,320 ¿Vamos a hablar de la introducción del Internet 67 00:03:50,320 --> 00:03:53,120 artificial generativa, la programación, eh? 68 00:03:53,120 --> 00:03:56,000 ¿Primero una breve intro que siempre hacemos sobre ella, generativa 69 00:03:56,000 --> 00:03:59,120 para aquellos que estéis un poco desubicados, pero no será más de 70 00:03:59,120 --> 00:04:03,040 cinco diez minutos y después ya vamos a adentrar en herramientas de IA 71 00:04:03,040 --> 00:04:06,480 para desarrollo de software, que aquí hay un ecosistema brutal, 72 00:04:06,480 --> 00:04:10,480 cada vez más posibilidades y más paradigmas, eh? 73 00:04:10,480 --> 00:04:12,600 Al final de todo. Bueno, vamos a hacer un pequeño cambio. 74 00:04:12,600 --> 00:04:14,680 Vamos a hacer primero un taller práctico 75 00:04:14,680 --> 00:04:18,280 en el que vamos a utilizar eh, CoPilot y CoPilot, 76 00:04:18,800 --> 00:04:24,600 eh para código a través de VC Code, en el que vamos a desarrollar una aplicación 77 00:04:24,600 --> 00:04:28,040 y después vamos a hacer modificaciones sobre ella con diferentes módulos. 78 00:04:28,440 --> 00:04:30,120 Y ya por último hablaremos. 79 00:04:30,120 --> 00:04:32,200 Como muchos somos profesores, es un poco también 80 00:04:32,200 --> 00:04:36,360 el impacto que este tiene en la educación, tanto para alumnos como para 81 00:04:36,920 --> 00:04:38,040 como para profesores. 82 00:04:38,040 --> 00:04:40,160 Va a ser un poco los los objetivos. 83 00:04:40,160 --> 00:04:40,600 Entonces, venga, 84 00:04:40,600 --> 00:04:44,200 vamos a darle comienzo con la introducción a la inteligencia artificial generativa. 85 00:04:44,240 --> 00:04:46,200 Esto va a ser va a ser muy breve. 86 00:04:46,200 --> 00:04:48,960 Simplemente aterrizar el concepto para saber de dónde venimos 87 00:04:48,960 --> 00:04:52,080 y entender un poco por qué las cosas funcionan. 88 00:04:52,320 --> 00:04:53,120 ¿Funcionan así, 89 00:04:54,120 --> 00:04:57,000 eh? Bueno, existen muchos paradigmas de inteligencia artificial, 90 00:04:57,000 --> 00:05:00,040 pero nosotros vamos a quedar en inteligencia artificial generativa, 91 00:05:00,040 --> 00:05:04,400 que dentro están los grandes modelos de lenguaje que son sistemas que son capaces 92 00:05:04,400 --> 00:05:07,720 de generar texto fundamentalmente, aunque ya vemos que hoy en día 93 00:05:07,720 --> 00:05:10,400 podemos generar imágenes, vídeos, etc, etcétera 94 00:05:10,400 --> 00:05:14,040 Pero lo más importante para programación es generar texto. 95 00:05:14,040 --> 00:05:15,720 Al final el código es texto 96 00:05:15,720 --> 00:05:19,240 en un lenguaje un poco más más diferente que el que estamos acostumbrados. 97 00:05:19,720 --> 00:05:20,520 ¿Entonces esto fue un poco 98 00:05:20,520 --> 00:05:24,640 la revolución de la IA generativa y cómo funcionan los LMS, eh? 99 00:05:24,720 --> 00:05:28,000 ¿Que es básicamente lo que veis en esta diapositiva, un LLM, eh? 100 00:05:28,160 --> 00:05:31,560 ¿Que son los modelos que utilizamos intrínsecamente también para programar, 101 00:05:32,080 --> 00:05:35,000 eh? Lo que hacen es ver un texto de entrada, 102 00:05:35,000 --> 00:05:38,760 como vemos aquí al ver al ladrón el perro y ellos lo que hacen son 103 00:05:39,320 --> 00:05:43,320 tratar de predecir cuál es la palabra más probable que viene después, pues 104 00:05:43,360 --> 00:05:46,800 en este caso ladra, tiene una probabilidad muy alta y tortilla muy baja. 105 00:05:47,520 --> 00:05:50,480 Estos sistemas han sido entrenados con muchísimo texto, 106 00:05:50,480 --> 00:05:53,640 con tanto texto como el que prácticamente hemos generado en Internet 107 00:05:53,640 --> 00:05:54,960 a lo largo de los años 108 00:05:54,960 --> 00:05:58,320 y entonces son muy buenos a la hora de establecer relaciones entre las palabras. 109 00:05:58,840 --> 00:06:02,120 Entonces, bueno, pues muy poco probable que veamos cosas inconexas, 110 00:06:02,120 --> 00:06:05,760 aunque la forma en que han sido diseñadas, pues sí que hay cierta probabilidad 111 00:06:06,120 --> 00:06:08,080 de que pueda saber, en este caso tortilla. 112 00:06:09,560 --> 00:06:10,080 Simplemente 113 00:06:10,080 --> 00:06:13,080 nos tenemos que quedar con esto, que son sistemas que van prediciendo 114 00:06:13,080 --> 00:06:16,360 y tú cuando predices te equivocas, pues como somos las personas también 115 00:06:17,520 --> 00:06:19,400 ven la evolución de estos sistemas. 116 00:06:19,400 --> 00:06:22,400 Realmente fue brutal, tanto a nivel de arquitectura, 117 00:06:22,440 --> 00:06:24,960 pero sobre todo a nivel de tamaño de los modelos. 118 00:06:24,960 --> 00:06:28,520 ¿Cuando nosotros hablamos de tamaños de modelos es oye, si quiero coger un modelo 119 00:06:28,520 --> 00:06:30,240 e instalarme en una máquina, 120 00:06:30,240 --> 00:06:34,560 cuánta memoria voy a necesitar para poder cargarlo en estos sistemas? 121 00:06:34,560 --> 00:06:37,960 Sobre todo, no importa la memoria RAM de las GPUs, 122 00:06:38,400 --> 00:06:41,680 estamos igual, acostumbrados a CPUs para, eh, 123 00:06:42,280 --> 00:06:45,880 ordenadores tradicionales y para problemas de codificación tradicionales. 124 00:06:46,320 --> 00:06:47,840 ¿Eh, la IA, eh? 125 00:06:47,840 --> 00:06:52,520 Lo más importante suelen ser las GPUs porque están centradas 126 00:06:52,520 --> 00:06:55,960 en realizar operaciones sobre matrices o operaciones matriciales, 127 00:06:56,280 --> 00:06:59,280 para lo cual la CPU es muy lenta, pero la GPU es muy rápida. 128 00:06:59,400 --> 00:07:03,120 Bueno, sea como fuere, al final lo que nos interesa es tener hardware 129 00:07:03,360 --> 00:07:06,000 para poder nosotros cargar estos modelos. 130 00:07:06,000 --> 00:07:09,440 Y lo que vemos aquí es la evolución del tamaño de los modelos V. 131 00:07:09,440 --> 00:07:12,600 Son billones de parámetros en inglés americanos, 132 00:07:12,680 --> 00:07:16,080 es decir, miles de millones para nosotros y T son trillones también americanos. 133 00:07:16,440 --> 00:07:19,600 Entonces vemos como el GPT tres EH, GPT tres. 134 00:07:19,800 --> 00:07:22,800 Recordad que GPT 3.5 fue un poco la revolución. 135 00:07:22,800 --> 00:07:24,200 En el 2022 136 00:07:24,200 --> 00:07:28,440 estábamos modelos de billones de parámetros en los modelos comerciales, 137 00:07:28,440 --> 00:07:32,320 los que igual utilizamos todos en nuestro día a día, como puede ser GPT 138 00:07:32,760 --> 00:07:37,360 de Mirai, eh, Claude, etcétera etcétera Entonces vemos como la escala 139 00:07:37,360 --> 00:07:41,040 está ha ido en aumento y cuando tú aumentas la escala 140 00:07:41,040 --> 00:07:44,480 lo que se ha visto es que se aumentan también las capacidades de los modelos. 141 00:07:45,080 --> 00:07:48,960 ¿Eh? No sé si os acordáis, pero hace unos años GPT 3.5 142 00:07:48,960 --> 00:07:53,520 pues no era muy buena programando y hoy en día con sistemas como GPT 5.5, 143 00:07:53,520 --> 00:07:57,960 Codex o etcétera etcétera eh, podemos hacer ya cosas muy muy avanzadas. 144 00:07:58,480 --> 00:08:01,960 ¿Y además aquí hay una realidad que es que la gente que desarrolla 145 00:08:01,960 --> 00:08:05,040 estos modelos, las grandes empresas o tiene ya 146 00:08:05,200 --> 00:08:08,640 Google eh antrópico eh? 147 00:08:08,640 --> 00:08:12,680 ¿Han visto que eh centrarse en el mundo de la programación 148 00:08:12,680 --> 00:08:17,240 tiene dos ventajas una que es un mercado muy grande y otra es que si tú 149 00:08:17,240 --> 00:08:21,640 consigues que estos sistemas funcione muy bien generando código, eh? 150 00:08:21,880 --> 00:08:24,440 Entendiendo código, pues puedes llegar a un punto en el 151 00:08:24,440 --> 00:08:27,600 que incluso ellos se puedan mejorar a sí mismos a través de scripts, 152 00:08:27,600 --> 00:08:30,840 etcétera, etcétera Y esto ha llegado a una evolución 153 00:08:30,840 --> 00:08:34,200 que es en la que nos vivimos hoy en día, que es el sistema hasta genéticos. 154 00:08:34,560 --> 00:08:39,240 Es decir, ya no solo le preguntamos a GPT que me diga las noticias de hoy, 155 00:08:39,520 --> 00:08:42,360 sino que le puedo pedir que me haga una presentación 156 00:08:42,360 --> 00:08:46,080 o incluso que me reserve billetes de tren 157 00:08:46,320 --> 00:08:49,120 para ir de Madrid a Bilbao, por ejemplo. 158 00:08:49,120 --> 00:08:52,120 Esa evolución genética se debe también mucho a 159 00:08:52,440 --> 00:08:55,640 la capacidad que tienen los modelos por sí mismos de generar 160 00:08:55,640 --> 00:08:58,640 código, ejecutarlo, entenderlo, etcétera 161 00:08:58,760 --> 00:09:00,760 Eso lo vamos a ir viendo a lo largo de la sesión. 162 00:09:00,760 --> 00:09:05,040 Pues quedarnos con que eh la tendencia es modelos cada vez más grandes. 163 00:09:06,000 --> 00:09:08,280 Vale, esto de tokens tampoco es muy relevante. 164 00:09:08,280 --> 00:09:12,560 Como tenemos muchas cosas, simplemente lo dejamos ahí siempre de de referencia. 165 00:09:13,040 --> 00:09:14,640 Pero esto sí que me interesa. 166 00:09:14,640 --> 00:09:18,000 ¿En un inicio los modelos pues fueron entrenados fundamentalmente 167 00:09:18,000 --> 00:09:22,760 con con textos, con libros, El Quijote, con todo lo que encontraba en internet, 168 00:09:22,760 --> 00:09:27,120 pues la Wikipedia, etcétera De hecho aquí bueno, pues hubo muchos problemas legales 169 00:09:27,120 --> 00:09:30,920 de si los cogían tenía tenían permiso para hacerlo, no? 170 00:09:31,320 --> 00:09:33,640 ¿A nosotros en este taller nos da un poco igual, 171 00:09:33,640 --> 00:09:36,360 pues dentro de ese corpus también 172 00:09:36,360 --> 00:09:40,520 podríamos coger eh, código de programación y aquí hay muchas fuentes 173 00:09:40,520 --> 00:09:41,960 que se nos pueden ocurrir, eh? 174 00:09:41,960 --> 00:09:44,040 StackOverflow, donde se planteaban problemas 175 00:09:44,040 --> 00:09:47,640 complejos, donde la gente le daba solución o GitHub. 176 00:09:48,000 --> 00:09:52,920 ¿En GitHub tenemos repositorios públicos a tutiplén, eh? 177 00:09:52,960 --> 00:09:57,240 Con prácticamente todo el código que se genera hoy en día, pues se sube a GitHub 178 00:09:57,240 --> 00:10:01,400 o GitLab o equivalentes y ya teníamos esa fuente de información. 179 00:10:01,800 --> 00:10:03,880 Pues básicamente lo que se hizo a estos sistemas 180 00:10:03,880 --> 00:10:07,200 es entrenarlos al igual que para predecir la siguiente palabra 181 00:10:07,200 --> 00:10:10,320 o para predecir la siguiente palabra relacionada a un código. 182 00:10:10,920 --> 00:10:13,440 Y lo que se hizo fue especializar estos modelos 183 00:10:13,440 --> 00:10:17,680 también en programación, no solo en en responder preguntas. 184 00:10:18,240 --> 00:10:21,120 Y la forma de hacerlo es fundamentalmente la misma 185 00:10:21,120 --> 00:10:25,600 que el modelo de lenguaje clásico, pero entrenándolo con con código. 186 00:10:25,760 --> 00:10:27,360 Es decir, que era un problema que ya estaba resuelto. 187 00:10:27,360 --> 00:10:30,640 Teníamos los datos, pues las grandes empresas se metieron, 188 00:10:30,640 --> 00:10:35,240 se metieron a ello y vemos que cada vez unos resultados, unos resultados mejores. 189 00:10:36,240 --> 00:10:36,920 Bien, entonces 190 00:10:36,920 --> 00:10:40,520 y haz disponibles que tengas aquí una referencia de todo el mercado actual. 191 00:10:40,680 --> 00:10:45,040 ¿Nos faltarán muchas porque cada día sale, sale una nueva, pero la más importante 192 00:10:45,040 --> 00:10:48,040 yo creo que está por aquí Cloudera Tropic, eh 193 00:10:48,480 --> 00:10:52,440 tío Codex de OpenAI tenemos a día de hoy 194 00:10:52,440 --> 00:10:56,640 me ha sacado hace nada sus propios modelos también, eh? 195 00:10:56,640 --> 00:10:59,800 Y también tenía la gama de modelos abiertos llama eh, 196 00:11:00,320 --> 00:11:03,560 que este sitio muy famoso que fue la IA y China, que 197 00:11:03,880 --> 00:11:07,040 pues eh produjo aquí un poco un terremoto 198 00:11:07,680 --> 00:11:10,600 porque dijo que no hacía falta tantos recursos de computación, 199 00:11:10,600 --> 00:11:11,800 lo cual se ha visto a la larga 200 00:11:11,800 --> 00:11:15,320 que es falso, sino que cada vez necesitamos más recursos de computación. 201 00:11:15,880 --> 00:11:16,800 Cuéntame de chino. 202 00:11:16,800 --> 00:11:21,600 Bueno, pues hay un mercado muy grande de soluciones ellas disponibles. 203 00:11:22,040 --> 00:11:25,080 Y aquí el problema que vamos a ver es que, eh, no está claro 204 00:11:25,080 --> 00:11:28,760 ya dónde ponemos la frontera entre modelo herramienta, 205 00:11:29,080 --> 00:11:32,080 pero lo vamos a ir aclarando un poco con vosotros en esta. 206 00:11:32,080 --> 00:11:33,880 ¿En esta sesión, eh? 207 00:11:33,880 --> 00:11:35,280 ¿Cómo vamos a evaluar las ideas? 208 00:11:35,280 --> 00:11:37,560 Pues a través de benchmarks. Estos son benchmarks. 209 00:11:37,560 --> 00:11:39,840 Tenemos un ecosistema tan amplio que de alguna forma 210 00:11:39,840 --> 00:11:42,640 yo tengo que tener la capacidad de hacer comparativas. 211 00:11:42,640 --> 00:11:47,200 Entonces una forma muy, muy rápida de hacerlo es oye, pues que otras personas 212 00:11:47,200 --> 00:11:51,600 hagan las comparativas por mí y yo miro y me adapto a los al mis necesidades. 213 00:11:51,960 --> 00:11:54,960 Luego lo vamos a ver con más detalle, con ejemplos de códigos. 214 00:11:55,760 --> 00:11:56,760 ¿Por otro lado, que yo 215 00:11:56,760 --> 00:12:00,480 creo que también es importante mencionarlo, existen lo que se llaman 216 00:12:00,800 --> 00:12:05,560 eh, modelos de precios abiertos o open weight models, eh? 217 00:12:05,560 --> 00:12:08,440 ¿Estos modelos son aquellos en los que eh 218 00:12:08,440 --> 00:12:12,640 me dejan descargarlos, instalarlos en mi propia infraestructura, eh? 219 00:12:12,640 --> 00:12:16,040 Los modelos más potentes que hay hoy en día son modelos comerciales 220 00:12:16,240 --> 00:12:19,240 como los de CLADE, como los de 221 00:12:19,280 --> 00:12:22,440 EH Gemini, eh, los de OpenAI. 222 00:12:22,800 --> 00:12:27,520 Esos son modelos comerciales que nosotros no tenemos ninguna forma de saber 223 00:12:27,520 --> 00:12:29,200 ni cómo los han entrenado, 224 00:12:29,200 --> 00:12:31,880 ni podemos desplegarlos en nuestra infraestructura propia. 225 00:12:31,880 --> 00:12:34,800 Es decir, que cualquier petición que les hagamos 226 00:12:34,800 --> 00:12:37,800 estos modelos van a ejecutarse en los servidores de Google 227 00:12:37,800 --> 00:12:41,720 de OpenAI, de meta, de quien sea, pero no nuestra infraestructura. 228 00:12:42,240 --> 00:12:45,720 Eso tiene dos derivadas, una a nivel de seguridad o bueno, 229 00:12:45,720 --> 00:12:47,240 tenemos que saber que todo se va a ejecutar 230 00:12:47,240 --> 00:12:51,240 en otras máquinas, que no va a ser la nuestras para generar el código. 231 00:12:51,400 --> 00:12:54,800 El código se lo vamos a ejecutar en nuestra máquina, como veremos. 232 00:12:55,160 --> 00:12:56,520 Y tiene otra segunda derivada. 233 00:12:56,520 --> 00:13:00,840 Pues que la gente no ofrece sus recursos de computación gratis. 234 00:13:01,280 --> 00:13:03,840 Realmente si que nos lo ofrecen gratis entre comillas. 235 00:13:03,840 --> 00:13:06,840 ¿Sabemos que cuando no hay nada gratis en este mundo, 236 00:13:06,840 --> 00:13:08,800 cuando usamos ya GPT en la versión gratuita, 237 00:13:08,800 --> 00:13:10,760 pues ellos están utilizando nuestros datos, 238 00:13:10,760 --> 00:13:13,960 pues para entrenar futuros modelos, para saber cómo los estamos usando, 239 00:13:13,960 --> 00:13:15,400 etcétera, etcétera 240 00:13:15,400 --> 00:13:18,960 Pero en el mundo de la programación vamos a ver que eh 241 00:13:19,320 --> 00:13:22,320 aquí se requiere mucha más capacidad de cómputo 242 00:13:22,320 --> 00:13:25,000 y normalmente necesitamos pagar por 243 00:13:25,000 --> 00:13:28,800 usar estas herramientas de código eh? 244 00:13:28,800 --> 00:13:31,920 Pues una suscripción y hoy en día el problema que hay es 245 00:13:31,920 --> 00:13:35,000 que ni siquiera con esa suscripción a veces es suficiente. 246 00:13:35,520 --> 00:13:36,040 ¿Por qué? 247 00:13:36,040 --> 00:13:38,880 Porque estos sistemas se miden en tokens. 248 00:13:38,880 --> 00:13:42,560 Es decir, vamos a simplificar lo máximo posible que un token es una palabra. 249 00:13:42,960 --> 00:13:45,400 ¿Entonces, cada vez que tú generas una palabra 250 00:13:45,400 --> 00:13:48,880 es como que tenemos que ejecutar toda la máquina completa para generarme 251 00:13:48,880 --> 00:13:52,480 una única palabra en código, pues también una palabra o un símbolo de código, 252 00:13:52,480 --> 00:13:56,920 o lo que nos haga falta, un bar, un led, un corchete, etcétera, etcétera 253 00:13:57,320 --> 00:14:01,840 Entonces cada una de esas inferencias es cada una de esas predicciones 254 00:14:01,840 --> 00:14:05,280 para generar mi código tiene un coste elevado, eh? 255 00:14:05,280 --> 00:14:08,280 Y el problema aquí es que cuando nosotros generamos texto, 256 00:14:08,440 --> 00:14:09,160 pues normalmente 257 00:14:09,160 --> 00:14:12,800 las personas del pueblo leen el texto y pues tampoco genera muchísimo texto, 258 00:14:13,120 --> 00:14:16,600 pero con código sabemos todos que el código es muy verboso. 259 00:14:16,600 --> 00:14:18,200 Tenemos que especificar todo. 260 00:14:18,200 --> 00:14:20,200 ¿Entonces, si queremos hacer algo muy sencillo 261 00:14:20,200 --> 00:14:25,680 vamos a requerir requerir muchísimo código y eso se traduce en muchas predicciones, 262 00:14:25,680 --> 00:14:28,680 en muchos tokens, en muchas palabritas o trozos de código, 263 00:14:28,840 --> 00:14:32,360 lo que hace que sea muy caro y a las empresas pues no les sale a cuenta 264 00:14:32,360 --> 00:14:37,600 el ofrecernos esto gratis y nos obliga a pues pagar una suscripción, 265 00:14:37,600 --> 00:14:41,520 pues para poder integrarlo en nuestros IDEs eh? 266 00:14:41,560 --> 00:14:45,120 O en otras plataformas auténticas, como veremos, veremos luego. 267 00:14:45,360 --> 00:14:47,920 ¿Entonces mucha gente, eh, tiene la idea de bueno, 268 00:14:47,920 --> 00:14:51,160 pues existen estos modelos abiertos, pues por qué 269 00:14:51,160 --> 00:14:53,640 no voy a utilizar un modelo abierto en mi infraestructura? 270 00:14:53,640 --> 00:14:57,320 Incluso si tenéis vosotros GPUs disponibles, pues me lo descargo 271 00:14:57,320 --> 00:15:00,520 mi infraestructura y con eso pues ya está solucionado. 272 00:15:01,160 --> 00:15:04,280 Eso en la teoría es así, pero en la práctica hoy en día los modelos 273 00:15:04,280 --> 00:15:08,040 abiertos con un tamaño razonable que nosotros podamos desplegar, 274 00:15:08,320 --> 00:15:13,480 si tenéis mucha suerte, vais a poder desplegar modelos 70, 20, eh, 70 millones. 275 00:15:13,480 --> 00:15:16,160 ¿Pero si nos vamos aquí al principio de todo, 276 00:15:16,160 --> 00:15:19,400 70 millones son cosas muy pequeñitas, eh? 277 00:15:19,760 --> 00:15:22,400 GPT cinco, por ejemplo, puede tener trillones de parámetros. 278 00:15:22,400 --> 00:15:26,880 Estamos muy lejos del tamaño y cuando estamos tan lejos del tamaño, 279 00:15:26,880 --> 00:15:30,120 pues podemos pensar también que la calidad no va a ser eh 280 00:15:30,240 --> 00:15:33,160 tan buena como utilizar estos modelos comerciales. 281 00:15:33,160 --> 00:15:35,880 Entonces un poco la conclusión a la que tenéis que quedaros 282 00:15:35,880 --> 00:15:38,880 modelos comerciales hoy en día para programación eh 283 00:15:39,520 --> 00:15:43,240 prácticamente necesarios modelos abiertos, vais a tener muchas, 284 00:15:43,360 --> 00:15:47,200 muchas limitaciones, además de necesitar vuestro propio propio hardware, 285 00:15:47,720 --> 00:15:51,000 sobre todo cuando vamos a hacer cosas cada vez más más complicadas. 286 00:15:51,600 --> 00:15:53,320 Ya, eh, vale. 287 00:15:53,320 --> 00:15:54,480 ¿Qué recursos? Ya veo. Por aquí. 288 00:15:54,480 --> 00:15:57,280 ¿Alguna pregunta en el chat? Esto es. Esto es interesante. 289 00:15:57,280 --> 00:16:01,000 ¿Que recursos se necesita para correr en local un modelo 70 B? 290 00:16:01,400 --> 00:16:05,600 ¿Vale, os enseño muy rápidamente el el una formulita muy sencilla 291 00:16:05,600 --> 00:16:09,480 para calcular el tamaño eh 70 millones de parámetros 292 00:16:09,480 --> 00:16:13,440 es pues cada parámetro al final se va a codificar eh? 293 00:16:13,680 --> 00:16:16,440 Como poco con dos bytes de información. 294 00:16:16,440 --> 00:16:21,640 Entonces con 70 millones de parámetros necesitamos ponerle un por dos 140 295 00:16:21,960 --> 00:16:24,520 y billones. Se va a transformar a gigas. 296 00:16:24,520 --> 00:16:27,640 Entonces vamos a necesitar una GPU con unos 140 gigas 297 00:16:27,640 --> 00:16:32,480 de RAM de RAM, eh, GPUs con 140 gigas de RAM, 298 00:16:32,880 --> 00:16:36,200 eh, ahora mismo pueden estar por el precio de 20.000 €. 299 00:16:36,200 --> 00:16:39,200 Para entendernos, puede ser una H 200. 300 00:16:39,480 --> 00:16:42,480 Haciendo un cálculo muy muy por encima. 301 00:16:42,480 --> 00:16:45,960 Vale, eh, una H 200 o sino podría ser una 302 00:16:46,320 --> 00:16:49,320 varias a 100 juntas que también valen una pasta, 303 00:16:49,320 --> 00:16:52,920 es decir, que un 70 B necesitas necesitas infraestructura potente. 304 00:16:53,440 --> 00:16:56,480 Si ya nos vamos a modelos más pequeñitos, pues eh, Incluso hay modelos 305 00:16:56,480 --> 00:17:01,800 que puedes cargar en tu propia RAM sin GPU, pero son modelos de un tamaño 306 00:17:01,800 --> 00:17:05,160 muy muy pequeño, lo cual las prestaciones no son tan buenas. 307 00:17:06,000 --> 00:17:09,440 Bien, esto igual dentro de unos años, pues al igual que evoluciona 308 00:17:09,440 --> 00:17:10,720 la IA evoluciona el hardware. 309 00:17:10,720 --> 00:17:13,440 Igual estos 70 vez dentro de unos años lo podemos cargar 310 00:17:13,440 --> 00:17:17,200 en nuestro propio teléfono móvil, pero hoy en día no es así. 311 00:17:17,680 --> 00:17:21,040 Y realmente con un 70 V pues empiezas a tener prestaciones medio 312 00:17:21,040 --> 00:17:25,400 buenas, pero tendríamos que irnos a modelos más grandes todavía 313 00:17:25,400 --> 00:17:30,760 para poder competir tan siquiera con con con los modelos comerciales. 314 00:17:32,480 --> 00:17:35,680 ¿Bien, eh, Algún ejemplito de modelos abiertos? 315 00:17:35,680 --> 00:17:40,200 Igual todos tenemos en mente los llama, tenemos los llena de Google. 316 00:17:40,440 --> 00:17:44,040 ¿Pues también pensar que en Open ella sacó un modelo abierto este GPT 317 00:17:44,040 --> 00:17:48,040 o SS de 28 billones de parámetros, eh? 318 00:17:48,040 --> 00:17:49,040 Pues eh. 319 00:17:49,040 --> 00:17:52,040 Las empresas normalmente ofrecen también algún modelo modelo abierto. 320 00:17:52,360 --> 00:17:53,000 Si está muy bien. 321 00:17:53,000 --> 00:17:57,080 Si sois investigadores y queréis entrar en las tripas del modelo, 322 00:17:57,240 --> 00:17:59,320 pues con modelos comerciales no vais a poder. 323 00:17:59,320 --> 00:18:02,160 Con modelos abiertos Sí, y muchas investigaciones 324 00:18:02,160 --> 00:18:05,160 se hacen con modelos abiertos porque no es tan caja negra. 325 00:18:05,640 --> 00:18:08,760 Realmente no es una caja blanca, es decir, que sepamos todo 326 00:18:09,000 --> 00:18:12,080 como va por dentro, porque esto son redes neuronales muy complejas 327 00:18:12,480 --> 00:18:15,320 y no se puede entender lo que hay dentro. 328 00:18:15,320 --> 00:18:19,880 No se, es un imposible saber porque a esa neurona le ha dado ese peso. 329 00:18:20,400 --> 00:18:24,720 ¿Es decir, que aunque tengamos los pesos de los modelos y podamos descargarlos 330 00:18:25,000 --> 00:18:28,200 después con ellos, pues tampoco vamos a poder hacer muchas cosas, 331 00:18:28,440 --> 00:18:32,520 salvo que nos dediquemos a investigar ese esa línea que hay mucha gente 332 00:18:32,520 --> 00:18:36,800 investigando la sobre eh, Todo lo de entender cómo funcionan los modelos dentro 333 00:18:37,880 --> 00:18:39,120 bien y también 334 00:18:39,120 --> 00:18:42,240 por terminar con modelos abiertos de conozcáis 335 00:18:42,240 --> 00:18:46,080 esta plataforma que seguro que a muchos suena Javi eh? 336 00:18:46,600 --> 00:18:48,960 Javi Félix es prácticamente como un GitHub, 337 00:18:48,960 --> 00:18:51,840 pero para modelos de de inteligencia artificial. 338 00:18:51,840 --> 00:18:53,280 Entonces, cuando la gente entrena un modelo, 339 00:18:53,280 --> 00:18:56,320 estas empresas entrenan un modelo de pesos abiertos. 340 00:18:56,760 --> 00:19:00,360 Lo que hacen es, eh, subirlo a estas, a esta plataforma. 341 00:19:00,400 --> 00:19:02,560 Javi seis y después tú te lo descargas. 342 00:19:02,560 --> 00:19:06,200 Es muy sencillito de de de hacerlo, pero que que suene. 343 00:19:07,080 --> 00:19:09,320 Los modelos comerciales, como digo aquí no es tan siempre 344 00:19:09,320 --> 00:19:12,320 vamos a acceder a ellos a través de sistemas externos, 345 00:19:12,560 --> 00:19:15,680 que es un poco lo que venimos ahora a explicaros aquí. 346 00:19:16,320 --> 00:19:19,320 Nosotros cuando interactuamos con la IA hay dos modalidades de hacerlo. 347 00:19:19,680 --> 00:19:23,520 Vamos a ponernos el gorro de usuario, que sería la que vemos aquí como el uno 348 00:19:23,520 --> 00:19:27,960 aplicación web, que es en el que tú a ver, siempre va a haber un intermediario, 349 00:19:28,240 --> 00:19:31,800 puede ser tu navegador web o puede ser una aplicación de escritorio. 350 00:19:32,000 --> 00:19:32,880 Me da igual, 351 00:19:32,880 --> 00:19:36,760 pero tú no hablas directamente con el RLM, sino que este actúa como intermediario. 352 00:19:37,040 --> 00:19:42,440 Por ejemplo, GPT sería un caso como este en el que tú 353 00:19:42,440 --> 00:19:47,040 hablas a través del navegador con un chat y escuchar lo que hace es hablar con él. 354 00:19:47,040 --> 00:19:50,160 El LM le pasa tu pregunta y el me devuelve la respuesta. 355 00:19:50,760 --> 00:19:53,360 Esto está pensado para usuarios. 356 00:19:53,360 --> 00:19:56,240 En cambio, si nosotros queremos programar algo, 357 00:19:56,240 --> 00:20:00,840 vamos a programar un sistema que queremos que integre la IA dentro. 358 00:20:01,480 --> 00:20:04,040 He aquí lo que vamos a hacer uso son de las APIs, 359 00:20:04,040 --> 00:20:08,520 es decir, nosotros atacamos directamente al modelo y al modelo, pues con él 360 00:20:08,520 --> 00:20:10,800 podemos hacer lo que lo que nos dé la gana. 361 00:20:10,800 --> 00:20:13,800 Esta es la forma en la que nosotros podemos integrar IA en nuestras 362 00:20:13,800 --> 00:20:14,920 aplicaciones. 363 00:20:14,920 --> 00:20:18,080 Pues aquí como programadores realmente tenemos que tener tres gorros. 364 00:20:18,400 --> 00:20:21,120 ¿Uno sería el de usuario eh? 365 00:20:21,120 --> 00:20:23,200 Es decir, ahí ni estoy programando ni nada. 366 00:20:23,200 --> 00:20:26,240 Otro sería el de un programador que está utilizando 367 00:20:26,240 --> 00:20:29,240 la inteligencia artificial para programar. 368 00:20:29,240 --> 00:20:33,840 Ese sería el escenario uno en el que yo utilizo GPT para que me ayude a programar. 369 00:20:34,480 --> 00:20:38,080 Y después tendríamos ese tercer gorro que es Soy un programador 370 00:20:38,080 --> 00:20:41,080 y además estoy integrando la inteligencia artificial 371 00:20:41,160 --> 00:20:44,480 como parte de mi código, como parte de mi proyecto. 372 00:20:44,760 --> 00:20:46,240 Pues imaginaros un 373 00:20:46,240 --> 00:20:49,440 si queréis hacer vosotros un chatbot para una asignatura vuestra, 374 00:20:49,800 --> 00:20:53,760 pues lo que vais a tener que hacer es uso de la API del modelo 375 00:20:53,760 --> 00:20:57,680 que queramos de forma que en si yo le pregunto 376 00:20:57,880 --> 00:21:01,080 dime los contenidos de programación de mi asignatura, 377 00:21:01,440 --> 00:21:05,680 pues esto atacará a una base de datos vuestra que tendréis desplegada. 378 00:21:05,680 --> 00:21:09,360 Esa base de datos de alguna forma extraerá los datos relevantes a programación 379 00:21:09,600 --> 00:21:13,200 y esos datos se los puedo pasar al LLM para que la LM intente responder 380 00:21:13,200 --> 00:21:13,680 la pregunta. 381 00:21:13,680 --> 00:21:16,680 Pues dime lo que está relacionado con JavaScript de mi programación. 382 00:21:16,960 --> 00:21:21,160 ¿El LM recibe la información en texto crudo eh? 383 00:21:21,200 --> 00:21:23,520 Y puedes ir a por ti. Todo lo que me has pasado. 384 00:21:23,520 --> 00:21:26,640 Esto es lo que tiene más sentido o de todo lo que me has pasado. 385 00:21:26,640 --> 00:21:28,920 Quiero que me generes una pregunta tipo test, 386 00:21:28,920 --> 00:21:31,720 pues tú le pasas el LM, pasa los contenidos de la asignatura. 387 00:21:31,720 --> 00:21:36,040 La pregunta genera una pregunta tipo test y el lo que te va a devolver 388 00:21:36,040 --> 00:21:39,400 es con su capacidad de entender lenguaje natural. 389 00:21:39,400 --> 00:21:42,480 Entender código te devuelve, pues imaginaros 390 00:21:42,480 --> 00:21:45,480 esta pregunta tipo test y tú ya se la presentas al usuario. 391 00:21:46,080 --> 00:21:48,080 Pero hay que tener claro estos gorros diferentes. 392 00:21:48,080 --> 00:21:52,200 Usar la IA para programar o integrar la IA como parte de mi proyecto, 393 00:21:52,200 --> 00:21:56,960 como una pieza nueva de software aquí en este taller es el gorro de. 394 00:21:56,960 --> 00:22:01,160 Vamos a usar la IA para programar, pero tener claro que la gente ya lo está 395 00:22:01,160 --> 00:22:06,760 integrando, sobre todo para esas tareas que son de generación de lenguaje natural. 396 00:22:06,760 --> 00:22:08,360 Entender lenguaje natural, 397 00:22:08,360 --> 00:22:12,480 decir cosas que no son tan deterministas como lo que podíamos hacer anteriormente. 398 00:22:13,800 --> 00:22:15,320 ¿Bien, 399 00:22:15,320 --> 00:22:16,800 eh? Mmm. 400 00:22:16,800 --> 00:22:21,480 La capa que tenemos aquí de utilizar la aplicación web 401 00:22:21,480 --> 00:22:22,840 con porcentaje PT Aquí 402 00:22:22,840 --> 00:22:26,400 hay dos modalidades modalidad gratuita que me dan los operadores comerciales, 403 00:22:26,880 --> 00:22:30,240 que esto sobre todo está pensado pues para usar chat GPT solo para 404 00:22:30,280 --> 00:22:34,280 haciéndole preguntas o tú le haces una pregunta sobre código y te lo responde. 405 00:22:34,880 --> 00:22:39,200 Después está la de usar eh la la IA para ayudarte a generar código, 406 00:22:39,200 --> 00:22:42,640 que también es dentro de este abanico en el que tú, 407 00:22:43,080 --> 00:22:46,640 eh, le preguntas al chat GPT oye completamente 408 00:22:46,680 --> 00:22:50,240 esta parte del código de mi aplicación y chat, GPT o el que sea 409 00:22:50,240 --> 00:22:54,160 tiene acceso a tu código y te modifica directamente las líneas. 410 00:22:54,640 --> 00:22:58,080 ¿Aunque aquí hay un intermediario, en estos escenarios es donde os digo que 411 00:22:58,080 --> 00:23:02,120 normalmente necesitas una suscripción, es decir, pagar para poder hacer uso 412 00:23:02,560 --> 00:23:06,240 uso de esto en otros escenarios eh gratuitos? 413 00:23:06,240 --> 00:23:07,920 Pues ahí simplemente son preguntas. 414 00:23:07,920 --> 00:23:09,520 Respuesta Aquí ya te lo integran. 415 00:23:09,520 --> 00:23:13,960 El código y en el API aquí si o si hay que pagar por token, 416 00:23:13,960 --> 00:23:17,440 es decir, por cada token que tú generas te van facturando. 417 00:23:17,840 --> 00:23:21,120 Entonces si tu aplicación, como la que hemos dicho de generar de preguntas 418 00:23:21,120 --> 00:23:24,760 tipo test por cada token que está te va generando e incluso también 419 00:23:24,760 --> 00:23:27,760 los tokens que tú le vas pasando, es decir, el contenido que le vas pasando 420 00:23:27,960 --> 00:23:30,480 te van facturando igual 1 millón de tokens. 421 00:23:30,480 --> 00:23:32,360 ¿Pues te puede valer, eh? 422 00:23:32,360 --> 00:23:33,480 ¿Pensar que 1 millón de toques se 423 00:23:33,480 --> 00:23:37,160 puede simplificar a unas 600.000 palabras aproximadamente, eh? 424 00:23:37,480 --> 00:23:39,240 Pues un euro, un dólar. 425 00:23:39,240 --> 00:23:40,440 Todo depende del modelo. 426 00:23:40,440 --> 00:23:43,440 Aquí hay un abanico de precios también, también muy grande. 427 00:23:43,520 --> 00:23:47,240 ¿Entonces hay que tener claro esas, esas formas de operar 428 00:23:47,800 --> 00:23:51,320 y no liarnos, porque mucha gente al principio se se lía 429 00:23:51,600 --> 00:23:53,600 y saber que siempre que vayamos a utilizar la API 430 00:23:53,600 --> 00:23:57,480 ahí va a haber que pasar por caja y pagar por uso fundamentalmente 431 00:23:58,560 --> 00:24:01,560 bien de lo que todo el mundo sabes que es una API, 432 00:24:01,760 --> 00:24:04,960 básicamente una API que lo estamos mencionando todo el rato, eh? 433 00:24:05,200 --> 00:24:07,440 ¿Me sirve como un intermediario, eh? 434 00:24:07,440 --> 00:24:10,680 Yo expongo oye como puedes interactuar conmigo 435 00:24:11,400 --> 00:24:16,040 y eh, puedo enviar código digamos cumpliendo esa especificación. 436 00:24:16,040 --> 00:24:18,360 Y aquí se establecen un poco las reglas de comunicación 437 00:24:18,360 --> 00:24:20,040 entre dos actores diferentes. 438 00:24:20,040 --> 00:24:24,360 Eso es lo que me viene a definir una, una, una API, pues todos los modelos, 439 00:24:24,360 --> 00:24:26,280 todas las empresas han definido su propia API 440 00:24:26,280 --> 00:24:30,640 para que yo pueda interactuar con ellos, pues subiendo su su su estándar. 441 00:24:30,960 --> 00:24:31,880 Y lo bueno es que todas 442 00:24:31,880 --> 00:24:35,040 pues están muy alineadas y migrar de una a otra es muy sencilla. 443 00:24:36,520 --> 00:24:41,040 Bien, y bueno, aquí os enseño también en ejemplos de OpenAI. 444 00:24:41,400 --> 00:24:44,400 Pues cuando tú te creas una cuenta en OpenAI pagando 445 00:24:44,400 --> 00:24:46,880 vas a poder generar lo que se llama API key. 446 00:24:46,880 --> 00:24:51,600 Esto es un código con el que tú cada vez que le hagas una llamada al 447 00:24:51,600 --> 00:24:57,240 LM directamente le tienes que pasar esa API y es la forma en la que te facturan. 448 00:24:57,280 --> 00:24:59,920 Entonces si tienes dinero pues vas a poder seguir haciéndolo 449 00:24:59,920 --> 00:25:02,680 y si no tienes dinero pues te van a decir que se te ha agotado. 450 00:25:02,680 --> 00:25:04,120 Tus tus créditos. 451 00:25:04,120 --> 00:25:05,360 Eso es lo que se llama a Picky. 452 00:25:05,360 --> 00:25:08,360 ¿Y en muchas herramientas, cuando lo programes, eh? 453 00:25:08,560 --> 00:25:10,560 Y que usen el M es lo que vas a tener que pasar. 454 00:25:10,560 --> 00:25:11,640 Es vuestra API. 455 00:25:11,640 --> 00:25:14,720 Y he aquí una cosa que me gusta siempre contar, 456 00:25:14,720 --> 00:25:17,720 aunque no es directamente relacionado con este 457 00:25:18,200 --> 00:25:21,440 eh eh, con este curso es para aquellos 458 00:25:21,440 --> 00:25:24,840 que desarrolláis herramientas que integran la IA. 459 00:25:25,200 --> 00:25:25,560 ¿Aquí, 460 00:25:26,520 --> 00:25:28,200 eh? Por ley 461 00:25:28,200 --> 00:25:32,040 tú no le puedes pedir al usuario que defina su API de Open aquí. 462 00:25:32,160 --> 00:25:33,720 Eso en España no está permitido. 463 00:25:33,720 --> 00:25:35,720 En Europa no está permitido. ¿Por qué? 464 00:25:35,720 --> 00:25:39,440 Porque de alguna forma esa API que va a pasar por vuestro servidor, 465 00:25:39,920 --> 00:25:41,280 entonces si pasa por vuestro servidor, 466 00:25:41,280 --> 00:25:44,960 estáis teniendo como una contraseña de otra persona, de otro servicio. 467 00:25:45,280 --> 00:25:46,960 Eso está totalmente prohibido. 468 00:25:46,960 --> 00:25:52,120 La única forma que hay de hacerlo legal es que tu servicio. 469 00:25:52,120 --> 00:25:55,360 Imaginaros que yo quiero hacer una aplicación que se llama OpenAI, 470 00:25:55,680 --> 00:25:58,880 pues yo tengo que facturar yo a mis usuarios 471 00:25:59,480 --> 00:26:02,480 y yo les creo unas APIs de mi aplicación 472 00:26:02,640 --> 00:26:06,640 y mi aplicación utiliza una única API Key contra OpenAI que tengo yo. 473 00:26:07,600 --> 00:26:08,840 Vale, este. 474 00:26:08,840 --> 00:26:12,200 Este problema se lo ha visto mucha gente y supongo que aquí muchos programas. 475 00:26:12,680 --> 00:26:13,680 Pues tener eso claro. 476 00:26:13,680 --> 00:26:17,640 No le puedes pedir la API Key de un servicio externo a ninguna persona. 477 00:26:18,080 --> 00:26:20,400 Tenéis que hacer un sistema intermediario. 478 00:26:22,720 --> 00:26:23,880 ¿Bien, eh? 479 00:26:23,880 --> 00:26:26,160 Bueno, aquí tenéis otro ejemplo con con Yamil. 480 00:26:26,160 --> 00:26:29,320 Hoy en día Minar pues lo funciona un poco, un poco igual 481 00:26:29,400 --> 00:26:32,520 vas a tener que crearte una cuenta y te van a dar la capacidad 482 00:26:32,520 --> 00:26:35,560 de crear APIs para poder poder utilizarlo. 483 00:26:36,360 --> 00:26:39,760 Esto de crear apps porque os sonará también mucho para los que programan, 484 00:26:40,200 --> 00:26:44,160 son simplemente sistemas que lo que hacen es utilizan un LLM 485 00:26:44,640 --> 00:26:48,000 cualquiera y por dentro hacen ellos una aplicación que se comunica con él. 486 00:26:48,160 --> 00:26:51,840 Entonces podríais vosotros, por ejemplo, crear un chat GPT igual que funciona 487 00:26:51,840 --> 00:26:57,480 esta GPT o llamando directamente a el LMS y de alguna forma podría funcionar. 488 00:26:57,480 --> 00:26:59,080 Y vosotros a los clientes como queráis. 489 00:26:59,080 --> 00:27:02,200 O eh, tenéis los las cosas gratuitas. 490 00:27:02,200 --> 00:27:02,840 Esto es un rapper. 491 00:27:02,840 --> 00:27:07,320 ¿Es simplemente como un envoltorio en el que tú utilizas el RM a 492 00:27:07,320 --> 00:27:11,400 través de llamadas de APIs y lo que haces con ese contenido, 493 00:27:11,400 --> 00:27:13,600 pues lo que tú definas como usuario 494 00:27:13,600 --> 00:27:17,160 es fundamentalmente la gente que está haciendo, eh aplicaciones 495 00:27:17,160 --> 00:27:21,720 que integran la IA, lo que están haciendo son rappers más o menos inteligentes, eh? 496 00:27:21,720 --> 00:27:22,720 Por ejemplo, vamos a tener un rapper 497 00:27:22,720 --> 00:27:24,960 que se especialice en generar preguntas tipo test. 498 00:27:24,960 --> 00:27:26,640 Pues eso es un carácter 499 00:27:26,640 --> 00:27:29,160 que os suena el término porque mucha gente lo dice y además 500 00:27:29,160 --> 00:27:31,720 mucha gente lo da con una connotación negativa 501 00:27:31,720 --> 00:27:36,280 porque eh, está como muy eh ligado a que si vas a ser un rapero 502 00:27:36,280 --> 00:27:39,280 va a ser hacer un chat con mucha GPT para cobrarlo más 503 00:27:39,320 --> 00:27:41,120 caro a gente que no tiene ni idea. 504 00:27:41,120 --> 00:27:43,200 Pero realmente esto necesita un rapper. 505 00:27:43,200 --> 00:27:46,800 Puedes hacerlo especializado en una cosa que sí aporte valor. 506 00:27:48,480 --> 00:27:50,480 Bien, más cosas en ingeniería de pronto 507 00:27:50,480 --> 00:27:54,320 esto ocurre en la vida real, es decir, que cuando queremos interactuar con el DM 508 00:27:54,600 --> 00:27:56,720 es importante Los props que hagamos, 509 00:27:56,720 --> 00:27:59,640 pero también va a importar cuando queramos generar código, es decir, 510 00:27:59,640 --> 00:28:03,160 vamos a tener que ser ordenados, vamos a tener que dar requisitos 511 00:28:03,480 --> 00:28:06,640 y la forma en la que demos los requisitos de nuestro código, 512 00:28:06,640 --> 00:28:10,720 pues cuanto mejor sea, mejores resultados vamos a obtener. 513 00:28:11,120 --> 00:28:15,240 ¿Esto es un ejemplo que siempre, eh que siempre enseño, no está 514 00:28:15,240 --> 00:28:19,720 relacionado con código, pero la analogía se entiende muy de forma muy sencilla eh? 515 00:28:19,720 --> 00:28:23,400 ¿Y esto es un poco antiguo ya también, pero es que aquí se veía muy claro, eh? 516 00:28:23,400 --> 00:28:25,680 Le pasamos un acertijo a diferentes LLM. 517 00:28:25,680 --> 00:28:28,760 ¿En este caso un malabarista puede hacer malabarismos con 16 pelotas, 518 00:28:28,760 --> 00:28:30,640 la mitad son de golf, etcétera, etcétera 519 00:28:30,640 --> 00:28:33,360 Y le preguntamos cuántas pelotas de golf azules hay? 520 00:28:33,360 --> 00:28:34,960 Si no le decíamos nada. 521 00:28:34,960 --> 00:28:38,640 Esto que vemos aquí abajo solo el 17,7% de los 522 00:28:38,640 --> 00:28:41,640 LLM que había en ese momento eran capaz de resolverlo. 523 00:28:41,760 --> 00:28:46,480 ¿En cambio, si le añadíamos al final, de pronto algo tan fácil como vamos a pensar 524 00:28:46,480 --> 00:28:50,600 o vamos a desenvolverlo paso a paso, eh? 525 00:28:50,640 --> 00:28:55,440 Los LLM serán capaces de aumentar su rendimiento de un 17,7% de los 526 00:28:55,440 --> 00:28:59,920 que acertaban a un casi 80% en la forma en la que preguntamos es relevante 527 00:29:00,240 --> 00:29:03,920 tanto en preguntas clásicas como cuando hagamos códigos. 528 00:29:04,400 --> 00:29:07,680 Es decir, si le metemos mucha basura, no va a ser capaces de procesar. 529 00:29:08,640 --> 00:29:09,680 ¿Y por otro lado está el 530 00:29:09,680 --> 00:29:13,520 contexto especialmente importante en código, eh? 531 00:29:13,800 --> 00:29:18,240 Esto es que los modelos, eh, para para entendernos, 532 00:29:18,240 --> 00:29:21,240 tienen una memoria de largo plazo y de corto plazo. 533 00:29:21,480 --> 00:29:24,480 La memoria de largo plazo es aquella con la que han sido entrenados. 534 00:29:24,760 --> 00:29:27,440 ¿Entonces todo modelo le puedes preguntar cuál es la capital de España? 535 00:29:27,440 --> 00:29:31,080 Que vas a ver que en Madrid o le puedes preguntar que cuál es la 536 00:29:32,120 --> 00:29:37,040 EH sentencia para hacer if o en JavaScript y te va a pintar 537 00:29:37,040 --> 00:29:40,040 la sentencia para hacer if en JavaScript porque lo ha visto muchas veces. 538 00:29:40,040 --> 00:29:41,680 Es la memoria de largo plazo. 539 00:29:41,680 --> 00:29:45,120 La memoria de corto plazo, que también lo podemos entender como sesión, 540 00:29:45,720 --> 00:29:49,760 es la información que sabe el modelo sobre la conversación que tú estás 541 00:29:49,760 --> 00:29:54,680 teniendo con él o en nuestro caso, sobre el repositorio de mi código. 542 00:29:55,480 --> 00:29:56,680 ¿Un modelo, eh? 543 00:29:56,680 --> 00:29:58,800 No sabe nada del repositorio de mi código, 544 00:29:58,800 --> 00:30:01,800 ni de lo que estoy haciendo ni lo que he hecho previamente. 545 00:30:01,840 --> 00:30:04,200 La única forma de hacerlo es pasárselo. 546 00:30:04,200 --> 00:30:07,560 Estos sistemas que vamos a utilizar, pues van a ir leyendo los ficheros 547 00:30:07,560 --> 00:30:10,560 para enterarse de que hay en ese contenido. 548 00:30:10,680 --> 00:30:14,400 Aquí el problema de esta memoria de corto plazo, que se llama contexto, 549 00:30:14,760 --> 00:30:18,840 es que no es ilimitada, no es tan grande como la de largo contexto. 550 00:30:19,480 --> 00:30:22,480 Llegará un momento en el que incluso la podamos saturar. 551 00:30:22,840 --> 00:30:24,440 ¿Eh? ¿Esto qué relación tiene? 552 00:30:24,440 --> 00:30:27,440 Pues si tengo un proyecto gigantesco, El poder 553 00:30:27,440 --> 00:30:30,600 absorber toda la información de este proyecto no va a ser sencillo. 554 00:30:31,200 --> 00:30:33,680 ¿Ahora mismo estamos con ventanas de contexto, 555 00:30:33,680 --> 00:30:37,960 que es el tamaño de esta, de esta, eh memoria eh? 556 00:30:37,960 --> 00:30:39,520 ¿Muy grandes, eh? 557 00:30:39,520 --> 00:30:43,240 Lo que ocurre es que aunque quepa, eh, es como las personas, 558 00:30:43,240 --> 00:30:45,600 aunque tengamos un cerebro que nos cabe mucha información. 559 00:30:45,600 --> 00:30:47,080 Si te da demasiada información. 560 00:30:47,080 --> 00:30:49,720 A veces establecer las relaciones no es sencillo. 561 00:30:49,720 --> 00:30:53,240 Pues aquí lo que quiero decir es que en proyectos muy, muy, muy grandes. 562 00:30:53,600 --> 00:30:56,880 ¿Vamos a empezar a notar que pues algunas cosas fallan 563 00:30:57,240 --> 00:31:01,280 o que me estás modificando cosas que ya tenía escrito en otro lado, eh? 564 00:31:01,440 --> 00:31:03,480 Hay que tener cuidado con esto del contexto. 565 00:31:03,480 --> 00:31:06,760 Eso por un lado a nivel de funcionalidad y por otro lado a nivel de pasta, 566 00:31:07,280 --> 00:31:11,600 eh, los LLM eh, te van a cobrar por tokens y también te van a cobrar 567 00:31:11,600 --> 00:31:15,240 no solo por los tokens que genera, no solo por el código que genera, sino por 568 00:31:16,240 --> 00:31:16,840 el código 569 00:31:16,840 --> 00:31:19,840 que han utilizado para alimentarse de tu proyecto. 570 00:31:20,000 --> 00:31:23,880 Si tienes un proyecto muy muy grande, pues vas a gastar mucho más rápido 571 00:31:24,240 --> 00:31:28,200 el dinero de tu suscripción, que ese es un proyecto acotado. 572 00:31:28,600 --> 00:31:31,320 Entonces vamos a tener que ser capaces nosotros también de manejar 573 00:31:31,320 --> 00:31:34,400 este contexto, eh, de diferentes formas. 574 00:31:34,720 --> 00:31:36,240 A veces incluso tenemos un modelo, 575 00:31:36,240 --> 00:31:40,280 un proyecto muy grande, pero podemos ir guiando al modelo para que sepa ya, 576 00:31:40,320 --> 00:31:43,320 por ejemplo, que tiene que consultar todo esto en esta carpeta. 577 00:31:43,600 --> 00:31:44,840 Entonces ahí ya le estás acotando. 578 00:31:44,840 --> 00:31:46,440 El modelo ya no va a buscar en todo 579 00:31:46,440 --> 00:31:49,880 tu repositorio, sino que va a buscar en esa carpeta específica 580 00:31:50,240 --> 00:31:53,520 y esto nos va a hacer que nos funcione mejor, porque ella va a buscar las cosas 581 00:31:53,520 --> 00:31:56,880 directamente y va a hacer que ahorremos dinero. 582 00:31:57,040 --> 00:32:00,040 ¿En términos de nuestro suscripción, eh? 583 00:32:00,200 --> 00:32:02,800 De estos dos temas es importante conocernos. 584 00:32:02,800 --> 00:32:05,880 ¿El hacer bien los prompts en términos de programación 585 00:32:05,880 --> 00:32:09,320 y el manejar bien el el el contexto, 586 00:32:10,600 --> 00:32:14,040 eh? Entonces ya vamos a hablar un poquito de para qué modelo utilizo. 587 00:32:14,200 --> 00:32:16,280 ¿Qué plataforma me recomiendas? 588 00:32:16,280 --> 00:32:19,680 Pues diferentes alternativas, benchmarks y arenas. 589 00:32:19,720 --> 00:32:21,960 Vamos a entrar primero con los con los benchmarks. 590 00:32:21,960 --> 00:32:25,480 Esto es un ejemplo de de una pregunta, de un benchmark en la que. 591 00:32:25,720 --> 00:32:28,760 Pues pensar que son como estudiantes a las que le queremos evaluar. 592 00:32:29,240 --> 00:32:33,360 Pues podemos ponerle un ejemplo de programación de Oye, es, eh, 593 00:32:33,760 --> 00:32:36,880 encuéntrame la solución para resolver este problema de programación 594 00:32:37,320 --> 00:32:39,240 y te va a tener que devolver una función. 595 00:32:39,240 --> 00:32:41,040 ¿Vale? ¿Esos son típicos, eh? 596 00:32:41,040 --> 00:32:42,920 Hackatones que tenemos de 597 00:32:42,920 --> 00:32:45,920 de programación en la que tienes que desarrollar algoritmos. 598 00:32:46,080 --> 00:32:50,200 Pues algo parecido puede ser algo más complicado como generarme 599 00:32:50,200 --> 00:32:53,560 una aplicación web completa que incluya estos 600 00:32:53,560 --> 00:32:56,720 campos, pues es otro ejemplo de benchmark para entendernos. 601 00:32:56,720 --> 00:32:58,720 Es como un examen que le hacemos 602 00:32:58,720 --> 00:33:02,160 y aquí hay mucha gente y muchas empresas que lo que se encargan 603 00:33:02,520 --> 00:33:06,840 es de hacer benchmarks completos, es decir, muchas preguntas de este tipo 604 00:33:07,200 --> 00:33:12,000 para poder evaluar de una forma rápida cualquier modelo que salga. 605 00:33:12,000 --> 00:33:15,000 ¿Y hay de una forma así nosotros poder ordenarnos, eh? 606 00:33:15,000 --> 00:33:18,080 Y que tengamos de alguna forma más o menos objetiva 607 00:33:18,360 --> 00:33:21,360 el poder comparar y decir quién es mejor y quién es peor. 608 00:33:21,640 --> 00:33:24,840 ¿Este benchmark es muy famoso en SW eh, 609 00:33:24,960 --> 00:33:28,640 que se le pasan diferentes retos de programación, eh? 610 00:33:28,680 --> 00:33:31,080 ¿Retos de incluso repositorios reales eh? 611 00:33:31,080 --> 00:33:35,280 A través de esos que tienen y se le piden que sean capaces de, 612 00:33:36,360 --> 00:33:37,920 eh, de resolverlo. 613 00:33:37,920 --> 00:33:41,680 Lo bueno de la programación es que nosotros después podemos testearla. 614 00:33:42,040 --> 00:33:42,320 ¿Por qué? 615 00:33:42,320 --> 00:33:45,960 Pues hacemos unos test que esto normalmente lo hacen los benchmarks 616 00:33:46,320 --> 00:33:47,800 de forma manual o asistido, 617 00:33:47,800 --> 00:33:51,800 con programación, pero con alguien viendo que eso está está bien hecho. 618 00:33:52,280 --> 00:33:55,360 Y una vez que tú tienes los test, pues es muy fácil comprobar 619 00:33:55,360 --> 00:33:58,360 si el modelo ha acertado o no acertado. 620 00:33:58,360 --> 00:34:01,360 Tan fácil como ejecutar la la la función que te ha devuelto. 621 00:34:01,840 --> 00:34:03,920 Entonces es una ventaja de la programación. 622 00:34:03,920 --> 00:34:07,320 Y además, esto mismo utilizan los modelos internamente, 623 00:34:07,680 --> 00:34:10,040 eh para ir encontrando soluciones. 624 00:34:10,040 --> 00:34:14,040 A veces se generan sus propios test, prueban si el test lo cumple, pues dicen 625 00:34:14,120 --> 00:34:14,720 vale, pues ya está. 626 00:34:14,720 --> 00:34:17,360 Si no lo cumple dice pues voy a ver porque no lo está cumpliendo. 627 00:34:17,360 --> 00:34:21,720 Y se van realimentando a sí mismos hasta que llegan a la a la solución correcta. 628 00:34:22,160 --> 00:34:25,600 Entonces los benchmarks nos valen sobre todo para elegir elegir modelo 629 00:34:26,480 --> 00:34:27,720 o elegir herramienta. 630 00:34:27,720 --> 00:34:30,040 Pero vamos a empezar primero con con modelos. 631 00:34:30,040 --> 00:34:34,360 Eh Aquí os enseño estos artificial análisis una una web muy famosa 632 00:34:34,360 --> 00:34:38,400 en la que hacen este tipo de de de comparaciones y eh. 633 00:34:38,520 --> 00:34:42,360 Ellos han determinado un índice de codificación con un index 634 00:34:42,680 --> 00:34:43,400 en el que evalúa 635 00:34:43,400 --> 00:34:46,840 modelos en diferentes benchmarks, incluido este que os acabo de enseñar. 636 00:34:47,160 --> 00:34:48,880 Vale, pero lo hacen con varios. 637 00:34:48,880 --> 00:34:50,120 Y aquí os estoy mostrando 638 00:34:50,120 --> 00:34:53,120 esta captura de los últimos modelos que tenemos hoy en día. 639 00:34:53,400 --> 00:34:55,720 Y para que os vaya sonando un poco la nomenclatura. 640 00:34:55,720 --> 00:35:00,960 Tenemos aquí GPT 5.5 el último GPT y aquí entre paréntesis 641 00:35:00,960 --> 00:35:05,080 normalmente viene Medium EH Minimum High x high. 642 00:35:05,760 --> 00:35:08,760 Esto es el nivel de razonamiento. 643 00:35:09,280 --> 00:35:12,120 Los modelos hoy en día pueden razonar entre comillas 644 00:35:12,120 --> 00:35:13,720 lo que entendemos por razonar. 645 00:35:13,720 --> 00:35:15,200 ¿Qué quiere decir razonar? 646 00:35:15,200 --> 00:35:16,320 Razonar quiere decir que se 647 00:35:16,320 --> 00:35:20,120 van realimentando a sí mismos, es decir, van generando contenido 648 00:35:20,120 --> 00:35:23,160 y ese contenido lo van utilizando pues para ir haciendo pruebas. 649 00:35:23,400 --> 00:35:26,120 Entonces imaginaros que le damos un programa muy complejo. 650 00:35:26,120 --> 00:35:30,360 El modelo va a ir resolviéndolo y a medida que lo va resolviendo 651 00:35:30,360 --> 00:35:31,760 pues se va dando cuenta de oye, 652 00:35:31,760 --> 00:35:34,480 pues necesito tirar por aquí, yo necesito tirar por allá. 653 00:35:34,480 --> 00:35:36,400 Más o menos como hacemos las personas, las personas 654 00:35:36,400 --> 00:35:39,400 cuando abordamos un problema no sabemos la solución directamente, 655 00:35:39,480 --> 00:35:43,600 sino que vamos eh desarrollándolo y a medida que obtenemos outputs 656 00:35:43,600 --> 00:35:47,160 con nuestro propio pensamiento, vamos a ir reformulando las cosas, 657 00:35:47,600 --> 00:35:50,400 pues aquí se pueden configurar ese nivel de razonamiento. 658 00:35:50,400 --> 00:35:54,720 ¿Básicamente, cuánto tiempo estás dispuesto a pensar 659 00:35:54,720 --> 00:35:56,480 antes de darme la solución? 660 00:35:56,480 --> 00:35:57,760 Un poco con las personas. 661 00:35:57,760 --> 00:36:00,640 Entonces aquí vemos que hay diferentes 662 00:36:00,640 --> 00:36:02,640 modos que se pueden activar, que luego lo vemos. 663 00:36:02,640 --> 00:36:05,640 Pues quiero que pienses muchísimo tiempo, pues te activo el X, 664 00:36:06,280 --> 00:36:08,400 pues vas a dedicarle mucho, mucho tiempo a pensar. 665 00:36:08,400 --> 00:36:10,320 ¿Obviamente, cuanto más pienses, normalmente 666 00:36:10,320 --> 00:36:14,200 llegas a una solución correcta, aunque no siempre sea el caso, eh? 667 00:36:15,360 --> 00:36:16,280 Entonces aquí vemos un poco 668 00:36:16,280 --> 00:36:21,360 esto es GPT 5.5 de OpenAI, que tiene en esta escala cada escala. 669 00:36:21,680 --> 00:36:23,440 Digamos que se mide de 0 a 100. 670 00:36:23,440 --> 00:36:26,560 El problema es que muchas veces ya vamos saturando las escalas 671 00:36:26,560 --> 00:36:28,080 porque los modelos cada vez son más buenos, 672 00:36:28,080 --> 00:36:30,840 entonces se hacen retos cada vez más complicados. 673 00:36:30,840 --> 00:36:33,840 ¿Pues esta escala de coding index, pues ahora actualmente GPT 5 a 5 674 00:36:33,840 --> 00:36:40,120 en el que escribe tiene 59% de accuracy, el cloud de cuatro ocho max 675 00:36:40,520 --> 00:36:44,480 que han sacado hace poco un 57 Yasmina este de Google 676 00:36:44,760 --> 00:36:48,160 de 23 uno prop 55 eh? 677 00:36:48,600 --> 00:36:51,720 Y si os fijáis, estos tres que vemos aquí son comerciales. 678 00:36:52,440 --> 00:36:55,440 Vale, el primero que ya vimos que no es comercial es Deep Sick, 679 00:36:55,640 --> 00:36:57,840 pero aquí también es muy grande. 680 00:36:57,840 --> 00:36:58,920 Y en Max, 681 00:36:58,920 --> 00:37:02,880 es decir, este no vamos a ser capaces ni siquiera nosotros de desplegarlo 682 00:37:02,880 --> 00:37:06,240 en nuestra infraestructura, porque es demasiado, demasiado grande. 683 00:37:07,080 --> 00:37:07,320 ¿Veis? 684 00:37:07,320 --> 00:37:10,480 Aquí vemos un uno abierto que sí, que nos va a poder caber este 685 00:37:10,480 --> 00:37:13,480 20 billones para un 20 billones. 686 00:37:13,800 --> 00:37:17,840 Pues con un poco de suerte si tenemos GPU ya podemos ejecutarlo 687 00:37:18,200 --> 00:37:23,280 y vemos la diferencia de rendimiento un 19 respecto un 59 que tiene GPT de 5.5. 688 00:37:23,680 --> 00:37:25,520 Aquí es donde se marcan las diferencias. 689 00:37:25,520 --> 00:37:27,360 Obviamente, si vais a hacer cosas muy sencillas, 690 00:37:27,360 --> 00:37:30,360 pues igual 20 billones, o sea, es suficiente. 691 00:37:31,280 --> 00:37:31,520 ¿Bien, 692 00:37:33,000 --> 00:37:34,640 eh? Veo por ahí en el chat si 693 00:37:34,640 --> 00:37:37,640 están disponibles las diapositivas y luego se se colgarán. 694 00:37:38,760 --> 00:37:41,400 Bien, esa es una dimensión en la calidad 695 00:37:41,400 --> 00:37:44,440 que a todos nos interesa, pero no es la única. 696 00:37:45,120 --> 00:37:48,920 Antes de pasar a la siguiente es el tiempo de ejecución de tareas. 697 00:37:49,480 --> 00:37:50,920 ¿Vale, de que me vale que un modelo 698 00:37:50,920 --> 00:37:54,600 sea buenísimo si tardas cinco días en devolverme un Hello world? 699 00:37:55,000 --> 00:37:57,000 Pues también se miden en estos sistemas. 700 00:37:57,000 --> 00:38:00,000 ¿Cuánto tardan en ejecutar una tarea? 701 00:38:00,040 --> 00:38:05,160 Esto depende de cuánta, eh, de la infraestructura física 702 00:38:05,160 --> 00:38:08,960 que tengamos ejemplos más rápidas, CPUs más lentas también del propio modelo. 703 00:38:08,960 --> 00:38:11,680 ¿Si el modelo es muy grande va a tardar más tiempo, eh? 704 00:38:11,680 --> 00:38:16,200 Y también de este nivel de esfuerzo, de razonamiento que le queremos dar. 705 00:38:16,800 --> 00:38:20,000 Entonces vemos por aquí, por ejemplo, el Deep Sick que vimos 706 00:38:20,000 --> 00:38:24,160 que obtenía un rendimiento bastante alto para hacer un modelo abierto, 707 00:38:24,360 --> 00:38:28,440 pero en cambio el tiempo para ejecutar una tarea de media es mucho mayor. 708 00:38:28,920 --> 00:38:31,080 ¿Entonces, si lo ponemos una balanza, si vale, está más 709 00:38:31,080 --> 00:38:34,680 cerca de los comerciales, pero has tenido que pensar mucho, mucho para ello, 710 00:38:35,640 --> 00:38:37,920 eh? ¿Pues otra comparativa que a mí 711 00:38:37,920 --> 00:38:41,760 me interesa a nivel de tiempo esto también influye, eh? 712 00:38:41,800 --> 00:38:44,720 Y el conocer un poco cultura general de modelos, 713 00:38:44,720 --> 00:38:47,720 porque vamos a tener nosotros a veces que elegir a mano 714 00:38:47,960 --> 00:38:51,240 todas las herramientas te dejan automático, pero aún no 715 00:38:51,240 --> 00:38:54,320 está muy bien perfilado eso y muchas veces vamos a tener que elegir a mano. 716 00:38:54,440 --> 00:38:57,680 Entonces tener un poco de cultura general, de saber oye, pues este funciona 717 00:38:57,680 --> 00:39:00,800 bien para esto o este es muy caro 718 00:39:01,160 --> 00:39:04,160 o este tarda mucho, es es relevante. 719 00:39:04,680 --> 00:39:07,920 Y la otra dimensión que queda, que está muy relacionada con el tiempo, 720 00:39:08,320 --> 00:39:10,920 es la del precio precio por tarea. 721 00:39:10,920 --> 00:39:14,680 ¿Cuanto más tiempo, más tokens va a generar, más precio, eh? 722 00:39:14,720 --> 00:39:17,440 ¿Y esto es especialmente relevante hoy en día, eh? 723 00:39:17,440 --> 00:39:22,800 Porque eh, como digo, tenemos que pagar suscripción y esta suscripción está ligada 724 00:39:22,800 --> 00:39:26,560 normalmente al número de tokens que vas generando. 725 00:39:26,880 --> 00:39:31,920 Es decir, igual te dan una bolsa si tú pagas una suscripción de 20 $ al mes 726 00:39:31,920 --> 00:39:34,920 que muchos, lo que el rango de precios que están, 727 00:39:35,240 --> 00:39:37,880 pues igual te dan x tokens. 728 00:39:37,880 --> 00:39:39,880 Pues si vas a resolver una tarea con el modelo 729 00:39:39,880 --> 00:39:43,880 más potente dentro de esa suscripción, pues te vas a agotar los tokens más rápido 730 00:39:44,360 --> 00:39:47,640 e incluso tu tarea igual era tan sencilla que se podía resolver con el modelo 731 00:39:47,640 --> 00:39:50,640 más tonto de esa, de esa plataforma. 732 00:39:50,640 --> 00:39:53,400 Pero si tú eliges siempre el más grande, pues vas a tener esos problemas, 733 00:39:53,400 --> 00:39:55,760 que te vas a quedar sin tokens muy rápido. 734 00:39:55,760 --> 00:39:58,760 Mucha gente se está quejando de esto, de que se quedan sin tokens. 735 00:39:59,280 --> 00:40:01,800 Es verdad que cada vez las empresas 736 00:40:01,800 --> 00:40:06,120 están limitando más el número de tokens que ofrecen en estas suscripciones. 737 00:40:06,560 --> 00:40:07,000 ¿Por qué? 738 00:40:07,000 --> 00:40:08,280 Pues porque no les sale a cuenta. 739 00:40:08,280 --> 00:40:09,200 Ahora mismo las empresas 740 00:40:09,200 --> 00:40:12,600 están yendo a pérdidas, las empresas desarrolladoras de modelos, 741 00:40:12,960 --> 00:40:16,800 entonces es una competición entre ellas, a ver quién es la que sobrevive 742 00:40:16,800 --> 00:40:18,400 para quedarse con el mercado. 743 00:40:18,400 --> 00:40:20,440 ¿Y muchas están yendo a pérdidas, 744 00:40:20,440 --> 00:40:24,360 no para que esas pérdidas, pues como todos sabemos, no se van a poder asumir, eh? 745 00:40:24,440 --> 00:40:25,040 Siempre. 746 00:40:25,040 --> 00:40:28,000 ¿Entonces poco a poco lo que van haciendo es o subiendo 747 00:40:28,000 --> 00:40:31,000 los precios o bajando eh? 748 00:40:31,160 --> 00:40:35,400 En este caso el número de tokens o usos que puedes hacer de ella. 749 00:40:35,680 --> 00:40:39,040 Entonces conocer este coste para mí hoy en día es imprescindible 750 00:40:39,240 --> 00:40:43,640 entonces saber, por ejemplo, que si vamos a utilizar eh modelos de OpenAI, 751 00:40:44,000 --> 00:40:47,880 pues oye, que el GPT de cinco cinco con X high es la leche. 752 00:40:47,880 --> 00:40:51,640 Me vas a resolver el problema, pero igual me puedo ir a un GPT 753 00:40:51,640 --> 00:40:57,080 cinco cinco con Medium y el EH, me vas a durar el doble de tiempo 754 00:40:57,080 --> 00:41:00,360 y me vas a resolver la misma tarea porque mi problema no era tan complejo. 755 00:41:01,040 --> 00:41:01,240 Bien, 756 00:41:02,640 --> 00:41:04,240 pues por un lado tendríamos ahí 757 00:41:04,240 --> 00:41:09,120 los modelos con esas tres vertientes calidad, tiempo y coste. 758 00:41:09,960 --> 00:41:13,160 ¿Y la que me salté aquí, eh, 759 00:41:13,440 --> 00:41:17,120 es que hoy en día convivimos en un ecosistema 760 00:41:17,120 --> 00:41:21,240 en la que no solo es importante el modelo, sino también la herramienta, eh? 761 00:41:21,240 --> 00:41:23,840 Vamos a tener diferentes herramientas para programar 762 00:41:23,840 --> 00:41:27,640 y en cada una de esas herramientas yo voy a poder coger diferentes modelos. 763 00:41:28,200 --> 00:41:32,680 Igual os suena, Por ejemplo cursor vale, aquí veis cursor. 764 00:41:32,720 --> 00:41:36,520 Entonces si os fijáis, cursor es un IDE, es un fork de vs code. 765 00:41:36,520 --> 00:41:40,520 De hecho eh que está especializado para conectarte 766 00:41:40,520 --> 00:41:43,920 a un LLM que para ti es es transparente porque nos ponemos el gorro 767 00:41:44,280 --> 00:41:49,840 de que somos usuarios que generamos código utilizando ella eh decir que 768 00:41:50,040 --> 00:41:54,400 hay algo intermediario, que en este caso es este curso que hace las cosas por mí. 769 00:41:54,800 --> 00:41:56,880 Pues yo en ese curso voy a poder elegir el modelo. 770 00:41:56,880 --> 00:41:57,880 ¿Puedo elegir uno? 771 00:41:57,880 --> 00:42:01,080 Pues cuatro siete, puedo elegir un un composer 772 00:42:01,080 --> 00:42:04,080 dos cinco o puedo elegir un GPT de 5.5. 773 00:42:04,360 --> 00:42:08,880 Te dan ese abanico de la herramienta sería curso y el modelo el que yo quiera, 774 00:42:09,480 --> 00:42:12,520 Pues como herramientas auténticas hay muchas. 775 00:42:12,520 --> 00:42:15,520 ¿Tenemos codex de OpenAI, tenemos cursor, 776 00:42:15,800 --> 00:42:19,520 eh, que es una empresa independiente, tenemos clade code de antrópico, 777 00:42:19,840 --> 00:42:24,800 eh, Tenemos también de anti Gravity de Google, eh? 778 00:42:24,800 --> 00:42:28,480 Y así de las más famosas pues el el GitHub CoPilot 779 00:42:28,600 --> 00:42:32,960 eh, que es el que os vamos a hacerlo ahora mismo, que también es, eh. 780 00:42:33,440 --> 00:42:35,880 Bueno, es integración directa con vs Code. 781 00:42:35,880 --> 00:42:37,520 Entonces aquí vamos a tener dos dimensiones, 782 00:42:37,520 --> 00:42:39,920 por un lado el modelo y por otro lado la plataforma. 783 00:42:39,920 --> 00:42:43,960 De hecho vemos que hay modelos en diferentes plataformas que rinden más 784 00:42:43,960 --> 00:42:45,120 o rinden menos. 785 00:42:45,120 --> 00:42:48,120 Vemos aquí códecs con GPT 5.5. 786 00:42:48,120 --> 00:42:52,440 Medium parece que rinde más que cursor con GPT 5.5. 787 00:42:52,440 --> 00:42:52,840 Medium 788 00:42:54,280 --> 00:42:55,080 Otra dimensión 789 00:42:55,080 --> 00:42:58,840 extra La plataforma en el día a día. ¿Eh? 790 00:42:58,920 --> 00:43:03,360 Realmente lo que vais a estar vosotros tendréis con una plataforma, haréis 791 00:43:03,360 --> 00:43:03,840 pruebas. 792 00:43:03,840 --> 00:43:07,280 Os gustará migrar de una a otra hasta que encontréis alguna que os guste. 793 00:43:07,680 --> 00:43:09,240 Y la realidad es que todas las plataformas 794 00:43:09,240 --> 00:43:12,280 poco a poco también van convergiendo a lo a lo mismo. 795 00:43:12,600 --> 00:43:12,960 ¿Por qué? 796 00:43:12,960 --> 00:43:13,680 Pues porque cada. 797 00:43:13,680 --> 00:43:14,640 Cuando una descubre 798 00:43:14,640 --> 00:43:18,120 algo que funciona muy bien en unos pocos meses, las otras lo copian. 799 00:43:18,680 --> 00:43:22,600 Ese es el el el estado actual hecho aquí, la que marcó un poco 800 00:43:22,600 --> 00:43:26,440 la revolución de todo, eh Inicialmente fue Cursor y después 801 00:43:26,440 --> 00:43:30,360 Claude Code, pues empezó a a comerle, comerle la tostada. 802 00:43:31,040 --> 00:43:32,680 ¿Bien, 803 00:43:32,680 --> 00:43:34,880 es un poco, es a nivel de benchmarks 804 00:43:34,880 --> 00:43:37,880 y a nivel de oye, qué modelo tengo que elegir? 805 00:43:37,920 --> 00:43:41,160 Pues quedaros con esas pinceladas que os va a ayudar mucho. 806 00:43:41,680 --> 00:43:45,040 ¿Y de hecho, para terminar esta gráfica, a mí es de las que más 807 00:43:45,040 --> 00:43:49,200 me gusta porque te pone por un una dimensión en el eje X, 808 00:43:49,240 --> 00:43:55,920 el coste por tarea y el otro el accuracy que tiene el rendimiento, eh? 809 00:43:55,920 --> 00:43:57,640 Si lo pensamos un poquito, 810 00:43:57,640 --> 00:44:00,480 lo que nos interesa es tener sistemas que se encuentren. 811 00:44:00,480 --> 00:44:00,920 Los modelos 812 00:44:00,920 --> 00:44:04,240 que se encuentran en este cuadrante son muy baratos y funcionan muy bien. 813 00:44:04,920 --> 00:44:07,440 Al revés, el peor cuadrante sería este. 814 00:44:07,440 --> 00:44:08,640 Modelos en los que 815 00:44:08,640 --> 00:44:12,080 o sistemas en los que es muy caro y encima el rendimiento es muy bajo. 816 00:44:12,920 --> 00:44:15,480 Entonces esta gráfica también te permite ver de un solo vistazo 817 00:44:15,480 --> 00:44:17,160 comparar las otras que tenemos. 818 00:44:17,160 --> 00:44:20,760 Pues ahora vemos, por ejemplo, que Cloud Code Opus 4.7, Medium 819 00:44:21,120 --> 00:44:24,480 parece que funciona muy bien y encima tampoco es súper caro. 820 00:44:24,680 --> 00:44:27,360 ¿En cambio 4.7 max eh? 821 00:44:27,360 --> 00:44:28,560 Es muy caro y funciona. 822 00:44:28,560 --> 00:44:33,280 ¿Obviamente es el que mejor funciona junto con GPT 5.5 eh? 823 00:44:33,800 --> 00:44:36,800 Pero te vas a comer los créditos muy muy rápido. 824 00:44:37,520 --> 00:44:39,400 ¿Bien, eh? 825 00:44:39,400 --> 00:44:41,880 También tenemos que pensar si estamos haciendo un problema de 826 00:44:41,880 --> 00:44:44,560 programación hiper complejo. He probado con esto no funciona. 827 00:44:44,560 --> 00:44:47,560 Pues entonces igual te merece la pena hacer una entrevista con esto. 828 00:44:48,000 --> 00:44:49,440 Vale, vamos a ver, hay más preguntas. 829 00:44:49,440 --> 00:44:49,960 Yo utilizo 830 00:44:49,960 --> 00:44:53,880 una suscripción de Google Standard con una tarifa fija para generar código. 831 00:44:54,200 --> 00:44:55,480 Básicamente lo que pido 832 00:44:55,480 --> 00:44:58,960 que me genere cientos de programas y le digo paso a paso que tiene que hacer. 833 00:44:59,360 --> 00:45:02,520 Como transmito el coste de la pregunta si mi suscripción es tarifa plana, 834 00:45:02,840 --> 00:45:06,120 Si para nutrir el contexto de corto plazo le paso el código similares 835 00:45:06,120 --> 00:45:09,120 o que tienen ciertas características me sube me baja el coste de en tokens. 836 00:45:09,560 --> 00:45:10,960 Vale. ¿Muy buena pregunta eh? 837 00:45:12,120 --> 00:45:12,480 ¿Nadie 838 00:45:12,480 --> 00:45:15,560 tienes ahora mismo suscripción de Google con tarifa plana? 839 00:45:15,840 --> 00:45:20,640 ¿No existe eso realmente Tienes siempre una bolsa de tokens? ¿Eh? 840 00:45:20,640 --> 00:45:23,840 ¿Luego os lo enseño con VS Code por ejemplo, y con 841 00:45:24,280 --> 00:45:27,120 EH Cloud de Code, eh? 842 00:45:27,120 --> 00:45:27,880 ¿Cómo se ve? 843 00:45:27,880 --> 00:45:30,800 Lo que seguramente ocurra es que no ha sido capaz de 844 00:45:30,800 --> 00:45:34,240 llenar esa bolsa y no le has dado un uso tan tan intensivo. 845 00:45:34,680 --> 00:45:37,440 Pero hoy en día que yo conozca, no hay tarifas 846 00:45:37,440 --> 00:45:40,680 100% eh plano dentro de tarifas muy caras. 847 00:45:40,680 --> 00:45:47,280 Las hay por 20 de euros al mes o por 200 € al mes e incluso la de 200 € al mes. 848 00:45:47,280 --> 00:45:48,320 No tienes tarifa plana. 849 00:45:48,320 --> 00:45:51,680 Igual tienes tarifa plana con modelos muy malos, pero con modelos buenos. 850 00:45:51,680 --> 00:45:55,520 ¿Ya, ya digo yo que no, y lo del contexto también lo vemos luego en vs 851 00:45:55,520 --> 00:45:59,320 Code, que se va viendo como se va, se va llenando eh? 852 00:45:59,360 --> 00:46:00,360 Cuando utilizas el IDE 853 00:46:00,360 --> 00:46:04,200 pues es más complicado de controlar que ley que no, salvo que la especifiques. 854 00:46:04,200 --> 00:46:05,520 Qué parte del código quiere que 855 00:46:05,520 --> 00:46:09,920 que mire eso lo hacemos en la en la demo un poquito más, más tarde. 856 00:46:11,120 --> 00:46:14,400 Pero bueno, este es otro sistema para comparar que es el n arena, 857 00:46:14,400 --> 00:46:17,640 que comparamos diferentes modelos, yo creo que de benchmarking más o menos. 858 00:46:17,640 --> 00:46:21,000 Ya, ya lo tenemos, lo tenemos listo. 859 00:46:21,360 --> 00:46:26,320 Lo realmente importante al final es que vosotros os sintáis cómodos y que no os 860 00:46:26,320 --> 00:46:29,800 detengáis, Es decir, que de vez en cuando probéis algún modelo nuevo 861 00:46:30,120 --> 00:46:34,160 o probéis alguna herramienta nueva, porque esto va evolucionando tan rápido 862 00:46:34,160 --> 00:46:37,800 que si nos paramos en algún momento decimos con esto ya suficiente, 863 00:46:38,040 --> 00:46:42,040 nos vamos a quedar atrás de muchas funcionalidades que surjan ya. 864 00:46:42,120 --> 00:46:44,880 Esto es lo de los modelos de razonamiento que os explique antes 865 00:46:44,880 --> 00:46:47,360 que es lo que se ha hecho es los modelos. 866 00:46:47,360 --> 00:46:51,320 Les dejamos tiempo para pensar y obtenemos mejores, mejores resultados. 867 00:46:51,320 --> 00:46:53,000 Con ello. 868 00:46:53,000 --> 00:46:56,000 ¿Bueno, vamos entonces ya al mundo de los agentes eh? 869 00:46:56,000 --> 00:46:58,640 ¿Muy relacionados con el código, eh? 870 00:46:58,640 --> 00:47:03,480 ¿Que son sistemas como os dije antes, que puede utilizarlos para, eh, 871 00:47:03,480 --> 00:47:07,640 no solo devolverme respuestas, sino para ejecutar acciones, eh? 872 00:47:07,640 --> 00:47:12,680 Y de hecho hoy en los IDEs están integrando ya agentes que ellos mismos 873 00:47:12,680 --> 00:47:17,880 a veces incluso se programan subrutinas para poderte a resolver a ti el problema. 874 00:47:18,120 --> 00:47:20,720 Imagínate que tienes un 875 00:47:20,720 --> 00:47:24,640 una herramienta que quieres hacer, un como vamos a hacerlo un todo list, 876 00:47:24,640 --> 00:47:25,400 es decir, una herramienta 877 00:47:25,400 --> 00:47:29,600 que te permite subir tareas pendientes, marcarlas como hechas, editarlas, 878 00:47:30,040 --> 00:47:32,640 pues tú le puedes decir oye, generan ejemplos 879 00:47:32,640 --> 00:47:35,720 por lo que hace estos sistemas ahora mismo los agentes este. 880 00:47:35,840 --> 00:47:38,840 Pues me voy a generar un script de Python 881 00:47:38,880 --> 00:47:41,520 que va a generar textos aleatorios, eh, 882 00:47:41,520 --> 00:47:45,600 con fechas aleatorias y eh, como me hago un script 883 00:47:45,600 --> 00:47:49,600 puedo ejecutarlo 1 millón de veces y ya tengo 1 millón de tareas. 884 00:47:49,960 --> 00:47:53,280 Esos son los agentes, Es decir, tienen la capacidad de hacer acciones 885 00:47:53,800 --> 00:47:55,920 que después pueden tener un resultado final. 886 00:47:55,920 --> 00:47:59,040 Pues sobre mi código, después ese es que el que ha utilizado él 887 00:47:59,040 --> 00:48:02,040 para generar esos ejemplos se puede borrar y aquí no ha pasado nada. 888 00:48:02,200 --> 00:48:05,200 En lo utiliza solo él internamente para 889 00:48:05,400 --> 00:48:08,400 para cumplir diferentes, diferentes objetivos. 890 00:48:08,400 --> 00:48:11,640 ¿Entonces aquí es la gran revolución, la de los agentes, eh? 891 00:48:11,640 --> 00:48:15,000 Ya no solo para programación, que si es muy grande, sino también 892 00:48:15,000 --> 00:48:18,440 para el mundo mundo real o al uso en alguno cowork 893 00:48:18,800 --> 00:48:22,800 que está pensado, por ejemplo que tú le pasas eh ficheros y 894 00:48:22,840 --> 00:48:27,000 le dices de todos estos ficheros que a mí dame un ppt y te genera un ppt. 895 00:48:27,000 --> 00:48:29,840 Entonces un agente es capaz de hacer tareas, 896 00:48:31,040 --> 00:48:32,720 ver más conceptos. 897 00:48:32,720 --> 00:48:37,640 La primera horita va a ser conceptos y a la segunda horita va a ser de tenemos eh. 898 00:48:38,440 --> 00:48:40,800 ¿Este concepto yo creo es importante que lo conozcáis 899 00:48:40,800 --> 00:48:44,080 cuando vais a utilizar la IA para programar que solo los MSPS? 900 00:48:44,880 --> 00:48:47,920 Pensar que los LLM están pensados para que te devuelvan 901 00:48:48,240 --> 00:48:51,520 texto o código, no que lo ejecuten directamente. 902 00:48:51,760 --> 00:48:54,720 ¿Entonces lo que se ha desarrollado es una especie de protocolo? 903 00:48:54,720 --> 00:48:59,400 No, tampoco es un protocolo, eh, en el que tú puedas a un LLM 904 00:48:59,640 --> 00:49:02,640 decirle cómo interactuar con herramientas externas. 905 00:49:02,760 --> 00:49:08,880 Entonces LLM lo que hace es generar texto y ese texto si detecta necesito ejecutar. 906 00:49:08,880 --> 00:49:12,680 Imaginaros eh enviar un mail por gmail, 907 00:49:13,000 --> 00:49:18,240 por lo que va a hacer es pasarle a un MCP que es esto que os enseño aquí. 908 00:49:18,240 --> 00:49:20,600 Es un servidor que alguien ha picado, 909 00:49:20,600 --> 00:49:23,560 que el servidor dice oye pues te pongo esta API. 910 00:49:23,560 --> 00:49:27,240 Si tú me envías eh esta petición 911 00:49:27,360 --> 00:49:31,560 con esta estructura yo ejecuto esta instrucción, por ejemplo 912 00:49:31,560 --> 00:49:35,600 enviar un email, pues el LM lo que tiene es 913 00:49:36,880 --> 00:49:38,560 acceso a todos 914 00:49:38,560 --> 00:49:43,080 esos información del MCP que tiene conectado estos MCP Servers 915 00:49:43,520 --> 00:49:46,840 y entiende qué tipo de peticiones son las que necesita. 916 00:49:47,120 --> 00:49:51,440 Entonces el LM detecta que para esa tarea tiene que enviar un email. 917 00:49:51,840 --> 00:49:55,800 Lo que va a hacer es generar en su propio texto 918 00:49:55,800 --> 00:50:01,200 la estructura que se espera SMTP Server y ahí se hace a través de un módulo 919 00:50:01,400 --> 00:50:03,600 que tiene implementado ya estos modelos de 920 00:50:03,600 --> 00:50:07,000 oye, si detectas que la output del modelo tiene esta estructura, 921 00:50:07,400 --> 00:50:10,560 pásaselo a este servidor y este servidor ya hace la función. 922 00:50:11,160 --> 00:50:13,400 Para entendernos, es como un intermediario. 923 00:50:13,400 --> 00:50:16,680 Entonces tienes tú que instalarte o crearte MCPS 924 00:50:16,680 --> 00:50:19,680 para conectarlo con sistemas externos. 925 00:50:19,920 --> 00:50:23,640 Casi nunca vas a tener que picarte lo que haces, siempre vas a instalar algún 926 00:50:23,640 --> 00:50:29,000 MSP que ya lo ha hecho el propio Google, en este caso para comunicarte con Gmail, 927 00:50:29,520 --> 00:50:33,000 sea la forma en la que le damos acceso al mundo exterior, 928 00:50:33,480 --> 00:50:36,920 a los a los modelos, sino a los modelos por sí mismo. 929 00:50:36,920 --> 00:50:40,400 No son capaces de enviar un email, tiene que conectarse a herramientas 930 00:50:40,800 --> 00:50:41,760 y esto es lo que nos permite. 931 00:50:41,760 --> 00:50:44,640 MCP es estandarizar un poco todo. Todo ese proceso. 932 00:50:45,800 --> 00:50:49,040 Bien, eh, Los MCP fueron un éxito. 933 00:50:49,320 --> 00:50:52,080 Lo que pasa es que ocurrió que un poco de desorden. 934 00:50:52,080 --> 00:50:54,440 ¿Por qué? Porque tenía una lista entera de MCP. 935 00:50:54,440 --> 00:50:57,440 ¿No sabía muy bien cuándo utilizarlos, Eh? 936 00:50:57,440 --> 00:50:59,200 Se quiso dar un poco orden. 937 00:50:59,200 --> 00:51:03,120 ¿Entonces, para dar orden se creó un nuevo concepto que se llaman skills, 938 00:51:03,560 --> 00:51:06,480 que skills son simplemente ficheros eh? 939 00:51:06,480 --> 00:51:10,200 O carpetitas que contienen como eh, instrucciones de 940 00:51:10,200 --> 00:51:12,000 cómo se realiza una tarea. 941 00:51:12,000 --> 00:51:14,760 ¿Por ejemplo, puedes tener un skill que esté centrada eh? 942 00:51:14,760 --> 00:51:18,040 Puedes enviar correos y esas que tú explicas. 943 00:51:18,040 --> 00:51:20,120 Oye, pues mira, yo quiero que envíes correos 944 00:51:20,120 --> 00:51:23,840 y lo que quiero que pongas siempre es que en el concepto eh, 945 00:51:23,960 --> 00:51:28,480 se lo pongas en mayúsculas y me pongas a mí siempre como copia 946 00:51:28,840 --> 00:51:31,600 y no sé qué no sé cuándo, es decir, como una receta de instrucciones. 947 00:51:31,600 --> 00:51:34,080 Y en el propio skill también le defines. 948 00:51:34,080 --> 00:51:37,960 ¿Tienes acceso a este MCP para poder enviar correos 949 00:51:37,960 --> 00:51:40,960 o tienes acceso a esta herramienta para hacer esta otra cosa? 950 00:51:41,520 --> 00:51:44,520 ¿Son ficheros Markdown casi todos, eh? 951 00:51:44,640 --> 00:51:48,120 Ellos como veis aquí, en el que le especificamos 952 00:51:48,120 --> 00:51:51,120 las reglas de cómo quiero que funcione esa skill, 953 00:51:51,440 --> 00:51:55,880 pero nosotros después podemos invocar un skill directamente como vamos a hacer la 954 00:51:55,880 --> 00:51:58,720 demo y digo mira, quiero que hagas esto y utilices esta skill 955 00:51:58,720 --> 00:52:02,040 o a veces los modelos ya eh, lo que hacen es leer 956 00:52:02,040 --> 00:52:05,040 tu carpeta donde tengas todas las skills de tu proyecto. 957 00:52:05,240 --> 00:52:07,880 En nuestro proyecto vamos a tener una carpeta con skills 958 00:52:07,880 --> 00:52:10,960 y ver si alguna skill es interesante para lo que le estás pidiendo. 959 00:52:11,800 --> 00:52:14,160 Si ya se lo damos nosotros, pues mucho mejor, porque ya le ahorramos 960 00:52:14,160 --> 00:52:18,760 el tiempo de tener que buscar y que incluso a veces no lo encuentre bien. 961 00:52:18,880 --> 00:52:19,760 Eso es una skill. 962 00:52:20,840 --> 00:52:21,280 Y ya por 963 00:52:21,280 --> 00:52:25,680 último, el que está ahora muy de moda son las Command line Interface, 964 00:52:26,520 --> 00:52:30,400 que esto significa que a veces ni siquiera tenemos que crear un MCP 965 00:52:30,880 --> 00:52:35,520 si ya directamente en nuestro ordenador, donde donde estamos ejecutando el código 966 00:52:35,760 --> 00:52:40,440 tenemos instalados ciertos comandos de de de línea de interfaz 967 00:52:40,880 --> 00:52:44,480 entre por ejemplo FMP o GitHub directamente. 968 00:52:44,480 --> 00:52:47,520 ¿Como estos modelos son tan buenos que han sido entrenados con tanto código, 969 00:52:47,920 --> 00:52:51,240 saben cuáles son los comandos de GitHub o de FMP? 970 00:52:51,520 --> 00:52:55,080 Pues puede hacer uso de los comandos que tengas 971 00:52:55,080 --> 00:52:58,440 tú instalado en tu propio en tu propio ordenador. 972 00:52:59,160 --> 00:53:01,440 A veces incluso te proponen ellos instalar cosas. 973 00:53:01,440 --> 00:53:04,560 Dice Oye, mira que para imaginar que quieres hacer una conversión de vídeo 974 00:53:04,800 --> 00:53:10,560 y que no tiene acceso a un MPC, pues igual puede decir oye, te puedo instalar FMP 975 00:53:10,880 --> 00:53:13,440 y si tú le das permiso te va a instalar en tu ordenador 976 00:53:13,440 --> 00:53:16,440 la librería de MPEG y después va a hacer uso de ella. 977 00:53:16,600 --> 00:53:18,400 Esto hay que tener cuidado, no vaya a ser que nos está 978 00:53:18,400 --> 00:53:22,320 algo que no queramos queramos tener, pues está muy de moda utilizar 979 00:53:22,320 --> 00:53:25,600 ya que el M use mi mi propia consola. 980 00:53:27,360 --> 00:53:28,640 Bien, eso a 981 00:53:28,640 --> 00:53:31,640 nivel de conceptos teóricos generales. 982 00:53:32,400 --> 00:53:36,160 ¿Entonces antes de de de empezar con la demo eh? 983 00:53:36,160 --> 00:53:39,880 Os quiero hacer un barrido de todas las herramientas, ya no 984 00:53:39,880 --> 00:53:44,360 de modelos, sino de herramientas que vimos antes que tenéis disponibles hoy en día. 985 00:53:45,600 --> 00:53:46,040 ¿Vale? 986 00:53:46,040 --> 00:53:50,600 Eh, Tenemos por aquí todas ellas clasificadas en función del mmm. 987 00:53:51,000 --> 00:53:55,280 ¿Cómo de supervisada supervisión requiere de la persona, eh? 988 00:53:55,280 --> 00:53:57,480 O cuanto menos aquí arriba. 989 00:53:57,480 --> 00:53:59,960 Supervisión máxima. Un chatbot, por ejemplo. 990 00:53:59,960 --> 00:54:00,880 En un chatbot 991 00:54:00,880 --> 00:54:03,200 nosotros le hacemos una pregunta y nos devuelve el código 992 00:54:03,200 --> 00:54:06,520 y tenemos que copiar el código y pegarlo directamente nosotros en nuestro código. 993 00:54:06,840 --> 00:54:10,560 Eso requiere una intervención manual por parte nuestra muy grande. 994 00:54:10,960 --> 00:54:14,280 Después vamos a tener los IDEs que ya van a estar integrados eh 995 00:54:15,000 --> 00:54:15,960 la IA con ellos 996 00:54:15,960 --> 00:54:18,280 y podemos hacerle preguntas y nos modifica el código, 997 00:54:18,280 --> 00:54:21,280 pero nosotros vemos directamente que líneas me estás cambiando, 998 00:54:21,520 --> 00:54:25,080 puedo yo incluso meter mano en ese código, etcétera, etcétera Es decir, 999 00:54:25,080 --> 00:54:29,160 ya es un escalón un poco más autónomo, pero yo veo el código para entendernos. 1000 00:54:29,760 --> 00:54:32,880 ¿Después aquí tenemos el las herramientas de como es la interfaz 1001 00:54:33,120 --> 00:54:35,200 o incluso integrados en chats eh? 1002 00:54:35,200 --> 00:54:36,600 Como puede ser el WhatsApp. 1003 00:54:36,600 --> 00:54:40,360 Por ejemplo, tú puedes tener un un agente integrado 1004 00:54:40,360 --> 00:54:43,680 en WhatsApp que se conecta a tu código, te haga las modificaciones. 1005 00:54:43,680 --> 00:54:47,200 Yo no soy muy fan de esto, pero bueno, existen esas, esas posibilidades 1006 00:54:47,520 --> 00:54:48,720 y estas herramientas 1007 00:54:48,720 --> 00:54:51,520 son un poco programación de alto nivel, porque tú no estás viendo el código 1008 00:54:51,520 --> 00:54:55,160 directamente, sino que está modificando te lo y te lo crees un poco 1009 00:54:55,360 --> 00:54:59,240 después sí puedes ir a verlo y después ya tenemos el alto más 1010 00:54:59,440 --> 00:55:02,600 el nivel más alto de abstracción, que son generadores de aplicaciones 1011 00:55:03,080 --> 00:55:06,360 en las que está pensado para gente que no sabe nada de programación 1012 00:55:06,360 --> 00:55:09,120 y no van a ver ni una línea de programación. 1013 00:55:09,120 --> 00:55:11,760 Tenemos que pensar que obviamente cuanto más 1014 00:55:11,760 --> 00:55:14,760 control tengamos nosotros, por menos bugs van a ver. 1015 00:55:14,880 --> 00:55:20,080 Mmm, menos se nos va a ir el código, a crear una cosa monstruosa, etcétera. 1016 00:55:21,320 --> 00:55:21,600 Bien. 1017 00:55:21,600 --> 00:55:25,400 Bueno, ya lo otro sería preguntarle al chat GPT directamente y de 1018 00:55:25,440 --> 00:55:26,720 eso es lo que vamos a ver. 1019 00:55:26,720 --> 00:55:29,280 ¿Ahora os enseño algunos ejemplos de los de Microsoft, 1020 00:55:29,280 --> 00:55:34,400 que es el que vamos a usar en en la demo curso que también es muy famoso eh? 1021 00:55:34,800 --> 00:55:38,720 Y es un fork de vs Code windsurf anti Gravity. 1022 00:55:38,720 --> 00:55:42,560 ¿Seguro que suenan o suenan todos ellos eh? 1023 00:55:42,840 --> 00:55:44,680 Ahora cuando termine leo las preguntas que hay en el chat. 1024 00:55:44,680 --> 00:55:46,120 Creo que hay varias. 1025 00:55:46,120 --> 00:55:48,880 ¿Eh? Vs Code es el que vamos a ver ahora mismo. 1026 00:55:48,880 --> 00:55:52,680 Entonces pasamos un poco, un poco de él y los IDEs. 1027 00:55:52,680 --> 00:55:55,840 Bueno, aquí tenéis un poco la teoría, pero vamos a ir a la práctica, que yo 1028 00:55:55,840 --> 00:55:58,840 creo que es mucho, mucho más divertido para verlo. 1029 00:55:58,920 --> 00:56:01,680 ¿Este concepto de Byte Coding que igual os suena eh? 1030 00:56:01,680 --> 00:56:03,120 ¿Sitio muy popular que es? 1031 00:56:03,120 --> 00:56:06,840 ¿Pues esto en vez de programar directamente es pero con lenguaje natural 1032 00:56:06,840 --> 00:56:11,040 y me va devolviendo y voy iterando con la ya es un poco lo que utilizamos eh? 1033 00:56:11,040 --> 00:56:14,040 Hoy en día todo, todo el mundo vale. 1034 00:56:14,320 --> 00:56:16,800 ¿Ahora mismo, por qué no enseñamos eh? 1035 00:56:16,800 --> 00:56:18,440 ¿CoPilot de GitHub? 1036 00:56:18,440 --> 00:56:22,920 Porque existe la suscripción educativa que nos da acceso a poder 1037 00:56:22,920 --> 00:56:26,120 integrar CoPilot con ciertos límites cada vez más severos. 1038 00:56:26,480 --> 00:56:27,480 Pero lo tenéis ahí. 1039 00:56:27,480 --> 00:56:30,240 ¿Entonces, en este enlace podéis canjearlo, eh? 1040 00:56:30,240 --> 00:56:33,480 ¿Hace poco yo es que lo cancelé hace unos meses y justo 1041 00:56:33,480 --> 00:56:37,200 después de canjearlo yo parece que se puso CoPilot un poco duro 1042 00:56:37,560 --> 00:56:41,280 e incluso en algunos sitios vi que se iba a eliminar, pero sí 1043 00:56:41,320 --> 00:56:45,120 que que luego os impartiera un un trocito, eh? 1044 00:56:45,160 --> 00:56:48,760 Justo lo activó ayer y me dijo que lo intentó de 30 formas 1045 00:56:48,760 --> 00:56:51,960 y con la que le funcionó con lo de la el carné de la UPM. 1046 00:56:52,520 --> 00:56:54,360 ¿Sabéis que todos tenemos carnet de la UPM? 1047 00:56:54,360 --> 00:56:58,240 Se puede acceder a él a través de la aplicación móvil 1048 00:56:58,680 --> 00:57:00,640 y con esto a él le funcionó. 1049 00:57:00,640 --> 00:57:05,240 Entonces bueno, eh, que lo tengas en mente para poder activarlo 1050 00:57:06,400 --> 00:57:06,720 bien. 1051 00:57:06,720 --> 00:57:08,960 ¿Herramientas de CFI eh? 1052 00:57:08,960 --> 00:57:11,200 ¿Básicamente lo que te dan es un terminal, eh? 1053 00:57:11,200 --> 00:57:14,920 Y tú vas a interactuar con el LLM a través del del terminal 1054 00:57:14,920 --> 00:57:17,560 y no te enteras mucho del código salvo que quieras forzarte. 1055 00:57:17,560 --> 00:57:19,720 ¿Forzarte a hablarle, 1056 00:57:19,720 --> 00:57:23,080 eh? Luego vamos a ver un poquito también de ellos integrados en el chat. 1057 00:57:23,080 --> 00:57:26,080 Como os dije, puedes integrarlo en Slack, en WhatsApp. 1058 00:57:26,640 --> 00:57:29,640 A mí no me gusta, pero saber que está esa capacidad 1059 00:57:29,920 --> 00:57:33,520 y a generadores de aplicaciones de muy alto nivel pues tenéis v0. 1060 00:57:33,520 --> 00:57:34,800 Lo vamos El reply. 1061 00:57:34,800 --> 00:57:39,000 Esto normalmente se acceden a través de interfaces de aplicaciones web 1062 00:57:39,320 --> 00:57:42,880 y tú no ves el código directamente delegas todo en ello. 1063 00:57:42,880 --> 00:57:46,840 Entonces para hacer cositas como webs o gente que no sepáis programar y queréis 1064 00:57:46,840 --> 00:57:50,120 hacer igual una web o algo muy sencillo, esta se hizo muy recomendable. 1065 00:57:50,120 --> 00:57:53,200 Esto porque no tienes que entender nada, nada de código. 1066 00:57:54,240 --> 00:57:55,720 ¿Bien eh? 1067 00:57:55,720 --> 00:57:58,280 ¿Bueno, más herramientas eh? 1068 00:57:58,280 --> 00:58:01,760 Tenéis aquí mucha documentación, pero yo creo que tampoco es muy muy interesante 1069 00:58:01,960 --> 00:58:02,800 el pararnos mucho. 1070 00:58:02,800 --> 00:58:05,000 ¿Yo creo que es más verlo en demos, eh? 1071 00:58:05,000 --> 00:58:08,000 Esto sí que me gustaría, eh destacar lo que 1072 00:58:08,280 --> 00:58:12,360 no es solo importante generar código, sino también generar documentación. 1073 00:58:12,840 --> 00:58:15,800 El problema más gordo que veo yo en la integración de 1074 00:58:15,800 --> 00:58:20,040 usar la IA para generar código es que te vas generando cada vez más y más 1075 00:58:20,040 --> 00:58:23,920 código que tú no controlas, delegas todo y esto es peligroso. 1076 00:58:23,920 --> 00:58:26,800 Entonces mi consejo es no delegues todo de que te haga todo. 1077 00:58:26,800 --> 00:58:31,120 Si tú poniéndote un una venda los ojos, sino que mires el código, 1078 00:58:31,120 --> 00:58:35,040 que todo esté eh a tu gusto también es muy importante. 1079 00:58:35,040 --> 00:58:35,800 ¿Y un truco muy bueno 1080 00:58:35,800 --> 00:58:39,840 es decirle que te genere documentación de los cambios que ha hecho, eh? 1081 00:58:40,240 --> 00:58:42,560 Que te haga un ritmo muy muy potente, por ejemplo. 1082 00:58:42,560 --> 00:58:44,040 Pero no solo imprime si, sino pues 1083 00:58:44,040 --> 00:58:47,360 de cada módulo que me has hecho explícame qué has hecho y por qué. 1084 00:58:47,960 --> 00:58:49,560 ¿Eh? Es decir, que no le dejemos. 1085 00:58:49,560 --> 00:58:52,520 Venga, vamos a poner y que salga lo que salga. 1086 00:58:52,520 --> 00:58:52,920 ¿Por qué? 1087 00:58:52,920 --> 00:58:55,560 Porque para un MVP ese es para un mínimo producto viable. 1088 00:58:55,560 --> 00:58:58,560 Va a funcionar muy bien, pero después cuando tengas que hacer cambios, 1089 00:58:58,640 --> 00:59:02,280 ahí sí que cuesta, porque va a empezar a modificar ficheros 1090 00:59:02,280 --> 00:59:05,400 y romper otras cosas o va a empezar a crear un nuevo código. 1091 00:59:05,920 --> 00:59:08,040 Cuando ya podría haber reutilizado otro. 1092 00:59:08,040 --> 00:59:11,040 Entonces cierto orden y conocimiento del código. 1093 00:59:11,040 --> 00:59:14,280 Yo creo que es necesario y saber que te está haciendo que no, 1094 00:59:14,800 --> 00:59:17,880 entonces esta parte de generar documentación puede ser muy útil, 1095 00:59:17,880 --> 00:59:22,080 pues para tú mantenerte entendido de que te está bien, ese es mi consejo. 1096 00:59:22,080 --> 00:59:25,120 Pero bueno, aquí vais a ver gente de todo tipo, gente que dice que nada, 1097 00:59:25,120 --> 00:59:29,440 eso ya no vale para nada, o gente al revés que descarta 1098 00:59:29,440 --> 00:59:33,000 utilizar estos sistemas porque no tienen el control 100%. 1099 00:59:33,400 --> 00:59:36,400 Esto ya entra a valoración de cada uno. 1100 00:59:36,400 --> 00:59:37,240 Más cosas que existen. 1101 00:59:37,240 --> 00:59:41,480 ¿Por ejemplo, ahora están integrando eh, check reviews, es decir, que tú puedas 1102 00:59:42,480 --> 00:59:45,240 eh dado un código, pedirle que lo revise 1103 00:59:45,240 --> 00:59:49,440 y vea si hay bugs o vea si está bien escrito, eh? 1104 00:59:49,560 --> 00:59:51,200 También en temas de seguridad. 1105 00:59:51,200 --> 00:59:53,160 Oye, mira a ver si tengo alguna vulnerabilidad 1106 00:59:53,160 --> 00:59:57,080 y va iterando sobre tu código en cosas que no son directamente funcionales 1107 00:59:57,080 --> 01:00:00,080 pero que sí que te ayudan a mejorar tu tu código. 1108 01:00:00,360 --> 01:00:04,200 ¿Hazme lo más ordenado, mira a ver si hay código aquí que sea basura, eh? 1109 01:00:04,280 --> 01:00:05,960 Mira si tengo alguna vulnerabilidad. 1110 01:00:05,960 --> 01:00:09,440 Esto lo están integrando ya los los sistemas también. 1111 01:00:10,280 --> 01:00:12,200 ¿Vale, pues vamos ahora ya con la parte divertida, 1112 01:00:12,200 --> 01:00:16,240 pero antes de ello voy a mirar todo el chat que he visto que había alguna 1113 01:00:16,280 --> 01:00:19,280 alguna pregunta por aquí, eh? 1114 01:00:19,640 --> 01:00:20,360 Interesante. 1115 01:00:20,360 --> 01:00:24,760 ¿He visto que ya que has estado contestando, eh? 1116 01:00:25,720 --> 01:00:28,920 Sí, pero si quieres matizar algo del tema de skills y hay una. 1117 01:00:29,160 --> 01:00:31,640 La segunda pregunta de Alberto yo no la he entendido. 1118 01:00:33,440 --> 01:00:34,920 ¿Cómo se puede crear tu propia skill 1119 01:00:34,920 --> 01:00:38,160 sin que la haya genere a partir de cientos de preguntas del mismo tipo? 1120 01:00:38,640 --> 01:00:39,240 ¿Vale? 1121 01:00:39,240 --> 01:00:42,720 ¿Si eh, lo vemos ahora en la demo, eh? 1122 01:00:42,840 --> 01:00:46,920 ¿Y os digo cómo se puede crear uno una Una es que la mano, eh? 1123 01:00:46,920 --> 01:00:49,920 Por otra cosa que por ahí eh, 1124 01:00:50,480 --> 01:00:53,480 eh, lo del carné Quique lo ha estado sufriendo mucho. 1125 01:00:53,680 --> 01:00:57,080 Luego cuando se conecte él para contaros os puede contar, 1126 01:00:57,480 --> 01:00:59,040 pero creo que subió de todo. 1127 01:00:59,040 --> 01:01:00,440 En la que al final han aceptado. 1128 01:01:00,440 --> 01:01:03,440 Ha sido el carnet de de de UPM. 1129 01:01:03,600 --> 01:01:06,040 ¿Ahí no son muy transparentes, eh? 1130 01:01:06,040 --> 01:01:07,680 Entonces no sé muy bien qué deciros. 1131 01:01:07,680 --> 01:01:10,680 ¿A mí la última vez también me lo aceptaron con el carnet de la UPM, 1132 01:01:11,080 --> 01:01:13,240 eh? Y Deep Wiki que estáis mencionando aquí. 1133 01:01:13,240 --> 01:01:18,440 Sí, es una plataforma, eh, que tú le pones un repositorio de GitHub y te genera una 1134 01:01:18,440 --> 01:01:23,680 wiki directamente con, eh, con el código que tienes en tu en tu repositorio. 1135 01:01:24,640 --> 01:01:25,040 Vale, pues 1136 01:01:25,040 --> 01:01:28,040 vamos a empezar con con la demo. 1137 01:01:28,800 --> 01:01:32,440 Y lo que me gusta aquí en la demo antes de ponerme con ella 1138 01:01:32,440 --> 01:01:35,720 es enseñaros las interfaz y todas las opciones que hay. 1139 01:01:36,640 --> 01:01:39,920 ¿Eh, esto sería ahora mismo vs Code vale? 1140 01:01:39,960 --> 01:01:44,760 ¿Y en VC Code os tenéis que instalar una extensión eh? 1141 01:01:44,760 --> 01:01:47,840 ¿Que vamos a tener por aquí a mi nombre o 1142 01:01:48,040 --> 01:01:51,040 para el otro? 1143 01:01:52,200 --> 01:01:55,440 ¿Se llama CoPilot Chat, está aquí está CoPilot Chat, 1144 01:01:56,000 --> 01:02:01,200 que es para integrar eh, el CoPilot directamente en VC Code, eh? 1145 01:02:01,200 --> 01:02:05,400 ¿Y con esto, eh, lo que os va a decir una vez que lo tengáis, es que inicie 1146 01:02:05,400 --> 01:02:11,280 sesión con vuestra cuenta de de de GitHub, vale? 1147 01:02:11,280 --> 01:02:16,560 Para ello, obviamente tenéis que activar previamente la suscripción. 1148 01:02:16,680 --> 01:02:17,800 De hecho la enseño por aquí. 1149 01:02:17,800 --> 01:02:22,200 ¿Antes de nada, aquí en esta puntocom education es bastante sencillo el proceso, 1150 01:02:22,200 --> 01:02:25,600 pero no es sencillo que te lo aprueben como estamos viendo, eh? 1151 01:02:25,600 --> 01:02:28,480 Y una vez que lo tengas te vas. Deberían aparecer algo. 1152 01:02:28,480 --> 01:02:29,600 Algo como esto. 1153 01:02:29,600 --> 01:02:33,920 ¿Esto es lo que me aparece a mí aquí en Educational Benefits, eh? 1154 01:02:34,200 --> 01:02:37,920 Y vais a ver que te dice hasta cuándo tienes acceso 1155 01:02:37,920 --> 01:02:41,360 a estos beneficios de de educación, que en mi caso me lo dieron por dos años. 1156 01:02:41,360 --> 01:02:44,880 ¿La última vez que lo renové, que fue en enero de 2026 eh? 1157 01:02:44,920 --> 01:02:49,280 ¿Y ahí ya tengo acceso a a todo, a a, a todo, digamos, eh? 1158 01:02:49,360 --> 01:02:54,760 ¿Lo vinculé con mi cuenta de GitHub y en VC code inicie sesión en GitHub, eh? 1159 01:02:54,760 --> 01:02:58,080 ¿Y eso es lo que te dan, eh? Te dan, eh eh. 1160 01:02:58,160 --> 01:03:02,680 Permiten utilizar ciertos modelos que no todos te dan 50 West 1161 01:03:02,840 --> 01:03:06,360 cada mes, aunque a veces lo reinician y puedes volver a tener acceso. 1162 01:03:06,760 --> 01:03:11,120 Te dan integración con MSPS, integración con diferentes IDEs. 1163 01:03:11,120 --> 01:03:14,120 En este caso vamos a utilizar VC Code, eh, 1164 01:03:14,520 --> 01:03:17,520 completar código también, etcétera, etcétera. 1165 01:03:17,680 --> 01:03:20,240 Ahora, ahora vemos diferentes funcionalidades 1166 01:03:20,240 --> 01:03:23,040 y eso es lo que os comentaba que podéis ir viendo. 1167 01:03:23,040 --> 01:03:25,920 Una mini puntualización es que te mando yo el mail. 1168 01:03:25,920 --> 01:03:28,920 Ese es el de GitHub CoPilot Free. 1169 01:03:29,080 --> 01:03:31,000 O sea, esto es lo que permite CoPilot Free. 1170 01:03:31,000 --> 01:03:32,160 Si te consigues el pro 1171 01:03:33,760 --> 01:03:34,440 te lo quitan. 1172 01:03:34,440 --> 01:03:37,720 Estos límites para, por decirlo alguna manera, te permite añadir más 1173 01:03:39,080 --> 01:03:40,360 modelos. 1174 01:03:40,360 --> 01:03:42,280 Vale. Vale, muy bien. 1175 01:03:42,280 --> 01:03:44,640 O sea que esto sería para. Este es el free. 1176 01:03:44,640 --> 01:03:47,360 Este es lo que tiene el 100% de las personas. 1177 01:03:47,360 --> 01:03:47,720 Vale. 1178 01:03:47,720 --> 01:03:50,120 Si encima me parece muy poco de 50. Sí, sí. 1179 01:03:50,120 --> 01:03:51,720 O sea, esto es lo que tiene el 100% de las personas, 1180 01:03:51,720 --> 01:03:54,920 que no es demasiado porque realmente, eh 2000 1181 01:03:55,560 --> 01:03:58,520 Completed Code Completion de estos es muy poquito. 1182 01:03:58,520 --> 01:04:00,160 Cuando empiezas a escribir como cada vez 1183 01:04:00,160 --> 01:04:03,320 va pidiendo esto, el PRO te quita hasta los límites. 1184 01:04:04,160 --> 01:04:06,280 Vale, vale, muy bien. 1185 01:04:06,280 --> 01:04:06,560 Vale. 1186 01:04:06,560 --> 01:04:08,440 Y de hecho, la puntualización que preguntan 1187 01:04:08,440 --> 01:04:11,480 dice para la app del carnet universitario en la UPM nos deja hacer captura. 1188 01:04:11,880 --> 01:04:13,440 Yo me lo he dado de alta. 1189 01:04:13,440 --> 01:04:14,440 ¿Como sale una webcam? 1190 01:04:14,440 --> 01:04:17,440 Pues poniendo el móvil delante y me lo ha admitido 1191 01:04:18,160 --> 01:04:20,040 que comenta Isidoro Martínez en el chat. 1192 01:04:22,680 --> 01:04:24,480 Sí, eso es. 1193 01:04:24,480 --> 01:04:27,880 Vale, Y aquí en CoPilot podéis ver en esta barra de Guija Settings, 1194 01:04:27,920 --> 01:04:32,160 CoPilot Features, eh, los créditos, por ejemplo, que tenía yo ayer, 1195 01:04:32,160 --> 01:04:36,120 pues como fue 1 de julio justo estaba limpio prácticamente. 1196 01:04:36,360 --> 01:04:38,800 Esto es el Batet que que te dan aquí. 1197 01:04:38,800 --> 01:04:41,280 Ahora hablan de ella y credits. 1198 01:04:41,280 --> 01:04:42,840 Habría que ver cómo se computan. 1199 01:04:42,840 --> 01:04:44,880 Pero bueno, desde VC Code también lo vamos a ver. 1200 01:04:44,880 --> 01:04:48,080 Es decir, esto se va a ir agotando y cuando se agote, pues has terminado 1201 01:04:48,080 --> 01:04:51,080 ya tu suscripción del mes o a veces lo que hacen es 1202 01:04:51,280 --> 01:04:55,440 te dan semanalmente y después un también hay un contador mensual. 1203 01:04:55,680 --> 01:04:57,720 Entonces llega un momento que semanalmente lo agotas, 1204 01:04:57,720 --> 01:04:58,560 tienes que parar una semana 1205 01:04:58,560 --> 01:04:59,880 y cuando termina la semana te dan un poquito 1206 01:04:59,880 --> 01:05:02,960 más y después un contador mensual genérico que si lo agotas ya lo 1207 01:05:02,960 --> 01:05:04,000 agotaste para todo el mes. 1208 01:05:05,160 --> 01:05:06,600 Bien, entonces ya vamos entonces. 1209 01:05:06,600 --> 01:05:12,120 Sí, eh, Esta es la atención, como digo que que os recomiendo que verdad 1210 01:05:12,240 --> 01:05:16,640 que os instaléis y CoPilot Chat para para poderlo tener integrado 1211 01:05:16,640 --> 01:05:19,760 y ya nos vamos entonces por aquí a ir enseñándoos todo. 1212 01:05:21,480 --> 01:05:22,040 Lo primero. 1213 01:05:22,040 --> 01:05:24,600 Como digo, tendréis que iniciar aquí sesión de. 1214 01:05:24,600 --> 01:05:29,400 Ya tengo iniciado con mi cuenta de GitHub y ahí ya te mapea. 1215 01:05:29,760 --> 01:05:31,080 ¿Y cómo sabes que te mapea? 1216 01:05:31,080 --> 01:05:34,320 ¿Pues aquí abajo veis este botoncito, 1217 01:05:35,520 --> 01:05:37,960 eh? ¿Este botoncito, eh? 1218 01:05:37,960 --> 01:05:41,480 ¿De significa que es CoPilot y que lo tienes, 1219 01:05:42,320 --> 01:05:45,520 eh, que lo tienes activado y de hecho te dice los créditos que 1220 01:05:45,520 --> 01:05:49,760 que has usado y me dice que a mí me resetean el 1 de julio, 1221 01:05:49,760 --> 01:05:54,320 es decir, el próximo mes y que ya ha utilizado el 17% eh? 1222 01:05:54,480 --> 01:05:59,600 De hecho este 17% fue ayer para hacer la prueba que os voy a enseñar 1223 01:05:59,600 --> 01:06:03,920 o enseñar ahora, pero esto se va agotando y cada vez se agota, se agota más rápido. 1224 01:06:03,920 --> 01:06:04,520 Esa es la realidad. 1225 01:06:05,640 --> 01:06:06,480 Eso por un lado, y aquí 1226 01:06:06,480 --> 01:06:09,480 podéis ver un poco, eh, Tu estado actual. 1227 01:06:09,640 --> 01:06:12,240 ¿Después aquí arriba, cuando lo tengáis activado, 1228 01:06:12,240 --> 01:06:15,240 ves este bocadillo que tiene unas estrellitas? 1229 01:06:15,480 --> 01:06:17,080 Esto es lo más interesante. 1230 01:06:17,080 --> 01:06:20,160 Esto se llama, eh, chat, todo el chat 1231 01:06:20,680 --> 01:06:23,520 y aquí es donde vais a poder interactuar 1232 01:06:23,520 --> 01:06:27,560 con el el sistema directamente. 1233 01:06:27,920 --> 01:06:30,920 Entonces aquí cosas que nos van a interesar. 1234 01:06:31,120 --> 01:06:33,960 ¿Estas son las sesiones, vale? 1235 01:06:33,960 --> 01:06:36,960 Cuando nosotros vayamos hablando con el M. 1236 01:06:37,240 --> 01:06:40,320 ¿Eh? Era lo que os contaba de memoria de corto plazo. 1237 01:06:40,320 --> 01:06:43,120 ¿A largo plazo, esta sería la memoria de corto plazo 1238 01:06:43,120 --> 01:06:47,120 y esta es una sesión que inicié yo ayer, hace 12 horas, eh? 1239 01:06:47,160 --> 01:06:50,160 ¿Para hacer pruebas, pues si me conecto a ella 1240 01:06:50,360 --> 01:06:53,400 me ha dejado en el punto en el que me había quedado 1241 01:06:53,400 --> 01:06:56,400 ayer con el modelo, es decir, todo lo que el modelo 1242 01:06:56,480 --> 01:07:00,080 le había pasado en esta sesión, pues aquí sigue teniendo la memoria 1243 01:07:00,760 --> 01:07:04,960 y podría seguir a través de este chat pidiéndole cosas, vale? 1244 01:07:05,200 --> 01:07:08,200 Interactúo como si fuese un chatbot cualquiera. 1245 01:07:08,280 --> 01:07:09,760 Bien, esa es la sesión. 1246 01:07:09,760 --> 01:07:14,120 Si quiero una sesión nueva, pues digo mira, es que ya lo que hice eh, ayer, 1247 01:07:14,120 --> 01:07:15,120 pues ya no me interesa. 1248 01:07:15,120 --> 01:07:19,120 ¿Pues puedes crear un iniciar una nueva sesión o eh, 1249 01:07:19,600 --> 01:07:22,560 o como digo, continuar en alguna que quieras eh? 1250 01:07:22,560 --> 01:07:24,640 Por otro lado, más cosas que os van a interesar. 1251 01:07:24,640 --> 01:07:27,160 Este más es para poder adjuntar ficheros. 1252 01:07:27,160 --> 01:07:31,800 Yo nunca lo uso, yo lo utilizo realmente a través de la propia 1253 01:07:32,040 --> 01:07:34,920 eh línea de comandos que si tú pones 1254 01:07:36,400 --> 01:07:38,360 el hashtag 1255 01:07:38,360 --> 01:07:41,360 aquí te va encontrando todos los ficheros. 1256 01:07:41,360 --> 01:07:44,640 Imaginaros que quiero pasarle el index.html, 1257 01:07:45,960 --> 01:07:50,480 pues pones index.html y aquí si os fijáis aparece index.html. 1258 01:07:50,800 --> 01:07:53,800 Pues el modelo cuando le haga la pregunta lo que va a mirar 1259 01:07:53,800 --> 01:07:57,320 fundamentalmente es este index.html 1260 01:07:57,720 --> 01:08:01,200 y este me deja eso porque se me habrá quedado abierto de antes. 1261 01:08:01,240 --> 01:08:02,960 Lo cierro y ya está. 1262 01:08:02,960 --> 01:08:04,520 ¿Veis esta iniciativa? 1263 01:08:04,520 --> 01:08:07,520 De hecho, si yo ahora vengo aquí y abro un fichero, 1264 01:08:07,560 --> 01:08:10,800 vamos a abrir, por ejemplo, este dev punto js Ya 1265 01:08:10,800 --> 01:08:14,840 directamente el fichero que estoy viendo yo también se lo pasa como contexto. 1266 01:08:14,880 --> 01:08:16,920 Este es el contexto. 1267 01:08:16,920 --> 01:08:17,200 Vale. 1268 01:08:17,200 --> 01:08:20,040 Yo cuando le hago una pregunta se va a fijar sobre todo en estos ficheros. 1269 01:08:20,040 --> 01:08:23,920 Entonces, lo que me va a permitir a mí, como os dije antes, de alguna forma 1270 01:08:23,920 --> 01:08:26,760 el centrar el tiro, es decir oye, mira 1271 01:08:26,760 --> 01:08:29,400 que quiero que mi camisa, esto ya te doy el fichero en el que está. 1272 01:08:29,400 --> 01:08:32,400 También si son varios, puedo aquí 1273 01:08:32,440 --> 01:08:35,240 arrastrarlo y me lo pasas al contexto. 1274 01:08:35,240 --> 01:08:37,480 Entonces pasa a tener todo esto en el contexto. 1275 01:08:38,520 --> 01:08:39,600 Bien. 1276 01:08:39,600 --> 01:08:42,600 ¿Más cositas interesantes, eh? 1277 01:08:43,280 --> 01:08:44,720 Los modos. 1278 01:08:44,720 --> 01:08:47,880 Aquí vamos a tener diferentes modos modo agente, 1279 01:08:48,960 --> 01:08:50,600 que es el el fundamental. 1280 01:08:50,600 --> 01:08:52,400 ¿De hecho, esto cómo es una sesión? 1281 01:08:52,400 --> 01:08:54,720 Voy a abrir una sesión nueva. 1282 01:08:54,720 --> 01:08:57,720 Eh, New Chat. 1283 01:08:58,280 --> 01:09:00,440 ¿Eh, No sé porque ahora me 1284 01:09:00,440 --> 01:09:03,440 estás cogiendo solo con la gente, verdad? 1285 01:09:06,520 --> 01:09:07,040 Bueno, o lo 1286 01:09:07,040 --> 01:09:10,200 señalarán mejor en el medio que no sé porque me está cogiendo solo modales. 1287 01:09:10,200 --> 01:09:11,240 Gente. 1288 01:09:11,240 --> 01:09:14,160 ¿Eh? ¿Aquí os debería de aparecer, eh? 1289 01:09:14,160 --> 01:09:17,200 Que ahora lo vemos modo agente, modo, planificación 1290 01:09:17,680 --> 01:09:20,720 y eh, modo de contestar preguntas. 1291 01:09:20,720 --> 01:09:21,720 El de contestar preguntas 1292 01:09:21,720 --> 01:09:24,800 es que no te va a cambiar el código, solo te va a responder preguntas tú. 1293 01:09:24,800 --> 01:09:27,160 Si quieres hacer una pregunta del código sin modificar nada, 1294 01:09:27,160 --> 01:09:28,480 se lo puedes poner ahí. 1295 01:09:28,480 --> 01:09:30,920 El modo agente es aquel en el que 1296 01:09:30,920 --> 01:09:33,920 te va a modificar el código con todo lo que le pases 1297 01:09:34,080 --> 01:09:36,760 y el modo planificación, que ahora lo enseño en la demo. 1298 01:09:36,760 --> 01:09:39,320 ¿Posiblemente no me aparezca porque como ya 1299 01:09:39,320 --> 01:09:42,320 es un proyecto iniciado de ayer, pues igual se ha quedado de alguna forma 1300 01:09:42,320 --> 01:09:45,320 con que eso ya estaba, ya estaba hecho, eh? 1301 01:09:45,560 --> 01:09:48,720 Y en el modo planificación te da un planning que tú debes aceptar 1302 01:09:48,720 --> 01:09:52,560 Si te parece bien, para ir ejecutándolo después 1303 01:09:52,560 --> 01:09:55,800 tenemos en esta segunda pestaña los modelos que quieres utilizar. 1304 01:09:56,440 --> 01:09:59,120 ¿Eh? Aquí a mí me aparecen unos cuantos modelos 1305 01:09:59,120 --> 01:10:00,840 dependiendo la suscripción que tengáis. 1306 01:10:00,840 --> 01:10:03,000 Os aparecerá un modelo u otro. 1307 01:10:04,000 --> 01:10:06,840 Entonces esto es lo que tenemos que tener en cuenta nosotros. 1308 01:10:06,840 --> 01:10:10,680 Oye, eh, que el cinco cuatro es muy caro, 1309 01:10:11,200 --> 01:10:15,040 pues igual puedo irme a un GPT cinco que igual es suficiente para mi tarea. 1310 01:10:15,600 --> 01:10:19,120 O a veces también puedo elegir el el automático 1311 01:10:19,120 --> 01:10:22,280 y en el automático pues elige por ti para entendernos. 1312 01:10:23,080 --> 01:10:23,880 Y aquí esto. 1313 01:10:23,880 --> 01:10:26,880 Medium que veis es el nivel de esfuerzo. 1314 01:10:27,000 --> 01:10:30,360 ¿Si vemos que la tarea no la consigue resolver, pues le podemos 1315 01:10:30,360 --> 01:10:34,800 poner un nivel de esfuerzo, lo cual va a ser más caro, eh? 1316 01:10:34,800 --> 01:10:36,520 Para entendernos, vale. 1317 01:10:36,520 --> 01:10:39,520 ¿Más cosillas por aquí, eh? 1318 01:10:39,760 --> 01:10:42,160 ¿Que os quería enseñar eh? 1319 01:10:42,160 --> 01:10:46,440 ¿Referente a esto, casi mejor os lo enseño en el vídeo y así partimos de 1320 01:10:46,440 --> 01:10:49,960 un proyecto proyecto vacío y lo vamos 1321 01:10:49,960 --> 01:10:53,320 viendo entre todos como lo lo generamos, 1322 01:10:54,600 --> 01:10:54,960 vale? 1323 01:10:54,960 --> 01:10:59,520 Aquí parto de un proyecto vacío, como veis y voy a activar 1324 01:10:59,520 --> 01:11:02,520 aquí abajo el modo en vez de agente. 1325 01:11:03,520 --> 01:11:05,520 Esto ahora les comentaba los tres modos 1326 01:11:05,520 --> 01:11:08,880 que hay en el modo planificación que veis ahí. 1327 01:11:09,280 --> 01:11:11,240 Simplemente me va a hacer un plan. 1328 01:11:11,240 --> 01:11:14,240 Esto es normalmente lo que se suele hacer de primeras entre un plan 1329 01:11:14,600 --> 01:11:17,600 y la aplicación que vamos a hacer nosotros es una list, 1330 01:11:18,360 --> 01:11:21,320 es decir, que me generes una lista de cosas que tengo que hacer 1331 01:11:21,320 --> 01:11:24,320 y pueda marcar como que eso está completado o que no está completo. 1332 01:11:24,840 --> 01:11:29,680 Ahí Cuando le hablas al sistema, si os fijáis, eh, el sistema está pensando 1333 01:11:30,200 --> 01:11:34,840 y me va a proponer pues qué tecnologías quiero utilizar, como quiero hacerlo 1334 01:11:35,080 --> 01:11:37,880 y yo voy a ser el que va a ir seleccionando 1335 01:11:37,880 --> 01:11:41,520 y de hecho, poquito a poco voy a ir viendo también cómo el código se va 1336 01:11:42,560 --> 01:11:45,440 a ir a ir rellenando él poquito a poco. 1337 01:11:45,440 --> 01:11:45,760 ¿Vale? 1338 01:11:45,760 --> 01:11:48,760 Esto que veis abajo que le di aquí clic. 1339 01:11:48,960 --> 01:11:53,400 Esto es el el uso que estoy dándole dentro de esta sesión. 1340 01:11:54,040 --> 01:11:56,640 Por un lado está el número de instrucciones 1341 01:11:56,640 --> 01:12:00,240 que dado el número de mensajes y este es el más interesante, 1342 01:12:00,680 --> 01:12:03,240 que es esa ventana de contexto. 1343 01:12:03,240 --> 01:12:06,600 Eh, Ahora mismo, con esto inicial que le he pasado, estoy ocupando 1344 01:12:06,600 --> 01:12:08,640 un 8% de ventana de contexto. 1345 01:12:08,640 --> 01:12:09,840 Bueno, algo menos. 1346 01:12:09,840 --> 01:12:13,880 Realmente casi todo me lo ha reservado para que me pueda dar respuesta al modelo. 1347 01:12:14,200 --> 01:12:16,560 Estoy ocupando de esto que veis azulito aquí. 1348 01:12:16,560 --> 01:12:20,960 ¿Esos, eh, 15,5 tokens eh? 1349 01:12:20,960 --> 01:12:25,840 Los está ocupando él de información que va bebiendo para su memoria de corto plazo. 1350 01:12:25,880 --> 01:12:28,880 Aquí va a ir bebiendo ficheros, va a ir bebiendo información. 1351 01:12:28,960 --> 01:12:32,800 De hecho, a veces, cuando estamos muy al límite, es este botón 1352 01:12:33,080 --> 01:12:35,200 que normalmente se hace incluso solo que se llama 1353 01:12:35,200 --> 01:12:39,160 Compact Conversation y eso lo que hace es voy a, eh, 1354 01:12:39,400 --> 01:12:43,560 voy a resumir todo lo que tenga, intentar que esta ventana de contexto 1355 01:12:43,560 --> 01:12:47,400 sea más pequeña para que así tú puedas preguntarme más, más cosas. 1356 01:12:47,720 --> 01:12:49,080 Cuando ya está muy saturado, 1357 01:12:49,080 --> 01:12:52,880 lo mejor es empezar una sesión nueva, que la ventana de contexto estará vacía. 1358 01:12:54,080 --> 01:12:56,240 Bien, 1359 01:12:56,240 --> 01:12:58,200 vale, pues sigamos por ahí. 1360 01:12:58,200 --> 01:12:59,840 Esto está en tiempo real. 1361 01:12:59,840 --> 01:13:00,600 Entonces veis que bueno, 1362 01:13:00,600 --> 01:13:04,440 pues que tarda un poquito y está simplemente proponiéndome cosas. 1363 01:13:04,720 --> 01:13:06,240 ¿Lo primero que me ha propuesto aquí 1364 01:13:06,240 --> 01:13:10,400 que es oye, mira que que quieres utilizar como framework React, eh? 1365 01:13:10,400 --> 01:13:12,840 Vanilla JavaScript, lo que quieras. 1366 01:13:12,840 --> 01:13:16,320 Ahí cogí javascript con JavaScript y además 1367 01:13:16,320 --> 01:13:20,520 quiero que crees un backend, un backend con express y el CSS. 1368 01:13:20,520 --> 01:13:24,600 Le estoy diciendo con diferentes herramientas y diferentes librerías 1369 01:13:25,160 --> 01:13:28,880 y aquí ya me has dado una planificación de oye, mira, pues lo voy a hacer 1370 01:13:28,880 --> 01:13:32,760 así y internamente en su memoria ha entendido 1371 01:13:32,760 --> 01:13:35,960 que eh quiere, eh, utilizar. 1372 01:13:35,960 --> 01:13:38,960 ¿Quieres utilizar estas, estas tecnologías? 1373 01:13:39,360 --> 01:13:40,320 Y ahora el sistema. 1374 01:13:40,320 --> 01:13:42,000 Pues voy a darle un poquito para adelante. 1375 01:13:42,000 --> 01:13:45,920 Se lo piensa un poquito, pero va a empezar a ejecutarlo. 1376 01:13:46,200 --> 01:13:46,520 Vale. 1377 01:13:46,520 --> 01:13:50,360 Aquí tiene el plan, le dice Pues mira, lo primero que voy a hacer sabiendo esto es, 1378 01:13:50,560 --> 01:13:53,040 eh, voy a crear una carpeta que se llame Server. 1379 01:13:53,040 --> 01:13:56,880 ¿Voy a crear una carpeta que se llame Client y eh, 1380 01:13:56,920 --> 01:13:59,160 voy a utilizar estas cosas que me has dado tú 1381 01:13:59,160 --> 01:14:02,800 y me da la opción de oye, que quieres empezar la implementación, eh? 1382 01:14:03,840 --> 01:14:06,840 Con diferentes formas de ejecutarlo y lo va a hacer directamente en el IDE. 1383 01:14:07,080 --> 01:14:10,080 ¿Y le digo pues mira, empieza a implementar 1384 01:14:10,080 --> 01:14:13,080 bien, entonces aquí le vamos a a acelerar un poquito 1385 01:14:13,440 --> 01:14:17,160 esto está aquí, el razonando está dice vale, pues voy a hacerlo así, 1386 01:14:17,400 --> 01:14:21,280 voy a añadir un gitignore, voy a añadir un ritmo, está aquí razonando 1387 01:14:21,280 --> 01:14:26,440 y tú puedes ir escribiendo y otras cosas en paralelo, eh? 1388 01:14:26,440 --> 01:14:29,240 Y esto va pues eh, ejecutando todo. 1389 01:14:29,240 --> 01:14:32,480 Pues a medida que lo vaya procesando aquí 1390 01:14:32,480 --> 01:14:35,480 tiene en la planificación de todos los pasos que quiere ir haciendo. 1391 01:14:35,680 --> 01:14:37,800 Y si os fijáis ya aquí veis que me han aparecido, 1392 01:14:37,800 --> 01:14:42,360 pues un gitignore un readme y de hecho se ve un cuadradito gris con un punto negro. 1393 01:14:42,360 --> 01:14:45,360 Eso quiere decir que es código que ha incluido el 1394 01:14:45,360 --> 01:14:48,360 el sistema y que tú puedes revisar 1395 01:14:49,160 --> 01:14:53,200 cómo se gestionan las revisiones, pues cómo se gestiona en Git. 1396 01:14:53,520 --> 01:14:57,120 Te pinta en verde las líneas que ha añadido y en rojo las que ha eliminado. 1397 01:14:57,400 --> 01:15:00,400 Y tú puedes ir a probándolas o no de vez en cuando. 1398 01:15:00,400 --> 01:15:02,400 ¿Aquí te pregunta algo Oye, quieres que esto haga así? 1399 01:15:02,400 --> 01:15:04,440 ¿Y tú le puedes decir que sí o que no? 1400 01:15:04,440 --> 01:15:04,920 Vale. 1401 01:15:04,920 --> 01:15:08,160 Vemos ahí como la conversación se va llenando cada vez con más información 1402 01:15:08,680 --> 01:15:11,840 y eso es lo que tenemos que ir teniendo, teniendo cuidado nosotros. 1403 01:15:11,840 --> 01:15:13,800 Y lo mismo con los créditos. 1404 01:15:13,800 --> 01:15:17,120 Las primeras veces que lo utilices pues lo vas viendo y vas así haciéndonos 1405 01:15:17,120 --> 01:15:20,560 una idea de cuánto cuánto consume hacer X tareas. 1406 01:15:21,000 --> 01:15:26,080 Fijaros que el modelo que estoy utilizando yo eh es GPT cinco mini. 1407 01:15:27,600 --> 01:15:29,000 Bien, 1408 01:15:29,000 --> 01:15:31,280 vale, vamos a dejarlo ahí, que vaya ejecutando cosas 1409 01:15:31,280 --> 01:15:34,280 y respondo eso de que hay en ella. 1410 01:15:34,560 --> 01:15:36,960 ¿Eh? Mark Down, ella es Mark Down. ¿Eh? 1411 01:15:36,960 --> 01:15:40,440 ¿Es un fichero que tú le puedes poner normas, eh? 1412 01:15:40,440 --> 01:15:42,400 ¿Y es lo primero que va a leer, eh? 1413 01:15:42,400 --> 01:15:46,880 Esto lo primero que le VC Code o cualquier otra plataforma va a ser ese CMD. 1414 01:15:47,160 --> 01:15:50,160 Y si tú ahí le especificas oye, que quiero que utilices 1415 01:15:50,320 --> 01:15:53,520 JavaScript versión X, pues va a utilizar esa. 1416 01:15:54,120 --> 01:15:57,360 Bueno, va a utilizar ese contexto y si todo funciona 1417 01:15:57,360 --> 01:16:00,120 bien debería de haber elegido esa esa versión. 1418 01:16:00,120 --> 01:16:03,720 Son como unas instrucciones genéricas para este agente, 1419 01:16:03,720 --> 01:16:06,720 porque esto para entendernos sería un agente. 1420 01:16:06,920 --> 01:16:08,760 Vale, pues bueno, podemos, porque por aquí está 1421 01:16:08,760 --> 01:16:11,760 desarrollando, vamos a avanzar un poquito y ahí ya me terminó. 1422 01:16:12,120 --> 01:16:14,880 Y de hecho, si os fijáis, cuando me termina me 1423 01:16:14,880 --> 01:16:18,360 me ha dicho oye, mira, para ejecutar esto tienes que, eh, 1424 01:16:19,360 --> 01:16:22,360 utilizar estos comandos. 1425 01:16:23,240 --> 01:16:26,240 En los que ahí vaya a terminar. 1426 01:16:31,800 --> 01:16:35,080 ¿El cmd que estés preguntando por ahí de cómo apareció, eh? 1427 01:16:35,160 --> 01:16:38,160 Lo creé yo al principio de todo, pero no incluye nada. 1428 01:16:38,200 --> 01:16:41,160 Lo iba a meter en la demo, pero es que ya me parecía demasiadas cosas. 1429 01:16:41,160 --> 01:16:42,120 Se me queda ahí flotando. 1430 01:16:42,120 --> 01:16:44,640 No tiene, no tiene nada. 1431 01:16:44,640 --> 01:16:46,560 ¿Veis? Ahí me ha devuelto directamente. 1432 01:16:46,560 --> 01:16:49,920 Oye, si quieres probarlo tienes que entrar en la carpeta Cliente, 1433 01:16:49,920 --> 01:16:53,080 entrar a carpeta Server, instalar y ejecutar. 1434 01:16:53,440 --> 01:16:56,520 Esto lo puedes hacer tú manualmente o incluso puedes darle a este botón 1435 01:16:56,760 --> 01:17:00,880 y te lo va a ejecutar directamente en en una terminal. 1436 01:17:00,880 --> 01:17:05,800 O alternativamente, le puedes pedir al sistema que lo haga por ti. 1437 01:17:06,440 --> 01:17:08,000 ¿Eso, eh? 1438 01:17:08,000 --> 01:17:10,920 Hay diferentes formas, formas de hacerlo. 1439 01:17:10,920 --> 01:17:11,080 ¿Ves? 1440 01:17:11,080 --> 01:17:13,680 Ahí te deja copiarlo, etcétera, etcétera. 1441 01:17:13,680 --> 01:17:19,040 Yo lo que le voy a pedir es que que lo que lo ejecute él, él directamente. 1442 01:17:22,560 --> 01:17:25,560 Vale, vamos a avanzar un poquito por acá. 1443 01:17:28,680 --> 01:17:29,400 Vale. 1444 01:17:29,400 --> 01:17:31,400 Le he dicho que sí, que lo ejecute él. 1445 01:17:31,400 --> 01:17:34,480 Y entonces ahora es donde va a tener el agente, 1446 01:17:34,480 --> 01:17:38,200 digamos, la capacidad de, eh, eh, 1447 01:17:38,240 --> 01:17:42,000 ejecutar código no solo de generar código, sino de ejecutar instrucciones 1448 01:17:42,000 --> 01:17:43,320 dentro de mi ordenador. 1449 01:17:43,320 --> 01:17:46,320 Pues hacer el npm install, hacer npm, start, etcétera, etcétera. 1450 01:17:46,560 --> 01:17:48,240 También os quiero mostrar esto. 1451 01:17:48,240 --> 01:17:52,000 Si en algún punto imaginaros que le pedís a la gente que os haga algo 1452 01:17:52,360 --> 01:17:55,520 y no os ha gustado, se puede hacer de una forma muy rápida. 1453 01:17:55,560 --> 01:17:59,240 La conversación restore checkpoint y esto te va a cargar 1454 01:17:59,680 --> 01:18:02,640 todos los cambios que hizo después de este Restore Then paint. 1455 01:18:02,640 --> 01:18:04,280 Es una forma muy rápida de volver para atrás. 1456 01:18:04,280 --> 01:18:07,280 Si algo no os gustó. 1457 01:18:07,800 --> 01:18:08,040 Bien, 1458 01:18:09,360 --> 01:18:09,600 vale. 1459 01:18:09,600 --> 01:18:13,160 Aquí está actualizando el Tulip y si os fijáis aquí, lo que me permite es. 1460 01:18:13,160 --> 01:18:17,760 Oye, mira, es que necesito que ejecutar npm install me dejase ejecutarlo. 1461 01:18:17,880 --> 01:18:21,960 Y yo le voy a decir aquí incluso que, eh, ejecute 1462 01:18:22,880 --> 01:18:25,080 cualquier comando para esta sesión. 1463 01:18:25,080 --> 01:18:27,040 Esto. Cuidado, que es peligroso. 1464 01:18:27,040 --> 01:18:27,520 ¿Para que? 1465 01:18:27,520 --> 01:18:30,360 ¿Pues para este a mí me vale, eh? 1466 01:18:30,360 --> 01:18:34,680 Simplemente le he dejado la capacidad de que pueda ejecutar lo que quiera. 1467 01:18:35,200 --> 01:18:37,240 Si os fijáis yo le di un error 1468 01:18:37,240 --> 01:18:42,240 y en vez de soltar el error y que se queda ahí el sistema es capaz de leer 1469 01:18:42,240 --> 01:18:47,160 el error, entender qué pasa y va a intentar arreglarlo por sí mismo. 1470 01:18:47,760 --> 01:18:49,240 ¿Aquí hay que tener cuidado, porque a veces 1471 01:18:49,240 --> 01:18:52,320 pues para arreglar alguna cosa rompe otras de por medio, 1472 01:18:53,400 --> 01:18:54,160 eh? Por eso el 1473 01:18:54,160 --> 01:18:58,120 dejar siempre 100% de libertad hay que tener que tener ojo. 1474 01:18:58,120 --> 01:19:00,760 Ya he visto yo, por ejemplo, vídeos de gente que se ha cargado 1475 01:19:00,760 --> 01:19:02,400 incluso su ordenador 1476 01:19:02,400 --> 01:19:05,880 por dejarle eliminar ciertas carpetas que no debería haberle dejado liberar. 1477 01:19:06,840 --> 01:19:10,720 Entonces aquí si vemos ya el el el, digamos, el el modelo 1478 01:19:11,280 --> 01:19:15,360 eh, parece que ha arrancado y de hecho me dice aquí oye, que ya tengo arrancado. 1479 01:19:15,360 --> 01:19:19,440 Puedes entrar en esta URL para ver el servidor o en esta url 1480 01:19:19,480 --> 01:19:25,080 para ver el frontend y yo ya podría incluso abrir esto en mi propio navegador 1481 01:19:25,800 --> 01:19:28,240 y he y se me ve. 1482 01:19:28,240 --> 01:19:30,160 Se me vería 1483 01:19:30,160 --> 01:19:30,720 vale. 1484 01:19:30,720 --> 01:19:33,200 De hecho, creo que es lo que vamos a hacer ahora mismo. 1485 01:19:33,200 --> 01:19:34,000 Vale. ¿Veis? 1486 01:19:34,000 --> 01:19:36,160 Aquí, incluso en el IDE, lo tengo integrado 1487 01:19:36,160 --> 01:19:39,360 y esta es la herramienta que me ha hecho él hasta este punto. 1488 01:19:39,360 --> 01:19:44,320 Yo ni siquiera he visto ni código, ni he ni ni cómo funciona el delegado. 1489 01:19:44,880 --> 01:19:48,360 Sin embargo, aquí puedo entrar en cada una de las carpetitas y ver el código 1490 01:19:48,360 --> 01:19:52,520 que me has hecho y ver la estructura que tú me has eh, Me has dejado. 1491 01:19:52,520 --> 01:19:56,680 De hecho, aquí, si os fijáis abajo, hasta que no le de aquí, aquí, aquí, 1492 01:19:57,160 --> 01:20:01,440 como que esos, eh cambios me los dejas ahí en un área de 1493 01:20:02,400 --> 01:20:05,880 eh, modificaciones pero no modificaciones aceptadas 100%. 1494 01:20:06,600 --> 01:20:09,920 Si yo ya estoy de acuerdo, pues le doy aquí a todo o le voy dando aquí 1495 01:20:10,040 --> 01:20:11,440 a las cosas que me interesa, que hagas. 1496 01:20:11,440 --> 01:20:15,000 Y eh, Undo o o ando a las cosas que no 1497 01:20:16,760 --> 01:20:17,400 ves. Aquí 1498 01:20:17,400 --> 01:20:20,400 es donde yo puedo entrar ya ficheros al fichero. 1499 01:20:21,200 --> 01:20:24,200 Ahora, ahora lo enseño. 1500 01:20:31,040 --> 01:20:31,440 Vale. 1501 01:20:31,440 --> 01:20:34,640 ¿Aquí veis, ese es el README y si os fijáis en el Redmi 1502 01:20:35,080 --> 01:20:38,520 me lo pones en verde y esto funciona como funciona, eh? 1503 01:20:39,360 --> 01:20:39,960 ¿Git? 1504 01:20:39,960 --> 01:20:44,200 Realmente puedo decirle que me mantengas esto o que no quiero que se cambie, 1505 01:20:44,200 --> 01:20:47,440 pero ya que es aplicable ya que le voy a dar aquí que todo, 1506 01:20:48,120 --> 01:20:51,120 pero bueno, en un proyecto real pues habrá cosas que igual no me interesen. 1507 01:20:51,120 --> 01:20:56,440 ¿Puedes ir 1 a 1 como veis ahí o como os voy a enseñar aquí abajo eh? 1508 01:20:56,440 --> 01:21:00,000 Este botón Keep ya te hace aceptar los cambios de 1509 01:21:00,000 --> 01:21:03,440 todo esto depende del control que queramos darle 1510 01:21:03,600 --> 01:21:06,600 cada. 1511 01:21:07,440 --> 01:21:10,040 Bien, eh, 1512 01:21:10,040 --> 01:21:12,040 En este yo creo que tampoco había muchas cosas 1513 01:21:12,040 --> 01:21:13,680 más interesantes que os quería enseñar. 1514 01:21:18,080 --> 01:21:21,280 Así. Bueno, eh, esta parte de documentación aquí. 1515 01:21:21,280 --> 01:21:25,120 Lo que le estoy pidiendo, eh, es que. 1516 01:21:27,280 --> 01:21:30,280 Vamos un poquito más palante. 1517 01:21:36,160 --> 01:21:36,880 Le estoy pasando. 1518 01:21:36,880 --> 01:21:39,840 Si os fijáis el README y le voy a pedir que me haga un ritmo 1519 01:21:39,840 --> 01:21:43,800 mucho más completo. ¿Eh? 1520 01:21:44,440 --> 01:21:47,440 Y que me incluya incluso algún diagrama. 1521 01:21:49,080 --> 01:21:50,560 ¿Pero voy a quitar esa línea 1522 01:21:50,560 --> 01:21:53,560 que la había seleccionado, eh? 1523 01:21:54,600 --> 01:21:56,600 Que me incluya algún diagrama que me represente 1524 01:21:56,600 --> 01:22:01,640 las interacciones que tiene para que veáis que no solo es código sino que eh 1525 01:22:01,680 --> 01:22:04,960 también puedes generar diagramas en este caso los diagramas típicos 1526 01:22:04,960 --> 01:22:09,920 que se usan en EH Mark Down son Mermaid eh, que es propio de esto, 1527 01:22:10,240 --> 01:22:14,440 dado que se puede renderizar y aquí lo que me está modificando es ese ritmo 1528 01:22:16,040 --> 01:22:18,360 y ya veremos el resultado que me hace. 1529 01:22:18,360 --> 01:22:21,680 Y esto es lo mismo, habrá leído todo el código que tienes o lo que tenga 1530 01:22:21,680 --> 01:22:26,160 en memoria y eh te genera un README adaptado a tu propio repositorio. 1531 01:22:26,280 --> 01:22:29,320 Esto es muy útil porque permite documentar el código 1532 01:22:29,880 --> 01:22:33,080 y ves estos mermaid que te genera este tipo de gráficos, 1533 01:22:34,680 --> 01:22:37,680 pero lo va a hacer un poquito más grande. 1534 01:22:38,240 --> 01:22:40,800 Y ya tiene tendrías todo mucho más documentado. 1535 01:22:40,800 --> 01:22:41,840 Esto no se puede olvidar. 1536 01:22:41,840 --> 01:22:46,160 Es bueno decirle oye, quiero que, eh, me me actualices 1537 01:22:46,160 --> 01:22:49,240 la documentación y que esté todo, todo, todo actualizado. 1538 01:22:50,080 --> 01:22:51,120 Eso por un lado. 1539 01:22:51,120 --> 01:22:56,760 Ahora ya nos vamos a ir a la segunda, eh forma de interactuar con VC Code. 1540 01:22:56,760 --> 01:22:58,920 Esa fue la primera y principal. 1541 01:22:58,920 --> 01:23:01,920 Y con que os debéis. ¿Eso si no sabéis eh? 1542 01:23:02,040 --> 01:23:05,160 O no os habéis metido en este mundillo, es suficiente. 1543 01:23:05,160 --> 01:23:08,160 Lo que voy a enseñar ahora es un poquito más, más avanzado 1544 01:23:08,600 --> 01:23:11,600 y os lo enseño primero, primero por aquí. 1545 01:23:11,880 --> 01:23:14,200 ¿VC Code ahora permite en este botón 1546 01:23:14,200 --> 01:23:17,200 que veis aquí arriba, Open Intelligent, 1547 01:23:17,320 --> 01:23:19,960 Esto te abre otra herramienta diferente 1548 01:23:19,960 --> 01:23:21,440 en la que prácticamente aquí 1549 01:23:21,440 --> 01:23:24,440 el código pasa a ser algo secundario, aunque puedes venir a verlo, 1550 01:23:24,840 --> 01:23:27,960 no está pensado para que edites, está sobre todo pensado 1551 01:23:28,280 --> 01:23:31,280 para que conectes cosas, le preguntes, 1552 01:23:32,040 --> 01:23:35,040 que te haga transformaciones directas, eh? 1553 01:23:35,360 --> 01:23:37,960 Y esta parte, que es la que me parece más interesante 1554 01:23:37,960 --> 01:23:41,560 que conectes skills o conectes MSPS. 1555 01:23:43,080 --> 01:23:44,760 Pues aquí vemos. 1556 01:23:44,760 --> 01:23:47,440 Voy a hacer un poco más grande esto para que lo veáis. 1557 01:23:47,440 --> 01:23:50,200 Si yo aquí me voy a MSPS, 1558 01:23:50,200 --> 01:23:52,920 aquí podéis incluso ir a un marketplace 1559 01:23:52,920 --> 01:23:55,920 y veis todos los MSPS que existen. 1560 01:23:56,040 --> 01:23:56,840 ¿Vale? 1561 01:23:56,840 --> 01:24:01,200 Entonces os podéis instalar el que queráis en aquí hay que tener cuidado 1562 01:24:01,200 --> 01:24:04,840 porque los MSPS al final lo que estás es accediendo a servidores externos. 1563 01:24:04,840 --> 01:24:07,400 ¿Pues que sea algo legítimo eh? 1564 01:24:07,400 --> 01:24:12,000 Y ya aquí tengo instalado uno para hacer testing y otro para GitLab. 1565 01:24:12,560 --> 01:24:15,000 Es decir, que de alguna forma este MCP 1566 01:24:15,000 --> 01:24:18,800 va a ser capaz de ejecutar comandos que vayan contra GitHub. 1567 01:24:19,280 --> 01:24:21,400 ¿Eh? Lo vamos a ver en en la demo. 1568 01:24:21,400 --> 01:24:23,760 Y por otro lado tenemos aquí las skills. 1569 01:24:23,760 --> 01:24:29,720 ¿Lo que os comentaba de skills que eh, me creas una carpetita donde me defines eh? 1570 01:24:29,720 --> 01:24:30,480 ¿Qué quiero? 1571 01:24:30,480 --> 01:24:33,360 Cómo quiero que te comportes y cómo quiero que utilices algo 1572 01:24:33,360 --> 01:24:35,400 para hacer una tarea muy específica. 1573 01:24:35,400 --> 01:24:38,000 Aquí vamos a ver cómo se instalan ahora. 1574 01:24:38,000 --> 01:24:39,760 Pero esta es una que tengo ya instalada 1575 01:24:39,760 --> 01:24:42,600 y si la vemos, un skill es tan tonto como esto. 1576 01:24:42,600 --> 01:24:47,120 Fundamentalmente es un fichero Markdown en el que explico lo que quiero que hagas. 1577 01:24:47,520 --> 01:24:52,160 Esta skill de Frontend Design es para hacer diseños eh, frontend 1578 01:24:52,440 --> 01:24:54,200 bonitos y profesionales. 1579 01:24:54,200 --> 01:24:56,960 Entonces le explica Oye, pues mira, quiero que utilices esta tecnología, 1580 01:24:56,960 --> 01:25:01,800 quiero que tengas en cuenta estos campos de tipografía, este color, 1581 01:25:01,800 --> 01:25:05,640 este tema, etcétera, etcétera Es decir, ya le dan instrucciones incluso, 1582 01:25:05,640 --> 01:25:08,960 pues aquí le puedes decir quiero que utilices este MFP, 1583 01:25:09,360 --> 01:25:12,360 etcétera, etcétera Son comportamientos predefinidos. 1584 01:25:12,680 --> 01:25:16,760 Esto no te lo crea, te lo crea en esta carpetita que se llama punto agents. 1585 01:25:17,280 --> 01:25:20,600 Cuando lo instalas y la ves aquí Agents skills 1586 01:25:20,800 --> 01:25:23,840 frontend design, vas aquí y aquí. 1587 01:25:23,840 --> 01:25:25,200 Ves ya el código. 1588 01:25:25,200 --> 01:25:28,200 Si me dejas abrir esto 1589 01:25:28,200 --> 01:25:32,400 un poquito más para lo que os acabo, os acabo de enseñar Mark Down 1590 01:25:32,400 --> 01:25:36,360 en el que explicas que quieres que haga incluso que antes no comentabas. 1591 01:25:36,520 --> 01:25:38,600 Me puedo venir a Skills New 1592 01:25:40,480 --> 01:25:42,960 Skills y aquí New skill 1593 01:25:42,960 --> 01:25:47,560 y puedo generarme yo una skill mmm personal 1594 01:25:47,560 --> 01:25:50,640 mía, entonces me la creo por aquí y lo que me va a hacer. 1595 01:25:50,640 --> 01:25:53,640 A ver, ejemplo. 1596 01:25:56,040 --> 01:26:01,480 Si me vas a generar este Mark Down y yo aquí pongo pues eh, 1597 01:26:01,520 --> 01:26:04,520 quiero que te conectes. 1598 01:26:06,240 --> 01:26:07,440 A la API 1599 01:26:07,440 --> 01:26:11,520 de EH OpenEd y me ayudes a generar un texto creativo. 1600 01:26:11,720 --> 01:26:12,840 Pues aquí lo que le estoy diciendo. 1601 01:26:12,840 --> 01:26:13,240 Oye, pues mira, 1602 01:26:13,240 --> 01:26:16,360 cuando invoque esta skill lo que quiero es que te conectes a esta API 1603 01:26:16,360 --> 01:26:19,840 de OpenAI y aquí de alguna forma le vas a tener que especificar. 1604 01:26:19,840 --> 01:26:20,920 Oye, te paso la API 1605 01:26:20,920 --> 01:26:24,720 y de esta forma puedes incluso utilizar SMTP, etcétera etcétera. 1606 01:26:25,400 --> 01:26:26,880 Lo que se me ha creado aquí, 1607 01:26:26,880 --> 01:26:30,280 como veis es un ejemplo de skill que yo voy a poder invocar. 1608 01:26:31,040 --> 01:26:34,320 Pues estas dos cosas que hasta ahora solo quiero que 1609 01:26:34,320 --> 01:26:37,800 os quedéis con el menú de poder conectar MCP y Skills. 1610 01:26:38,240 --> 01:26:39,520 Lo vamos a ver mejor en la demo 1611 01:26:39,520 --> 01:26:43,120 porque así tardo, tarda un poco menos de cómo voy a hacer uso de un MSP 1612 01:26:43,120 --> 01:26:46,120 y cómo vamos a hacer uso de esta skill y cómo la instalamos. 1613 01:26:46,560 --> 01:26:48,960 Entonces me vuelvo para la presentación, 1614 01:26:50,240 --> 01:26:53,240 segundito. 1615 01:26:54,960 --> 01:26:56,160 A ver si la tengo por aquí 1616 01:26:56,160 --> 01:26:59,160 que se me ha ido. 1617 01:27:00,040 --> 01:27:03,040 Para aquí. 1618 01:27:03,960 --> 01:27:06,600 Vamos a darle a play. 1619 01:27:06,600 --> 01:27:07,080 Recordar. 1620 01:27:07,080 --> 01:27:09,480 ¿Partimos de ese futbolista 1621 01:27:09,480 --> 01:27:13,680 y bueno, primero lo que para que veáis que se puede interactuar de otra forma, eh? 1622 01:27:13,720 --> 01:27:17,560 Lo que le voy a pedir aquí es un cambio sobre mi propio, sobre mi propio código. 1623 01:27:21,600 --> 01:27:24,840 Aquí y en concreto, fijaros, ya le estoy pasando el fichero 1624 01:27:25,640 --> 01:27:28,160 en ese en el index.html, 1625 01:27:28,160 --> 01:27:30,640 que es donde pone al final toda la interfaz visual. 1626 01:27:30,640 --> 01:27:35,520 Fundamentalmente lo que le voy a pedir es que me incluya un copyright de la UPM. 1627 01:27:36,240 --> 01:27:36,960 ¿Vale? 1628 01:27:36,960 --> 01:27:39,960 Simplemente que me incluya eso en el footer. 1629 01:27:41,920 --> 01:27:44,040 Y ahora lo que único que va a ser este, 1630 01:27:44,040 --> 01:27:47,560 este sistemita ya como entiende todo el código de la propia sesión, 1631 01:27:48,280 --> 01:27:51,600 ya solo se va a ir a este index.html porque se lo he pasado 1632 01:27:51,600 --> 01:27:54,600 ya se logueado y ya me va a decir oye, mira que ya está. 1633 01:27:54,720 --> 01:27:56,280 ¿Por qué ha tardado tan poco? 1634 01:27:56,280 --> 01:28:00,360 Porque ya le indiqué yo directamente que el fichero que quiero que modifique es ese 1635 01:28:00,360 --> 01:28:04,600 index.html y ahí incluso puede decirme los cambios que me has dado. 1636 01:28:04,920 --> 01:28:07,280 Pues simplemente me ha añadido ese ese footer. 1637 01:28:14,840 --> 01:28:18,000 Bien, el vídeo lo vais a tener también, por eso también lo grabamos en vídeo, 1638 01:28:18,000 --> 01:28:21,000 porque muchas veces os lo contamos así en tiempo real 1639 01:28:21,400 --> 01:28:24,240 y después se nos olvidan las cosas de tener un ejemplo. 1640 01:28:24,240 --> 01:28:27,800 Yo creo que siempre es es útil, vale. 1641 01:28:27,840 --> 01:28:29,760 Y ahora vamos a hacer uso de un MCP. 1642 01:28:29,760 --> 01:28:32,640 Como visteis antes, tenía instalado el MCP de GitLab. 1643 01:28:32,640 --> 01:28:35,320 Lo que le voy a pedir aquí es que me crea un repositorio git 1644 01:28:35,320 --> 01:28:39,200 y me lo suba a mi cuenta de GitHub, un repositorio que no existía previamente 1645 01:28:40,680 --> 01:28:42,240 en Desde aquí, si os fijáis, ya pone que se 1646 01:28:42,240 --> 01:28:45,240 está conectando a un MCP Server. 1647 01:28:47,040 --> 01:28:50,640 Y le estoy dando acceso a mi cuenta de GitHub. 1648 01:28:51,000 --> 01:28:54,000 ¿Eh, Por aquí no me pone credenciales porque ya estaba autenticado 1649 01:28:54,080 --> 01:28:56,800 previamente, sino me hubiese pedido que me autenticada, 1650 01:28:57,840 --> 01:28:58,680 eh? Y me 1651 01:28:58,680 --> 01:29:01,760 dice oye, mira que te quiero, que hagas tus comandos, que básicamente 1652 01:29:01,760 --> 01:29:05,680 es crear un commit inicial y también 1653 01:29:05,840 --> 01:29:08,840 luego crear el el repositorio. 1654 01:29:09,600 --> 01:29:10,960 Y ya está, ya me lo ha hecho. 1655 01:29:10,960 --> 01:29:15,360 Pues fíjate, me ha devuelto el la url del repo eh, que voy a entrar ahora. 1656 01:29:15,360 --> 01:29:17,280 Ahora ella 1657 01:29:17,280 --> 01:29:19,280 Y todo esto me lo hizo él solo. 1658 01:29:19,280 --> 01:29:19,680 ¿Por qué? 1659 01:29:19,680 --> 01:29:23,640 ¿Porque le conecté SMTP y detectó que cuando le pedí que me lo subiese 1660 01:29:23,640 --> 01:29:27,640 a GitHub por sí mismo, detectó que tenía que hacer uso de SMTP, 1661 01:29:27,640 --> 01:29:30,640 que es el que tiene disponible él ahora mismo, 1662 01:29:30,880 --> 01:29:35,160 sino pues eh, habría una otra forma de hacerlo o yo manualmente 1663 01:29:35,480 --> 01:29:39,600 u otra forma adicional que si tengo instalado git git en mi 1664 01:29:40,560 --> 01:29:44,920 comanda interface en mi ordenador, puede ser que por sí mismo sea capaz 1665 01:29:44,920 --> 01:29:48,400 a veces de detectar que lo tienes instalado y te lo haga eh? 1666 01:29:48,400 --> 01:29:49,880 El el perse. 1667 01:29:49,880 --> 01:29:52,400 Pero hay cosas que son necesarias con el SPS. 1668 01:29:52,400 --> 01:29:55,840 ¿Entonces ahí está el ejemplito de MFP para que veáis un poco 1669 01:29:55,840 --> 01:29:59,240 sobre todo las capacidades de lo que podéis hacer con él, eh? 1670 01:29:59,240 --> 01:30:02,160 Y ahora vamos con las skills. 1671 01:30:02,160 --> 01:30:06,920 Recordemos que partimos de un todo listo, un poco feo este en concreto 1672 01:30:08,040 --> 01:30:08,680 y ahora lo que 1673 01:30:08,680 --> 01:30:12,440 voy a entrar es en esta página que se llama skills punto sh. 1674 01:30:12,440 --> 01:30:17,520 ¿Hay muchas páginas de este tipo donde eh hay ejemplos de skills eh? 1675 01:30:17,520 --> 01:30:19,680 Y en esta es una muy famosa. 1676 01:30:19,680 --> 01:30:23,520 Os la paro un momentito para para que la veáis, que es la que vimos 1677 01:30:23,520 --> 01:30:25,200 que tenía instalada previamente. 1678 01:30:25,200 --> 01:30:27,160 Aquí os enseño como instalarla. 1679 01:30:27,160 --> 01:30:28,800 ¿Qué es Frontend Design? 1680 01:30:28,800 --> 01:30:32,080 ¿Es, eh este, eh, repositorio de skills 1681 01:30:32,080 --> 01:30:36,480 es de EH Vertex, pero hay muchísimos repositorios eh? 1682 01:30:36,480 --> 01:30:39,680 Y ya te dan ese esa habilidad, digamos encapsulada 1683 01:30:39,680 --> 01:30:43,160 con gente que la ha probado y a ti te puedo ahorrar mucho, mucho tiempo. 1684 01:30:43,280 --> 01:30:46,280 Sería como instalar una librería, pero en vez de librería una skill. 1685 01:30:47,040 --> 01:30:49,800 Entonces aquí simplemente me copio el código para instalarla. 1686 01:30:49,800 --> 01:30:53,080 Este en FX Skills and lo que va a hacer es instalarla. 1687 01:30:53,120 --> 01:30:55,280 Entonces me copio ese código. 1688 01:30:55,280 --> 01:30:58,320 Abriré una terminal dentro de VC Code 1689 01:30:59,800 --> 01:31:00,840 y pego 1690 01:31:00,840 --> 01:31:03,840 y ahí simplemente me va a decir oye, te la voy a instalar. 1691 01:31:04,000 --> 01:31:06,400 Además me vas a decir dónde quieres instalarla 1692 01:31:06,400 --> 01:31:09,440 y me dice por defecto te la voy a instalar en VC Code. 1693 01:31:09,640 --> 01:31:13,680 ¿Si tuvieses otra herramienta diferente como cursor, como otro, eh? 1694 01:31:13,680 --> 01:31:16,280 Igual tendrías que seleccionar la plataforma. 1695 01:31:16,280 --> 01:31:19,280 En este caso va a ser la por defecto que es VC Code. 1696 01:31:21,400 --> 01:31:24,400 Eh, Y le digo que adelante con la instalación 1697 01:31:24,840 --> 01:31:27,480 y ahí lo que me ha hecho es crear esa carpetita que os 1698 01:31:27,480 --> 01:31:31,320 enseñé antes, la de skills frontend y me creas ese Mark Down, 1699 01:31:31,800 --> 01:31:34,800 que este es el mismo que os enseñé antes. Yo. 1700 01:31:36,120 --> 01:31:38,040 Bien, de esa forma ya tengo instalada 1701 01:31:38,040 --> 01:31:41,040 esa skill dentro de mi proyecto. 1702 01:31:41,880 --> 01:31:42,520 Puedes instalar 1703 01:31:42,520 --> 01:31:45,680 skills a nivel de proyecto, puedes instalar scripts a nivel de skills 1704 01:31:45,680 --> 01:31:47,440 a nivel de usuario, es decir, que este Frontend Design 1705 01:31:47,440 --> 01:31:50,040 esté siempre disponible en cualquier proyecto mío. 1706 01:31:50,040 --> 01:31:51,480 Como usuario. 1707 01:31:51,480 --> 01:31:56,040 Ahora lo que vamos a hacer es pedirle aquí que uses a Skill. 1708 01:31:56,040 --> 01:31:56,840 ¿Y cómo lo hago? 1709 01:31:56,840 --> 01:32:01,160 Con barra en vez de con con barra, con barra Frontend Design 1710 01:32:01,840 --> 01:32:05,960 ya va a utilizar esa skill y yo le digo cómo quiero que la utilice. 1711 01:32:06,280 --> 01:32:09,280 Le voy a decir crea una interfaz más profesional 1712 01:32:09,600 --> 01:32:13,440 con una paleta de colores azul y naranja. 1713 01:32:14,560 --> 01:32:15,880 Y ahora lo que hacen en el 1714 01:32:15,880 --> 01:32:18,880 en es leerse, integrar el fichero 1715 01:32:19,600 --> 01:32:22,160 de esa skill 1716 01:32:22,160 --> 01:32:24,000 lo va a leer por sí mismo, va a entender. 1717 01:32:24,000 --> 01:32:25,920 Ah, vale, pues aquí me estás explicando que 1718 01:32:25,920 --> 01:32:28,080 tengo que hacer las cosas de esta forma. 1719 01:32:28,080 --> 01:32:31,160 ¿Pues estaba para dormir, eh? 1720 01:32:31,200 --> 01:32:35,640 Pues así, así voy a hacer por mí mismo y ya se aprovecha 1721 01:32:35,720 --> 01:32:39,440 de la inteligencia que tiene el propio modelo para eh 1722 01:32:40,320 --> 01:32:44,480 usar las cosas como tú le especificas, no le dejas tanta libertad 1723 01:32:45,120 --> 01:32:48,120 para entender. 1724 01:32:48,200 --> 01:32:49,960 Vale, entonces vamos a dejarle por 1725 01:32:49,960 --> 01:32:52,960 aquí a él que vaya avanzando, 1726 01:32:53,720 --> 01:32:55,440 no tarda un poquito. 1727 01:32:55,440 --> 01:32:58,000 Ahí vemos el cambio que me ha estado haciendo. 1728 01:32:58,000 --> 01:33:02,160 Bueno, va a tardar un poquito, un poquito más y al final voy a llegar a 1729 01:33:03,320 --> 01:33:07,040 algo como esto en el que te la URL. 1730 01:33:07,040 --> 01:33:10,880 Es que aquí hubo un fallo que perdió la conexión alguna vez. 1731 01:33:10,880 --> 01:33:12,520 Pasa que puedes perder la conexión. 1732 01:33:17,080 --> 01:33:18,920 Pero si hay cualquier problema, lo 1733 01:33:18,920 --> 01:33:22,320 más sencillo siempre es interactuar directamente con el chat. 1734 01:33:22,320 --> 01:33:24,600 ¿Decir oye, que no tengo conexión, Qué ha pasado? 1735 01:33:24,600 --> 01:33:28,680 Yo aquí lo que hice es pedirle que me lo volviese a arrancar. 1736 01:33:28,840 --> 01:33:31,840 Lo podría haber hecho yo manualmente 1737 01:33:31,920 --> 01:33:35,360 y bueno, bueno, aún sigue funcionando ahí que aún quedaban cosas pendientes. 1738 01:33:35,400 --> 01:33:38,400 Lo bueno es que puedes ir mirando a medida que lo vas ejecutando. 1739 01:33:40,080 --> 01:33:40,920 Vale. Aún. 1740 01:33:40,920 --> 01:33:43,560 Aún no terminó. 1741 01:33:43,560 --> 01:33:45,680 Vale, voy a avanzar un poquito. 1742 01:33:45,680 --> 01:33:47,480 Y aquí ya me dice Oye, mira que ya terminó. 1743 01:33:47,480 --> 01:33:49,680 ¿Quieres que lo arranque? 1744 01:33:49,680 --> 01:33:52,680 Y ahí lo va a arrancar de nuevo. 1745 01:33:54,800 --> 01:33:55,320 Bueno, me está 1746 01:33:55,320 --> 01:33:58,320 diciendo el resumen de las mejoras que hizo 1747 01:33:59,160 --> 01:34:03,720 y ahora yo sí ya voy a poder ir a la interfaz oficial 1748 01:34:04,840 --> 01:34:05,760 que tenía por ahí. 1749 01:34:06,800 --> 01:34:08,120 Bueno, se deriva. 1750 01:34:08,120 --> 01:34:09,680 De hecho abre la aplicación 1751 01:34:09,680 --> 01:34:13,200 para que vea los cambios, aunque lo podría hacer yo manualmente. 1752 01:34:13,440 --> 01:34:15,000 Entonces estamos apurados de toques, 1753 01:34:15,000 --> 01:34:17,520 pues hay cosas que se pueden hacer manualmente. 1754 01:34:17,520 --> 01:34:20,040 ¿Voy a avanzar un poquito aquí el código en el vídeo 1755 01:34:20,040 --> 01:34:23,040 para no correr más tiempo, 1756 01:34:23,400 --> 01:34:24,840 vale? Y ahí me lo abrió. 1757 01:34:24,840 --> 01:34:27,480 De hecho, si os fijáis, una vez que están 1758 01:34:27,480 --> 01:34:30,480 running me da la opción incluso de abrir el browser aquí. 1759 01:34:31,080 --> 01:34:34,080 Ahí preguntan si estás que él sirve para cualquier lenguaje. 1760 01:34:34,200 --> 01:34:35,960 Yo diría que depende un poco de las instrucciones. 1761 01:34:35,960 --> 01:34:38,640 Estará optimizada, no para 1762 01:34:38,640 --> 01:34:42,760 para HTML, CSS y tal, pero realmente habrá una para cada lenguaje. 1763 01:34:43,120 --> 01:34:46,720 No dejan de ser unas instrucciones, no te dirán las cosas en rojo, en azul 1764 01:34:46,720 --> 01:34:49,560 se puede hacer una skin de UPM, por decirlo de alguna manera. 1765 01:34:49,560 --> 01:34:53,120 Esa es la única que le fuerce los colores y corporativos 1766 01:34:53,120 --> 01:34:55,920 o incluso una de las cosas así. O sea que las normas de un 1767 01:34:57,120 --> 01:34:57,520 prompt 1768 01:34:57,520 --> 01:35:00,520 gordo, para que nos entendamos, eso es la skill. 1769 01:35:00,600 --> 01:35:03,280 ¿Pensar que es un markdown, que es un prompt, unas instrucciones 1770 01:35:03,280 --> 01:35:07,640 que tú normalmente vas a reutilizar, esa que cogí ahí, eh? 1771 01:35:08,320 --> 01:35:09,840 Realmente no he visto el contenido así 1772 01:35:09,840 --> 01:35:12,920 ponía que era específicamente para alguna tecnología, alguna. 1773 01:35:12,960 --> 01:35:16,440 Si te pone esta skill es para hacer código de React 1774 01:35:16,440 --> 01:35:19,440 más limpio, pues ya sabes que solo te va a valer para React. 1775 01:35:19,640 --> 01:35:23,080 Hay algunas más genéricas, otras menos, todas las puedes hacer tú también 1776 01:35:23,440 --> 01:35:24,040 por ti mismo. 1777 01:35:24,040 --> 01:35:26,880 Como has dicho que que es una skill para para UPM. 1778 01:35:26,880 --> 01:35:28,000 Eso es lo que me va a permitir a mí. 1779 01:35:28,000 --> 01:35:31,600 Es orden sobre todo, y una vez que tú estés familiarizado, 1780 01:35:31,680 --> 01:35:35,600 puedes tener tu ejército de skills e ir invocando las. 1781 01:35:35,600 --> 01:35:38,520 Y así lo que tienes es orden homogeniza. 1782 01:35:38,520 --> 01:35:41,520 Si ganas tiempo es una cosa muy robusta. 1783 01:35:41,520 --> 01:35:44,040 Hoy en día las skills y los msps 1784 01:35:45,040 --> 01:35:47,040 vale, y esta sería un poco el resultado final. 1785 01:35:47,040 --> 01:35:50,840 Si os fijáis, pasamos de una cosa muy fea a una cosa muy bonita. 1786 01:35:50,880 --> 01:35:53,320 ¿Esto se podría haber hecho directamente vía prompt, 1787 01:35:53,320 --> 01:35:56,120 pero yo creo que es importante el conocer las skills 1788 01:35:56,120 --> 01:35:59,800 porque me va a permitir, como digo, homogeneizar de aquí eh? 1789 01:36:00,000 --> 01:36:03,000 Al al futuro. 1790 01:36:03,360 --> 01:36:04,640 Bien, vale. 1791 01:36:04,640 --> 01:36:09,240 Pues yo por mi parte poco más que que contaros. 1792 01:36:09,600 --> 01:36:12,360 Ha sido mucha información. ¿No sé, eh? 1793 01:36:12,360 --> 01:36:13,760 Pero yo creo que es importante que 1794 01:36:13,760 --> 01:36:17,720 veáis un poco todo lo que se puede hacer y ya con la calma, incluso os podéis 1795 01:36:17,880 --> 01:36:21,360 ver los vídeos e ir probando vosotros poquito a poquito. 1796 01:36:22,480 --> 01:36:25,080 Vale, pues ahora os voy a dejar con Kike estos últimos 1797 01:36:25,080 --> 01:36:28,080 20 minutos. 1798 01:36:28,920 --> 01:36:29,280 Vale. 1799 01:36:29,280 --> 01:36:30,000 Vale. 1800 01:36:30,000 --> 01:36:31,440 De hecho, preguntan, dice 1801 01:36:31,440 --> 01:36:34,400 la historia Destreza es que cuentan los token gastados. 1802 01:36:34,400 --> 01:36:35,640 Sí, en general, sí. 1803 01:36:35,640 --> 01:36:37,480 O sea, decir, hacen una estrategia. 1804 01:36:37,480 --> 01:36:40,280 Por lo que yo conozco más en Cloud de Code y similares. 1805 01:36:40,280 --> 01:36:42,600 Eh, mete todos estos Md. 1806 01:36:42,600 --> 01:36:44,320 Es como en cada conversación. 1807 01:36:44,320 --> 01:36:46,960 Claro, para personalizarse en CoPilot como tal. 1808 01:36:46,960 --> 01:36:49,440 Supongo que también, no lo sé de ciencia cierta. 1809 01:36:49,440 --> 01:36:52,720 No sé si Javi, si tú sabes, pero en cloud de code desde luego que la gente me 1810 01:36:52,720 --> 01:36:55,840 de las md y similares la mete en la conversación. 1811 01:36:55,840 --> 01:36:57,960 Claro, para personalizar ese comportamiento. 1812 01:36:57,960 --> 01:37:01,400 Entonces te diría que sí, sí, sí. 1813 01:37:01,440 --> 01:37:02,680 ¿Confirmado eh? 1814 01:37:02,680 --> 01:37:03,240 Todo lo comentado. 1815 01:37:03,240 --> 01:37:03,680 Por ejemplo, si 1816 01:37:03,680 --> 01:37:07,440 tienes un ejército de 1 millón de skills, pues vas a tener que tener cuidado. 1817 01:37:07,440 --> 01:37:10,440 ¿Hay que tener orden de cuáles metes en un proyecto, cuáles no? 1818 01:37:10,800 --> 01:37:13,120 Todo, todo, todo lo que el modelo va a utilizar 1819 01:37:13,120 --> 01:37:15,000 para lo que estoy intentando darle botón 1820 01:37:15,000 --> 01:37:20,080 compartir no me deja compartir que me lo está mostrando en otra ventana. 1821 01:37:22,440 --> 01:37:25,720 A. Cada 1822 01:37:25,800 --> 01:37:28,800 segundo que voy a compartir, entonces ir a otra pantalla. 1823 01:37:32,640 --> 01:37:35,640 Vale, porque yo voy a hablar más desde el punto de vista docente, 1824 01:37:35,720 --> 01:37:35,880 o sea, 1825 01:37:35,880 --> 01:37:40,280 decir cómo podemos utilizar todo esto y cómo lo van a utilizar los alumnos y tal. 1826 01:37:40,320 --> 01:37:43,320 Vamos a dejarlo en segundo que comparta la otra ventana. 1827 01:37:47,240 --> 01:37:49,560 Sería 1828 01:37:49,560 --> 01:37:52,560 esto. 1829 01:37:52,920 --> 01:37:54,360 A ver si ahora veis mi presentación. 1830 01:37:54,360 --> 01:37:57,200 ¿Sí, verdad? Sí, sí, sí, perfecto. 1831 01:37:57,200 --> 01:37:57,960 Vale, pues. 1832 01:37:57,960 --> 01:38:00,680 ¿Cuál es la cosa que quiero contar? Un poco. 1833 01:38:00,680 --> 01:38:02,160 ¿Cómo funciona? 1834 01:38:02,160 --> 01:38:05,520 ¿Cómo los profesores pueden utilizar esto? ¿Eh? 1835 01:38:07,200 --> 01:38:10,200 Luego cómo los alumnos pueden utilizarlo los estudiantes. 1836 01:38:10,520 --> 01:38:13,080 ¿Y por último, cómo evaluamos 1837 01:38:13,080 --> 01:38:14,560 abrir el melón? ¿Por decirlo de alguna manera? 1838 01:38:14,560 --> 01:38:15,800 Porque no tengo soluciones. 1839 01:38:15,800 --> 01:38:17,160 O sea, si alguien se va a quedar hasta el final 1840 01:38:17,160 --> 01:38:20,480 pensando que que va a ver aquí la solución, no la 1841 01:38:21,720 --> 01:38:23,040 no lo no lo tengo. 1842 01:38:23,040 --> 01:38:26,640 O sea, no, ojalá porque es un problema para mí ahora que me quita el sueño. 1843 01:38:26,640 --> 01:38:29,840 ¿Por eso de alguna manera el primer paso eh? 1844 01:38:30,040 --> 01:38:30,840 Como los profesores. 1845 01:38:30,840 --> 01:38:33,840 Bueno, pues yo veo claramente dos perfiles de profesores, 1846 01:38:34,320 --> 01:38:36,360 los profesores que no saben programar 1847 01:38:36,360 --> 01:38:40,080 o que no tienen esas capacidades técnicas lo tienen muy oxidado, en cuyo caso 1848 01:38:40,600 --> 01:38:44,280 esto les abre una infinidad de posibilidades 1849 01:38:44,600 --> 01:38:47,640 que antes no podían hacer o lo tenían que subcontratar o cosas 1850 01:38:47,640 --> 01:38:51,440 así, con lo cual esto era muy caro y era prácticamente inaccesible o lo 1851 01:38:51,440 --> 01:38:54,440 tenían que pedir un favor a un compañero que le hiciese una página web, cosas así. 1852 01:38:54,800 --> 01:38:56,640 Y luego los docentes que sí saben programar 1853 01:38:56,640 --> 01:38:57,680 y que se dedican a asignaturas 1854 01:38:57,680 --> 01:39:02,640 de programación, que tenemos que ver también un poco cómo lo cómo lo va a afrontar. 1855 01:39:03,600 --> 01:39:06,600 ¿Yo soy de bueno, podría decir que de lo segundo 1856 01:39:06,800 --> 01:39:09,440 eh? Bueno, pues para el docente que no sabe programar, 1857 01:39:09,440 --> 01:39:13,000 pues ahora mismo gracias a estas herramientas tenemos eh 1858 01:39:13,080 --> 01:39:14,600 herramientas que 1859 01:39:14,600 --> 01:39:17,840 son capaces de generar una aplicaciones totalmente funcional funcionales. 1860 01:39:18,200 --> 01:39:21,800 Vemos en clase, por ejemplo lo llaman artifacts y esto 1861 01:39:21,800 --> 01:39:25,000 pues para un profesor que explique estadística, que explique 1862 01:39:25,040 --> 01:39:27,720 yo que sé, cualquier profesor que no se dedique a programar 1863 01:39:27,720 --> 01:39:30,720 va a poder generar demos rápidamente 1864 01:39:30,720 --> 01:39:33,720 con prompt directos a su 1865 01:39:34,080 --> 01:39:36,240 a Claude o a cualquier herramienta. 1866 01:39:36,240 --> 01:39:38,520 Esto es un ejemplo claro de que ya digo que lo sacaron 1867 01:39:38,520 --> 01:39:39,680 y luego el resto lo fue copiando. 1868 01:39:39,680 --> 01:39:41,960 Pero esto son los artefactos artefactos 1869 01:39:41,960 --> 01:39:44,400 y que le da igual en qué código esté hecho por debajo y tal, 1870 01:39:44,400 --> 01:39:47,800 simplemente funciona y pues puede pasar desde una ecuación y te la pinta 1871 01:39:48,040 --> 01:39:51,040 y es muy interactivo, entonces puede mejorar su docencia. 1872 01:39:51,160 --> 01:39:53,360 Vale, yo creo que esto tiene bastante potencial, 1873 01:39:53,360 --> 01:39:56,400 incluso se pueden hacer vídeos con IA 1874 01:39:57,120 --> 01:40:00,600 ya con el propio Claude Code o con herramientas de código, 1875 01:40:00,600 --> 01:40:05,160 pues tienen skills para utilizando EH, Python o otras herramientas 1876 01:40:05,160 --> 01:40:10,000 pueden crear incluso vídeos o páginas webs para proyectos como hacía antiguamente. 1877 01:40:10,000 --> 01:40:13,320 ¿Esto era difícil y ahora mismo le puedes decir a una web para que represente 1878 01:40:13,920 --> 01:40:16,680 lo que quiero contar y que tenga tres tabs y que tenga 1879 01:40:16,680 --> 01:40:20,520 no sé qué y sin ver una línea de HTML, CSS y JavaScript, eh? 1880 01:40:20,680 --> 01:40:21,840 Esto ya se puede hacer. 1881 01:40:22,800 --> 01:40:25,120 Bueno, eh, 1882 01:40:25,120 --> 01:40:27,960 Analizar datos también. 1883 01:40:27,960 --> 01:40:28,600 Todo profesor 1884 01:40:28,600 --> 01:40:31,800 que no tenga esas capacidades, a lo mejor porque no se dedican a lo mejor 1885 01:40:31,800 --> 01:40:34,800 mucha investigación, etcétera para poder tener acceso a todo esto, 1886 01:40:35,000 --> 01:40:35,600 entonces se le abre 1887 01:40:35,600 --> 01:40:39,720 una cantidad de posibilidades y cada vez están muchísimo más fina esta herramienta. 1888 01:40:39,720 --> 01:40:41,760 De hecho es donde está yendo un poco toda la industria. 1889 01:40:41,760 --> 01:40:45,480 ¿Estos agentes que funcionan de manera autónoma de de de que tú 1890 01:40:45,480 --> 01:40:48,480 no te tienes que meter en las tripas, no? 1891 01:40:49,920 --> 01:40:50,440 ¿Y luego también 1892 01:40:50,440 --> 01:40:53,440 se pueden modernizar prácticas, laboratorios, eh? 1893 01:40:53,520 --> 01:40:55,360 Crearte es para las baterías. 1894 01:40:55,360 --> 01:40:58,680 Esto ya digo ya gente que sepa un poco meterse en el código, que tenga código. 1895 01:40:59,040 --> 01:41:01,200 Yo esto lo lo es. 1896 01:41:01,200 --> 01:41:02,680 Lo que hago es decir, 1897 01:41:02,680 --> 01:41:04,480 te he cogido las prácticas de otro año y digo 1898 01:41:04,480 --> 01:41:08,120 pues este año las voy a poner distintas y le he dicho una ya genera 1899 01:41:08,320 --> 01:41:12,920 una versión orientada más a al sector retail o a restaurantes o a 1900 01:41:12,920 --> 01:41:13,360 no sé qué, 1901 01:41:13,360 --> 01:41:17,440 o mete un apartado nuevo que podría hacer o refina esto, o hace una batería de test 1902 01:41:17,840 --> 01:41:23,160 para que el estudiante de pues me ofrecen, me me me habilitan 1903 01:41:23,400 --> 01:41:27,040 una serie de posibilidades que antes pues sabiendo programar 1904 01:41:27,040 --> 01:41:28,440 me llevaban bastante tiempo. 1905 01:41:28,440 --> 01:41:31,440 Pero es un poco el punto de vista del programador, 1906 01:41:31,560 --> 01:41:33,840 de la persona que se dedica a programación en una empresa 1907 01:41:33,840 --> 01:41:35,760 que aumenta su productividad. 1908 01:41:35,760 --> 01:41:36,680 Pues aquí también. 1909 01:41:36,680 --> 01:41:38,080 Pero lo que yo hacía antes, 1910 01:41:38,080 --> 01:41:41,000 que era currarme las prácticas, lo mismo también para el examen. 1911 01:41:41,000 --> 01:41:45,840 ¿Yo suelo decirle a una aplicación para el examen eh, vamos a cambiar esto, no? 1912 01:41:45,880 --> 01:41:48,240 Esta funcionalidad no más sencilla 1913 01:41:48,240 --> 01:41:50,640 que se alinee con lo que les he explicado en estándares. 1914 01:41:50,640 --> 01:41:53,760 Utilizo la IA como asistente para crear un examen. 1915 01:41:54,600 --> 01:41:57,200 En mi opinión mejor, o sea más orientado 1916 01:41:57,200 --> 01:42:00,200 a los objetivos de aprendizaje y los cumple mejor. 1917 01:42:00,240 --> 01:42:03,440 Vale, luego ya digo, estoy intentando un poco contar mi punto de vista. 1918 01:42:03,560 --> 01:42:05,800 O sea, ya digo, cogerlo con pinzas y ver un poco 1919 01:42:05,800 --> 01:42:10,160 que creo que sea que veáis un poco cómo yo la utilizo y la he utilizado 1920 01:42:10,160 --> 01:42:15,360 y otra cosa que he hecho bastante este año es en una asignatura, 1921 01:42:15,360 --> 01:42:18,360 se llama Ingeniería web, es meter apartados que utilicen la IA 1922 01:42:18,720 --> 01:42:22,280 como un apartado más, es decir, que los alumnos, 1923 01:42:22,560 --> 01:42:25,320 como la IA está tan de moda, está en todos los lados, etcétera 1924 01:42:25,320 --> 01:42:28,600 Y ellos están deseando utilizarla porque ven que hacen cosas muy potentes. 1925 01:42:28,920 --> 01:42:31,920 Pues la he metido como un apartado más de las prácticas de programación, 1926 01:42:32,280 --> 01:42:33,520 es decir, 1927 01:42:33,520 --> 01:42:35,800 he metido la IA como una funcionalidad extra 1928 01:42:35,800 --> 01:42:37,560 que tenían que hacer sobre la práctica. 1929 01:42:37,560 --> 01:42:40,760 En el caso estaban haciendo una ingeniería web, 1930 01:42:40,760 --> 01:42:43,760 hacen una cosa parecida a hacer páginas web como lo que hemos visto, 1931 01:42:43,920 --> 01:42:46,560 un frontend, etcétera con real y no sé cuánto. 1932 01:42:46,560 --> 01:42:49,680 Y entonces les he metido un apartado nuevo donde les digo pues ahora tiene un botón 1933 01:42:49,680 --> 01:42:54,240 donde cuando el usuario hace clic llama a una IA que le trae un resumen 1934 01:42:54,400 --> 01:42:57,480 y le genera una receta con la lista de la compra que tenías no sé qué. 1935 01:42:57,880 --> 01:43:01,880 Y les ha gustado muchísimo poder utilizar una IA real y hacer. 1936 01:43:02,080 --> 01:43:04,440 Han visto que la aplicación es mucho más potente, 1937 01:43:04,440 --> 01:43:06,040 como está tan de moda y tiene mucho hype, 1938 01:43:06,040 --> 01:43:09,120 pues es una cosa que a mí por lo menos me ha funcionado muy bien. 1939 01:43:09,240 --> 01:43:12,360 ¿Entonces que usen APIs reales de IA se han sentido como haciendo 1940 01:43:12,360 --> 01:43:15,360 un producto real de una API? ¿No? 1941 01:43:16,440 --> 01:43:20,320 ¿Eh, Y luego muchas más ideas, por supuesto, pues se puede automatizar 1942 01:43:20,320 --> 01:43:24,000 cosas, se pueden crear minijuegos educativos o simulaciones, eh? 1943 01:43:24,120 --> 01:43:27,520 ¿Puedo crear herramientas para el departamento, para gestión, 1944 01:43:27,520 --> 01:43:30,520 para informes, etcétera O sea, decir 1945 01:43:30,960 --> 01:43:34,240 todo esto tiene bastantes aplicaciones para el profesorado, vale? 1946 01:43:34,320 --> 01:43:38,000 O sea, o por lo menos yo lo veo así y de hecho lo uso eh, a menudo. ¿No? 1947 01:43:39,440 --> 01:43:41,440 Y es donde viene el melón y donde es un poco 1948 01:43:41,440 --> 01:43:44,440 la cosa más dura para mí. 1949 01:43:44,560 --> 01:43:48,120 Y precisamente ahora, con la conversación que acabamos de tener un poco ahí 1950 01:43:48,120 --> 01:43:53,520 en de que GitHub CoPilot ya no lo ofrecen para estudiantes, parece ser, eh, 1951 01:43:54,800 --> 01:43:56,200 CoPilot Pro. 1952 01:43:56,200 --> 01:43:59,520 Entonces para mí surge un agravio comparativo bastante grande 1953 01:43:59,520 --> 01:44:03,040 entre los estudiantes que se puedan pagar este tipo de herramientas 1954 01:44:03,440 --> 01:44:07,600 y los que no, hemos visto que el GitHub CoPilot Free 1955 01:44:08,640 --> 01:44:10,480 es muy limitado, 1956 01:44:10,480 --> 01:44:15,600 te ofrece solamente 2000 completion coach o completo, no se considera castellano 1957 01:44:15,600 --> 01:44:21,000 Completitud de código, no de completar código EH, o 50 peticiones agentes. 1958 01:44:21,000 --> 01:44:23,960 Eso es muy poco para cuando tengas dos o tres asignaturas de programación, 1959 01:44:23,960 --> 01:44:25,320 pero empieza en dos tardes 1960 01:44:25,320 --> 01:44:28,440 porque como te va completando a cada cada vez que tú vas escribiendo, 1961 01:44:28,800 --> 01:44:32,760 pues en nada te va a decir ya paga o hasta el mes que viene nada. 1962 01:44:32,760 --> 01:44:35,760 Y un estudiante necesita solucionar la práctica este mes, por decirlo así. 1963 01:44:35,840 --> 01:44:37,320 Estamos a día 8 de junio. 1964 01:44:37,320 --> 01:44:41,000 ¿Pues necesita entonces claro, y estas herramientas valen dinero? 1965 01:44:41,520 --> 01:44:45,200 Normalmente valen las versiones, pero de momento unos 20 $ al mes. 1966 01:44:45,200 --> 01:44:47,440 Y las versiones MAX 200. 1967 01:44:47,440 --> 01:44:50,440 Las versiones Max hacen auténticas maravillas. 1968 01:44:50,440 --> 01:44:53,840 Lo conozco en algún proyecto europeo, Algún compañero lo tiene 1969 01:44:53,840 --> 01:44:59,520 y te hace juegos completos con 3D, con cosas muy completas. 1970 01:44:59,960 --> 01:45:03,400 Para mí se abre aquí un melón bastante delicado 1971 01:45:03,400 --> 01:45:06,400 de ético y de impacto social. 1972 01:45:06,640 --> 01:45:07,040 Vale. 1973 01:45:07,040 --> 01:45:08,920 Y es que hemos pasado ya 1974 01:45:08,920 --> 01:45:12,680 un punto de inflexión de que esto es algo que lo poníamos en el informe 1975 01:45:12,680 --> 01:45:15,680 ya de educación este que que os hemos comentado al principio y tal 1976 01:45:15,920 --> 01:45:20,040 lo poníamos que que es una competencia que se le pide a los programadores 1977 01:45:20,040 --> 01:45:23,040 hoy en día ya decir hace poco la semana pasada, 1978 01:45:23,200 --> 01:45:26,640 el viernes me parece que salió un informe de de antrópico de 1979 01:45:26,800 --> 01:45:31,040 diciendo un poco que ellos el 80% de su código está picado. 1980 01:45:31,080 --> 01:45:36,000 Moría revisado por humanos, pero aplicado ponía y que aumenta por cuatro, por cinco 1981 01:45:36,000 --> 01:45:39,600 y hasta por diez la cantidad de código que genera sus programadores. 1982 01:45:39,600 --> 01:45:41,160 Es decir, que es obligatorio. 1983 01:45:41,160 --> 01:45:43,000 ¿Y no sé si conocéis, eh? 1984 01:45:43,000 --> 01:45:45,440 Esta esta historia del 1985 01:45:47,400 --> 01:45:50,040 que como otro uso de la IA no usó el último. 1986 01:45:50,040 --> 01:45:52,200 Creo que la segunda o tercera vez en mi vida que lo uso. 1987 01:45:52,200 --> 01:45:55,080 El token Maxi es una cosa que está surgiendo ahora, 1988 01:45:55,080 --> 01:45:56,760 que es que en las empresas 1989 01:45:56,760 --> 01:45:59,760 la gente está muy loca por conseguir consumir cada vez más 1990 01:45:59,800 --> 01:46:03,800 código, o sea, más tokens de cloud y sobre todo en el propio Facebook. 1991 01:46:03,800 --> 01:46:06,840 En muchos sitios tienen como unos rankings de a ver quién 1992 01:46:06,840 --> 01:46:10,400 consume más tokens haciendo cosas, intentando que sean productivas. 1993 01:46:10,400 --> 01:46:12,360 Aunque se dice que muchas 1994 01:46:12,360 --> 01:46:15,040 le ponen ahí hacer cosas a lo loco y luego tiran el código y tal. 1995 01:46:15,040 --> 01:46:17,080 Pero el caso es que están intentando maximizar 1996 01:46:17,080 --> 01:46:20,400 como demostrando que ellos usan mucho la IA como programadores. 1997 01:46:20,400 --> 01:46:22,520 ¿No se está produciendo una cosa un poco loca, no? 1998 01:46:22,520 --> 01:46:26,320 El token máximo lo llaman y hacen rankings en empresas de a ver quién 1999 01:46:26,320 --> 01:46:27,720 ha usado más la IA y tal. 2000 01:46:27,720 --> 01:46:31,440 El caso es que esto es una competencia que se va a pedir a nuestros estudiantes. 2001 01:46:31,720 --> 01:46:36,320 ¿Eso ya se está pidiendo y yo de hecho, cuando intento coger aquí a alguna persona 2002 01:46:36,320 --> 01:46:37,480 para un proyecto europeo o lo que sea, 2003 01:46:37,480 --> 01:46:40,320 lo primero que le digo es oye, sabes usar la IA, eh? 2004 01:46:40,320 --> 01:46:41,280 Necesito que la uses 2005 01:46:41,280 --> 01:46:43,440 porque vas a producir más, porque vas a hacer mejor código, 2006 01:46:43,440 --> 01:46:45,760 porque vas a hacer baterías de test para tu código, 2007 01:46:45,760 --> 01:46:48,320 porque lo vas a documentar mejor, porque entonces 2008 01:46:48,320 --> 01:46:50,400 creo que es algo imprescindible, porque hemos pasado 2009 01:46:50,400 --> 01:46:53,520 ya ese punto de inflexión en el que la IA hacía cosas que 2010 01:46:54,440 --> 01:46:55,920 que, que siempre había bugs. 2011 01:46:55,920 --> 01:46:58,320 Yo lo contaba en mi asignaturas de ingeniería web. 2012 01:46:58,320 --> 01:46:58,840 Al principio 2013 01:46:58,840 --> 01:47:01,880 decía mira, voy a hacer un ejemplo con IA y luego nos teníamos que poner a depurar. 2014 01:47:02,640 --> 01:47:05,640 Ahora mismo, cuando era un ejemplo con IA, pues como ha hecho Javi 2015 01:47:05,800 --> 01:47:07,440 y funciona a la primera. 2016 01:47:07,440 --> 01:47:12,240 O sea, llevo mucho tiempo en cosas simples sin encontrar bugs gordos. 2017 01:47:12,720 --> 01:47:14,240 ¿Entonces, cuál es la cosa? 2018 01:47:14,240 --> 01:47:16,320 Que cuando surge un bug es verdaderamente muy gordo, 2019 01:47:16,320 --> 01:47:19,320 muy avanzado y se dice el problema está en el Señor, 2020 01:47:19,480 --> 01:47:23,160 necesito gente senior, pero si los junior no están trabajando 2021 01:47:23,160 --> 01:47:26,160 con su día a día peleándose, pues tenemos un problema aquí. 2022 01:47:26,160 --> 01:47:28,680 Es lo que quería un poco abrir el melón y que empezamos a 2023 01:47:28,680 --> 01:47:31,680 yo me quita el sueño, por decirlo de una manera que os digo, a mí 2024 01:47:31,800 --> 01:47:35,520 me pasa que me tengo que replantear un poco cómo enseñamos la programación 2025 01:47:35,520 --> 01:47:38,120 y qué competencias tenemos que desarrollar, que por cierto, 2026 01:47:38,120 --> 01:47:41,520 tampoco sobre las que ponen la memoria verificación de la asignatura, 2027 01:47:41,920 --> 01:47:45,240 la memoria de verificación es de hace ocho años, seis años 2028 01:47:45,480 --> 01:47:47,160 depende de cada asignatura, pero 2029 01:47:48,640 --> 01:47:49,920 como cómo ¿hacemos esto? 2030 01:47:49,920 --> 01:47:51,600 Pues no tengo tampoco solución. 2031 01:47:51,600 --> 01:47:55,040 ¿Estoy empezando a replantear las asignaturas de programación que tenemos, 2032 01:47:55,680 --> 01:47:58,560 pero bueno, estoy intentando meter 2033 01:47:58,560 --> 01:48:02,320 y fomentar que usen IA para hacer este tipo de cosas, eh? 2034 01:48:02,800 --> 01:48:05,960 Generar código sencillo, que hagan el primer escape como ha dicho Javi. 2035 01:48:05,960 --> 01:48:07,240 Oye, mira, pues hacer scaffold 2036 01:48:07,240 --> 01:48:10,840 y a partir de ahí cógelo tú y haz esta funcionalidad, esta otra tal 2037 01:48:11,400 --> 01:48:14,280 genera una batería de test, genera la documentación, 2038 01:48:14,280 --> 01:48:18,480 es decir, que hagan unos usos básicos y luego a partir de ahí 2039 01:48:18,680 --> 01:48:22,200 que que les revise su código, que les plantee la arquitectura. 2040 01:48:22,520 --> 01:48:25,560 En una charla reciente con con un socio de París 2041 01:48:25,800 --> 01:48:29,280 me decía que lo que más necesitaban ahora mismo eran arquitectos de software, 2042 01:48:29,280 --> 01:48:33,360 porque como la IA hacía muchísimas cosas con autonomía, lo que más necesitaban 2043 01:48:33,360 --> 01:48:36,040 era un arquitecto de software que no conseguían llenarlas. 2044 01:48:36,040 --> 01:48:39,200 Las las plazas que tenían, pero que 2045 01:48:39,200 --> 01:48:42,280 claro que un arquitecto de software tenía que tener o no tenía el problema. 2046 01:48:42,280 --> 01:48:45,640 El senior no lo contaba así en una charla de hace poco de 2047 01:48:45,640 --> 01:48:49,240 yo son las cosas que estoy intentando meter en mis prácticas en ya digo, 2048 01:48:49,280 --> 01:48:50,320 en computación, en redes, 2049 01:48:50,320 --> 01:48:54,600 en ingeniería de software, o sea ingeniería web en cosas así, pero me 2050 01:48:54,600 --> 01:48:57,640 está costando bastante por lo que digo, porque las prácticas simples 2051 01:48:58,440 --> 01:49:02,160 no logro diferenciar bien quién las ha hecho con IA y quien no, 2052 01:49:03,160 --> 01:49:05,280 Entonces 2053 01:49:05,280 --> 01:49:08,280 creo que es algo que tenemos que hacernos mirar todos. 2054 01:49:08,440 --> 01:49:10,000 Vale, 2055 01:49:10,000 --> 01:49:12,640 eh, La analogía de la calculadora y de hecho yo tengo hijos ahora 2056 01:49:12,640 --> 01:49:14,120 en el colegio y claro, 2057 01:49:14,120 --> 01:49:16,760 cuando mi hijo coge la calculadora dice para que aprenda a multiplicar papá, 2058 01:49:16,760 --> 01:49:18,520 si yo con la calculadora esto se hace en el momento, 2059 01:49:18,520 --> 01:49:21,760 ya uno aprende para amueblar la cabeza, para entender la multiplicación, etcétera 2060 01:49:22,000 --> 01:49:23,720 Y así sigue siendo el colegio. 2061 01:49:23,720 --> 01:49:25,480 Mi hijo está harto de hacer multiplicaciones 2062 01:49:25,480 --> 01:49:28,320 y todavía no ha cogido una calculadora y la cogerá el año que viene. 2063 01:49:28,320 --> 01:49:29,280 ¿Pero cuál es el problema? 2064 01:49:29,280 --> 01:49:29,760 ¿Que mi hijo 2065 01:49:29,760 --> 01:49:33,920 yo le controlo por decirlo de una manera, y quito la calculadora, vale? 2066 01:49:34,080 --> 01:49:36,120 Es decir, no tiene acceso a la calculadora 2067 01:49:36,120 --> 01:49:37,960 y hace un montón de multiplicaciones en su casa. 2068 01:49:37,960 --> 01:49:40,560 Esto con los alumnos de universidad no es así de fácil 2069 01:49:40,560 --> 01:49:44,520 porque tienen acceso a este CoPilot y tienen la comodidad de. 2070 01:49:44,760 --> 01:49:47,240 Le paso el enunciado de la práctica de este profe 2071 01:49:47,240 --> 01:49:50,680 y ya tengo un diez y de verdad que es un diez. 2072 01:49:50,720 --> 01:49:52,840 O sea Cloud de Code CoPilot. 2073 01:49:52,840 --> 01:49:54,680 En la práctica de mi asignatura sacan verdaderos 2074 01:49:54,680 --> 01:49:58,760 dieces desde el año pasado, el anterior todavía no, pero desde este año sí. 2075 01:49:58,760 --> 01:50:02,400 Puros dieces porque son prácticas básicas, básicas, más o menos. 2076 01:50:02,400 --> 01:50:05,400 No le puedo poner algo tan avanzado que una IA no sepa resolver 2077 01:50:05,520 --> 01:50:07,080 porque es que hace verdaderas maravillas. 2078 01:50:07,080 --> 01:50:11,040 Entonces no sé si también alguno quiere me quedan nada, dos o tres día 2079 01:50:11,040 --> 01:50:12,000 por si alguno quiere. 2080 01:50:12,000 --> 01:50:12,920 En estos cinco minutos 2081 01:50:12,920 --> 01:50:16,960 que nos queda plantear alguna otra opción de cómo lo resuelve, de 2082 01:50:18,000 --> 01:50:19,040 yo estoy abierto a cualquier 2083 01:50:19,040 --> 01:50:22,400 tipo de conversación porque para mí es un problema sin resolver. 2084 01:50:23,000 --> 01:50:25,440 Y otro informe que sacaron este fue el año pasado, 2085 01:50:25,440 --> 01:50:29,560 hace más o menos un año en Traffic, EH habían analizado 1 2086 01:50:29,560 --> 01:50:33,440 millón de conversaciones en sus modelos y 500.000 eran estudiantes 2087 01:50:34,360 --> 01:50:36,800 y todos los de computación suponían 2088 01:50:36,800 --> 01:50:41,680 el 36% y los alumnos de computación eran solo el 5%, 2089 01:50:41,680 --> 01:50:45,280 es decir, son los primeros que se habían lanzado a hacer todo esto. 2090 01:50:45,520 --> 01:50:48,520 O sea, desde los alumnos de informática y de cosas de programación 2091 01:50:48,760 --> 01:50:51,840 se habían lanzado como locos a estas herramientas. 2092 01:50:52,760 --> 01:50:54,320 ¿Qué para qué la estaban utilizando? 2093 01:50:54,320 --> 01:50:59,480 ¿Según este reporte de De Antrópica eh? 2094 01:50:59,520 --> 01:51:02,720 Pues la estaban utilizando mucho para depurar código, sobre todo inicialmente. 2095 01:51:02,720 --> 01:51:03,840 Ya digo que de esto hace un año. 2096 01:51:03,840 --> 01:51:07,720 Ahora mismo, tras el código puro para implementar algoritmos, 2097 01:51:07,720 --> 01:51:10,720 o sea para hacer las prácticas directamente estructuras de datos. 2098 01:51:11,520 --> 01:51:14,520 Y luego veían dos formas muy claras de interactuar con el código 2099 01:51:14,880 --> 01:51:17,880 pedir la solución, o sea, decir esto pum y olvidarse. 2100 01:51:18,440 --> 01:51:21,760 O más colaborativa, que para mí es la buena, que es la de vamos a hacer esto 2101 01:51:22,560 --> 01:51:26,440 y este modo que ha explicado Javi del plan, decir oye, voy a planificar, 2102 01:51:27,120 --> 01:51:30,480 vamos a planificar entre todos y a hacer mi hazme el paquete JSON. 2103 01:51:30,760 --> 01:51:33,200 Y ahora esto lo instalo y ahora vamos a poner esta librería. 2104 01:51:33,200 --> 01:51:36,960 Y ahora vamos a ver cómo entonces evitar que la IA piense por ellos 2105 01:51:37,920 --> 01:51:40,640 es la clave, porque es que si no, no aprenden nada. 2106 01:51:40,640 --> 01:51:43,360 O sea, decir que la IA no puede hacer el trabajo intelectual pesada. 2107 01:51:43,360 --> 01:51:45,360 No podemos delegar en la IA. Y hay estudios que dice 2108 01:51:45,360 --> 01:51:47,800 que cuando se delegan la IA obviamente no se aprende nada. 2109 01:51:47,800 --> 01:51:50,840 No hace falta, que es un estudio que salió en la editorial pero que no hace falta. 2110 01:51:51,680 --> 01:51:53,360 Vale, una cosa muy avanzada. 2111 01:51:53,360 --> 01:51:56,520 Obviamente, si no le dedico ese pensamiento intelectual, 2112 01:51:56,760 --> 01:51:59,520 pues la IA eh, lo hace. 2113 01:51:59,520 --> 01:52:00,360 Voy a sacar un diez. 2114 01:52:00,360 --> 01:52:03,320 ¿Pero cuál es el dilema aquí que tenemos? 2115 01:52:03,320 --> 01:52:05,280 ¿Cómo aprenden ahora los estudiantes a programar? 2116 01:52:05,280 --> 01:52:06,960 ¿Y este dilema del Junior? 2117 01:52:06,960 --> 01:52:09,360 Pues es un riesgo que tenemos que ver. 2118 01:52:09,360 --> 01:52:11,160 Cómo lo fomentamos. 2119 01:52:11,160 --> 01:52:14,520 Y tenemos el problema también de que hacen malos usos de la IA. 2120 01:52:14,520 --> 01:52:17,520 No sé si conocéis, lo hemos explicado en algunos otros talleres y tal, 2121 01:52:17,520 --> 01:52:20,520 y en el informe está también este tema de los modos de aprendizaje. 2122 01:52:20,800 --> 01:52:23,400 Hay un botón estudia y aprende en las grandes 2123 01:52:23,400 --> 01:52:27,680 Ias a las grandes modelos, estos en Jammy Claude. 2124 01:52:27,680 --> 01:52:31,000 El CoPilot es un agente en CoPilot, por cierto, es un agente. 2125 01:52:31,000 --> 01:52:33,400 Está en la en el panel de la izquierda. 2126 01:52:33,400 --> 01:52:36,400 ¿Entonces este modo estudia y aprende, eh? 2127 01:52:36,600 --> 01:52:39,200 Pues es muy útil. Yo le digo a los alumnos que les diga Oye, ve 2128 01:52:40,760 --> 01:52:43,520 que un método socrático te dice oye, vamos a empezar por el principio, 2129 01:52:43,520 --> 01:52:45,000 lo que hacemos los profes. 2130 01:52:45,000 --> 01:52:48,520 Vamos a empezar por hacer una clase ahora Herencia, ahora 2131 01:52:48,520 --> 01:52:52,080 nos equipa paso a paso de bueno, pues es una manera, porque para mí 2132 01:52:52,600 --> 01:52:56,640 los alumnos hacen dos muy malos usos y lo veo bastante en mis asignaturas. 2133 01:52:57,000 --> 01:53:00,480 El primero, usar solamente el chat como chat, GPT y Gemini 2134 01:53:00,720 --> 01:53:03,800 directamente y pegarla ahí el enunciado y a ver si funciona. 2135 01:53:03,800 --> 01:53:06,240 Y no son herramientas de código, son chats. 2136 01:53:06,240 --> 01:53:09,600 Obviamente te hace código y luego copiar el código, lo pegan y no funciona 2137 01:53:10,360 --> 01:53:14,160 y te vienen a tutorías con ese código te lo reconocen 16 en ocho con GPT 2138 01:53:14,520 --> 01:53:15,600 pues muy mal. 2139 01:53:15,600 --> 01:53:17,040 O sea, porque no es para eso 2140 01:53:17,040 --> 01:53:20,080 tienes CoPilot y tienes otras herramientas que deberías aprender a usar. 2141 01:53:20,080 --> 01:53:21,480 Esto está explicado Javi. 2142 01:53:21,480 --> 01:53:23,000 Hay que explicárselo a los alumnos. 2143 01:53:23,000 --> 01:53:26,000 Yo también lo hago ya en las asignaturas en Ingeniería Web 2144 01:53:26,000 --> 01:53:29,040 les cuento cómo uso yo la IA y cómo les recomiendo 2145 01:53:29,040 --> 01:53:32,480 que la usen y cómo creo que que debe usarse profesionalmente. 2146 01:53:33,080 --> 01:53:36,240 Con esto que decimos de USA la gente para que te guíe, para que te ayude 2147 01:53:36,240 --> 01:53:39,480 al diseñar la arquitectura, para para preguntarle que te haga 2148 01:53:39,480 --> 01:53:42,480 una review del código de seguridad, que te haga los test, 2149 01:53:42,480 --> 01:53:45,200 que te haga la documentación, que te mejore la documentación. 2150 01:53:45,200 --> 01:53:47,160 Es decir, hay buenos usos, 2151 01:53:47,160 --> 01:53:50,160 pero ellos o delegan demasiado, son los que saben usarlo. 2152 01:53:50,640 --> 01:53:51,720 Muchas veces por prisas. 2153 01:53:51,720 --> 01:53:53,960 Tienen demasiadas prácticas, tienen demasiadas cosas que hacer, 2154 01:53:53,960 --> 01:53:57,400 delegan demasiado y no aprenden nada y otros hacen muy mal uso. 2155 01:53:57,800 --> 01:54:01,320 Usando solo el chat a brecha GPT intentan ahí hacer código. 2156 01:54:01,880 --> 01:54:04,360 No es el sitio que aprendan a usar herramientas 2157 01:54:04,360 --> 01:54:07,680 que van a usar profesionalmente, no es una herramienta de programación. 2158 01:54:08,400 --> 01:54:11,040 Entonces deberían ir por la línea de CoPilot, 2159 01:54:11,040 --> 01:54:14,040 aunque ahora que han quitado el CoPilot Pro, me temo que 2160 01:54:14,480 --> 01:54:17,560 tirarán más todavía de este chat que tengo Gemini vía chat. 2161 01:54:18,040 --> 01:54:21,680 Porque al final, como como bien sabemos, responde 2162 01:54:21,720 --> 01:54:25,600 Obviamente estas en caso son muy complacientes que se dice 2163 01:54:26,760 --> 01:54:27,240 yo creo. 2164 01:54:27,240 --> 01:54:27,840 El caso es que 2165 01:54:27,840 --> 01:54:31,000 bien usado se puede aprender mucho, pero es una herramienta demasiado potente. 2166 01:54:31,000 --> 01:54:35,200 Como de repente veo al niño en primaria con la calculadora y que no se la 2167 01:54:35,200 --> 01:54:38,320 puedo quitar porque ya, o sea, ellos ya aprenden con autonomía. 2168 01:54:38,320 --> 01:54:41,440 No estoy en el colegio, entonces el problema de la calculadora 2169 01:54:41,440 --> 01:54:44,480 lo tenemos y me imagino al niño sin poder quitarle la calculadora. 2170 01:54:44,480 --> 01:54:46,040 Entonces no va a aprender. 2171 01:54:46,040 --> 01:54:49,040 Entonces veo un problema muy gordo, pero realmente es una, 2172 01:54:49,920 --> 01:54:52,920 es un problema que tenemos y que tenemos que 2173 01:54:52,920 --> 01:54:53,600 que actualizar. 2174 01:54:53,600 --> 01:54:56,840 Como actualizamos esta asignatura yo creo que está cambiando 2175 01:54:57,240 --> 01:55:00,600 y que encima esta cita que la tenemos en el informe, a mí me gusta mucho 2176 01:55:00,960 --> 01:55:05,000 que dice que tenemos que ser conscientes de todo lo que está evolucionando esto, 2177 01:55:05,360 --> 01:55:08,240 la guía que estamos viendo hoy que os hemos enseñado hoy aquí entra 2178 01:55:08,240 --> 01:55:12,720 Javi, yo sobre todo Javi, que es la peor que vamos a ver en la historia. 2179 01:55:12,840 --> 01:55:17,160 ¿Ya decir a partir de aquí cada vez va a ser más prometedora y existe un 2180 01:55:17,160 --> 01:55:19,440 el cloud en mis ojos, este que están hablando 2181 01:55:19,440 --> 01:55:22,440 de que detecta bugs, de que audita código, de que genera un código 2182 01:55:22,440 --> 01:55:25,440 ya salvaje, que todavía no lo han liberado porque dicen que da hasta miedo, no? 2183 01:55:25,680 --> 01:55:27,000 NET O quizás sea un poco de Java 2184 01:55:27,000 --> 01:55:30,320 y un poco de marketiniano o lo que sea, pero el caso es que yo he visto 2185 01:55:30,320 --> 01:55:33,480 una evolución muy grande del 2024 al 2025 2186 01:55:33,960 --> 01:55:36,520 y al año que viene, en 2026 estoy. 2187 01:55:36,520 --> 01:55:39,360 Sabes lo que estoy usando ya es bastante diferente a lo que empecé 2188 01:55:39,360 --> 01:55:40,400 a preparar mis prácticas 2189 01:55:40,400 --> 01:55:44,160 este año, actualizarlas en octubre que doy la asignatura de Ingeniería Web. 2190 01:55:44,440 --> 01:55:47,440 Entonces la evolución está siendo muy rápida 2191 01:55:47,880 --> 01:55:50,720 y yo creo que está cambiando un poco de para dónde vamos. 2192 01:55:50,720 --> 01:55:54,880 No es muy grande, estamos yendo a, o sea, muy rápidamente estamos yendo a 2193 01:55:55,000 --> 01:55:59,120 arquitectura mucho más importante, planificación, testing, despliegue. 2194 01:55:59,640 --> 01:56:03,160 Todo esto también lo estamos cambiando en otras asignaturas diciendo 2195 01:56:03,160 --> 01:56:06,160 es que la parte de codificación hay que dedicarle menos clases, 2196 01:56:06,480 --> 01:56:09,680 vamos a dedicar más clases a hacer una integración continua, 2197 01:56:09,720 --> 01:56:13,480 hacer despliegues porque despliegue la IA te ayuda mucho menos. 2198 01:56:13,680 --> 01:56:16,680 ¿Tienes que entender el cliente servidor, la arquitectura como despliego, 2199 01:56:16,920 --> 01:56:18,360 cómo configura el apache, 2200 01:56:18,360 --> 01:56:21,360 cómo me meto en esas tripas del de la ingeniería de sistemas? 2201 01:56:21,800 --> 01:56:23,440 ¿Cómo hago una captura de requisitos? 2202 01:56:23,440 --> 01:56:25,560 La ingeniería de software tiene muchas, 2203 01:56:25,560 --> 01:56:28,080 muchas más cosas que solamente el code y el coding. 2204 01:56:28,080 --> 01:56:31,080 Ya no lo está haciendo mucho la IA, entonces eso adelgaza. 2205 01:56:31,440 --> 01:56:33,000 ¿Y ya por último, 2206 01:56:33,000 --> 01:56:36,120 y por dejar ya sin dormir, si puede ser, cómo evaluamos todo esto? 2207 01:56:37,200 --> 01:56:40,520 ¿Pues para mí cambia mucho la cosa, eh? 2208 01:56:41,360 --> 01:56:45,600 Ya hay que hacer prácticas que sean mucho más de comprensión, no solamente de 2209 01:56:45,880 --> 01:56:48,800 produces una cosa, me la entregas y te pongo un diez 2210 01:56:48,800 --> 01:56:50,400 y habrá que ir mucho más al examen oral. 2211 01:56:50,400 --> 01:56:53,400 Pero claro, hay asignaturas con 300 alumnos ahí es natural, 2212 01:56:53,440 --> 01:56:56,520 a partir de cierto número de alumnos, hacer un examen oral. 2213 01:56:57,200 --> 01:56:59,600 Uf, pues tenemos un problemón. 2214 01:56:59,600 --> 01:57:02,640 Y ya también una cosa que estoy intentando meter yo 2215 01:57:02,640 --> 01:57:06,480 es que antes les pedía el producto final y ahora les voy a pedir este año que viene 2216 01:57:07,120 --> 01:57:09,520 control de versiones y que me entregan el proyecto entero. 2217 01:57:09,520 --> 01:57:11,400 Que yo vea que ha ido evolucionando, 2218 01:57:11,400 --> 01:57:14,880 que no se lo han pedido, un ahí alejado al producto final y que haya hecho 2219 01:57:14,880 --> 01:57:17,880 un único commit en GitHub con el producto final 2220 01:57:17,880 --> 01:57:21,320 es a menos que venga y me lo explique y que me diga cómo lo modificaría 2221 01:57:21,320 --> 01:57:25,160 y por a tomar esas decisiones, etcétera Y el que no, pues que me enseñe 2222 01:57:25,160 --> 01:57:28,880 como ha ido evolucionando el commits bien documentados con sus con su 2223 01:57:29,600 --> 01:57:31,800 con su justificación, etcétera 2224 01:57:31,800 --> 01:57:34,920 y abierto por supuesto a otras ideas, porque no veo más soluciones. 2225 01:57:35,280 --> 01:57:35,960 Entonces tenemos. 2226 01:57:37,320 --> 01:57:40,320 Y ya con esta última diapo termino sí mía, 2227 01:57:40,440 --> 01:57:44,040 pues mucho más enfocado a primeros cursos como el símil de la calculadora, 2228 01:57:44,360 --> 01:57:48,720 vamos a aprender lo básico, haremos examen en papel práctico sin internet. 2229 01:57:48,720 --> 01:57:50,640 También esta asignatura Ingeniería Web. 2230 01:57:50,640 --> 01:57:53,760 Estamos haciendo un examen práctico sin internet. 2231 01:57:54,280 --> 01:57:55,080 Es un poco irreal. 2232 01:57:55,080 --> 01:57:58,600 En el mundo real tienen acceso a la IA, pero es que para poder hacer cosas básicas 2233 01:57:59,000 --> 01:58:00,360 es como el examen sin calculadora. 2234 01:58:00,360 --> 01:58:03,560 Podríamos hacer el símil y ya con el curso mucho más avanzado, 2235 01:58:03,560 --> 01:58:08,040 llegando a máster y tal, pues como digo, proyecto completo con defensa oral 2236 01:58:09,600 --> 01:58:12,840 y que tengan la IA como herramienta profesional que van a tener en su futuro. 2237 01:58:13,320 --> 01:58:16,440 Y espero, como digo, haberos abierto un poco el melón, pero 2238 01:58:18,240 --> 01:58:19,520 pues aquí comenté alguna vez 2239 01:58:19,520 --> 01:58:22,560 en mi clase les pongo hacer código en papel para no volverme loco. 2240 01:58:22,560 --> 01:58:23,960 Claro, nosotros también lo hacemos. 2241 01:58:23,960 --> 01:58:27,720 El examen es en papel, sigue siendo, pero hemos metido este examen práctico 2242 01:58:27,720 --> 01:58:29,000 sin internet, 2243 01:58:29,000 --> 01:58:32,640 por lo menos para que hagan aplicaciones prácticas, porque lo que nos ha pasado 2244 01:58:32,640 --> 01:58:35,320 ya es que se hagan verdaderos dieces en las prácticas. 2245 01:58:35,320 --> 01:58:39,040 Me harto de corregir cosas que ha hecho la IA y 2246 01:58:40,240 --> 01:58:40,720 y luego 2247 01:58:40,720 --> 01:58:43,720 sacan cerebros en el examen porque ellos se piensan que están aprendiendo, 2248 01:58:44,240 --> 01:58:48,040 ellos ven el código de ahí que obvio, qué sencillo sencillo te lo ha hecho la IA. 2249 01:58:48,040 --> 01:58:49,920 Además le has dicho que lo haga sencillo 2250 01:58:49,920 --> 01:58:53,640 porque ellos saben hacer un poquito para mirar bien y tener un poco de agudeza 2251 01:58:53,640 --> 01:58:55,920 ahí ya no como si lo hubiese hecho un estudiante. 2252 01:58:55,920 --> 01:58:58,920 Entonces pues creo que. 2253 01:59:00,720 --> 01:59:03,680 Tenemos un problema, vamos en general, me decían, ha comentado José Joaquín 2254 01:59:03,680 --> 01:59:06,720 dice en un aspecto más general tenemos que cambiar 2255 01:59:07,720 --> 01:59:10,720 a un sistema de orden más que de pasa no pasa. 2256 01:59:10,960 --> 01:59:13,960 ¿Ordenar a los alumnos dentro de su curso? 2257 01:59:14,160 --> 01:59:15,640 Sí, pues tenemos que cambiarlos. 2258 01:59:15,640 --> 01:59:17,400 Yo estoy un poco preocupado 2259 01:59:17,400 --> 01:59:19,960 y tenemos un poco, pero el problema para mí es de escala. 2260 01:59:19,960 --> 01:59:22,760 O sea, cuando hay 300 alumnos en la asignatura que tuvimos el viernes, 2261 01:59:22,760 --> 01:59:23,160 el examen. 2262 01:59:23,160 --> 01:59:27,040 Javi, tú eres profesor no de computación en red y el viernes fue el examen. 2263 01:59:27,040 --> 01:59:29,160 Son 300 y pico alumnos. 2264 01:59:29,160 --> 01:59:31,760 Yo en la de ingeniería web tenemos 100 y algo 2265 01:59:31,760 --> 01:59:35,280 como hago 120 y pico exámenes orales, puedo, pero me cometo la semana. 2266 01:59:36,320 --> 01:59:38,560 ¿O sea, es un poco problema 2267 01:59:38,560 --> 01:59:41,560 eh? Tenemos que ver. 2268 01:59:42,240 --> 01:59:44,920 Si la experiencia hace un examen de PC sin internet es muy buena. 2269 01:59:44,920 --> 01:59:47,480 El problema es disponibilidad de equipos capados. 2270 01:59:47,480 --> 01:59:51,000 Nosotros lo hemos hecho con 100 y algo alumnos y la otra sin hacer varios turnos. 2271 01:59:51,360 --> 01:59:52,920 ¿Problema que tienes hace varios exámenes, claro, 2272 01:59:52,920 --> 01:59:55,920 porque el alumno se lo cuenta luego unos a otros eh? 2273 01:59:56,680 --> 02:00:00,240 Pues tenemos que verlo en yo para mí en docencia ya te me quita el sueño, 2274 02:00:00,440 --> 02:00:03,520 o sea, me me tiene, no tengo soluciones, tengo problemas 2275 02:00:04,600 --> 02:00:06,560 y os cuento lo que estoy haciendo, lo estoy haciendo. 2276 02:00:06,560 --> 02:00:09,560 Lo de que me entreguen el proyecto y así veo sus commits, 2277 02:00:09,560 --> 02:00:11,160 no me vale el producto final. 2278 02:00:11,160 --> 02:00:13,280 ¿Quiero ver el proceso, eh? 2279 02:00:13,280 --> 02:00:16,120 Voy a adelgazar la parte de código y voy a meter más partes de despliegue, 2280 02:00:16,120 --> 02:00:19,640 más parte de planificación, más parte de entender la arquitectura, 2281 02:00:20,520 --> 02:00:23,000 el examen con internet capado. 2282 02:00:23,000 --> 02:00:24,840 Eso en aquí en la escuela por lo menos es posible. 2283 02:00:24,840 --> 02:00:30,120 Tenemos un laboratorio grande de 100 puestos y lo hacemos y 2284 02:00:31,360 --> 02:00:33,480 Y en esas estamos ahora mismo. 2285 02:00:33,480 --> 02:00:38,000 Y a partir de ahí, a seguir pensando en cómo conseguir evaluar 2286 02:00:38,000 --> 02:00:41,080 y también cómo conseguir no solamente pillar al que no ha aprendido. 2287 02:00:41,160 --> 02:00:42,480 Para mí eso es doble. 2288 02:00:42,480 --> 02:00:45,480 El problema también conseguir transmitir esta competencia. 2289 02:00:46,080 --> 02:00:49,320 Es decir, ellos van a llegar a su empresa y les van a pedir que usen 2290 02:00:49,840 --> 02:00:52,400 CoPilot bien usado, que no usen chat 2291 02:00:52,400 --> 02:00:55,600 GPT para programar que usen CoPilot o o Cloud de Code. 2292 02:00:55,600 --> 02:00:58,600 Al final se usan todos igual o cualquiera que quieran en Gemini, 2293 02:00:58,800 --> 02:01:01,800 que por cierto Gemini en la educación si lo tienen por lo menos un año. 2294 02:01:02,000 --> 02:01:04,560 Mi experiencia también es que lo usan bastante, casi todos solo 2295 02:01:04,560 --> 02:01:07,560 activaron el Gemini for Education. Este 2296 02:01:08,080 --> 02:01:11,360 y ahí el PRO les daba el PRO un año. 2297 02:01:11,360 --> 02:01:15,760 Ahora ya con lo que mandaste Jessica también tienen el pack 2298 02:01:15,760 --> 02:01:18,920 education con la cuenta UPM, con el cómo se dice estable. 2299 02:01:18,920 --> 02:01:22,680 Si uno entonces también es más o menos. 2300 02:01:22,680 --> 02:01:24,400 A ver si poníamos así el agravio comparativo, 2301 02:01:24,400 --> 02:01:27,000 porque yo no era consciente de que les habían chapado ya el CoPilot. 2302 02:01:27,000 --> 02:01:29,480 Pero si he puesto ahí el enlace donde sí 2303 02:01:30,840 --> 02:01:31,240 lo he 2304 02:01:31,240 --> 02:01:34,640 visto es que justo las tuve el viernes y venía el marcar estudiante. 2305 02:01:35,160 --> 02:01:39,080 Y lo que pasa que yo vi hoy la activación con Anti Gravity, 2306 02:01:39,080 --> 02:01:42,960 o sea el usar la parte de código por así decirlo, de esta guía 2307 02:01:43,280 --> 02:01:46,280 no está inicialmente 2308 02:01:46,680 --> 02:01:48,240 habilitada. 2309 02:01:48,240 --> 02:01:51,320 ¿Sí, pero en el CoPilot, en el Gemini, pero sí en el que tienen, 2310 02:01:51,360 --> 02:01:54,920 porque me lo han traído y eso sí es propio, porque ese no es, no es 2311 02:01:54,920 --> 02:01:58,280 en el anterior si fue por enero o así, verdad? 2312 02:01:59,240 --> 02:02:00,600 Es para mí, ese es otro menos gordo. 2313 02:02:00,600 --> 02:02:03,520 Es lo que digo, el agravio comparativo. No tenemos tampoco solución. 2314 02:02:03,520 --> 02:02:07,560 Tengo alumnos que pagan, claro, me lo paga papi porque es una manera rápida 2315 02:02:08,520 --> 02:02:12,480 y claro, otros no, entonces pues tenemos también el otro problemita. 2316 02:02:13,120 --> 02:02:17,920 Bueno, y añado uno que es mantenernos actualizados, que 2317 02:02:19,080 --> 02:02:20,320 son todos melones. 2318 02:02:20,320 --> 02:02:24,120 Así que bueno, por lo menos gracias a este tipo también de talleres 2319 02:02:24,120 --> 02:02:27,840 y tal, que podemos ir manteniéndonos actualizados y intentar entre todos 2320 02:02:28,480 --> 02:02:31,360 ir compartiendo soluciones y 2321 02:02:31,360 --> 02:02:35,400 y estamos para intentar compartir y ver cómo llegamos a a buen puerto 2322 02:02:35,400 --> 02:02:36,760 y conseguimos que nuestro alumno aprenda 2323 02:02:36,760 --> 02:02:37,960 lo más posible, que es un poco 2324 02:02:37,960 --> 02:02:39,800 el objetivo que tenemos también entre todos 2325 02:02:39,800 --> 02:02:42,240 y no hartarnos de corregir prácticas hechas con ella, 2326 02:02:42,240 --> 02:02:46,240 sino intentar dar esta competencia que se la exigen ya. 2327 02:02:46,240 --> 02:02:50,640 Vamos, que ya te lo ponen en la entrevista de trabajo, vamos en las ofertas 2328 02:02:51,280 --> 02:02:51,640 entonces. 2329 02:02:51,640 --> 02:02:55,920 Bueno, pues muchísimas gracias Javier y Enrique. 2330 02:02:56,520 --> 02:02:58,560 No sé si hay alguna pregunta más y rápido. 2331 02:02:58,560 --> 02:03:01,560 Antes. 2332 02:03:01,640 --> 02:03:04,560 Como creo que no había más gente, solo gracias. 2333 02:03:04,560 --> 02:03:06,960 Vale, pues muchísimas gracias, Muchas gracias. 2334 02:03:06,960 --> 02:03:11,560 Agradeceros de nuevo muchísimas gracias. 2335 02:03:12,160 --> 02:03:13,720 Gracias a todos. Buena tarde.