OpenAI 的 ChatGPT 是一種 AI 語(yǔ)言模型,它允許對(duì)話輸入直接轉(zhuǎn)換為功能代碼輸出。有很多應(yīng)用,從寫詩(shī)、制作食譜,甚至批判性地分析著名的文本和藝術(shù)作品。但是,語(yǔ)言模型還可以理解多種編程語(yǔ)言和語(yǔ)法。這使得僅使用文本提示即可生成 3D 可打印模型、可執(zhí)行代碼腳本等成為可能。雖然 ChatGPT 還沒有準(zhǔn)備好創(chuàng)建復(fù)雜引擎的功能模型,但它能夠制作簡(jiǎn)單的形狀,還可以創(chuàng)建可用于制作 3D 模型的程序。
本指南涵蓋:
什么是聊天 GPT?
使用 ChatGPT 的最佳實(shí)踐
如何直接生成STL文件?
如何為 3D 建模生成腳本?
打印使用 ChatGPT 制作的模型
如何訪問聊天 GPT?
1、什么是聊天 GPT?
ChatGPT 代表 Chat Generative Pre-Trained Transformer
我們已經(jīng)訓(xùn)練了一個(gè)名為 ChatGPT 的模型,它以對(duì)話方式進(jìn)行交互。對(duì)話格式使 ChatGPT 可以回答后續(xù)問題、承認(rèn)錯(cuò)誤、挑戰(zhàn)不正確的前提并拒絕不適當(dāng)?shù)恼?qǐng)求。 ChatGPT 是 InstructGPT 的同級(jí)模型,它經(jīng)過訓(xùn)練可以按照提示中的說明進(jìn)行操作并提供詳細(xì)的響應(yīng)。隨著像 Dall-E(也由 OpenAI 制作)這樣的生成式 AI 藝術(shù)工具變得越來越普遍,這項(xiàng)技術(shù)進(jìn)入 3D 世界只是時(shí)間問題。如果您有興趣了解更多信息,請(qǐng)繼續(xù)閱讀以了解如何使用 ChatGPT 制作 3D 打印模型。
2、最佳實(shí)踐
ChatGPT 使用一種稱為“提示”的輸入形式,這是來自用戶的針對(duì) AI 的輸入。由于輸出的質(zhì)量取決于輸入,像 OpenAI 這樣的公司已經(jīng)開發(fā)了最佳實(shí)踐指南來幫助增加成功的幾率。通常,在初始提示中添加額外的上下文或信息會(huì)得到更優(yōu)的答案,特別是在要求 ChatGPT 創(chuàng)建 3D 模型時(shí)。
△嘗試生成 3D 模型失敗
如果直接要求制作 3D 模型,ChatGPT 通常會(huì)以上述提示進(jìn)行回應(yīng),并偶爾給出如何使用這些程序制作模型的說明。雖然這些步驟通常不是很有幫助,但它們確實(shí)表明 ChatGPT 在提供響應(yīng)時(shí)不應(yīng)只看表面價(jià)值,因?yàn)樗鼘?shí)際上可以創(chuàng)建 3D 模型。圓柱體、立方體和金字塔等簡(jiǎn)單的原始形狀通常很容易生成,但要求有機(jī)或復(fù)雜模型通常會(huì)導(dǎo)致上述拒絕。
△在 Blender 中成功生成三角形和生成的網(wǎng)格
3、使用ChatGPT直接生成STL文件
3D 幾何可以通過三角化的 .STL 文件格式表示,這是幾乎所有制造商和文件存儲(chǔ)庫(kù)的通用標(biāo)準(zhǔn)。如果生成為 ASCII .STL,這也是一種人類可讀的文件格式,這使得調(diào)試和解釋 ChatGPT 的輸出更容易一些。
△ChatGPT 中立方體的幾何形狀
△失敗的結(jié)果
△生成的網(wǎng)格
要成功生成 .STL 文件,通常需要多次嘗試,每次嘗試都會(huì)逐漸向網(wǎng)格中添加更多信息。從上面的三角形例子中,我要求 ChatGPT 使用同樣的格式來生成一個(gè)立方體。
然后它生成了六個(gè)面,這比一個(gè)完全三角形的立方體少了六個(gè)三角形。 ChatGPT 在生成大文件時(shí)會(huì)在某個(gè)點(diǎn)后突然停止,但添加“Continue”作為提示將允許它從停止的地方繼續(xù)。使用免費(fèi)的 3D 建模程序 Blender,添加了缺失的幾何體并修復(fù)了翻轉(zhuǎn)的面(上面以紅色顯示)。
△使用 ChatGPT 創(chuàng)建 Javascript 腳本
△立方體
4、使用 ChatGPT 生成 3D 建模腳本
ChatGPT 的另一個(gè)關(guān)鍵特性是能夠創(chuàng)建腳本以參數(shù)化方式創(chuàng)建 3D 模型。使用 Javascript 和 three.js 庫(kù),我能夠快速生成一個(gè)腳本,通過使用提示在 3D 環(huán)境中創(chuàng)建一個(gè)立方體:“請(qǐng)使用 Javascript 創(chuàng)建一個(gè)生成立方體并使用 GUI 顯示它的腳本?!?.該腳本還生成了一個(gè) GUI,允許對(duì) X、Y 和 Z 軸進(jìn)行旋轉(zhuǎn)控制。
△添加“導(dǎo)出 .STL”功能允許用戶下載可 3D 打印的文件
△Blender 中的球體結(jié)果
通過逐漸增加請(qǐng)求的復(fù)雜性,腳本可以逐漸創(chuàng)建更復(fù)雜的輸出。例如,這里的立方體已被替換為球體,并添加了一個(gè)滑塊來控制球體上的分段數(shù)量,使其呈現(xiàn)出逐漸變得更加低多邊形/抽取的外觀。
通過添加“.STL 導(dǎo)出”功能,可以將最終幾何圖形導(dǎo)出為 ASCII .STL 文件格式以進(jìn)行 3D 打印。完整的代碼可以在 GitHub 上找到,如果您想自己嘗試,也可以使用實(shí)時(shí)構(gòu)建。
△ChatGPT 生成的 3D 打印立方體 - 在 Elegoo Neptune 3 Pro 上以三色 PLA 3D 打印的特色立方體模型。
打印使用 ChatGPT 制作的模型
Blender 等程序可用于清理和準(zhǔn)備這些網(wǎng)格文件以進(jìn)行 3D 打印,如我制作的涵蓋該主題的視頻所示。缺少三角形、翻轉(zhuǎn)法線和其他與網(wǎng)格相關(guān)的問題很常見,因此如果打算 3D 打印使用 ChatGPT 生成的任何模型,則可能需要進(jìn)行一些手動(dòng)清理。像 3D 打印立方體這樣的模型是使用任意單位生成的,每邊測(cè)量一個(gè)單位長(zhǎng),當(dāng)導(dǎo)入到像 PrusaSlicer 這樣的切片機(jī)時(shí),它對(duì)應(yīng)于一個(gè)毫米。
如何訪問
ChatGPT 目前可供公眾使用,可直接通過 OpenAI 網(wǎng)站訪問。使用 ChatGPT 系統(tǒng)需要一個(gè) OpenAI 帳戶,您可以使用您的電子郵件地址創(chuàng)建該帳戶。創(chuàng)建一個(gè)帳戶允許用戶訪問他們的完整提示歷史記錄,這是一種有用的方式來反映哪些提示策略有效,哪些無(wú)效。雖然訪問可能會(huì)受到限制并且服務(wù)往往會(huì)中斷一段時(shí)間,但它仍然是一個(gè)具有巨大潛力的令人興奮的工具。
注:該文章內(nèi)容引自國(guó)外3D網(wǎng)站:https://3dwithus.com/how-can-chatgpt-be-used-for-3d-printing