首頁 > 科技週邊 > 人工智慧 > LLAMA 3.2 90B教程:帶有shatlit&groq的圖像字幕應用程序

LLAMA 3.2 90B教程:帶有shatlit&groq的圖像字幕應用程序

Lisa Kudrow
發布: 2025-03-01 10:28:09
原創
576 人瀏覽過

META最終通過引入Llama 3.2 11B和90B視覺模型來為Llama生態系統增加了多模式。這兩種模型在處理文本和圖像方面都表現出色,這使我嘗試使用90B版本構建一個項目。

在本文中,我將分享我的作品,並指導您使用簡化的前端和Llama 3.2 90B作為生成字幕的引擎。

為什麼使用Llama 3.2 90B進行圖像字幕應用

Llama 3.2-Vision 90b是一種最先進的多模式大型語言模型(LLM)

>它具有解決視覺推理,圖像識別和圖像字幕等複雜任務的能力。它已經在大量的60億個圖像文本對的大量數據集上進行了培訓。

llama 3.2-Vision是我們應用程序的絕佳選擇,因為它支持文本任務的多種語言,儘管英語是與圖像相關的應用程序的主要重點。它的關鍵功能使其成為視覺問題回答(VQA),文檔VQA和Image-Text檢索等任務的絕佳選擇,圖像字幕是其出色的應用程序之一。

>讓我們探索這些功能如何轉化為像圖像字幕之類的真實應用程序。

>圖像字幕管道

圖像字幕是生成匯總圖像內容的描述性文本的自動過程。它結合了計算機視覺和自然語言處理,以在語言中解釋和表達視覺細節。

傳統上,圖像字幕需要一條複雜的管道,通常涉及圖像處理和語言的單獨階段。標準方法涉及三個主要步驟:圖像預處理,特徵提取和字幕生成。

圖像預處理:圖像通常進行調整,標準化和偶爾裁剪,以確保它們符合模型的輸入規格。

特徵提取:提取視覺特徵以識別圖像中的對象,場景或相關細節。在大多數模型中,這需要一個單獨的視覺模型來解釋圖像,生成語言模型可以理解的結構化數據。

字幕生成:然後,語言模型使用這些提取的特徵來製作連貫的描述,結合了視覺數據中確定的對象,上下文和關係。

>使用Llama 3.2 90b,這個傳統上複雜的過程變得更加簡單。該模型的視覺適配器將視覺特徵集成到核心語言模型中,使其能夠直接解釋圖像並通過簡單的提示生成字幕。通過將跨注意層嵌入其體系結構中,Llama 3.2 90B允許用戶通過僅提示模型來描述圖像,即確定需要單獨的處理階段。這種簡單性使更易於訪問和高效的圖像字幕可以產生自然的描述性標題,從而有效地捕獲圖像的本質。

圖像字幕應用程序的概述

>將Llama 3.2 90B的力量栩栩如生,我們將使用簡化的前端構建一個簡單而有效的圖像字幕應用程序,並構建用於生成字幕的GROQ。

>該應用程序將允許用戶上傳圖像並接收模型生成的描述標題,僅需單擊兩次。此設置非常適合用戶友好,需要最少的編碼知識才能開始。

我們的應用程序將包含以下功能:

標題:一個突出顯示的標題,Llama字幕,以建立應用程序的目的。

>上傳按鈕:一個從用戶設備上傳圖像的接口。 >
    生成按鈕:一個按鈕啟動字幕生成過程。
  1. >
  2. >字幕輸出:該應用將直接在接口上顯示生成的字幕。
  3. 我們的Llama 3.2 90B應用程序的代碼實現
  4. groq API將充當用戶上傳圖像和Llama 3.2視頻模型之間的橋樑。如果您想跟隨我並與我進行編碼,請確保您首先:
  5. >
>通過在GROQ控制台註冊來獲取您的GROQ API密鑰。

>將您的API密鑰保存在A

> recreterentials.json

