LimeWire AI API:開發人員快速部署線上AI藝術生成應用

LimeWire AI API

LimeWire 最近推出了面向創作者和藝術家的人工智慧工作室。現在,該公司釋出了 RESTful API,用於使用頂級生成式人工智慧模型建立內容。開發人員可以利用 LimeWire 的 AI API,根據文字提示生成影象、提升影象大小、將影象擴充套件到邊界之外,並使用 AI 修改影象。

更不用說,LimeWire 還在努力為音樂和視訊生成提供 API 支援。因此,在本文中,我們將體驗 LimeWire AI API 在許多不同人工智慧生成任務中的應用。通過我們對 API 的詳細測試,看看它是否適合你的需求。

使用 LimeWire API 生成影象

首先,我們來了解一下文字到圖片的端點,以及如何使用 LimeWire AI API 生成圖片。我將用 Python 演示示例,但你也可以選擇其他語言,包括 Node.js、PHP、Java、Go、Ruby 等。

下面是用 Python 生成影象的程式碼示例:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
import requests
url = "https://api.limewire.com/api/image/generation"
payload = {
"prompt": "A dinosaur on the moon",
"aspect_ratio": "1:1"
}
headers = {
"Content-Type": "application/json",
"X-Api-Version": "v1",
"Accept": "application/json",
"Authorization": "Bearer <YOUR_lmwr_sk_*_HERE>"
}
response = requests.post(url, json=payload, headers=headers)
data = response.json()
print(data)
import requests url = "https://api.limewire.com/api/image/generation" payload = { "prompt": "A dinosaur on the moon", "aspect_ratio": "1:1" } headers = { "Content-Type": "application/json", "X-Api-Version": "v1", "Accept": "application/json", "Authorization": "Bearer <YOUR_lmwr_sk_*_HERE>" } response = requests.post(url, json=payload, headers=headers) data = response.json() print(data)
import requests
url = "https://api.limewire.com/api/image/generation"
payload = {
"prompt": "A dinosaur on the moon",
"aspect_ratio": "1:1"
}
headers = {
"Content-Type": "application/json",
"X-Api-Version": "v1",
"Accept": "application/json",
"Authorization": "Bearer <YOUR_lmwr_sk_*_HERE>"
}
response = requests.post(url, json=payload, headers=headers)
data = response.json()
print(data)

如圖所示,我使用了 LimeWire 的圖片生成端點( api/image/generation ),並在正文中定義了提示。提示應少於 2000 個字元,您還可以通過 negative_prompt 來描述影象中不應包含的內容。下面,我將 aspect_ratio 指定為 1:1,但也可以指定 2:33:2

由於這是 LimeWire AI API 的首個版本,X-Api-versionv1 。 只需在 Bearer 旁貼上 LimeWire API 金鑰,就可以使用了。

順便說一句,你還可以加入許多其他引數,比如 samples 來生成圖片數量(從 14 )、quality 來指定所需的質量(LOWMID, 和 HIGH,預設為 MID)、風格來定義圖片風格(PHOTOREALISTICSCIFILANDSCAPE)、指導比例來要求模型嚴格遵守你的文字提示(從 1100,預設為 40)。你可以在 LimeWire 的 API 文件頁面找到更多資訊。

使用 limewire AI API 生成影象

現在,只需呼叫 API,就能以 JSON 格式輸出圖片的 asset_idasset_url。使用 LimeWire 的 AI API 生成影象就是這麼簡單。目前,LimeWire 支援 10 多種生成式人工智慧模型,包括 BlueWillow(v3、v4 和 v5)、Dall -E3、Stable Diffusion XL v1.0、Google AI Imagen 等。

使用 LimeWire API 放大圖片

