發佈日期:

介紹 OpenAI o1-preview

官網介紹o1-preview

介紹 OpenAI o1-preview:https://openai.com/index/introducing-openai-o1-preview

首次瞭解:探索 GitHub Copilot 中的 OpenAI o1:
https://github.blog/news-insights/product-news/openai-o1-in-github-copilot/

在2024/9/12,OpenAI推出了o1-preview的模型,這個模型的最大特色就是具備有先進推理能力,可解決難題。測試顯示o1-preview在程式碼分析和優化方面效果良好。該模型能思考挑戰並能夠將複雜任務分解為步驟,這可以優化程式碼以解決性能問題,加速開發工作流程。

透過這樣的思考流程,ChatGPT可以完成更複雜的程式撰寫任務,過去,我們仍會需要透過人的思考將任務拆細後一步一步請ChatGPT幫忙完成,再由工程師將任務功能組合起來,而現在o1-preview則自己就能夠具備有將複雜任務拆細的能力。

從下圖可看見,ChatGPT的程式撰寫能力瞬間從11分進步到89分(圖片來源: https://openai.com/index/learning-to-reason-with-llms/)

o1-preview 模型的新功能總覽

隨著 o1-preview 模型的推出,這個模型在性能、功能和未來更新方向上展現了許多新亮點。

  • 模型大小與性能
    o1 系列的模型中,o1-mini 和 o1-preview 各有特色。o1-mini 相較於 o1-preview 體積更小,速度更快,預計將來會提供給免費用戶使用。o1-mini 雖然在世界知識上較有限,但在 STEM 任務和編碼相關任務上表現出色,且能探索更多的思考鏈。而 o1-preview 則作為一個早期檢查點,位於性能和大小之間,能夠處理更開放的任務,並支持長鏈思考過程。
  • 輸入 Token 與上下文處理能力
    o1 的輸入 token 與 GPT-4o 採用相同的 tokenizer 且能夠處理更長的上下文,在未來版本中還會進一步擴展輸入上下文的長度,減少對輸入內容的分塊需求。儘管目前無法在連鎖思考(CoT)期間暫停推理來添加更多上下文,但這項能力有望在未來實現。
  • 工具與功能更新
    目前 o1-preview 尚未開放工具使用,但未來將支持函數調用、代碼解釋器與瀏覽功能。此外,將加入工具支持、結構化輸出與系統提示等增強功能。用戶將來可能還能控制思考時間和 token 限制,並支援流式傳輸。
  • 連鎖思考推理
    o1 模型在推理時會生成隱藏的思考鏈,這使得它能夠在處理複雜問題時展現更強的推理能力。目前 CoT token 會被摘要,尚未開放給 API 用戶,但隨著強化學習技術的加入,模型的連鎖思考能力將進一步提升
  • API 與使用限制
    o1-mini 在 ChatGPT Plus 用戶中設有每週 50 次提示的限制,並計劃推出更多 API 訪問層級和更高的速率限制。提示緩存是用戶的熱門需求,未來可能會加入此功能。
  • 價格、微調與擴展
    o1 的定價將遵循每 1-2 年降價的趨勢,並支持批量 API 定價。模型的微調尚無具體時間表,但研究與工程人才的限制可能會影響未來的推理擴展計劃。
  • 模型開發與研究亮點
    o1 模型在創造性思維、哲學推理及複雜任務處理上展現了強大能力,甚至內部測試中也表現出色。未來版本將進一步擴展世界領域知識,並更新數據以提升性能。
  • 提示技術與最佳實踐
    o1 模型對於提示的接受度高,尤其是在檢索增強生成(RAG)技術的輔助下,能夠進一步改善推理性能。提供相關上下文有助於提高表現,而無關的內容可能會降低其效果。
  • 未來展望
    o1-preview 正處於早期測試階段,未來將繼續優化延遲和推理時間,並大幅增強模型的創造性與推理能力。

o1-preview 模型功能實測

先說結論,真的非常的強,不論是產生程式、理解程式、修改程式,都和過去是完全不同等級的狀況!非常的厲害。

這是我今天使用o1-preview 來製作一個HTML的俄羅斯方塊的對話紀錄,可以看到ChatGPT完美的完成任務,真的是沒有BUG的完整的遊戲,而且修改的動作也都非常的完美,真的可以靠指令達到我的許多要求。我覺得這樣的程度的模型是真的會影響到許多工程師的未來性。

對話紀錄在此:https://chatgpt.com/share/66e6bcf1-4254-8005-a573-a250e1b51702

我們可以看見現在的o1-preview會有著更多細緻的思考流程,為我們將一個很大的指令拆分成許多個步驟,並重新檢視、整個整個程式碼,接著則是設置遊戲的玩法。

接著我請他增加計分板和顯示下一個方塊的功能也完美達成

請他幫忙調整版面也非常完美的完成功能

這個是成果:https://claire-chang.com/wp-content/uploads/2024/09/test.html

操作說明:

  • 使用 左箭頭鍵右箭頭鍵 控制方塊左右移動。
  • 使用 下箭頭鍵 加速方塊下落。
  • 使用 上箭頭鍵 旋轉方塊。
  • 使用空白鍵直接下降。
發佈日期:

Coze:快速產生專屬於你的聊天機器人

Coze是甚麼

Coze是ByteDance出來的一個AI聊天機器人開發平台,讓你不會寫程式也能建立自己的AI聊天機器人,在這個平台可以用拖拉的方式來完成創建、設定、發布、管理專屬於你的聊天機器人功能,並與多種平台如Line、Slack、Telegram等整合。這平台支持各種AI應用,像是客服、資訊助手或是其他智能工具。

官方網站:https://www.coze.com/home

Coze的主要優勢

其主要優勢如下:

  1. 快速上手:用拖拉的方式,你就能快速架設自己的AI聊天機器人。
  2. 支援多模態輸入: Coze不只文字,還能處理圖片、語音等多種輸入,功能很全面。
  3. 靈活部署: 你開發的聊天機器人能放到Discord、Telegram、LINE、Slack和Reddit等多個平台上。
  4. 可整合各種插件:天氣、地點、日曆等各種插件都能整合,功能更加豐富。
  5. 讓機器人學習專屬於你的知識:你能從後台直接上傳和整理知識庫,讓機器人學會專屬於你應用場景的知識,強化機器人的回答能力。
  6. 應用場景:無論是客服、資訊查詢、任務調度、個人助理或教育輔助,Coze都能派上用場。

可以直接詢問機器人如何使用Coze

在登入之後,Home這邊會有一個Coze的專屬客服機器人,透過詢問機器人問題,可以請機器人幫我們搜尋教學文檔。

創建步驟詳細圖文教學

最主要要創建自己的客服機器人我們可以按下左側的Personal進入創建介面:

Coze的個人區域允許用戶管理他們的機器人、插件、工作流程、知識庫,以及其他個人化設定。這個區域有幾個主要標籤:

  1. 機器人(Bots):在這裡創建和管理你的聊天機器人。
  2. 插件(Plugins):查看和管理已安裝的插件,Coze支持超過60種不同類型的插件,涵蓋API和多模態模型,協助用戶執行信息檢索、旅行計劃和生產力提升等任務。更可以支持自己的API擴展,讓機器人可以連結到自己的客製化功能,以達到更彈性的客製化。
  3. 工作流程(Workflows):Coze有靈活的工作流程,這個功能旨在管理複雜的任務並保持高穩定性。平台提供了多種可組合的節點,如大型語言模型(LLM)、自定義代碼和邏輯判斷,也可以串接自己的知識庫、用卡片的型態呈現回覆結果,這個介面使用戶能夠通過簡單的拖放界面,自動化複雜的機器人設定流程。
  4. 知識庫(Knowledge):透過在這邊建立和維護知識庫,並且結合工作流程,讓機器人在回覆使用者的問題之前可以先去你所建立的知識庫搜尋相關知識,這可以讓機器人回答專屬於你的商店或個人形象的問題。
  5. 卡片(Cards):創建和管理互動卡片,結合工作流程和知識庫的功能可以讓機器人以圖文的方式回覆你要回覆給使用者的資訊。

例如透過以下Workflows創建範例就可以建立一個可以回覆我的相關背景資訊的客服機器人:

上圖的工作流程包括了幾個主要的步驟和節點,來處理和回答用戶的輸入。

  1. 啟動節點(Start):這是工作流程的開始,用來初始化信息,例如設定必要的變數,這裡的例子中使用了「BOT_USER_INPUT」這個變數來存儲用戶輸入。
  2. 知識節點(Knowledge):此節點從指定的知識庫中,基於用戶輸入(BOT_USER_INPUT)尋找最佳匹配的信息。在這個例子中,使用「ClaireChangIntro」作為知識庫的參考,並根據語義搜索策略來找到匹配程度高的內容。
  3. 大型語言模型(LLM)節點:這個節點調用大型語言模型(例如GPT-4o mini 128K)來生成回應。它利用前面節點的輸出作為參考資料和查詢內容,生成用戶的問題回答。
  4. 結束節點(End):工作流的最後一個節點,用來返回處理後的信息給用戶。在這裡,將LLM節點生成的輸出設置為回傳的變數。

整個工作流程通過這些互相連接的節點來自動化處理用戶輸入,生成並提供相關的回答。這種設計允許機器人以高效且靈活的方式回應用戶,並可以根據需要輕鬆地修改或擴展其功能。

這樣的對話機器人可以直接經由簡單設定發佈到Coze Bot Store、Cici、Discord、Telegram、Messenger、LINE、Instagram、Slack、Lark和WhatsApp多種平台。

下面為一個使用範例:

Coze要如何收費?

Coze提供多種收費方案,根據不同用戶的需求,從免費到高級的付費方案都有。收費方案大約有以下幾種:

  1. 免費方案(Free):提供每月0美元的免費使用權,每日可獲得10 credits的信息額度。這適用於只需基本功能的用戶。
  2. 輕量級高級版(Premium Lite):每月9美元,每日提供100 credits的額度。此方案適合需要更高使用頻率但不需要大量信息的用戶。
  3. 高級版(Premium):每月19美元,提供每日400credits的額度,適合需要大量信息處理的用戶。
  4. 進階高級版(Premium Plus):每月39美元,每日可使用1000 credits,是最高級的付費方案,適合極高頻度的商業用戶或開發者。

各個方案都提供不同的AI模型使用權限,例如GPT-3.5、Gemini 1.5 Flash、Claude 3 Haiku等,並根據模型的收取不同的信息額度。例如,使用GPT-40 mini會消耗比GPT-3.5更多的額度。

選擇方案時,應該考慮以下因素:

  1. 預計每日的交互數量
  2. 需要哪些AI模型來實現你的需求
  3. 你的預算範圍

根據這些指標,你可以選擇最符合你需求的方案,以確保你支付的費用與你從Coze獲得的價值相匹配。如果你剛開始使用,可以從免費方案開始,隨著需求增長再升級到更高級的方案。

發佈日期:

ControlNet: 放大您的圖像控制能力

想要精確控制AI生成圖像?ControlNet是Stable Diffusion用戶必學的進階技巧。本文將深入介紹ControlNet的使用方法、常見模型與實際應用案例。

ControlNet的核心功能

在AI圖像生成領域中,Stable Diffusion已經成為一個革命性的技術。然而,如何更精確地控制生成過程一直是一個挑戰。這就是ControlNet發揮作用的地方,它為Stable Diffusion帶來了前所未有的條件控制能力。

ControlNet是一個基於深度學習和神經網路的強大工具,它通過多種方式增強了Stable Diffusion的圖像處理能力:

  1. 姿勢控制:利用OpenPose模型,ControlNet能夠精確控制生成人物的姿勢。
  2. 線稿生成:通過Canny Edge檢測,可以從簡單的線稿生成複雜的圖像。
  3. 深度圖控制:使用Depth模型,ControlNet能夠理解並重現圖像的三維結構。
  4. 語義分割:Segmentation模型允許對圖像進行精細的區域控制。
  5. Normal Map應用:這種技術能夠增強圖像的立體感和細節。

ControlNet的應用場景

ControlNet在多個領域展現出強大的應用潛力:

  1. 人物姿勢生成:精確控制人物的姿態和動作。
  2. 風格轉換:保持原始圖像結構的同時,應用新的藝術風格。
  3. 場景重建:根據簡單的輪廓或深度信息重建完整場景。
  4. 圖像編輯:對現有圖像進行精細的修改和增強。

使用技巧與優化

為了充分發揮ControlNet的潛力,以下是一些關鍵的使用技巧:

  1. 提示詞優化:精心設計的提示詞可以大大提高生成效果。
  2. 參數調整:不同的控制強度和去噪設置會產生不同的結果。
  3. 模型選擇:根據具體需求選擇最合適的ControlNet模型。
  4. 多模型組合:結合使用多個ControlNet模型可以實現更複雜的效果。

相比傳統的Stable Diffusion,ControlNet提供了更精確的控制和更多樣化的創作可能性。無論是專業設計師還是AI藝術愛好者,都能從這個強大的工具中受益。

如何使用ControlNet 

ControlNet 不僅僅局限於模型控制,它還包含專為 Stable Diffusion Web UI 設計的擴展版本,使操作更加簡便。

我們在stable diffusion webui可以安裝名為 sd-webui-controlnet 的擴展套件,這是一個開源且高度可靠的工具。該工具在 GitHub 上擁有廣泛的追隨者,並且提供多樣的功能支援,使 Stable Diffusion 的操作變得更加靈活。

通過將其他條件集成到 Stable Diffusion 中來對模型施加控制。該技術提供了對生成圖像的更高精確度的控制,能夠在保留圖像關鍵特徵的同時,避免偏離初始設置。為圖像生成社群提供了一個強大的替代方案,讓使用者可以透過圖像的控制,產生更多符合需求的視覺效果,而不僅僅依賴於文字描述的提示。

ControlNet的圖像控制範例

透過這個框架,ControlNet 對圖像施加了必要的約束,避免生成圖像與原始提取的特徵(如姿勢、構圖等)有重大偏差。這使得使用者能夠基於這些特徵進行更精確的圖像生成,並在保持圖像一致性的同時實現特定的需求。

  • 姿勢與構圖控制: 可生成具有從參考圖像派生的預定義姿勢的圖像或簡筆劃,確保生成的圖像與預期姿勢一致。
  • 插圖樣式和紋理修改: 允許使用者更改插圖的樣式和紋理,以創造多樣化的視覺輸出,滿足不同風格的需求。
  • 線條圖中的顏色增強: ControlNet 支援為線條圖添加顏色,增強視覺吸引力與真實感,使簡單的線條作品能夠具備更豐富的視覺層次。

安裝與使用

此工具可以從 GitHub 獲得,開發者 Mikubill 提供了詳細的安裝說明以及更新維護。

GitHub 頁面: sd-webui-controlnet

要在Stable Diffusion Web UI安裝此插件,可以到 Extension Tab ,在 Install from URL 輸入 https://github.com/Mikubill/sd-webui-controlnet.git 安裝 

您可以在此處找到所有模型的下載連結:https://github.com/Mikubill/sd-webui-controlnet/wiki/Model-download

大型模型可至這邊下載: https://huggingface.co/lllyasviel/ControlNet-v1-1/tree/main

然後把模型放在stable-diffusion-webui-master\models\ControlNet資料夾下面

這邊有模型分類的介紹: https://ai-summoner.tw/7612/what-is-controlnet1-1/

設定參數介紹

控制模式包括平衡模式、已提示詞為主、以ControlNet為主

預處理(Preprocessor)參數的作用主要是幫助用戶在生成圖像時,根據不同的需求和參考圖像進行調整和引導。這部分你選擇的要有相對應的模型(請參考上面的模型下載部分),才會能夠生效,關於每一個模型或者預處理的方式介紹請參考上方AI召喚師的文章。

  1. Instruct Pix2Pix (ip2p) 模型 (control_vlle_sd15_ip2p.pth):此模型專注於指令式變換,能夠根據用戶提供的提示詞進行圖像的轉換和變形。例如,使用者可以輸入指令將某種場景轉變為另一種場景,這使得生成的圖像更加符合用戶的具體需求
  2. Shuffle 模型 (control_vlle_sd15.shuffle.pth):Shuffle 模型則更注重於風格轉換,能夠將輸入圖像轉換為具有特定風格的圖像,如卡通風格或水彩風格。這個模型強調細節和紋理的處理,適合用於創造具有藝術感的圖像
  3. Tile 模型control_v11f1e_sd15_tile.pth):主要用於圖像的放大和細節增強。它能夠在有限的像素基礎上對圖像進行分塊擴散處理,生成與原圖相似且極為清晰的圖片,特別適合於對單一圖片進行精修和美化
  4. Depth 模型control_v11f1p_sd15_depth.pth):此模型專注於景深分析,能夠在生成圖片時保持與原圖相同的景深效果,常用於固定人物外型和背景的穩定性
  5.  Canny 模型control_v11p_sd15_canny.pth):主要用於邊緣檢測,能夠精確地識別圖像中的邊緣,適合於需要清晰邊界的圖像生成任務
  6. Inpaint 模型control_v11p_sd15_inpaint.pth):此模型用於重繪和修圖,可以針對特定範圍進行修補,與內建的 inpaint 功能相似,但在使用上更加方便且效果更佳
  7. Lineart 模型control_v11p_sd15_lineart.pth):專門用於處理線條藝術,能夠將圖像轉換為清晰的線條圖,適合於插畫和漫畫風格的生成
  8.  MLSD 模型control_v11p_sd15_mlsd.pth):是一個專門用來描繪建築物的模型。此模型用於多邊形線檢測,能夠識別圖像中的多邊形結構,適合於需要精確形狀識別的任務
  9.  Normal 模型(control_v11p_sd15_normalbae.pth):利用法線圖來分析和控制生成圖像的紋理,這有助於在生成過程中保持真實感和細節
  10.  Openpose 模型control_v11p_sd15_openpose.pth):專注於人體姿勢識別,能夠根據提供的人體骨架信息生成相應的圖像,適合於需要精確人體動作的場景
  11. Scribble 模型control_v11p_sd15_scribble.pth):此模型支持草圖轉換,能夠根據簡單的草圖生成詳細的圖像,適合於草圖創作和概念設計
  12. Segmentation 模型control_v11p_sd15_seg.pth):用於圖像分割,能夠將圖像中的不同部分進行分離和標記,適合於需要區分不同區域的圖像生成任務
  13. SoftEdge 模型 (control_v11p_sd15_softedge.pth):專注於將圖像轉換為柔和的邊緣風格,相較於其他模型更注重圖像的柔和度和自然度,通常用於生成風景、人物等柔和風格的圖片。它是 ControlNet 1.0 版本中 HED 模型的升級版,有四種預處理器可供選擇,按照結果品質排序分別是 SoftEdge_HED、SoftEdge_PIDI、SoftEdge_HED_safe、SoftEdge_PIDI_safe。相對於傳統的邊緣模型(如 Canny),SoftEdge 模型更注重保留圖像的細節,提取的線條更精細,細節更豐富。
  14. Lineart Anime 模型 (control_v11p_sd15s2_lineart_anime.pth):此模型專門用於生成動漫風格的線稿圖像,能夠將圖像轉換為清晰的線條圖,適合於插畫和漫畫風格的生成。它是 ControlNet 1.1 版本中新增的模型,在 ControlNet 1.0 的 Lineart 模型基礎上進行了優化和改進,使生成的線稿更加符合動漫風格。
