{"id":192,"date":"2026-04-30T18:40:24","date_gmt":"2026-04-30T18:40:24","guid":{"rendered":"https:\/\/rfog.es\/?p=192"},"modified":"2026-04-30T18:40:24","modified_gmt":"2026-04-30T18:40:24","slug":"nueva-bestia-negra-ia-proyectos-criticas","status":"publish","type":"post","link":"https:\/\/rfog.es\/?p=192","title":{"rendered":"2015LM &#8211; M\u00e1s negro y m\u00e1s grande"},"content":{"rendered":"<p><small><em>Este texto ha sido generado por Gemini 2.5\/3.1 a partir del audio del autor. El contenido y las ideas son \u00edntegramente del autor; la redacci\u00f3n ha sido asistida por IA.<\/em><\/small><\/p>\n<hr \/>\n<p>\u00a1Qu\u00e9 pasa, gallinicas m\u00edas! Aqu\u00ed vuestro reportero m\u00e1s dicharachero con un batiburrillo de ideas mientras espero mi \u00faltima adquisici\u00f3n. Mi \u00abcosa grande y negra\u00bb ya se est\u00e1 moviendo por China y, aunque ten\u00eda la esperanza de que llegara de un d\u00eda para otro, parece que se har\u00e1 de rogar hasta el lunes o martes. \u00a1Ojal\u00e1 sea el lunes para pillarla en casa!<\/p>\n<p>Esto me ha recordado a cuando compr\u00e9 uno de los primeros Kindle DX en Estados Unidos. Gracias a la magia de los husos horarios, el c\u00e1lculo final fue que tard\u00f3 solo ocho horas en llegar desde la compra. En realidad, esper\u00e9 d\u00eda y medio, porque los amigos de aduanas en Alicante lo pararon y me toc\u00f3 ir a negociar. Intent\u00e9 que lo pasaran como un libro, pero no col\u00f3 y tuve que pagar el pico correspondiente a un dispositivo electr\u00f3nico con pantalla.<\/p>\n<h2>Mi gato, la aspiradora y la curiosidad<\/h2>\n<p>Cambiando de tercio, ten\u00edamos p\u00e1nico de que nuestro gato huyera despavorido de la aspiradora. Pues nada m\u00e1s lejos de la realidad. El t\u00edo va siguiendo a Inconvenient mientras limpia, asomando la cabecita para no perderse detalle. Es un gato curioso, pero no en el sentido de cotilla, sino en el de limpio. Porque, para los incultos, \u00abcurioso\u00bb tambi\u00e9n significa pulcro, una acepci\u00f3n menos com\u00fan pero igualmente v\u00e1lida. Esto me recuerda a las vi\u00f1etas de los TBO de mi \u00e9poca, pero mejor no divago m\u00e1s, que la ancianidad es lo que tiene.<\/p>\n<h2>Planes para la bestia: Un lector de noticias con esteroides<\/h2>\n<p>He dejado de pagar InnoReader y, con el OPML que tengo en Devonthink, voy a construir mi propio agregador de noticias. Pero no ser\u00e1 uno cualquiera. La idea es que un LLM procese los feeds y me construya un resumen diario, agrupado por temas y ordenado de m\u00e1s a menos interesante para m\u00ed. Aqu\u00ed viene lo bueno: si varios medios publican sobre lo mismo, como una nueva beta de Apple, el sistema bajar\u00e1 todas las noticias, extraer\u00e1 los puntos comunes y las diferencias, y me presentar\u00e1 un informe consolidado. As\u00ed me evitar\u00e9 leer veinte veces la misma historia sobre la retirada de Tim Cook.<\/p>\n<p>La idea es que, con el tiempo, el sistema aprenda y, si sale una noticia relacionada con una anterior, solo me muestre las novedades junto a un peque\u00f1o recordatorio. Tambi\u00e9n planeo integrar res\u00famenes de v\u00eddeos de YouTube, algo que ya hago con Copilot, que por cierto, genera res\u00famenes bastante mejores que los de InnoReader. Todo esto se ejecutar\u00e1 en local, en mi nueva m\u00e1quina, aunque quiz\u00e1s termine usando algunos tokens en remoto. Incluso contemplo la posibilidad de publicar estos res\u00famenes en un feed RSS privado en mi blog.<\/p>\n<h2>\u00bfPor qu\u00e9 C# y no Python? Mi cruzada personal<\/h2>\n<p>Con la ayuda de Gemini, he decidido que todo este proyecto lo har\u00e9 con C# y otras herramientas. \u00bfPor qu\u00e9 no Python, el rey de la IA? Porque, seamos claros, Python es una puta mierda pinchada en un palo. No soporto que, a estas alturas del siglo XXI, sus entornos virtuales sigan usando rutas absolutas. La soluci\u00f3n de crear un <code>requirements.txt<\/code> para que cada equipo genere el entorno en una ruta local diferente me parece una chapuza.<\/p>\n<p>Con C# me siento c\u00f3modo. Tengo Avalonia para la interfaz gr\u00e1fica, que usa XAML igual que en Windows, lo que facilitar\u00eda una futura migraci\u00f3n. S\u00ed, todo sale primero en Python en el mundo de la IA, pero sus carencias son horrorosas. El manejo de dependencias es un desastre: te obliga a usar versiones espec\u00edficas de paquetes, y si uno tiene un fallo de seguridad, o te aguantas o rehaces todo. Esto pasa porque muchos de sus desarrolladores son \u00abvivecodings\u00bb, no ingenieros de software, y los dem\u00e1s pagamos el pato. As\u00ed que mis scripts actuales, como los que limpian estos audios, los reescribir\u00e9 en C#.<\/p>\n<h2>M\u00e1s all\u00e1 de los res\u00famenes: Experimentando con LORAs<\/h2>\n<p>Otro de los experimentos que quiero hacer con la \u00abcosa grande y gorda\u00bb es reentrenar un modelo, o m\u00e1s bien, modificarlo creando un LORA. Por ejemplo, me encantar\u00eda meterle todas las novelas de Julio Verne para crear una IA que sea una verdadera experta en su obra. Ya lo intent\u00e9 con LM Studio, pero no pudo con todos los libros y las respuestas que daba eran incompletas. Con un LORA, el resultado deber\u00eda ser infinitamente mejor.<\/p>\n<p>Mientras escuchaba el \u00faltimo podcast de Apple Coding con Julio C\u00e9sar Fern\u00e1ndez y Oliver Navani, pensaba en todo esto. Con todo el respeto, a veces me da la sensaci\u00f3n de que fuman algo, porque sus planteamientos son un poco exagerados. Me gustar\u00eda que Oliver publicara esos ficheros de su \u00abOpen Caca\u00bb para ver si es oro todo lo que reluce.<\/p>\n<h2>Y a todo esto, \u00bfqu\u00e9 pasa con los agentes de IA?<\/h2>\n<p>Entiendo lo que hacen los agentes, pero no les termino de ver la utilidad pr\u00e1ctica para mi d\u00eda a d\u00eda. \u00bfQu\u00e9 diferencia real hay entre subir este audio a un agente para que lo procese, o simplemente dejarlo en una carpeta y pulsar un bot\u00f3n? Para m\u00ed, ninguna. Para hacer preguntas ya tengo el chat. Es como tener un martillo pero no saber d\u00f3nde clavar. No me termina de cuadrar.<\/p>\n<p>En el trabajo es impensable. Si le digo a mi jefe que he conectado un agente al c\u00f3digo fuente de la empresa, heredo de forma fulminante. Quiz\u00e1s en un futuro, si le convenzo para montar un Mac Studio con 512 GB de RAM en su casa, podr\u00eda usarlo en remoto para que los agentes me ayuden a refactorizar la interfaz de nuestra aplicaci\u00f3n, pero por ahora, es ciencia ficci\u00f3n.<\/p>\n<h2>Una inversi\u00f3n justificada (o eso espero)<\/h2>\n<p>Alguno se preguntar\u00e1 por qu\u00e9 no esper\u00e9 a un nuevo Mac Studio. La respuesta es simple: no s\u00e9 cu\u00e1ndo saldr\u00e1 un modelo con los 128 o 256 GB de RAM que necesito. As\u00ed que me lanc\u00e9 a por el MacBook Pro. Ha sido una pasta, s\u00ed. Ya pod\u00e9is estimar lo que me he gastado. Espero que la paga extra de mayo me sirva para igualar un poco los n\u00fameros y no destrozar mi nivel de ahorro.<\/p>\n<p>En fin, eso es todo por ahora. Os ir\u00e9 manteniendo al d\u00eda con los avances de la \u00abcosa grande y negra\u00bb. No olvid\u00e9is sospechosos habitualizaros y que no os la pique un pollo belga. \u00a1A demonio!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>La espera de mi nuevo equipo me inspira a planificar proyectos de IA, desde un lector de noticias inteligente a entrenar LORAs. Y de paso, rajo de Python.<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[60,8,9],"tags":[91,24,93,94,92],"class_list":["post-192","post","type-post","status-publish","format-standard","hentry","category-escariolotropias-gmmnesicas","category-investigaciones-himbestijadas","category-podcastexto","tag-desarrollo-de-software","tag-inteligencia-artificial","tag-llm-local","tag-macbook-pro","tag-python-vs-c"],"_links":{"self":[{"href":"https:\/\/rfog.es\/index.php?rest_route=\/wp\/v2\/posts\/192","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/rfog.es\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/rfog.es\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/rfog.es\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/rfog.es\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=192"}],"version-history":[{"count":1,"href":"https:\/\/rfog.es\/index.php?rest_route=\/wp\/v2\/posts\/192\/revisions"}],"predecessor-version":[{"id":193,"href":"https:\/\/rfog.es\/index.php?rest_route=\/wp\/v2\/posts\/192\/revisions\/193"}],"wp:attachment":[{"href":"https:\/\/rfog.es\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=192"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/rfog.es\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=192"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/rfog.es\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=192"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}