文件中以簡化訪問。
  1. 遵循Groq的“安裝和配置”的Quickstart指南。
  2. >下面的此Python代碼片段設置了一個簡化的應用程序,可以與GROQ API進行交互。它包括:
  3. >用於Web App開發(流線),AI Interactions(GROQ),Image處理(BASE64)和文件操作(OS,JSON)的庫庫。
  4. >從單獨的JSON文件中讀取GROQ API鍵,以進行增強安全性。
  5. 定義一個函數,將圖像編碼為base64格式以進行有效的傳輸和處理。
>

    >我們通過編寫下面的功能繼續前進,該功能旨在使用GROQ API生成上傳圖像的文本描述。這是其功能的故障:
    1. >圖像編碼:上傳的圖像被轉換為​​基本64編碼的字符串。這種格式允許在API請求中輕鬆傳輸映像數據。
    2. >
    3. groq API交互:groq客戶端的實例化以促進與GROQ服務的通信。制定了聊天完成請求,包括:
    • 一個用戶提示:“此圖像中有什麼?”
    • >
    • base64編碼的圖像數據,嵌入了數據URI中。指定了Llama-3.2-90B-Vision-Preiview模型來處理圖像並生成文本描述。
    1. >字幕提取:從GROQ API響應中提取生成的字幕。返回了首選的消息內容,其中包含標題。
    2. >
    import streamlit as st
    from groq import Groq
    import base64
    import os
    import json
    
    # Set up Groq API Key
    os.environ['GROQ_API_KEY'] = json.load(open('credentials.json', 'r'))['groq_token']
    
    # Function to encode the image
    def encode_image(image_path):
       with open(image_path, "rb") as image_file:
           return base64.b64encode(image_file.read()).decode('utf-8')
    登入後複製

    >最後,我們通過簡化生成我們的Interactive Web應用程序

    # Function to generate caption
    def generate_caption(uploaded_image):
       base64_image = base64.b64encode(uploaded_image.read()).decode('utf-8')
       client = Groq()
       chat_completion = client.chat.completions.create(
           messages=[
               {
                   "role": "user",
                   "content": [
                       {"type": "text", "text": "What's in this image?"},
                       {
                           "type": "image_url",
                           "image_url": {
                               "url": f"data:image/jpeg;base64,{base64_image}",
                           },
                       },
                   ],
               }
           ],
           model="llama-3.2-90b-vision-preview",
       )
       return chat_completion.choices[0].message.content
    登入後複製
    最終的簡化應用程序:Llama字幕

    此簡化應用程序提供了一個用於圖像字幕的用戶友好界面。這是其功能的故障:

      >標題和文件上傳器:
      該應用顯示一個標題:“ Llama Captioner”。
    • >
    • 文件上傳器組件允許用戶選擇圖像文件(JPG,JPEG或PNG)。 >
    圖像顯示:
    >上傳圖像後,應用程序使用St.Image函數顯示它。
    • 字幕生成:
    1. 一個按鈕,“生成字幕”,觸發字幕生成過程。
    單擊時,旋轉器表示標題正在生成。 >
      generate_caption函數被調用以處理上傳的圖像並獲得標題。
    • 成功的生成後,顯示了一條成功消息,其後是生成的字幕。
    • >以下片段是在行動中的代碼,其中埃迪·霍爾(Eddie Hall)的圖像上傳以生成標題。令人驚訝的是,它甚至提取了像“最堅強的人”等清晰可見的信息等。
    • >
    結論

    使用Llama 3.2 90B構建圖像字幕應用程序,並簡化了高級AI如何使艱鉅的任務更容易。該項目將強大的模型與一個簡單的接口相結合,以創建一個既直觀又易於使用的工具。

    > LLAMA 3.2 90B教程:帶有shatlit&groq的圖像字幕應用程序作為AI工程師,我看到了此類工具的巨大潛力。它們可以使技術更容易訪問,幫助人們更好地參與內容,並以更明智的方式自動化流程。

    要繼續學習駱駝,我建議以下資源:>
    • >如何在使用Torchchat的Android手機上運行Llama 3.2 1B
    • llama 3.2和Gradio教程:構建一個多模式Web應用
    • llama stack:帶有實際示例的指南
    • >微調美洲拉瑪3.2並在本地使用:逐步指南
    • llama 3.3:演示項目的分步教程>

以上是LLAMA 3.2 90B教程:帶有shatlit&groq的圖像字幕應用程序的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板