首頁  >  文章  >  後端開發  >  在開發中使用開源人工智慧模型

在開發中使用開源人工智慧模型

Susan Sarandon
Susan Sarandon原創
2024-11-07 06:35:03679瀏覽

El uso de los modelos de IA open source en el desarrollo

去年,大量人工智慧工具的出現讓用戶的生活變得更加輕鬆,無論是圖像生成還是聊天機器人,甚至擴展到執行龐大且專業的工具流程。

我一直在研究、學習和測試許多這些​​工具,從chatgpt、gemini到dall-e或midjourney,它們都運作得很好,但是當我想用這些工具擴展我的應用程式時,我發現它們沒有免費或開放替代來源。

這讓我的研究更進一步,我遇到了穩定的擴散ui(圖像生成,https://github.com/AUTOMATIC1111/stable-diffusion-webui)和* ollama *(Chatbot,https://ollama.com/),兩者都是開源工具,允許您將服務作為API 運行,以便從我們的任何應用程式中使用它,我已經到了我進一步使用開源替代方案,但為了使其發揮作用,我必須保持這些工具運行以供我們的應用程式使用。

要了解如何將其引入我們的應用程序,了解這些工具的工作原理非常重要,基本上它們的作用是使用帶有“safetensors”擴展名的LLM 或大型語言模型文件,這些模型經過訓練可以執行根據訓練者的需求提供不同的功能(例如:影像生成、翻譯、程式碼開發、聊天機器人等)。

透過了解一些LLM 模型和「safetensors」文件,我們得到以下問題:如何在我的應用程式中使用這些文件,這就是HugginFace 的用武之地,它是一個開源人工智慧網站/資料庫模型,他們為python 建立了自己的函式庫,其中包含2 個非常有用的元件,可滿足我們的需求「Transformers」和「Diffusers」。

*Transformers *(https://huggingface.co/docs/transformers/index) 是允許我們使用任何專用文字模型的組件,例如將音頻轉換為文本,反之亦然,聊天框作為元火焰等。

導入變壓器

import torch

model_id = "meta-llama/Llama-3.1-8B"

pipeline = transformers.pipeline(
    "text-generation", model=model_id, model_kwargs={"torch_dtype": torch.bfloat16}, device_map="auto"
)

pipeline("Hey how are you doing today?")

Diffusers (https://huggingface.co/docs/diffusers/index) 是允許我們使用任何專門用於影像生成的模型的組件,例如穩定擴散。

from diffusers import AutoPipelineForText2Image
import torch

pipe = AutoPipelineForText2Image.from_pretrained("stabilityai/sdxl-turbo", torch_dtype=torch.float16, variant="fp16")
pipe.to("cuda")

prompt = "A cinematic shot of a baby racoon wearing an intricate italian priest robe."

image = pipe(prompt=prompt, num_inference_steps=1, guidance_scale=0.0).images[0]

此過程稱為 LLM 模型推理,從這裡基於此信息,您可以開始使用 Python 在不同的應用程式中應用人工智慧。

需要注意的是,我也嘗試過使用另一種語言(例如nodejs)進行模型推理,事實是它的效果不如python,但重要的是要提到LLM需要強大的硬體模型推理,以便您可以透過使用ChatGPT 或Gemini API 節省購買合適硬體的費用。

就是這樣,我的第一篇文章,我希望我在軟體開發中使用LLM模型的路徑可以幫助您跳過這條路徑上的步驟。

以上是在開發中使用開源人工智慧模型的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn