簡化AI服務建構的Pythonic框架
首頁 • API Playground • 範例 • 文件 • CLI 參考 • Twitter • 博客
LeptonAI Python 程式庫可讓您輕鬆地從 Python 程式碼建立 AI 服務。主要特點包括:
Photon
,讓您可以使用幾行程式碼將研究和建模程式碼轉換為服務。安裝庫:
pip install -U leptonai
這將安裝leptonai
Python 庫以及命令列介面lep
。然後,您可以用一行程式碼啟動 HuggingFace 模型,例如gpt2
:
lep photon runlocal - - name gpt2 - - model hf : gpt2
如果您有權存取 Llama2 模型(在此處申請存取)並且擁有大小合理的 GPU,則可以使用以下命令啟動它:
# hint: you can also write `-n` and `-m` for short
lep photon runlocal - n llama2 - m hf : meta - llama / Llama - 2 - 7 b - chat - hf
(請務必使用 Llama2 的-hf
版本,它與 Huggingface 管道相容。)
然後您可以透過以下方式存取該服務:
from leptonai . client import Client , local
c = Client ( local ( port = 8080 ))
# Use the following to print the doc
print ( c . run . __doc__ )
print ( c . run ( inputs = "I enjoy walking with my cute dog" ))
完全託管的 Llama2 模型和 CodeLlama 模型可以在 Playground 中找到。
支援許多標準 HuggingFace 管道 - 在文件中查找更多詳細資訊。但並非所有 HuggingFace 模型都受支持,因為其中許多型號包含自訂程式碼且不是標準管道。如果您發現想要支持的流行模型,請提出問題或 PR。
您可以從範例儲存庫中找到更多範例。例如,使用下列指令啟動 Stable Diffusion XL 模型:
git clone [email protected]:leptonai/examples.git
cd examples
lep photon runlocal - n sdxl - m advanced / sdxl / sdxl . py
服務運行後,您可以透過以下方式存取它:
from leptonai . client import Client , local
c = Client ( local ( port = 8080 ))
img_content = c . run ( prompt = "a cat launching rocket" , seed = 1234 )
with open ( "cat.png" , "wb" ) as fid :
fid . write ( img_content )
或透過 http://localhost:8080/ui 存取已安裝的 Gradio UI。檢查 README 文件以獲取更多詳細資訊。
完全託管的 SDXL 託管在 https://dashboard.lepton.ai/playground/sdxl 上,具有 API 存取權。
寫自己的光子很簡單:寫一個 Python Photon 類別並使用@Photon.handler
裝飾函數。只要您的輸入和輸出是 JSON 可序列化的,您就可以開始了。例如,以下程式碼啟動一個簡單的 echo 服務:
# my_photon.py
from leptonai . photon import Photon
class Echo ( Photon ):
@ Photon . handler
def echo ( self , inputs : str ) -> str :
"""
A simple example to return the original input.
"""
return inputs
然後您可以使用以下命令啟動該服務:
lep photon runlocal -n echo -m my_photon.py
然後,您可以如下使用您的服務:
from leptonai . client import Client , local
c = Client ( local ( port = 8080 ))
# will print available paths
print ( c . paths ())
# will print the doc for c.echo. You can also use `c.echo?` in Jupyter.
print ( c . echo . __doc__ )
# will actually call echo.
c . echo ( inputs = "hello world" )
有關更多詳細信息,請查看文件和範例。
歡迎並高度讚賞貢獻和合作。請查看貢獻者指南以了解如何參與。
Lepton AI Python 函式庫是在 Apache 2.0 許可證下發布的。
開發者說明:LeptonAI 的早期開發是在單獨的 mono-repo 中進行的,這就是為什麼您可能會看到來自leptonai/lepton
儲存庫的提交。我們打算使用這個開源儲存庫作為未來的真相來源。