發佈日期:

ControlNet使用的錯誤排解

無法載入ControlNet

錯誤訊息如下:

*** Error loading script: face_manipulation_extras.py
Traceback (most recent call last):
File “C:\Users\clairechang\stable-diffusion-webui-master\modules\scripts.py”, line 515, in load_scripts
script_module = script_loading.load_module(scriptfile.path)
File “C:\Users\clairechang\stable-diffusion-webui-master\modules\script_loading.py”, line 13, in load_module
module_spec.loader.exec_module(module)
File “”, line 883, in exec_module
File “”, line 241, in call_with_frames_removed File “C:\Users\clairechang\stable-diffusion-webui-master\extensions\sd-webui-face-manipulation-extras\scripts\face_manipulation_extras.py”, line 4, in from face_manipulation.main import process, alignImage File “C:\Users\clairechang\stable-diffusion-webui-master\extensions\sd-webui-face-manipulation-extras\face_manipulation\main.py”, line 6, in from face_manipulation.zerodim.network.training import Model File “C:\Users\clairechang\stable-diffusion-webui-master\extensions\sd-webui-face-manipulation-extras\face_manipulation\zerodim\network\training.py”, line 18, in from face_manipulation.zerodim.network.modules import BetaVAEGenerator, BetaVAEEncoder File “C:\Users\clairechang\stable-diffusion-webui-master\extensions\sd-webui-face-manipulation-extras\face_manipulation\zerodim\network\modules.py”, line 10, in from face_manipulation.zerodim.stylegan2_pytorch.model import ConstantInput, ToRGB, ModulatedConv2d, FusedLeakyReLU File “C:\Users\clairechang\stable-diffusion-webui-master\extensions\sd-webui-face-manipulation-extras\face_manipulation\zerodim\stylegan2_pytorch\model.py”, line 11, in from face_manipulation.zerodim.stylegan2_pytorch.op import FusedLeakyReLU, fused_leaky_relu, upfirdn2d, conv2d_gradfix File “C:\Users\clairechang\stable-diffusion-webui-master\extensions\sd-webui-face-manipulation-extras\face_manipulation\zerodim\stylegan2_pytorch\op__init_.py”, line 1, in
from .fused_act import FusedLeakyReLU, fused_leaky_relu
File “C:\Users\clairechang\stable-diffusion-webui-master\extensions\sd-webui-face-manipulation-extras\face_manipulation\zerodim\stylegan2_pytorch\op\fused_act.py”, line 19, in
fused = load(
File “C:\Users\clairechang\AppData\Local\Programs\Python\Python310\myenv\lib\site-packages\torch\utils\cpp_extension.py”, line 1308, in load
return _jit_compile(
File “C:\Users\clairechang\AppData\Local\Programs\Python\Python310\myenv\lib\site-packages\torch\utils\cpp_extension.py”, line 1710, in _jit_compile
_write_ninja_file_and_build_library(
File “C:\Users\clairechang\AppData\Local\Programs\Python\Python310\myenv\lib\site-packages\torch\utils\cpp_extension.py”, line 1823, in _write_ninja_file_and_build_library
_run_ninja_build(
File “C:\Users\clairechang\AppData\Local\Programs\Python\Python310\myenv\lib\site-packages\torch\utils\cpp_extension.py”, line 2077, in _run_ninja_build
vc_env = distutils._msvccompiler._get_vc_env(plat_spec)
File “C:\Users\clairechang\AppData\Local\Programs\Python\Python310\myenv\lib\site-packages\setuptools\msvc.py”, line 230, in msvc14_get_vc_env
return _msvc14_get_vc_env(plat_spec)
File “C:\Users\clairechang\AppData\Local\Programs\Python\Python310\myenv\lib\site-packages\setuptools\msvc.py”, line 187, in _msvc14_get_vc_env
raise distutils.errors.DistutilsPlatformError(“Unable to find vcvarsall.bat”)
distutils.errors.DistutilsPlatformError: Microsoft Visual C++ 14.0 or greater is required. Get it with “Microsoft C++ Build Tools”: https://visualstudio.microsoft.com/visual-cpp-build-tools/

這個錯誤訊息顯示在運行 face_manipulation_extras.py 腳本時,遇到了一個與編譯 C++ 擴展模組相關的問題,具體來說是缺少 Microsoft Visual C++ 編譯工具。解決這個問題的方法如下:

  1. 安裝 Microsoft C++ Build Tools:前往 Microsoft Visual C++ Build Tools 的官方網站,下載並安裝最新版本的 C++ 編譯工具。這是你系統編譯某些擴展模組所必需的。
  2. 設定 Visual Studio 的環境變數:安裝完成後,必須確保 vcvarsall.bat 已正確配置到你的系統環境變數中,通常這是自動處理的。你可以嘗試重新啟動你的終端機或電腦來使變更生效。

模型版本不相容

錯誤訊息如下:

*** Error running process: C:\Users\clairechang\stable-diffusion-webui-master\extensions\sd-webui-controlnet\scripts\controlnet.py
Traceback (most recent call last):
File “C:\Users\clairechang\stable-diffusion-webui-master\modules\scripts.py”, line 832, in process
script.process(p, *script_args)
File “C:\Users\clairechang\stable-diffusion-webui-master\extensions\sd-webui-controlnet\scripts\controlnet.py”, line 1228, in process
self.controlnet_hack(p)
File “C:\Users\clairechang\stable-diffusion-webui-master\extensions\sd-webui-controlnet\scripts\controlnet.py”, line 1213, in controlnet_hack
self.controlnet_main_entry(p)
File “C:\Users\clairechang\stable-diffusion-webui-master\extensions\sd-webui-controlnet\scripts\controlnet.py”, line 898, in controlnet_main_entry
Script.check_sd_version_compatible(unit)
File “C:\Users\clairechang\stable-diffusion-webui-master\extensions\sd-webui-controlnet\scripts\controlnet.py”, line 827, in check_sd_version_compatible
raise Exception(f”ControlNet model {unit.model}({cnet_sd_version}) is not compatible with sd model({sd_version})”)
Exception: ControlNet model control_v11p_sd15_inpaint ebff9138 is not compatible with sd model(StableDiffusionVersion.SDXL)

所選擇的模型與ControlNet的模型不相容。可以確認一下所選擇的 Stable Diffusion 1.x 版本的模型(例如 v1-5-pruned.ckpt 或類似名稱的模型)和ControlNet的版本是否有對應。

關於版本,我們可以根據CivitAI網站去找到適合你的版本的模型

然後關於ControlNet的模型,

SD2.X可在此下載: https://huggingface.co/thibaud/controlnet-sd21/tree/main

SD1.X可在此下載: https://huggingface.co/comfyanonymous/ControlNet-v1-1_fp16_safetensors/tree/main

將下載的 .ckpt 模型文件放入 Stable Diffusion WebUI 的 models/Stable-diffusion 資料夾中。通常你按了Control Type的按鈕之後,Model應該要自動跳到相對應的模型,如果按了Control Type後Model還是空的,很大的可能你所抓的模型的版本不一致,所以web-ui才會抓不到。

尺寸不一樣的錯誤

*** Error running process: C:\Users\clairechang\stable-diffusion-webui-master\extensions\sd-webui-controlnet\scripts\controlnet.py
Traceback (most recent call last):
File “C:\Users\clairechang\stable-diffusion-webui-master\modules\scripts.py”, line 832, in process
script.process(p, *script_args)
File “C:\Users\clairechang\stable-diffusion-webui-master\extensions\sd-webui-controlnet\scripts\controlnet.py”, line 1228, in process
self.controlnet_hack(p)
File “C:\Users\clairechang\stable-diffusion-webui-master\extensions\sd-webui-controlnet\scripts\controlnet.py”, line 1213, in controlnet_hack
self.controlnet_main_entry(p)
File “C:\Users\clairechang\stable-diffusion-webui-master\extensions\sd-webui-controlnet\scripts\controlnet.py”, line 919, in controlnet_main_entry
model_net, control_model_type = Script.load_control_model(p, unet, unit.model)
File “C:\Users\clairechang\stable-diffusion-webui-master\extensions\sd-webui-controlnet\scripts\controlnet.py”, line 436, in load_control_model
control_model = Script.build_control_model(p, unet, model)
File “C:\Users\clairechang\stable-diffusion-webui-master\extensions\sd-webui-controlnet\scripts\controlnet.py”, line 465, in build_control_model
control_model = build_model_by_guess(state_dict, unet, model_path)
File “C:\Users\clairechang\stable-diffusion-webui-master\extensions\sd-webui-controlnet\scripts\controlnet_model_guess.py”, line 218, in build_model_by_guess
p_new = p + unet_state_dict[key].clone().cpu()
RuntimeError: The size of tensor a (1024) must match the size of tensor b (768) at non-singleton dimension 1

此錯誤可能是由於所使用的 ControlNet 模型與你正在運行的 Stable Diffusion 模型之間的尺寸不匹配。Stable Diffusion 1.x 模型的特徵圖通常是 768×768,而 SDXL(Stable Diffusion 2.x)模型的特徵圖大小通常是 1024×1024。因此,如果你在 SDXL 模型中使用了為 Stable Diffusion 1.x 設計的 ControlNet 模型,會導致張量尺寸不匹配。

發佈日期:

ADetailer: 自動人臉檢測和高品質修復

在AI繪圖領域中,Stable Diffusion已成為一個強大的工具,但它在生成人臉和手部細節時常常會出現畸形問題。為了解決這個困擾,ADetailer這個Stable Diffusion插件應運而生,它專門針對AI圖像修復,特別是在人臉優化和手部修正方面表現出色。

ADetailer的核心功能

ADetailer是一款功能強大的AI圖像修復工具,它的主要特點包括:

  1. 自動人臉檢測:利用先進的YOLO模型,ADetailer能夠精確定位圖像中的人臉。
  2. 局部重繪:通過生成精確的遮罩,ADetailer可以只對需要修復的區域進行重繪,保留原圖其他部分的完整性。
  3. 高解析度修復:對於低解析度圖像,ADetailer能夠進行優化,提升圖像質量。
  4. 多模型支援:除了YOLO模型,ADetailer還支援MediaPipe模型,為用戶提供更多選擇。
  5. 一鍵修復:簡化了複雜的修復流程,使用者只需點擊幾下就能完成高質量的圖像修復。

使用ADetailer的優勢

相比手動修復,ADetailer在效率和效果上都有顯著優勢。它不僅能夠快速處理全身圖像生成中的細節問題,還可以輕鬆實現表情調整和年齡變化等高級效果。

ADetailer的功能

  • 使用檢測模型自動識別人臉和手部。
  • 面部和手部的識別部分使用穩定擴散進行裁剪和校正。
  • 將校正後的面部和手部圖像小心地重新置放到其原始位置。

Adetailer 不僅可以用於修復扭曲的臉部。以下是一些其他用途:

  • 改變面部表情
  • 更改一個人的年齡
  • 改變外觀以類似於不同的種族或氛圍
  • 僅將LoRA增強功能應用於面部

Stable Diffusion 專注於面部和手部的再生,從而改善了結果。在再生過程中,裁剪區域具有更高的解析度,可以詳細呈現眼睛和鼻子等各個特徵,最終產生精美的面部描繪。

ADetailer 在三個關鍵方面超越了其他技術,使其成為面部矯正的首選:

  • 便利性:啟動「啟用 ADetailer」選項可啟動自動面部矯正,確保使用者友好且無憂的體驗。
  • 記憶體消耗和生成時間優化:與涉及放大原始圖像的許多其他方法不同,這些方法會導致更大的檔大小和更長的處理時間,ADetailer 只關注面部圖像。這種方法可以在不影響圖像解析度的情況下進行有效的校正。
  • 將 LoRA 應用於面部的靈活性: ADetailer 允許在矯正過程中進行微小調整, 為使用者提供更大的靈活性和便利性

安裝 ADetailer

以下為GitHib的位置: https://github.com/Bing-su/adetailer

這邊是使用Stable Diffusion Web-ui的ADetailer安裝教學:

  • 按下Apply and restart UI按鈕

此時我們進入擴展插件>已安裝,應該要可以看到adetailer

接著確認是否在首頁有出現adetailer的設定欄位

ADetailer 的模型列表

ADetailer 提供用於檢測人臉、手和身體的模型。可根據想要生成的圖像或您想要校正的特定部分(例如,面部、手部、身體)選擇適當的模型。

ModelTarget 目標
face_yolov8n.pt臉部(插圖/真實)
face_yolov8s.pt臉部(插圖/真實)
hand_yolov8n.pt手(插圖/真實)
person_yolov8n-seg.pt人物(插圖/真實)
person_yolov8n-seg.pt全身(插圖/真實)
person_yolov8s-seg.pt全身(插圖/真實)
person_yolov8s-seg.pt全身(插圖/真實)
mediapipe_face_full人臉(真實)
mediapipe_face_short 人臉(真實)
mediapipe_face_mesh人臉(真實)

在 ADetailer 選單中輸入提示

以下為一個範例

Prompt: (8k, RAW photo, best quality, masterpiece:1.2), (realistic, photo-realistic:1.4), (extremely detailed 8k wallpaper), cheerleader outfit, 20-year-old woman, detailed face

Negative Prompt: EasyNegative, deformed face, ugly, bad face, deformed eyes

左邊的圖片沒有使用 ADetailer,右邊的圖片應用了 ADetailer。可以觀察到 ADetailer 可以糾正面部的任何扭曲。

用ADetailer改變表情

  1. 切換到「圖像信息(PNG Info)」選項
  2. 選擇要修改的圖片
  3. 輸入提示詞

若想檢查是否為五根手指,則可使用以下設定

提示的關鍵字:

  • five fingers

否定提示的關鍵詞:

  • deformed hand
  • extra_fingers
  • bad fingers
  • missing fingers
  • fewer digits, extra digit
  • liquid fingers
發佈日期:

Stable Diffusion主要功能和應用

官方網站

https://stability.ai

可看見現在這個平台所提供的相關工具包括: 圖像生成、影像生成、音樂生成、3D模型生成、文字生成

開源社群

https://civitai.com

可下載許多人自己生成的模型和相關微調模型,還有許多澀澀的(?)圖片

主要功能 – 圖像生成

根據文本生成圖像

  • 描述生成:用戶可以輸入一段文字描述,Stable Diffusion 模型會根據這段描述生成對應的圖像。例如,輸入“日落下的山脈”,模型會生成一幅描繪日落下山脈的圖像。

創意生成

  • 藝術創作:藝術家可以使用 Stable Diffusion 生成具有特定風格或主題的圖像,從而激發創意和靈感。
  • 概念設計:設計師可以快速生成概念草圖,用於產品設計或廣告創意。

圖像生成使用模型為: SD1.x, SD2.x, SDXL

SDXL 是目前 Stable Diffusion 系列中最新的模型之一。它在 SD2.x 的基礎上進一步提升了圖像的品質和細節,尤其是在處理複雜的場景和人物時表現更加出色。SDXL 還能夠生成更加多樣化的圖像風格,為用戶提供了更多的創作可能性。

更多資訊: https://chrislee0728.medium.com/stable-diffusion-xl-%E8%AA%AA%E6%98%8E%E5%8F%8A-sdxl1-0-%E5%AE%89%E8%A3%9D%E6%95%99%E5%AD%B8-b2f7648d49ff

主要功能 – 圖像修改和增強

圖像修復

  • 缺損修復:模型可以自動填補和修復圖像中缺失或損壞的部分,恢復圖像的完整性。
  • 品質增強:提高低解析度圖像的質量,使其更加清晰和細緻。

圖像編輯

  • 局部修改:用戶可以指定圖像的某個區域進行修改,例如改變圖像中的顏色、形狀或添加新的元素。
  • 風格轉換:將圖像轉換為不同的藝術風格,如將照片變為素描或油畫效果。

技術介紹

要使用Stable Diffusion來做到圖像修復或者是圖像編輯,需要安裝相關ADetailer的外掛,以下為一個範例

https://blog.csdn.net/2401_84250575/article/details/138863838

以Web ui為例,可以安裝ADetailer的擴展套件,就可以讀取相關的模型來修復圖片

主要功能 – 多模態應用

圖像-文本匹配

  • 圖像標註:根據圖像生成相應的文本描述,適用於自動標註和圖像檢索。
  • 文本生成圖像:根據文本描述生成圖像,用於多模態數據集的構建和應用。

文本-圖像交互

  • 文本驅動的圖像編輯:用戶可以通過文本指令對圖像進行特定修改,例如“將天空變成藍色”或“在圖像中添加一棵樹”。

主要功能 – 創意應用

動畫生成

遊戲開發

主要功能 – 科學研究

醫學圖像分析

  • 醫學影像生成:根據描述生成醫學影像,輔助醫學研究和診斷。
  • 圖像合成:生成合成的醫學圖像,用於訓練和測試醫學影像分析模型。

自然科學模擬

  • 氣象模擬:生成氣象圖像,用於天氣預測和氣候研究。
  • 地理模擬:根據描述生成地理景觀圖像,幫助地理研究和模擬。
發佈日期:

Kling – 文生影片大模型

Kling簡介

Kling是由快手大模型團隊自主研發的視頻生成大模型,擁有強大的視頻生成能力,能輕鬆高效地完成藝術視頻創作。

官方網站: https://klingai.com/

現在有【文生圖片】、【文生影片】兩種服務,未來還會再推出影片編輯的服務

使用範例

原圖如下

提示詞:

The character turns his face toward the viewer and stares point-blank. birds fly toward the viewer.

成果

核心特點

  • 大幅度的合理運動: 採用 3D 時空聯合注意力機制,能夠生成大幅度運動的視頻內容,同時符合運動規律。
  • 長時長高幀率視頻生成: 能夠生成長達 2 分鐘、幀率達 30fps 的高品質視頻。
  • 模擬真實物理特性: 基於自研模型架構,能夠生成符合物理規律的視頻。
  • 強大的概念組合能力: 能夠將用戶豐富的想像力轉化為具體畫面,虛構真實世界中不會出現的場景。
  • 電影級畫質: 能夠生成 1080p 分辨率的電影級視頻。
  • 支持多種寬高比: 能夠根據需求輸出多種多樣的視頻寬高比。

應用場景

可靈大模型的應用場景非常廣泛,包括但不限於:

  • 視頻內容創作: 廣告、電影、動畫、遊戲等視頻內容的生成。
  • 虛擬現實/增強現實: 虛擬世界的場景生成。
  • 教育培訓: 互動式教學內容的生成。
  • 藝術設計: 概念設計、視覺效果圖等。
發佈日期:

Animate Anyone: 圖片+骨架動畫產生動態影片

模型介紹頁面

https://humanaigc.github.io/animate-anyone

Animate Anyone 是一個工具,可以將靜態圖片和骨架動畫結合起來,生成動態影片。它使用先進的 AI 技術,保留圖片細節並保持動畫的連貫性。這個工具適合用於人類角色、動漫和時尚視頻等的動畫製作。

模型概念

  1. 使用 Pose Guider 編碼姿勢序列並融合多幀噪音。
  2. 使用 Denoising UNet 去噪並生成視頻。
  3. Denoising UNet 包含空間、交叉和時間注意力模塊。
  4. 參考圖像的詳細特徵通過 ReferenceNet 提取,語義特徵通過 CLIP 圖像編碼器提取。
  5. 最後,VAE 解碼器將結果解碼為視頻片段。

GitHub位置

https://github.com/HumanAIGC/AnimateAnyone

不過我們可以看到現在這個Github上只有介紹而已,但是他們說因為他們正在把原始碼改得更易讀,所以仍需一些時間才能夠把開源代碼上傳上來,就讓我們持續等待吧~

發佈日期:

Mixamo:你的3D角色動畫工廠

3D 角色動畫服務的線上平台

可以在此試用你的3D模型mixamo: https://www.mixamo.com/

Mixamo 是一個提供自動 3D 角色動畫服務的線上平台。它讓使用者能夠選擇並自定義 3D 角色,並應用各種預設的動畫。該平台支持從現有的 3D 模型中生成動畫,並提供動畫調整功能,以滿足不同的需求。Mixamo 對於遊戲開發者、動畫製作人和其他 3D 創作者非常實用,能夠顯著加快製作流程。

可以上傳自己的fbx模型檔案套用線上多樣的動作
也可以直接拿線上提供的腳色,套入Animation裡面的腳色動作

Mixamo 的主要功能

  • 龐大的動作資料庫: Mixamo 提供了數千種預製的動畫,涵蓋了各種角色、動作和風格。
  • 自動套用: 你只需上傳你的3D模型,選擇想要的動畫,Mixamo就會自動將動畫套用到你的模型上,並進行調整,使其符合模型的比例和骨架結構。
  • 客製化: 你可以對動畫進行調整,例如改變動畫的速度、調整角色的姿勢等,以達到你想要的效果。
  • 匯出多種格式: Mixamo 支援多種3D軟體常用的檔案格式,方便你將動畫匯出到你的專案中。
  • 社群功能: Mixamo 有一个活躍的社群,你可以分享你的作品、與其他使用者交流,並獲得啟發。

Mixamo 的優勢

  • 節省時間: 相較於傳統的動畫製作方式,Mixamo 可以大幅縮短動畫製作的時間。
  • 降低成本: 你不需要雇用專業的動畫師,就能製作出高品質的動畫。
  • 易於使用: 即使你不是動畫專業人士,也能輕鬆上手。
  • 靈活性: Mixamo 提供了高度的客製化功能,讓你能夠創造出獨特的動畫。

Mixamo 的應用場景

  • 遊戲開發: 為遊戲角色製作各種動作,如走路、跑步、跳躍、戰鬥等。
  • 虛擬實境/增強現實: 為虛擬角色製作動畫,使其更生動。
  • 動畫製作: 快速製作短片、動畫廣告等。
  • 電影特效: 為電影中的角色製作動作捕捉動畫。
發佈日期:

SF3D: Stable Fast 3D Mesh 生成工具

SF3D: https://stable-fast-3d.github.io

SF3D 是一個快速生成3D網格模型的模型,它可以在不到一秒鐘的時間內從單一圖片輸出一個帶有UV展開和材質的3D模型。這個模型基於大型重建模型(LRM),專門針對網格生成進行訓練,並且包含快速UV展開技術和去光照步驟,從而提升重建模型的視覺質量,使其在新的光照條件下也能使用。

Github網站

詳情請參閱:GitHub – Stability-AI/stable-fast-3d

Stable Fast 3D模型基於 TripoSR,但進行了改進,專注於生成無瑕疵的網格和帶有UV展開的紋理。SF3D 可以快速進行推理,並且生成的3D模型可以輕鬆整合到遊戲中。安裝環境需要 Python >= 3.8 和 CUDA,並且需要安裝 PyTorch。支持手動推理和本地 Gradio 應用的運行。

要安裝 SF3D,請按照以下步驟操作:

  1. 確保環境:
    • Python 版本 >= 3.8
    • 有 CUDA
    • 安裝 PyTorch,確保 CUDA 版本匹配 PyTorch 安裝指南
    • 更新 setuptools:pip install -U setuptools==69.5.1
  2. 安裝需求:
    • 執行:pip install -r requirements.txt
    • 若要使用 Gradio demo,則執行:pip install -r requirements-demo.txt
  3. 手動推論:
    • 執行:python run.py demo_files/examples/chair1.png --output-dir output/
  4. 本地 Gradio App:
    • 執行:python gradio_app.py

線上demo

https://huggingface.co/spaces/stabilityai/stable-fast-3d

我拿這張圖做為輸入,可以很不錯的生成3D模型