{"id":337,"date":"2024-06-27T14:10:47","date_gmt":"2024-06-27T14:10:47","guid":{"rendered":"https:\/\/alexpadulles.es\/blog\/?p=337"},"modified":"2024-06-28T23:52:13","modified_gmt":"2024-06-28T23:52:13","slug":"crea-tu-propio-gpt-de-laravel-11","status":"publish","type":"post","link":"https:\/\/alexpadulles.es\/blog\/crea-tu-propio-gpt-de-laravel-11\/","title":{"rendered":"Crea tu propio GPT de Laravel 11"},"content":{"rendered":"<p>Laravel 11 se perfila como una de las versiones m\u00e1s flexibles y robustas para el desarrollo de aplicaciones web modernas. Si alguna vez has deseado crear tu propio <a href=\"https:\/\/alexpadulles.es\/blog\/gpt-5-novedades-clave-en-la-nueva-version\/\">Generative Pre-trained Transformer (GPT)<\/a> utilizando PHP y este framework, est\u00e1s en el lugar correcto. En este art\u00edculo <strong>Crea tu propio GPT de Laravel 11<\/strong>, te guiamos paso a paso para que puedas montar tu propio GPT de la documentaci\u00f3n de Laravel 11 ejecutando nuestro script, as\u00ed podr\u00e1s siempre tener actualizada una versi\u00f3n de GPT de este framework.<\/p>\n<h2>Crea tu propio GPT de Laravel 11 con PHP<\/h2>\n<p>&nbsp;<\/p>\n<h3>Recopilando la Informaci\u00f3n de Laravel 11<\/h3>\n<p>En primer lugar, tenemos que traernos toda la informaci\u00f3n de la documentaci\u00f3n oficial de Laravel 11. Gracias a esta comunidad, desde un repositorio de <a href=\"https:\/\/github.com\/\" target=\"_blank\" rel=\"noopener\">GitHub<\/a> podemos traernos toda esta informaci\u00f3n actualizada en archivos. Para esto, vamos a crear nuestro script que se conectar\u00e1 v\u00eda <a href=\"https:\/\/docs.github.com\/en\/rest?apiVersion=2022-11-28\" target=\"_blank\" rel=\"noopener\">API a GitHub<\/a> y recopilar\u00e1 todos estos archivos. Usaremos nuestro editor favorito, en mi vaso <a href=\"https:\/\/code.visualstudio.com\/download\" target=\"_blank\" rel=\"noopener\">Visual Studio Code<\/a> y PHP para usar CURL en nuestra peticion al endpoint.<\/p>\n<h3>El c\u00f3digo se muestra de la siguiente manera:<\/h3>\n<p><code><br \/>\nini_set('max_execution_time', 1000000');<\/code><\/p>\n<p>$url = &#8220;https:\/\/api.github.com\/repos\/laravel\/docs\/contents&#8221;;<br \/>\n$saveFile = &#8220;full-laravel-docs.md&#8221;;<\/p>\n<p>\/\/ Inicializar una sesi\u00f3n cURL para obtener la lista de archivos<br \/>\n$ch = curl_init();<br \/>\ncurl_setopt($ch, CURLOPT_URL, $url);<br \/>\ncurl_setopt($ch, CURLOPT_RETURNTRANSFER, true);<br \/>\ncurl_setopt($ch, CURLOPT_HTTPHEADER, array(&#8216;User-Agent: PHP-cURL&#8217;));<br \/>\ncurl_setopt($ch, CURLOPT_CAINFO, &#8220;C:\\\\laragon\\\\etc\\\\ssl\\\\cacert.pem&#8221;);<\/p>\n<p>\/\/ Ejecutar la petici\u00f3n y almacenar la respuesta en una variable<br \/>\n$response = curl_exec($ch);<br \/>\nif (curl_errno($ch)) {<br \/>\necho &#8216;Error:&#8217; . curl_error($ch);<br \/>\nexit;<br \/>\n}<br \/>\ncurl_close($ch);<\/p>\n<p>\/\/ Decodificar la respuesta JSON<br \/>\n$files = json_decode($response, true);<\/p>\n<p>\/\/ Filtrar archivos que tienen una URL de descarga<br \/>\n$filteredFiles = array_filter($files, function ($file) {<br \/>\nreturn isset($file[&#8216;download_url&#8217;]);<br \/>\n});<\/p>\n<p>\/\/ Descargar y concatenar el contenido de cada archivo<br \/>\n$fullDocs = &#8220;&#8221;;<br \/>\nforeach ($filteredFiles as $file) {<br \/>\n$downloadUrl = $file[&#8216;download_url&#8217;];<\/p>\n<p>\/\/ Inicializar una sesi\u00f3n cURL para descargar el contenido del archivo<br \/>\n$ch = curl_init();<br \/>\ncurl_setopt($ch, CURLOPT_URL, $downloadUrl);<br \/>\ncurl_setopt($ch, CURLOPT_RETURNTRANSFER, true);<br \/>\ncurl_setopt($ch, CURLOPT_HTTPHEADER, array(&#8216;User-Agent: PHP-cURL&#8217;));<br \/>\ncurl_setopt($ch, CURLOPT_CAINFO, &#8220;C:\\\\laragon\\\\etc\\\\ssl\\\\cacert.pem&#8221;);<\/p>\n<p>\/\/ Ejecutar la petici\u00f3n y almacenar la respuesta en una variable<br \/>\n$fileContent = curl_exec($ch);<br \/>\nif (curl_errno($ch)) {<br \/>\necho &#8216;Error:&#8217; . curl_error($ch);<br \/>\ncurl_close($ch);<br \/>\ncontinue;<br \/>\n}<br \/>\ncurl_close($ch);<\/p>\n<p>\/\/ Concatenar el contenido del archivo<br \/>\n$fullDocs .= $fileContent . PHP_EOL . PHP_EOL;<br \/>\n}<\/p>\n<h3>Transformando la Informaci\u00f3n en un solo archivo<\/h3>\n<p>En este paso transformaremos todos los archivos\u00a0 recopilados a traves del endpont de github en unos solo para que sea valido en nuestro modelo\u00a0 GPT<\/p>\n<p><code><br \/>\nfile_put_contents($saveFile, $fullDocs);<br \/>\n<\/code><\/p>\n<h3>En este paso subiremos a Nuestro Modelo GPT el archivo<\/h3>\n<p>Crearemos un modelo al que a\u00f1adiremos el archivo que hemos obtenido. Tambi\u00e9n podemos pas\u00e1rselo mediante la <a href=\"https:\/\/openai.com\/index\/openai-api\/\" target=\"_blank\" rel=\"noopener\">API de GPT<\/a>, pero aqu\u00ed nos centraremos en la versi\u00f3n Desktop, que es m\u00e1s intuitiva.<\/p>\n<p>&nbsp;<\/p>\n<p><img fetchpriority=\"high\" decoding=\"async\" class=\" wp-image-375 aligncenter\" src=\"https:\/\/alexpadulles.es\/blog\/wp-content\/uploads\/2024\/06\/chatgptmodelo-300x106.png\" alt=\"Mostrar donde incluir archivo en GPT modelo\" width=\"478\" height=\"169\" srcset=\"https:\/\/alexpadulles.es\/blog\/wp-content\/uploads\/2024\/06\/chatgptmodelo-300x106.png 300w, https:\/\/alexpadulles.es\/blog\/wp-content\/uploads\/2024\/06\/chatgptmodelo-768x271.png 768w, https:\/\/alexpadulles.es\/blog\/wp-content\/uploads\/2024\/06\/chatgptmodelo.png 852w\" sizes=\"(max-width: 478px) 100vw, 478px\" \/><\/p>\n<p>&nbsp;<\/p>\n<p>\u00bfQuieres sabes como se crea un modelo GPT?.\u00a0 Visita este art\u00edculo <a href=\"https:\/\/alexpadulles.es\/blog\/como-crear-un-modelo-gpt\/\" target=\"_blank\" rel=\"noopener\">Como crear un modelo gpt<\/a><\/p>\n<p>Una vez que concluidos los pasos anterioires, ya podemos usar nuestro modelo entrenado con la \u00faltima acualizaci\u00f3n de Laravel 11<\/p>\n<h2>Crea tu propio GPT de Laravel 11: Conclusi\u00f3n<\/h2>\n<p>En resumen, hemos mostrado c\u00f3mo recopilar la documentaci\u00f3n de Laravel 11 desde GitHub, crear un archivo consolidado y subirlo a un modelo GPT. Esto nos permitir\u00e1 tener siempre una versi\u00f3n actualizada de GPT basada en <a href=\"https:\/\/alexpadulles.es\/blog\/laravel-11\/\" target=\"_blank\" rel=\"noopener\">Laravel 11<\/a>, facilitando el desarrollo de aplicaciones con este potente framework.<\/p>\n<h2>Contacto<\/h2>\n<p>Si necesitas servicios de desarrollo para tu empresa, estoy aqu\u00ed para ayudarte. Ofrezco soluciones personalizadas y de alta calidad para satisfacer tus necesidades. Para m\u00e1s informaci\u00f3n o para discutir tu proyecto, cont\u00e1ctame a trav\u00e9s del siguiente bot\u00f3n:<\/p>\n<button translate=\"no\" class=\"btg-button btg-button-1\" data-btnid=\"1\" data-url=\"https:\/\/alexpadulles.es\/#contact\" data-action=\"link\" data-target=\"_self\">Contacta con nosotros<span class=\"fas fa-message btg-icon \"><\/span><\/button>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>Imagenes obtenidas en : <a href=\"https:\/\/www.freepik.com\/free-photo\/cyborg-hand-3d-background-technology-artificial-intelligence_17850524.htm#fromView=search&amp;page=1&amp;position=7&amp;uuid=90cf505c-d5a3-487f-be4f-2d5883297107\">Image by rawpixel.com on Freepik<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Laravel 11 se perfila como una de las versiones m\u00e1s flexibles y robustas para el desarrollo&#8230;<\/p>\n","protected":false},"author":1,"featured_media":342,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[14,8,12],"tags":[126,125,127,124],"class_list":["post-337","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-ia","category-laravel","category-php","tag-api","tag-gpt","tag-laravel","tag-php"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.9 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Crea tu propio GPT de Laravel 11 - Blog Desarrrollo web Alex Padulles<\/title>\n<meta name=\"description\" content=\"Te guiamos paso a paso para que puedas montar tu propio GPT de la documentaci\u00f3n de Laravel 11 ejecutando nuestro script\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/alexpadulles.es\/blog\/crea-tu-propio-gpt-de-laravel-11\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Crea tu propio GPT de Laravel 11 - Blog Desarrrollo web Alex Padulles\" \/>\n<meta property=\"og:description\" content=\"Te guiamos paso a paso para que puedas montar tu propio GPT de la documentaci\u00f3n de Laravel 11 ejecutando nuestro script\" \/>\n<meta property=\"og:url\" content=\"https:\/\/alexpadulles.es\/blog\/crea-tu-propio-gpt-de-laravel-11\/\" \/>\n<meta property=\"og:site_name\" content=\"Blog Desarrrollo web Alex Padulles\" \/>\n<meta property=\"article:published_time\" content=\"2024-06-27T14:10:47+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-06-28T23:52:13+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/alexpadulles.es\/blog\/wp-content\/uploads\/2024\/06\/Script-doc-gpt-laravel11-scaled.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"2560\" \/>\n\t<meta property=\"og:image:height\" content=\"1440\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Alex Padull\u00e9s\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@alexpadulles\" \/>\n<meta name=\"twitter:site\" content=\"@alexpadulles\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Alex Padull\u00e9s\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutos\" \/>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Crea tu propio GPT de Laravel 11 - Blog Desarrrollo web Alex Padulles","description":"Te guiamos paso a paso para que puedas montar tu propio GPT de la documentaci\u00f3n de Laravel 11 ejecutando nuestro script","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/alexpadulles.es\/blog\/crea-tu-propio-gpt-de-laravel-11\/","og_locale":"es_ES","og_type":"article","og_title":"Crea tu propio GPT de Laravel 11 - Blog Desarrrollo web Alex Padulles","og_description":"Te guiamos paso a paso para que puedas montar tu propio GPT de la documentaci\u00f3n de Laravel 11 ejecutando nuestro script","og_url":"https:\/\/alexpadulles.es\/blog\/crea-tu-propio-gpt-de-laravel-11\/","og_site_name":"Blog Desarrrollo web Alex Padulles","article_published_time":"2024-06-27T14:10:47+00:00","article_modified_time":"2024-06-28T23:52:13+00:00","og_image":[{"width":2560,"height":1440,"url":"https:\/\/alexpadulles.es\/blog\/wp-content\/uploads\/2024\/06\/Script-doc-gpt-laravel11-scaled.jpg","type":"image\/jpeg"}],"author":"Alex Padull\u00e9s","twitter_card":"summary_large_image","twitter_creator":"@alexpadulles","twitter_site":"@alexpadulles","twitter_misc":{"Written by":"Alex Padull\u00e9s","Est. reading time":"3 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/alexpadulles.es\/blog\/crea-tu-propio-gpt-de-laravel-11\/#article","isPartOf":{"@id":"https:\/\/alexpadulles.es\/blog\/crea-tu-propio-gpt-de-laravel-11\/"},"author":{"name":"Alex Padull\u00e9s","@id":"https:\/\/alexpadulles.es\/blog\/#\/schema\/person\/e32cd17cd5729478d074e4fdb3212e32"},"headline":"Crea tu propio GPT de Laravel 11","datePublished":"2024-06-27T14:10:47+00:00","dateModified":"2024-06-28T23:52:13+00:00","mainEntityOfPage":{"@id":"https:\/\/alexpadulles.es\/blog\/crea-tu-propio-gpt-de-laravel-11\/"},"wordCount":639,"commentCount":0,"publisher":{"@id":"https:\/\/alexpadulles.es\/blog\/#\/schema\/person\/e32cd17cd5729478d074e4fdb3212e32"},"image":{"@id":"https:\/\/alexpadulles.es\/blog\/crea-tu-propio-gpt-de-laravel-11\/#primaryimage"},"thumbnailUrl":"https:\/\/alexpadulles.es\/blog\/wp-content\/uploads\/2024\/06\/Script-doc-gpt-laravel11-scaled.jpg","keywords":["api","gpt","laravel","php"],"articleSection":["IA","laravel","php"],"inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/alexpadulles.es\/blog\/crea-tu-propio-gpt-de-laravel-11\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/alexpadulles.es\/blog\/crea-tu-propio-gpt-de-laravel-11\/","url":"https:\/\/alexpadulles.es\/blog\/crea-tu-propio-gpt-de-laravel-11\/","name":"Crea tu propio GPT de Laravel 11 - Blog Desarrrollo web Alex Padulles","isPartOf":{"@id":"https:\/\/alexpadulles.es\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/alexpadulles.es\/blog\/crea-tu-propio-gpt-de-laravel-11\/#primaryimage"},"image":{"@id":"https:\/\/alexpadulles.es\/blog\/crea-tu-propio-gpt-de-laravel-11\/#primaryimage"},"thumbnailUrl":"https:\/\/alexpadulles.es\/blog\/wp-content\/uploads\/2024\/06\/Script-doc-gpt-laravel11-scaled.jpg","datePublished":"2024-06-27T14:10:47+00:00","dateModified":"2024-06-28T23:52:13+00:00","description":"Te guiamos paso a paso para que puedas montar tu propio GPT de la documentaci\u00f3n de Laravel 11 ejecutando nuestro script","breadcrumb":{"@id":"https:\/\/alexpadulles.es\/blog\/crea-tu-propio-gpt-de-laravel-11\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/alexpadulles.es\/blog\/crea-tu-propio-gpt-de-laravel-11\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/alexpadulles.es\/blog\/crea-tu-propio-gpt-de-laravel-11\/#primaryimage","url":"https:\/\/alexpadulles.es\/blog\/wp-content\/uploads\/2024\/06\/Script-doc-gpt-laravel11-scaled.jpg","contentUrl":"https:\/\/alexpadulles.es\/blog\/wp-content\/uploads\/2024\/06\/Script-doc-gpt-laravel11-scaled.jpg","width":2560,"height":1440,"caption":"Artificial Intelligence AI site for helping with software production"},{"@type":"BreadcrumbList","@id":"https:\/\/alexpadulles.es\/blog\/crea-tu-propio-gpt-de-laravel-11\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/alexpadulles.es\/blog\/"},{"@type":"ListItem","position":2,"name":"Crea tu propio GPT de Laravel 11"}]},{"@type":"WebSite","@id":"https:\/\/alexpadulles.es\/blog\/#website","url":"https:\/\/alexpadulles.es\/blog\/","name":"Desarrollor web Alex padulles","description":"Bienvenidos a mi blog, tu portal de referencia en tecnolog\u00eda. Con a\u00f1os de experiencia en programaci\u00f3n y desarrollo web, ofrecemos soluciones innovadoras y personalizadas para todos tus proyectos digitales.","publisher":{"@id":"https:\/\/alexpadulles.es\/blog\/#\/schema\/person\/e32cd17cd5729478d074e4fdb3212e32"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/alexpadulles.es\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":["Person","Organization"],"@id":"https:\/\/alexpadulles.es\/blog\/#\/schema\/person\/e32cd17cd5729478d074e4fdb3212e32","name":"Alex Padull\u00e9s","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/alexpadulles.es\/blog\/wp-content\/uploads\/2024\/06\/cropped-openart-image_JlFoPIny_1718750114835_raw.png","url":"https:\/\/alexpadulles.es\/blog\/wp-content\/uploads\/2024\/06\/cropped-openart-image_JlFoPIny_1718750114835_raw.png","contentUrl":"https:\/\/alexpadulles.es\/blog\/wp-content\/uploads\/2024\/06\/cropped-openart-image_JlFoPIny_1718750114835_raw.png","width":602,"height":481,"caption":"Alex Padull\u00e9s"},"logo":{"@id":"https:\/\/alexpadulles.es\/blog\/wp-content\/uploads\/2024\/06\/cropped-openart-image_JlFoPIny_1718750114835_raw.png"},"sameAs":["https:\/\/alexpadulles.es\/blog","https:\/\/x.com\/alexpadulles"]}]}},"_links":{"self":[{"href":"https:\/\/alexpadulles.es\/blog\/wp-json\/wp\/v2\/posts\/337","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/alexpadulles.es\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/alexpadulles.es\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/alexpadulles.es\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/alexpadulles.es\/blog\/wp-json\/wp\/v2\/comments?post=337"}],"version-history":[{"count":10,"href":"https:\/\/alexpadulles.es\/blog\/wp-json\/wp\/v2\/posts\/337\/revisions"}],"predecessor-version":[{"id":388,"href":"https:\/\/alexpadulles.es\/blog\/wp-json\/wp\/v2\/posts\/337\/revisions\/388"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/alexpadulles.es\/blog\/wp-json\/wp\/v2\/media\/342"}],"wp:attachment":[{"href":"https:\/\/alexpadulles.es\/blog\/wp-json\/wp\/v2\/media?parent=337"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/alexpadulles.es\/blog\/wp-json\/wp\/v2\/categories?post=337"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/alexpadulles.es\/blog\/wp-json\/wp\/v2\/tags?post=337"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}