接下來,我們將使用 LimeWire 的 api/image/upscaling 端點 API 來放大圖片。在這裡,你需要定義 image_asset_id,你可以通過 POST 請求使用其 ” api/upload” 端點生成 image_asset_id,如下所述。然後,只需提及 upscale_factor234)並貼上 API 金鑰即可。

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
import requests
url = "https://api.limewire.com/api/image/upscaling"
payload = {
"image_asset_id": "XXXXXXXXXXXXXXXXXXXXXXXXX",
"upscale_factor": 2
}
headers = {
"Content-Type": "application/json",
"X-Api-Version": "v1",
"Accept": "application/json",
"Authorization": "Bearer <YOUR_lmwr_sk_*_HERE>"
}
response = requests.post(url, json=payload, headers=headers)
data = response.json()
print(data)
import requests url = "https://api.limewire.com/api/image/upscaling" payload = { "image_asset_id": "XXXXXXXXXXXXXXXXXXXXXXXXX", "upscale_factor": 2 } headers = { "Content-Type": "application/json", "X-Api-Version": "v1", "Accept": "application/json", "Authorization": "Bearer <YOUR_lmwr_sk_*_HERE>" } response = requests.post(url, json=payload, headers=headers) data = response.json() print(data)
import requests
url = "https://api.limewire.com/api/image/upscaling"
payload = {
"image_asset_id": "XXXXXXXXXXXXXXXXXXXXXXXXX",
"upscale_factor": 2
}
headers = {
"Content-Type": "application/json",
"X-Api-Version": "v1",
"Accept": "application/json",
"Authorization": "Bearer <YOUR_lmwr_sk_*_HERE>"
}
response = requests.post(url, json=payload, headers=headers)
data = response.json()
print(data)

它將返回生成的 asset_idasset_url。在我的測試中,LimWire API 做得非常出色。我傳入了一張 1000×750 的 PNG 影象,它將影象升頻後生成了一張 2000×1500 的影象,而且沒有任何偽影。

使用 limewire ai api 放大影象

我們經常可以看到,在傳遞帶有文字的影象時,Diffusion 模型會很難處理文字,從而導致渲染錯誤。但是,LimeWire 的影象縮放 API 並沒有弄壞影象中的文字,這一點非常了不起。

使用 LimeWire API 外繪影象

現在,我們來看看外繪影象,它允許你擴充套件影象的邊界。它能根據圖片的現有內容同步生成物件和背景。在這裡,我使用的是 LimeWire 的 api/image/outpainting 端點。

和上面一樣,你必須傳遞 image_asset_id 並新增 API 金鑰。在這裡,” direction “(方向)引數可讓你定義如何展開影象,是隻展開一面還是展開所有方向。您可以將 direction 定義為UPDOWNLEFTRIGHT, 或 ALL

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
import requests
url = "https://api.limewire.com/api/image/outpainting"
payload = {
"image_asset_id": "XXXXXXXXXXXXXXXXXXXXXXXXXXX",
"direction": "UP",
"crop_side": "LEFT"
}
headers = {
"Content-Type": "application/json",
"X-Api-Version": "v1",
"Accept": "application/json",
"Authorization": "Bearer <YOUR_lmwr_sk_*_HERE>"
}
response = requests.post(url, json=payload, headers=headers)
data = response.json()
print(data)
import requests url = "https://api.limewire.com/api/image/outpainting" payload = { "image_asset_id": "XXXXXXXXXXXXXXXXXXXXXXXXXXX", "direction": "UP", "crop_side": "LEFT" } headers = { "Content-Type": "application/json", "X-Api-Version": "v1", "Accept": "application/json", "Authorization": "Bearer <YOUR_lmwr_sk_*_HERE>" } response = requests.post(url, json=payload, headers=headers) data = response.json() print(data)
import requests
url = "https://api.limewire.com/api/image/outpainting"
payload = {
"image_asset_id": "XXXXXXXXXXXXXXXXXXXXXXXXXXX",
"direction": "UP",
"crop_side": "LEFT"
}
headers = {
"Content-Type": "application/json",
"X-Api-Version": "v1",
"Accept": "application/json",
"Authorization": "Bearer <YOUR_lmwr_sk_*_HERE>"
}
response = requests.post(url, json=payload, headers=headers)
data = response.json()
print(data)

接下來,您可以定義 crop_side ,指定要裁剪哪一面進行外繪。不過,並非所有影象都需要裁剪,人工智慧模型可以選擇是否需要裁剪,以使影象看起來更自然。您可以將其定義為 TOPBOTTOMLEFT, 或 RIGHT。請記住,在進行外繪時,影象的寬高比應為 1:12:33:2

使用 limewire AI api 擴充套件和外繪影象

然後,我傳入了一張縱橫比為 1:1 的 PNG 影象,並將 direction 設定為 ALL,但它未能處理該影象。於是,我只要求它將影象的上邊界塗掉,它就成功地處理了影象。你可以在上圖中看到差異。

使用 LimeWire API 內繪影象

