Skip to main content

Test Stable Diffusion

Out of curiosity, I attempted to reinstall stable diffusion. I had tried it once before in May 2023. In just a short span of 7 months, there have been many developments and changes, especially regarding the limitations on free resources in Colab. The web UI I originally used was challenging to complete the installation. As a result, I unexpectedly discovered a testing program that significantly enhanced my understanding of Colab and stable diffusion.



Tosh Velaga shared his sample program. The information about "cache_dir" mentioned in it is very useful to me. When I was trying to install the Web UI, I set everything that could be stored to Google Drive to comply with Google's resource limits. When a session is interrupted, I only need to reinstall the VM, saving at least half of the time. I also noticed the need to choose the appropriate runtime type, providing sufficient GPU computing power.

Due to the desire to switch models, I found technical documentation and resource management on Hugging Face related to Stable Diffusion. Many developers include test examples in the resource descriptions, providing more learning templates. Although some learning templates may require debugging, it is usually a matter of developers forgetting what tools were installed, and it can be gradually patched during the execution process in Colab. I attempted to install the recently popular SDXL, which functions as img-to-img. However, the GPU provided by Colab for trial accounts only reaches 16GB, while SDXL requires 20GB. Consequently, I opted for the second favorite style, which operates as text-to-img.

Developers in the Playground mainly use their own trained models, so the code is relatively straightforward. Below is the organized structure of the code for convenient use. It is recommended to obtain the source code from Hugging Face.

Here are test examples I created, using sentences similar to those found in novels. Although the setting of a three-person room doesn't align with the style I desire, I hope for a comfortable, slightly affluent, and bright living room. Perhaps introducing some chaotic elements to let the AI choose a more tragic setting.




The following is the resource list homepage of the resource station. It's interesting to see more well-known companies like Facebook and OpenAI updating here.


Comments

Popular posts from this blog

Bookmark service (MongoDB & Spring REST) -2/2

    I accidentally deleted my development VM. I got lucky having the habit of taking notes. This blog is useful. Development VM is doom to be lost. Rebuild it waste time, but having a clean slate is refreshing~. What concerns me more is my AWS free quota this month is reaching 85%. The second VM I launched but never being used might be the one to blame. (Of course, my mistake.) I terminated the wrong VM. Now I got Linux 2 built. Great, just threw away everything happened on AMI.  1st layer: Page Page class   Originally, I need to prepare getter/setter for all class properties for Spring. By using lombok, I only need to create constructors. lombok will deal with getter/setter and toString(). But there are chances to call getter/setter, but how? .......Naming convention.... Capitalize the 1st character with the prefix get/set.  Annotation @Data was used on this class.  Repository class Spring Docs: Repository https://docs.spring.io/spring-data/mongodb/docs/3....

Comments for my Server/Client Web API samples

        Finally, I finished the comments for python/07 and 09 projects. I almost forgot to put the date on source code which is used to note how long it took me. Not precisely in hours….. I didn’t include source code in my previous post. If choosing code-section for this post…… maybe I want to mark out my comment….. (Really?!)          Once my work was developing websites for enterprises, including ERP, CRM or content sites. The sustainability of network and security are important issues. There are 2 methods for HTML Form submission: GET and POST. Submit via POST is secure, compared to GET which piles parameters on URL. RESTful API is mainly using GET.         Yup, even if you have a certification key, if you put the value on the URL, it is visible data. When writing socket-communication, client-server sockets are a pair; both follow the agreement on commands and structures; and there are countless ports for usa...

Guide to Preserving HuggingFace Models in Google Colab Environments

Conclusion:  Step 1:  find the model path: ls ~/.cache  Step 2:  Copy the entire folder to Google Drive:  Step 3:  Set model path to the subfolder under snapshot: My Story: I initially began exploring Generative AI (GAI) and Google Colab through Stable Diffusion. In the past, as I mainly wrote server services and console applications, I was less familiar with data science modes like R and Jupyter that can maintain a paused state. I didn't quite understand the heavy burden on Colab of creating a temporary Stable Diffusion WebUI with .ipynb, as suggested by popular guides. I just found it troublesome that connections often took a long time and then dropped, requiring a restart. Recently, while testing new versions of the Stable Diffusion model, and facing challenges due to Colab's policies making various versions of WebUI difficult to run successfully, I started researching how to write my own test programs in Colab. Eventually, I understood that Colab is ess...