{"id":258,"date":"2023-04-08T22:12:37","date_gmt":"2023-04-08T18:42:37","guid":{"rendered":"https:\/\/haghiri75.com\/en\/?p=258"},"modified":"2023-04-08T22:12:37","modified_gmt":"2023-04-08T18:42:37","slug":"re-creating-midjourney-with-only-10-technical-report-for-mann-e-5-development","status":"publish","type":"post","link":"https:\/\/haghiri75.com\/en\/re-creating-midjourney-with-only-10-technical-report-for-mann-e-5-development\/","title":{"rendered":"Re-creating Midjourney with only $10 &#8211; Technical Report for Mann-E 5 development"},"content":{"rendered":"<p>The year 2022 was an amazing year for generative AI market and no one can deny in this year, release of some cool models such as <a href=\"https:\/\/midjourney.com\">Midjourney<\/a>, <a href=\"https:\/\/stability.ai\">Stable Diffusion<\/a> and <a href=\"https:\/\/chat.openai.com\">ChatGPT<\/a> made this market bigger, better and more competitive. You may also know <a href=\"https:\/\/huggingface.co\/mann-e\">Mann-E<\/a>, the model I have developed on top of <a href=\"https:\/\/huggingface.co\/runwayml\/stable-diffusion-v1-5\">Runway ML&#8217;s Stable Diffusion 1.5<\/a> using <em>Dream Booth.<\/em> In this particular article, I provide you with a report for the development procedure of Mann-E 5, which will be accessible at April 14th 2023 on <a href=\"https:\/\/manne.ir\">Mann-E Platform<\/a>.<\/p>\n<h1>Introduction<\/h1>\n<h2>The Intention<\/h2>\n<p>The main intention of the Mann-E at first place was a personal discovery of AI Art and <em>text-to-image <\/em>models, but later I found the business\/commercial opportunities and since I also am an open-source enthusiast, the main intention changed to <em>providing an easy and accessible open-source alternative to midjourney.<\/em><\/p>\n<p>Since Midjourney is only accessible through Discord, it&#8217;s expensive (compared to most of other image generation models) and there is also a huge problem for Iranian users to use the basic or standard plans, the idea of a platform for art generation.<\/p>\n<h2>The method<\/h2>\n<p>For this particular version, I used <em>self-instruct <\/em>method which was used for <a href=\"https:\/\/github.com\/tatsu-lab\/stanford_alpaca\">Stanford&#8217;s Alpaca<\/a> dataset and model. The tools used for this project were as following:<\/p>\n<ul>\n<li>ChatGPT<\/li>\n<li>Midjourney<\/li>\n<li>Dream Booth<\/li>\n<\/ul>\n<h1>The Procedure<\/h1>\n<h2>Using Midjourney<\/h2>\n<p>The main idea of using <em>midjourney generated images <\/em>in the fine-tuning process sparked in my mind from <a href=\"https:\/\/huggingface.co\/prompthero\/openjourney\">PromptHero&#8217;s Openjourney<\/a> project. They used Dream Booth and data from Midjourney version 4.0 at first, then they did the train on more than 100K images on their own infrastructure.<\/p>\n<p>So, Midjourney became a good source of data, because you probably won&#8217;t face any intellectual property or copyright issues in the process of using images created by their algorithm (the full explanation is available in my <a href=\"https:\/\/haghiri75.com\/en\/you-dont-owe-money-to-the-brush-company-if-you-sell-your-art\/\">previous post<\/a>).<\/p>\n<h2>ChatGPT as a prompt engineer<\/h2>\n<p>I&#8217;ve seen people create great prompt for Midjourney using ChatGPT. As a large language model, both ChatGPT and GPT-3 (and GPT-4) can be great choices for creating prompts. So I&#8217;ve chosen ChatGPT since it had a free interface and also more affordable API&#8217;s.<\/p>\n<p>P.S: There are also different models which we can use in order to generate prompts, but they may need extra setup. They&#8217;ll be explained in future researches.<\/p>\n<h2>Dream Booth<\/h2>\n<p>The most affordable way of creating your own <em>text to image <\/em>model is Dream Booth. It can be executed on a free Colab Notebook and there are also tons of tools available for doing the job.<\/p>\n<p>For development of Mann-E 5, I used the code from <a href=\"https:\/\/github.com\/TheLastBen\/fast-stable-diffusion\">this repository<\/a>. Although some modifications were needed, but the whole code is perfect.<\/p>\n<h1>Development of Mann-E<\/h1>\n<h2>Getting needed tools for development<\/h2>\n<p>First, I had to open an OpenAI account. Which I had done before. I needed to use ChatGPT in order to get prompts.<\/p>\n<p>Then, I got a <em>basic <\/em>license for midjourney, which gives you ~4 hours of <em>fast generation <\/em>and you can generate images without any difficulties. Of course I&#8217;ve done a few test (around a hundred images) before getting to work.<\/p>\n<p>The last thing was writing a piece of python code to crop my images to 512&#215;512 (midjourney upscaled outputs are 1024&#215;1024) and also save the respective prompts in a text file.<\/p>\n<p>Then, I used <em>fast Dream Booth <\/em>code in order to fine-tune Stable Diffusion version 2.1 on the dataset I just gathered.<\/p>\n<h2>Using ChatGPT as a prompt engineer<\/h2>\n<p>Currently everyone is using ChatGPT in their advantage, since it was the most revolutionary LLM of 2022 and probably 2023. For the development process of Mann-E 5, I&#8217;ve used GPT-3.5 Turbo (which is the free one) and it generated pretty good prompts.<\/p>\n<p>This is the example of message for <em>prompt formula:<\/em><\/p>\n<p>Here is a Midjourney prompt formula:<\/p>\n<blockquote><p>raw photo, [the subject], [mood], [time of the day], [art style], [camera], [lens]<\/p>\n<p>The &#8220;mood&#8221; can be realistic, cyberpunk, steampunk or futurist.<\/p>\n<p>Do you understand?<\/p><\/blockquote>\n<p>As you can see, I just gave it the way of my prompting. Then it responded:<\/p>\n<blockquote><p>Yes, I understand the Midjourney prompt formula you have provided. It includes a raw photo as the starting point, followed by information about the subject, mood, time of day, art style, camera, and lens. The mood can be one of four options: realistic, cyberpunk, steampunk, or futurist.<\/p><\/blockquote>\n<p>The response shows it&#8217;s now ready to be asked for new prompts. Then I asked it for 5 to 10 prompts per idea. It means I could have 20 to 40 prompts per idea so I was set for Midjourney image generation.<\/p>\n<p>Here is how I asked it about prompts:<\/p>\n<div class=\"flex flex-grow flex-col gap-3\">\n<blockquote>\n<div class=\"min-h-[20px] flex flex-col items-start gap-4 whitespace-pre-wrap\">Give me five prompts for &#8220;ruins of a roman temple&#8221;<\/div>\n<div><\/div>\n<\/blockquote>\n<div>and here is how it gave me the set of prompts (it&#8217;s trimmed for this article).<\/div>\n<div><\/div>\n<\/div>\n<blockquote>\n<div>A striking black and white image of the ruins of a Roman temple, with dramatic shadows and highlights emphasizing the structure&#8217;s grandeur and decay, shot at night with a modern digital camera and a wide-angle lens.<\/div>\n<\/blockquote>\n<div><\/div>\n<div>If you spend time on Midjourney prompting, you will notice it&#8217;s a pretty good prompt, even if it doesn&#8217;t follow the formula very well.<\/div>\n<div><\/div>\n<h2>Generating images using midjourney<\/h2>\n<p>This was the easy part. The whole process was feeding ChatGPT generated prompts to Midjourney and upscale and download the images.<\/p>\n<p>The result was 464 images with different prompts which included different moods, styles and genres.<\/p>\n<h2>Pre-processing the dataset<\/h2>\n<p>Since Stable Diffusion only accepts 512&#215;512 or 768&#215;768 images as the input data, I had to write a simple python code to do the resizing using opencv.<\/p>\n<p>Also there was an <em>excel file <\/em>including image file names and prompts used for image. I had to add a function to turn each prompt to a text file with the same name as the image files.<\/p>\n<h2>Training Stable Diffusion using Dream Booth<\/h2>\n<p>Unlike <a href=\"https:\/\/huggingface.co\/mann-e\/mann-e_4_rev-1-3\">Mann-E 4<\/a>, Mann-E 5 is based on Stable Diffusion version 2.1 (512px version). The training was done in two different steps.<\/p>\n<p>In the first steps, it was 5440 steps of Dream Booth training (which is calculated by <em>(number of images * 10) + 800 <\/em>formula) and 928 steps on the text encoder to understand the trigger words.<\/p>\n<p>In the second steps, the resulting checkpoints and weights of the first steps were tuned on 10880 steps (twice the first one) and 928 text-encoder steps to get the resulting images closer to the dataset.<\/p>\n<p>It took total of 4 hours of training on a T4 <em>shared GPU <\/em>on Google Colab. Of course upgrading the colab plan to pro or pro+ can be beneficial in order to get better GPU&#8217;s and better training time.<\/p>\n<h1>The Results<\/h1>\n<p><img data-attachment-id=\"272\" data-permalink=\"https:\/\/haghiri75.com\/en\/re-creating-midjourney-with-only-10-technical-report-for-mann-e-5-development\/tech-0001\/\" data-orig-file=\"https:\/\/haghiri75.com\/en\/wp-content\/uploads\/tech-0001.jpg\" data-orig-size=\"2048,512\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"tech-0001\" data-image-description=\"\" data-image-caption=\"\" data-medium-file=\"https:\/\/haghiri75.com\/en\/wp-content\/uploads\/tech-0001-300x75.jpg\" data-large-file=\"https:\/\/haghiri75.com\/en\/wp-content\/uploads\/tech-0001-1024x256.jpg\" decoding=\"async\" loading=\"lazy\" class=\"aligncenter size-large wp-image-272\" src=\"http:\/\/haghiri75.com\/en\/wp-content\/uploads\/tech-0001-1024x256.jpg\" alt=\"\" width=\"525\" height=\"131\" srcset=\"https:\/\/haghiri75.com\/en\/wp-content\/uploads\/tech-0001-1024x256.jpg 1024w, https:\/\/haghiri75.com\/en\/wp-content\/uploads\/tech-0001-300x75.jpg 300w, https:\/\/haghiri75.com\/en\/wp-content\/uploads\/tech-0001-768x192.jpg 768w, https:\/\/haghiri75.com\/en\/wp-content\/uploads\/tech-0001-1536x384.jpg 1536w, https:\/\/haghiri75.com\/en\/wp-content\/uploads\/tech-0001.jpg 2048w\" sizes=\"(max-width: 525px) 100vw, 525px\" \/><br \/>\n<img data-attachment-id=\"273\" data-permalink=\"https:\/\/haghiri75.com\/en\/re-creating-midjourney-with-only-10-technical-report-for-mann-e-5-development\/tech-0002\/\" data-orig-file=\"https:\/\/haghiri75.com\/en\/wp-content\/uploads\/tech-0002.jpg\" data-orig-size=\"2048,512\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"tech-0002\" data-image-description=\"\" data-image-caption=\"\" data-medium-file=\"https:\/\/haghiri75.com\/en\/wp-content\/uploads\/tech-0002-300x75.jpg\" data-large-file=\"https:\/\/haghiri75.com\/en\/wp-content\/uploads\/tech-0002-1024x256.jpg\" decoding=\"async\" loading=\"lazy\" class=\"aligncenter size-large wp-image-273\" src=\"http:\/\/haghiri75.com\/en\/wp-content\/uploads\/tech-0002-1024x256.jpg\" alt=\"\" width=\"525\" height=\"131\" srcset=\"https:\/\/haghiri75.com\/en\/wp-content\/uploads\/tech-0002-1024x256.jpg 1024w, https:\/\/haghiri75.com\/en\/wp-content\/uploads\/tech-0002-300x75.jpg 300w, https:\/\/haghiri75.com\/en\/wp-content\/uploads\/tech-0002-768x192.jpg 768w, https:\/\/haghiri75.com\/en\/wp-content\/uploads\/tech-0002-1536x384.jpg 1536w, https:\/\/haghiri75.com\/en\/wp-content\/uploads\/tech-0002.jpg 2048w\" sizes=\"(max-width: 525px) 100vw, 525px\" \/><br \/>\n<img data-attachment-id=\"274\" data-permalink=\"https:\/\/haghiri75.com\/en\/re-creating-midjourney-with-only-10-technical-report-for-mann-e-5-development\/tech-003\/\" data-orig-file=\"https:\/\/haghiri75.com\/en\/wp-content\/uploads\/tech-003.jpg\" data-orig-size=\"2048,512\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"tech-003\" data-image-description=\"\" data-image-caption=\"\" data-medium-file=\"https:\/\/haghiri75.com\/en\/wp-content\/uploads\/tech-003-300x75.jpg\" data-large-file=\"https:\/\/haghiri75.com\/en\/wp-content\/uploads\/tech-003-1024x256.jpg\" decoding=\"async\" loading=\"lazy\" class=\"aligncenter size-large wp-image-274\" src=\"http:\/\/haghiri75.com\/en\/wp-content\/uploads\/tech-003-1024x256.jpg\" alt=\"\" width=\"525\" height=\"131\" srcset=\"https:\/\/haghiri75.com\/en\/wp-content\/uploads\/tech-003-1024x256.jpg 1024w, https:\/\/haghiri75.com\/en\/wp-content\/uploads\/tech-003-300x75.jpg 300w, https:\/\/haghiri75.com\/en\/wp-content\/uploads\/tech-003-768x192.jpg 768w, https:\/\/haghiri75.com\/en\/wp-content\/uploads\/tech-003-1536x384.jpg 1536w, https:\/\/haghiri75.com\/en\/wp-content\/uploads\/tech-003.jpg 2048w\" sizes=\"(max-width: 525px) 100vw, 525px\" \/><\/p>\n<h1>Further Study and Research<\/h1>\n<p>The new model still has problems in <em>photo-realistic <\/em>images, but does a great job on <em>illustration <\/em>and <em>concept art. <\/em>So for now, it can be considered an <em>artistic model.<\/em> In the future, the other side also most be fixed.<\/p>\n<p>The next thing is trying to tune the base model (whether Stable Diffusion version 2.1 or Mann-E checkpoints) on a larger dataset with more diverse images in order to get it closer to Midjourney.<\/p>\n<h1>Conclusion<\/h1>\n<p>Using pre-trained and available AI models such as ChatGPT not only elevate people&#8217;s lives, but also helps even AI engineers and developers to have more <em>concern free<\/em> data for their projects and products.<\/p>\n<p>Also using Midjourney as a tool for creating Royalty Free images is a wise choice specially when you try to create a brand new <em>text to image <\/em>AI model.<\/p>\n<p>In conclusion, I can say I&#8217;ve got much better results this time, because I utilized both ChatGPT and Midjourney for my needs. The checkpoints for Mann-E 5 will be available at HuggingFace on Friday, April 14th, 2023 at the same time of the public release of <a href=\"https:\/\/manne.ir\">Mann-E platform<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>The year 2022 was an amazing year for generative AI market and no one can deny in this year, release of some cool models such as Midjourney, Stable Diffusion and ChatGPT made this market bigger, better and more competitive. You may also know Mann-E, the model I have developed on top of Runway ML&#8217;s Stable &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/haghiri75.com\/en\/re-creating-midjourney-with-only-10-technical-report-for-mann-e-5-development\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Re-creating Midjourney with only $10 &#8211; Technical Report for Mann-E 5 development&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_mi_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_newsletter_tier_id":0,"footnotes":"","jetpack_publicize_message":"","jetpack_is_tweetstorm":false,"jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","enabled":false}}},"categories":[2],"tags":[37,11,22,45,46,24,25,57,51,49,50],"jetpack_publicize_connections":[],"aioseo_notices":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p8BkKn-4a","jetpack-related-posts":[{"id":335,"url":"https:\/\/haghiri75.com\/en\/privacy-focused-ai-is-all-we-need\/","url_meta":{"origin":258,"position":0},"title":"Privacy-focused AI is all we need","author":"prp-e","date":"November 1, 2024","format":false,"excerpt":"I remember in 2020 and 2021, due to Elon Musk's interest in crypto and also\u00a0The Metaverse Hype\u00a0people, specially the ones who had no idea about crypto or blockchain, started investing in the crypto markets. Although it seemed a little bit of a failure, people made profit out of it. It\u2026","rel":"","context":"In &quot;Projects&quot;","block_context":{"text":"Projects","link":"https:\/\/haghiri75.com\/en\/category\/projects\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":391,"url":"https:\/\/haghiri75.com\/en\/lets-build-metaverse-with-ai-building-asset-generator\/","url_meta":{"origin":258,"position":1},"title":"Let&#8217;s build Metaverse with AI: Building asset generator","author":"prp-e","date":"November 27, 2024","format":false,"excerpt":"Look at this: How do you think this apple has been made? Excellent question. After the previous post, I said we should put LLMs out of the picture for now. Also we needed to talk about 3D, because it is important in whole metaverse space, right? Today I just did\u2026","rel":"","context":"In &quot;Projects&quot;","block_context":{"text":"Projects","link":"https:\/\/haghiri75.com\/en\/category\/projects\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/mann-e-images.storage.c2.liara.space\/120c3554-8326-4625-a129-50e80bb215da_part_0003.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/mann-e-images.storage.c2.liara.space\/120c3554-8326-4625-a129-50e80bb215da_part_0003.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/mann-e-images.storage.c2.liara.space\/120c3554-8326-4625-a129-50e80bb215da_part_0003.png?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/mann-e-images.storage.c2.liara.space\/120c3554-8326-4625-a129-50e80bb215da_part_0003.png?resize=700%2C400&ssl=1 2x"},"classes":[]},{"id":318,"url":"https:\/\/haghiri75.com\/en\/frontbricks-my-llm-based-weekend-project-which-is-inspired-by-vercels-v0\/","url_meta":{"origin":258,"position":2},"title":"FrontBricks, my LLM-based weekend project which is inspired by Vercel&#8217;s V0","author":"prp-e","date":"May 31, 2024","format":false,"excerpt":"Since 2022, there is a hype of\u00a0generative artificial intelligence\u00a0and it resulted in a bunch of cool projects. Although a lot of us may remember that Github's copilot was much older. Those days, I wrote an article about how I was too cheap to pay $10 a month for copilot, so\u2026","rel":"","context":"In &quot;Computer Architecture &amp; Programming&quot;","block_context":{"text":"Computer Architecture &amp; Programming","link":"https:\/\/haghiri75.com\/en\/category\/computer\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/haghiri75.com\/en\/wp-content\/uploads\/frontbricks.png?resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/haghiri75.com\/en\/wp-content\/uploads\/frontbricks.png?resize=350%2C200 1x, https:\/\/i0.wp.com\/haghiri75.com\/en\/wp-content\/uploads\/frontbricks.png?resize=525%2C300 1.5x, https:\/\/i0.wp.com\/haghiri75.com\/en\/wp-content\/uploads\/frontbricks.png?resize=700%2C400 2x, https:\/\/i0.wp.com\/haghiri75.com\/en\/wp-content\/uploads\/frontbricks.png?resize=1050%2C600 3x"},"classes":[]},{"id":399,"url":"https:\/\/haghiri75.com\/en\/you-only-need-python-to-make-ai-agents\/","url_meta":{"origin":258,"position":3},"title":"You only need Python to make AI agents.","author":"prp-e","date":"December 31, 2024","format":false,"excerpt":"In 2022, ChatGPT released and LLMs becoming the hot topic of pretty much every technology related press, event, YouTube video, etc. It was like finding the secret ingredient to a potion which can make you immortal. But Meta didn't let OpenAI becoming the one and only. They also started the\u2026","rel":"","context":"In &quot;Projects&quot;","block_context":{"text":"Projects","link":"https:\/\/haghiri75.com\/en\/category\/projects\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/mann-e-images.storage.c2.liara.space\/319996af-289a-4617-8d0c-6580e4793747.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/mann-e-images.storage.c2.liara.space\/319996af-289a-4617-8d0c-6580e4793747.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/mann-e-images.storage.c2.liara.space\/319996af-289a-4617-8d0c-6580e4793747.png?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/mann-e-images.storage.c2.liara.space\/319996af-289a-4617-8d0c-6580e4793747.png?resize=700%2C400&ssl=1 2x, https:\/\/i0.wp.com\/mann-e-images.storage.c2.liara.space\/319996af-289a-4617-8d0c-6580e4793747.png?resize=1050%2C600&ssl=1 3x"},"classes":[]},{"id":237,"url":"https:\/\/haghiri75.com\/en\/you-dont-owe-money-to-the-brush-company-if-you-sell-your-art\/","url_meta":{"origin":258,"position":4},"title":"You don&#8217;t owe money to the brush company if you sell your art","author":"prp-e","date":"December 6, 2022","format":false,"excerpt":"In my previous post, I explained how the future of the content is AI. Also, in an older post, I was talking about how AI generated content can revolutionize the world of interior design\/architecture. In this post however, I'm not talking about these topics and I'm going to talk about\u2026","rel":"","context":"In &quot;Computer Architecture &amp; Programming&quot;","block_context":{"text":"Computer Architecture &amp; Programming","link":"https:\/\/haghiri75.com\/en\/category\/computer\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/haghiri75.com\/en\/wp-content\/uploads\/car-2.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/haghiri75.com\/en\/wp-content\/uploads\/car-2.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/haghiri75.com\/en\/wp-content\/uploads\/car-2.png?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/haghiri75.com\/en\/wp-content\/uploads\/car-2.png?resize=700%2C400&ssl=1 2x"},"classes":[]},{"id":202,"url":"https:\/\/haghiri75.com\/en\/severus-does-the-magic\/","url_meta":{"origin":258,"position":5},"title":"Severus does the magic","author":"prp-e","date":"September 11, 2022","format":false,"excerpt":"It is not too long after I told you that I was too cheap to pay $10 a month for github copilot and I came up with the idea for Severus, my own AI pair programmer. It was something that went boom. My blog usually doesn't have more than 20\u2026","rel":"","context":"In &quot;Computer Architecture &amp; Programming&quot;","block_context":{"text":"Computer Architecture &amp; Programming","link":"https:\/\/haghiri75.com\/en\/category\/computer\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/haghiri75.com\/en\/wp-content\/uploads\/warforged_wizard_by_captdiablo_de2mwm8-pre-1024x724.jpg?resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/haghiri75.com\/en\/wp-content\/uploads\/warforged_wizard_by_captdiablo_de2mwm8-pre-1024x724.jpg?resize=350%2C200 1x, https:\/\/i0.wp.com\/haghiri75.com\/en\/wp-content\/uploads\/warforged_wizard_by_captdiablo_de2mwm8-pre-1024x724.jpg?resize=525%2C300 1.5x"},"classes":[]}],"_links":{"self":[{"href":"https:\/\/haghiri75.com\/en\/wp-json\/wp\/v2\/posts\/258"}],"collection":[{"href":"https:\/\/haghiri75.com\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/haghiri75.com\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/haghiri75.com\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/haghiri75.com\/en\/wp-json\/wp\/v2\/comments?post=258"}],"version-history":[{"count":18,"href":"https:\/\/haghiri75.com\/en\/wp-json\/wp\/v2\/posts\/258\/revisions"}],"predecessor-version":[{"id":279,"href":"https:\/\/haghiri75.com\/en\/wp-json\/wp\/v2\/posts\/258\/revisions\/279"}],"wp:attachment":[{"href":"https:\/\/haghiri75.com\/en\/wp-json\/wp\/v2\/media?parent=258"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/haghiri75.com\/en\/wp-json\/wp\/v2\/categories?post=258"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/haghiri75.com\/en\/wp-json\/wp\/v2\/tags?post=258"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}