Diffusers 프레임워크를 적용하기 위한 전체 튜토리얼 세트가 여기에 있습니다! T2I-Adapter에서 인기 있는 ControlNet까지
ChatGPT가 나온 지 얼마 지나지 않아 ControlNet의 출현으로 영어와 중국어 인터넷에서 많은 개발자와 일반 사용자가 빠르게 확보되었습니다. 일부 사용자는 ControlNet의 출현으로 AI 생성이 직립보행 시대에 이르렀다고 홍보하기도 했습니다. ControlNet, T2I-Adapter, Composer, LoRA 훈련 기술 등 동시대의 제어 가능한 세대를 포함하여 AI 생성의 마지막 높은 벽으로서 가까운 시일 내에 추가적인 돌파구가 나올 가능성이 매우 높다고 해도 과언이 아닙니다. , 이를 통해 사용자의 창작 비용을 크게 줄이고 창작의 플레이 가능성을 향상시킵니다. ControlNet이 오픈 소스로 공개된 지 불과 2주 만에 공식 스타 수가 10,000개를 넘어섰습니다. 이러한 인기는 의심할 여지 없이 전례가 없습니다.
동시에 오픈 소스 커뮤니티에서는 사용자 임계값도 크게 낮췄습니다. 예를 들어 Hugging Face 플랫폼은 기본 모델 가중치와 일반 모델 훈련 프레임워크 디퓨저를 제공하며 stable-diffusion-webui는 완전한 세트를 개발했습니다. 데모 플랫폼의 Civitai는 수많은 양식화된 LoRA 가중치를 제공했습니다.
webui는 현재 가장 인기 있는 시각화 도구이지만 최근 출시된 다양한 세대 모델을 빠르게 지원하고 사용자가 설정할 수 있는 다양한 옵션을 지원합니다. 프런트 엔드 인터페이스의 사용 편의성에 중점을 두기 때문에 그 뒤에 있는 코드 구조는 실제로 매우 복잡하고 개발자에게 친숙하지 않습니다. 예를 들어, webui는 다양한 유형의 로딩 및 추론을 지원하지만, 다양한 프레임워크에서의 변환을 지원하거나 유연한 모델 교육을 지원할 수 없습니다. 커뮤니티 토론에서 우리는 기존 오픈 소스 코드로 아직 해결되지 않은 많은 문제점을 발견했습니다.
우선, 코드 프레임워크는 호환되지 않습니다. ControlNet 및 T2I-Adapter와 같은 현재 인기 있는 모델은 주류 Stable Diffusion 교육 라이브러리 디퓨저와 호환되지 않습니다. 디퓨저 프레임워크에서 사용됩니다.
둘째, 모델 로딩이 제한되어 있습니다. 현재 모델은 .bin, .ckpt, .pth, .satetensors 등 다양한 형식으로 저장됩니다. 현재 webui 외에도 디퓨저 프레임워크에는 이러한 모델 형식에 대한 지원은 제한적입니다. 대부분의 LoRA 모델이 주로 safetensor에 저장된다는 점을 고려하면 사용자가 디퓨저 프레임워크를 기반으로 학습된 기존 모델에 LoRA 모델을 직접 로드하기는 어렵습니다.
셋째, 기본 모델은 제한적입니다. 현재 ControlNet과 T2I-Adapter는 Stable-Diffusion-1.5를 기반으로 학습되었으며, 특정 시나리오를 고려하여 SD1.5 이하의 모델 가중치만 오픈 소스로 제공됩니다. everything-v4, ChilloutMix 등과 같은 고품질 애니메이션 모델이 있습니다. 제어 가능한 정보가 도입되더라도 최종 생성된 결과는 여전히 SD1.5의 UNet 기능에 의해 제한됩니다.
마지막으로, 모델 교육은 제한적입니다. LoRA는 스타일 마이그레이션 및 특정 이미지 IP 유지를 위한 가장 효과적인 방법 중 하나로 널리 검증되었습니다. 그러나 디퓨저 프레임워크는 현재 UNet의 LoRA 임베딩 및 유지 관리만 지원합니다. 텍스트를 지원할 수 없습니다. 인코더를 삽입하면 LoRA 학습이 제한됩니다.
오픈 소스 커뮤니티와 논의한 결과, 우리는 일반 코드 라이브러리인 디퓨저 프레임워크가 많은 기본 인터페이스를 다시 작성해야 하기 때문에 최근 출시된 세대 모델에 동시에 적응할 계획이라는 것을 알게 되었습니다. 업데이트하는 데 시간이 좀 필요합니다. 이를 위해 우리는 위의 실제 문제에서 출발하여 개발자가 보다 쉽게 개발할 수 있도록 신속하게 각 문제에 대한 자체 개발 솔루션을 제안하는 데 앞장섰습니다.
LoRA, ControlNet, T2I-Adapter에서 디퓨저까지의 전체 적응 솔루션
디퓨저용 LoRA
이 솔루션은 디퓨저 프레임워크에 다양한 유형의 모델을 유연하게 내장하는 것, 즉 모델을 기반으로 합니다. 디퓨저 훈련을 통해 LoRA 가중치 형식을 저장했습니다. LoRA 훈련은 일반적으로 기본 모델을 고정시키기 때문에 스타일 또는 IP 조건 제약 조건에 따라 플러그형 모듈로 기존 모델에 쉽게 내장될 수 있습니다. LoRA 자체는 일반적인 학습 기법으로, 낮은 순위 분해를 통해 모듈의 매개변수 수를 크게 줄일 수 있다는 것이 기본 원리입니다. 현재 이미지 생성에서는 일반적으로 모듈과 독립적인 플러그형 모듈을 학습하는 데 사용됩니다. 기본 모델의 경우 실제 사용은 잔차 형태로 기본 모델의 출력과 병합하는 것입니다.
첫 번째는 LoRA 가중치의 임베딩입니다. 현재 Civitai 플랫폼에서 제공되는 가중치는 주로 ckpt 또는 safetensor 형식으로 저장되며 이는 다음 두 가지 상황으로 나눌 수 있습니다.
(1) 전체 모델(기본 모델 + LoRA 모듈)
전체 모델이 safetensors 형식인 경우 다음 디퓨저 스크립트를 통해 변환할 수 있습니다
python ./scripts/convert_original_stable_diffusion_to_diffusers.py --checkpoint_path xxx.safetensors--dump_path save_dir --from_safetensors
전체 모델이 ckpt 형식인 경우 형식은 다음 디퓨저 스크립트를 통해 변환할 수 있습니다. Conversion
python ./scripts/convert_original_stable_diffusion_to_diffusers.py --checkpoint_path xxx.ckpt--dump_path save_dir
변환이 완료된 후 디퓨저의 API를 직접 사용하여 모델을 로드할 수 있습니다
from diffusers import StableDiffusionPipeline pipeline = StableDiffusionPipeline.from_pretrained (save_dir,torch_dtype=torch.float32)
(2) LoRA 전용(LoRA 모듈만 포함) )
현재 디퓨저는 공식적으로 LoRA 가중치 로딩만을 지원할 수 없으며, 오픈소스 플랫폼의 LoRA 가중치는 기본적으로 이런 형태로 저장됩니다. 기본적으로 LoRA 가중치의 키-값 재매핑을 완료하고 이를 디퓨저 모델에 적용합니다. 이러한 이유로 우리는 이 기능을 자체적으로 지원하고 변환 스크립트를 제공합니다.
pipeline = StableDiffusionPipeline.from_pretrained (model_id,torch_dtype=torch.float32) model_path = "onePieceWanoSagaStyle_v2Offset.safetensors" state_dict = load_file (model_path)
모델을 디퓨저 형식으로 지정하고 LoRA 가중치는 safetensors 형식으로 저장하면 됩니다. 우리는 예제 변환을 제공합니다.
# the default mergering ratio is 0.75, you can manually set it python convert_lora_safetensor_to_diffusers.py
또한 LoRA 자체는 가볍기 때문에 작은 데이터로도 빠르게 학습을 완료할 수 있으며 다른 네트워크에 내장할 수도 있습니다. 기존 LoRA 가중치에 국한되지 않기 위해 디퓨저 프레임워크에서 LoRA의 다중 모듈(UNet+텍스트 인코더) 교육을 지원하고 공식 코드 베이스(https://github.com/)에 PR을 제출했습니다. Huggingface/diffusers/pull /2479), ColossalAI에서 LoRA 교육을 지원합니다. Code는 다음과 같은 오픈 소스입니다. , ControlNet이 사용됩니다. 오픈 소스 커뮤니티의 일부 시도를 기반으로 ControlNet+Anything-V3의 완전한 사용 사례를 제공하여 기본 모델을 원래 SD1.5에서 any-v3 모델로 교체하여 ControlNet이 더 나은 애니메이션 생성을 지원하도록 지원합니다. 능력.
또한 ControlNet+Inpainting을 지원하고 디퓨저,
코드는 https://github.com/haofanwang/ControlNet-for-Diffusers
T2I-디퓨저용 어댑터
ControlNet과 유사하게 오픈 소스 T2I-Adapter를 디퓨저에 적용하는 것도 동시에 지원합니다.
코드는 https://github.com/haofanwang/T2I-Adapter-for-Diffusers
에서 오픈 소스입니다.현재 위의 세 가지 적응 솔루션은 커뮤니티에 오픈 소스로 공개되었으며 각각 ControlNet과 T2I-Adapter에서 공식적으로 인정되었습니다. 또한 stable-diffusion-webui-colab 작성자로부터 감사를 받았습니다. 우리는 디퓨저 관계자와 논의를 계속하고 있으며 가까운 시일 내에 위 솔루션을 공식 코드 베이스에 통합하는 작업을 완료할 예정입니다. 궁금한 점이 있으시면 직접 문제를 제기해 주시면 최대한 빨리 답변해 드리겠습니다.
위 내용은 Diffusers 프레임워크를 적용하기 위한 전체 튜토리얼 세트가 여기에 있습니다! T2I-Adapter에서 인기 있는 ControlNet까지의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











이 AI 지원 프로그래밍 도구는 급속한 AI 개발 단계에서 유용한 AI 지원 프로그래밍 도구를 많이 발굴했습니다. AI 지원 프로그래밍 도구는 개발 효율성을 높이고, 코드 품질을 향상시키며, 버그 발생률을 줄일 수 있습니다. 이는 현대 소프트웨어 개발 프로세스에서 중요한 보조자입니다. 오늘 Dayao는 4가지 AI 지원 프로그래밍 도구(모두 C# 언어 지원)를 공유하겠습니다. 이 도구가 모든 사람에게 도움이 되기를 바랍니다. https://github.com/YSGStudyHards/DotNetGuide1.GitHubCopilotGitHubCopilot은 더 빠르고 적은 노력으로 코드를 작성하는 데 도움이 되는 AI 코딩 도우미이므로 문제 해결과 협업에 더 집중할 수 있습니다. 힘내

장치를 원격으로 프로그래밍해야 하는 경우 이 문서가 도움이 될 것입니다. 우리는 모든 장치 프로그래밍을 위한 최고의 GE 범용 원격 코드를 공유할 것입니다. GE 리모콘이란 무엇입니까? GEUniversalRemote는 스마트 TV, LG, Vizio, Sony, Blu-ray, DVD, DVR, Roku, AppleTV, 스트리밍 미디어 플레이어 등과 같은 여러 장치를 제어하는 데 사용할 수 있는 리모컨입니다. GEUniversal 리모컨은 다양한 기능과 기능을 갖춘 다양한 모델로 제공됩니다. GEUniversalRemote는 최대 4개의 장치를 제어할 수 있습니다. 모든 장치에서 프로그래밍할 수 있는 최고의 범용 원격 코드 GE 리모컨에는 다양한 장치에서 작동할 수 있는 코드 세트가 함께 제공됩니다. 당신은 할 수있다

세계 최초의 AI 프로그래머 데빈(Devin)이 태어난 지 한 달도 채 안 된 2022년 3월 3일, 프린스턴 대학의 NLP팀은 오픈소스 AI 프로그래머 SWE-에이전트를 개발했습니다. GPT-4 모델을 활용하여 GitHub 리포지토리의 문제를 자동으로 해결합니다. SWE-bench 테스트 세트에서 SWE-agent의 성능은 Devin과 유사하며 평균 93초가 걸리고 문제의 12.29%를 해결합니다. SWE-agent는 전용 터미널과 상호 작용하여 파일 내용을 열고 검색하고, 자동 구문 검사를 사용하고, 특정 줄을 편집하고, 테스트를 작성 및 실행할 수 있습니다. (참고: 위 내용은 원문 내용을 약간 조정한 것이지만 원문의 핵심 정보는 그대로 유지되며 지정된 단어 수 제한을 초과하지 않습니다.) SWE-A

Go 언어 개발 모바일 애플리케이션 튜토리얼 모바일 애플리케이션 시장이 지속적으로 성장함에 따라 점점 더 많은 개발자가 Go 언어를 사용하여 모바일 애플리케이션을 개발하는 방법을 모색하기 시작했습니다. 간단하고 효율적인 프로그래밍 언어인 Go 언어는 모바일 애플리케이션 개발에서도 강력한 잠재력을 보여주었습니다. 이 기사에서는 Go 언어를 사용하여 모바일 애플리케이션을 개발하는 방법을 자세히 소개하고 독자가 빠르게 시작하고 자신의 모바일 애플리케이션 개발을 시작할 수 있도록 특정 코드 예제를 첨부합니다. 1. 준비 시작하기 전에 개발 환경과 도구를 준비해야 합니다. 머리

프로그래머로서 저는 코딩 경험을 단순화하는 도구에 흥미를 느낍니다. 인공 지능 도구의 도움으로 데모 코드를 생성하고 요구 사항에 따라 필요한 수정 작업을 수행할 수 있습니다. Visual Studio Code에 새로 도입된 Copilot 도구를 사용하면 자연어 채팅 상호 작용을 통해 AI 생성 코드를 만들 수 있습니다. 기능을 설명함으로써 기존 코드의 의미를 더 잘 이해할 수 있습니다. Copilot을 사용하여 코드를 생성하는 방법은 무엇입니까? 시작하려면 먼저 최신 PowerPlatformTools 확장을 가져와야 합니다. 이를 위해서는 확장 페이지로 이동하여 "PowerPlatformTool"을 검색하고 설치 버튼을 클릭해야 합니다.

Android 개발은 바쁘고 흥미로운 작업이며, 개발에 적합한 Linux 배포판을 선택하는 것이 특히 중요합니다. 많은 Linux 배포판 중에서 Android 개발에 가장 적합한 배포판은 무엇입니까? 이 기사에서는 이 문제를 여러 측면에서 살펴보고 구체적인 코드 예제를 제공합니다. 먼저 현재 인기 있는 여러 Linux 배포판(Ubuntu, Fedora, Debian, CentOS 등)을 살펴보겠습니다. 이들은 모두 고유한 장점과 특징을 가지고 있습니다.

Linux 운영 체제에서 파일을 작업하려면 개발자가 파일, 코드, 프로그램, 스크립트 및 기타 항목을 효율적으로 생성하고 실행할 수 있도록 하는 다양한 명령과 기술을 사용해야 합니다. Linux 환경에서는 확장자가 ".a"인 파일이 정적 라이브러리로서 매우 중요합니다. 이러한 라이브러리는 소프트웨어 개발에서 중요한 역할을 수행하므로 개발자는 여러 프로그램에서 공통 기능을 효율적으로 관리하고 공유할 수 있습니다. Linux 환경에서 효과적인 소프트웨어 개발을 위해서는 ".a" 파일을 생성하고 실행하는 방법을 이해하는 것이 중요합니다. 이번 글에서는 리눅스 ".a" 파일을 포괄적으로 설치하고 구성하는 방법을 소개한다. 리눅스 ".a" 파일의 정의, 목적, 구조, 생성 및 실행 방법을 살펴보자. L은 무엇입니까?

2023년 3월 14일 ChatGLM-6B가 출시된 이후 GLM 시리즈 모델은 광범위한 관심과 인정을 받았습니다. 특히 ChatGLM3-6B가 오픈소스로 공개된 이후 개발자들은 Zhipu AI가 출시하는 4세대 모델에 대한 기대감이 가득합니다. 이러한 기대는 마침내 GLM-4-9B의 출시로 완전히 충족되었습니다. GLM-4-9B의 탄생 소형 모델(10B 이하)에 더욱 강력한 기능을 제공하기 위해 GLM 기술팀은 약 반년 만에 새로운 4세대 GLM 시리즈 오픈 소스 모델인 GLM-4-9B를 출시했습니다. 탐구. 이 모델은 정확성을 보장하면서 모델 크기를 크게 압축하고 추론 속도가 더 빠르고 효율성이 높습니다. GLM 기술팀의 탐색은 아직 이루어지지 않았습니다.