現在,我們來看看內繪,它能讓你通過文字提示修改圖片。只需在影象中新增文字提示,就能使用 LimeWire 的 AI API 對影象進行操作。在這裡,我使用的是 api/image/inpainting 端點。

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
import requests
url = "https://api.limewire.com/api/image/inpainting"
payload = {
"image_asset_id": "XXXXXXXXXXXXXXXXXXXXXXXXX",
"prompt": "Add a tiger on the roof"
}
headers = {
"Content-Type": "application/json",
"X-Api-Version": "v1",
"Accept": "application/json",
"Authorization": "Bearer <YOUR_lmwr_sk_*_HERE>"
}
response = requests.post(url, json=payload, headers=headers)
data = response.json()
print(data)
import requests url = "https://api.limewire.com/api/image/inpainting" payload = { "image_asset_id": "XXXXXXXXXXXXXXXXXXXXXXXXX", "prompt": "Add a tiger on the roof" } headers = { "Content-Type": "application/json", "X-Api-Version": "v1", "Accept": "application/json", "Authorization": "Bearer <YOUR_lmwr_sk_*_HERE>" } response = requests.post(url, json=payload, headers=headers) data = response.json() print(data)
import requests
url = "https://api.limewire.com/api/image/inpainting"
payload = {
"image_asset_id": "XXXXXXXXXXXXXXXXXXXXXXXXX",
"prompt": "Add a tiger on the roof"
}
headers = {
"Content-Type": "application/json",
"X-Api-Version": "v1",
"Accept": "application/json",
"Authorization": "Bearer <YOUR_lmwr_sk_*_HERE>"
}
response = requests.post(url, json=payload, headers=headers)
data = response.json()
print(data)

我嘗試執行 Inpainting API,但不幸的是,它一直丟擲 “內部伺服器錯誤”(Internal Server Error)。API 可能由於某種原因關閉了。不過,這就是你如何使用 LimeWire 的 AI API 為圖片上色的方法。

內部伺服器錯誤

使用 LimeWire API 上傳資產

最後,我們來看使用 LimeWire API 上傳資產。你可以使用 api/upload 端點上傳資產。上傳資產後,LimeWire 會將其保留 24 小時。圖片的最大上傳大小為 10MB。你可以使用 POST 請求方法來傳遞圖片。

請注意,Content-Type 引數應與圖片格式相匹配。支援的圖片格式有  image/pngimage/jpegimage/x-ms-bmpimage/webp, 和 image/tiff

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
import requests
url = "https://api.limewire.com/api/upload"
payload = '''
[object Object]
'''
headers = {
"Content-Type": "image/png",
"Authorization": "Bearer <YOUR_lmwr_sk_*_HERE>"
}
response = requests.post(url, data=payload, headers=headers)
data = response.json()
print(data)
import requests url = "https://api.limewire.com/api/upload" payload = ''' [object Object] ''' headers = { "Content-Type": "image/png", "Authorization": "Bearer <YOUR_lmwr_sk_*_HERE>" } response = requests.post(url, data=payload, headers=headers) data = response.json() print(data)
import requests
url = "https://api.limewire.com/api/upload"
payload = '''
[object Object]
'''
headers = {
"Content-Type": "image/png",
"Authorization": "Bearer <YOUR_lmwr_sk_*_HERE>"
}
response = requests.post(url, data=payload, headers=headers)
data = response.json()
print(data)

LimeWire AI API 值得購買嗎?

就效能而言,LimeWire 的生成式 API 工具物有所值。API 基於 REST 架構構建,因此具有可擴充套件性,並能提供出色的效能。在我的測試中,API 呼叫在 4 到 5 秒內就能解決,這真是令人難以置信。除此之外,生成內容的質量也相當不錯,因為它承載了來自 OpenAI、Stability AI、谷歌等供應商的最先進的 Diffusion 模型。

更不用說,API 的實現非常簡單,任何人都可以在任何環境下開始使用這些工具。其文件簡潔易懂。儘管這是 LimeWire 首次釋出人工智慧 API,但仍有多個自定義選項,你可以通過多個引數來生成自己喜歡的內容。

至於定價,我喜歡 LimeWire 的做法。與競爭對手提供的用於生成圖片、內畫、外畫等的多個計劃相比,LimeWire 只提供了一個計劃,即可使用所有型別的 API。API Pro 計劃每月最多可生成 7,500 張圖片,併發請求數為 4。每月費用為 49 美元,與競爭對手相比相當合理。對於開發人員和小型企業來說,該計劃非常適合。

您還可以選擇每月 29.99 美元(3,750 張圖片)的 API Basic 計劃或每月 250 美元(37,500 張圖片)的 API Pro Plus 計劃。

評論留言