> 기술 주변기기 > 일체 포함 > llama 3.2 90b 튜토리얼 : leamlit & groq를 가진 이미지 캡션 앱

llama 3.2 90b 튜토리얼 : leamlit & groq를 가진 이미지 캡션 앱

Lisa Kudrow
풀어 주다: 2025-03-01 10:28:09
원래의
576명이 탐색했습니다.

Meta는 Llama 3.2 11B & 90B 비전 모델을 도입하여 LLAMA 생태계에 다중 분해율을 추가했습니다. 이 두 모델은 텍스트와 이미지를 모두 처리 할 때 탁월하여 90b 버전을 사용하여 프로젝트를 구축했습니다. 이 기사에서는 저의 작품을 공유하고 프론트 엔드 용 Streamlit을 사용하여 대화식 이미지 캡션 앱을 구축하고 캡션을 생성하기위한 엔진으로 LLAMA 3.2 90B를 구축하도록 안내합니다. 이미지 캡션 앱에 llama 3.2 90b를 사용하는 이유 시각적 추론, 이미지 인식 및 이미지 캡션과 같은 복잡한 작업을 다루는 능력으로 눈에.니다. 60 억 이미지 텍스트 쌍의 대규모 데이터 세트에 대해 교육을 받았습니다. 이러한 기능이 이미지 캡션과 같은 실제 응용 프로그램으로 어떻게 해석되는지 살펴 보겠습니다. 이미지 캡션 파이프 라인 이미지 캡션은 이미지의 내용을 요약 한 설명 텍스트를 생성하는 자동화 된 프로세스입니다. 그것은 컴퓨터 비전과 자연어 처리를 결합하여 언어로 시각적 세부 사항을 해석하고 표현합니다.

전통적으로 이미지 캡션에는 복잡한 파이프 라인이 필요했으며, 종종 이미지 처리 및 언어 생성을위한 별도의 단계가 포함되어 있습니다. 표준 접근법에는 이미지 전처리, 기능 추출 및 캡션 생성의 세 가지 주요 단계가 포함됩니다.

이미지 전처리 : 이미지는 일반적으로 모델의 입력 사양을 충족시키기 위해 크기가 조정, 정규화 및 때때로 자르고 있습니다. <:> 특징 추출 : 시각적 기능을 추출하여 이미지 내에서 객체, 장면 또는 관련 세부 사항을 식별합니다. 대부분의 모델에서는 이미지를 해석하기 위해 별도의 비전 모델이 필요하며 언어 모델이 이해할 수있는 구조화 된 데이터를 생성합니다. <:> 캡션 생성 :이 추출 된 특징들은 언어 모델에 의해 일관된 설명을 만들기 위해 사용하여 시각적 데이터에서 식별 된 객체, 컨텍스트 및 관계를 결합합니다.

이미지 캡션 앱의 개요

Llama 3.2 90b의 힘을 생생하게하기 위해, 우리는 프론트 엔드 용 Sleamlit 및 캡션을 생성하기위한 Groq를 사용하여 간단하면서도 효과적인 이미지 캡션 응용 프로그램을 구축 할 것입니다.

. 앱을 사용하면 사용자가 이미지를 업로드하고 단 2 번의 클릭으로 모델에서 생성 한 설명 캡션을 수신 할 수 있습니다. 이 설정은 사용자 친화적이며 시작하려면 최소한의 코딩 지식이 필요합니다.

우리의 응용 프로그램에는 다음과 같은 기능이 포함됩니다

제목 : 앱의 목적을 설정하기 위해 눈에 띄게 표시된 제목 Llama Captioner. <: :> 업로드 버튼 : 사용자 장치에서 이미지를 업로드하는 인터페이스.

<: :> 버튼 생성 : 캡션 생성 프로세스를 시작하는 버튼.

캡션 출력 : 앱이 인터페이스에 생성 된 캡션을 직접 표시합니다.

LLAMA 3.2 90B 앱 코드 구현 Groq API는 사용자의 업로드 된 이미지와 LLAMA 3.2 vision 모델 사이의 브리지 역할을합니다. 나와 함께 따르고 코딩하고 싶다면 먼저 확인하십시오 :

Groq 콘솔에 가입하여 Groq API 키를 얻으십시오. API 키를
    Credentials.json
  1. 파일에 저장하여 액세스를 단순화합니다. 설치 및 구성을 위해 Groq의 QuickStart 안내서를 따르십시오
  2. 아래 의이 파이썬 코드 스 니펫 아래는 Groq API와 상호 작용하기 위해 간소화 된 응용 프로그램을 설정합니다. 포함 :
  3. 웹 앱 개발 (간소), AI 상호 작용 (GROQ), 이미지 처리 (Base64) 및 파일 작업 (OS, JSON)을 위해 라이브러리를 가져옵니다. 는 강화 된 보안을 위해 별도의 JSON 파일에서 Groq API 키를 읽습니다. 효율적인 전송 및 처리를 위해 이미지를 Base64 형식으로 인코딩하는 함수를 정의합니다.
  4. 우리는 Groq API를 사용하여 업로드 된 이미지에 대한 텍스트 설명을 생성하도록 설계된 아래 함수를 작성하여 계속 이동합니다. 다음은 기능의 고장입니다
      이미지 인코딩 : 업로드 된 이미지는 Base64 인코딩 문자열로 변환됩니다. 이 형식은 API 요청 내에서 이미지 데이터를 쉽게 전송할 수 있습니다. Groq API 상호 작용 : Groq 클라이언트는 Groq 서비스와의 커뮤니케이션을 용이하게하기 위해 인스턴스화됩니다. 채팅 완료 요청은 다음과 같이 구성됩니다
    1. 사용자 프롬프트 : "이 이미지에 무엇이 있습니까?" Base64는 데이터 URI에 내장 된 인코딩 된 이미지 데이터입니다. LLAMA-3.2-90B-VISION-PREVIEW 모델은 이미지를 처리하고 텍스트 설명을 생성하도록 지정됩니다.
    2. 캡션 추출 : 생성 된 캡션은 GROQ API 응답에서 추출됩니다. 캡션이 포함 된 첫 번째 선택의 메시지 내용이 반환됩니다.
    • 마지막으로, 우리는 간소화를 통해 대화식 웹 앱을 생성합니다.
    • 최종 간소화 앱 : llama 캡션 이 유선 애플리케이션은 이미지 캡션을위한 사용자 친화적 인 인터페이스를 제공합니다. 다음은 기능의 고장입니다 제목 및 파일 업 로더 :
      앱에는 "llama captioner"라는 제목이 표시됩니다 파일 업 로더 구성 요소를 통해 사용자는 이미지 파일 (jpg, jpeg 또는 png)을 선택할 수 있습니다.
    1. 이미지 디스플레이 :
    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')
    로그인 후 복사
    이미지가 업로드되면 앱은 st.Image 함수를 사용하여 표시합니다.

    <:> 캡션 생성 :
    # 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
    로그인 후 복사

    a 버튼,"캡션 생성 ", 캡션 생성 프로세스를 트리거합니다 클릭하면 스피너는 캡션이 생성되고 있음을 나타냅니다. <_> generate_caption 함수는 업로드 된 이미지를 처리하고 캡션을 얻기 위해 호출됩니다. 성공할 때 성공 메시지가 표시되고 생성 된 캡션이 표시됩니다.

    아래 스 니펫은 캡션을 생성하기 위해 Eddie Hall의 이미지가 업로드 된 코드입니다. 놀랍게도 그것은“가장 강한 사람”등처럼 명확하게 보이지 않는 정보조차 추출했습니다.

      결론 LLAMA 3.2 90B 및 Streamlit을 사용하여 이미지 캡션 앱을 구축하면 Advanced AI가 어려운 작업을 더 쉽게 만들 수있는 방법을 보여줍니다. 이 프로젝트는 강력한 모델과 간단한 인터페이스를 결합하여 직관적이고 사용하기 쉬운 도구를 만듭니다. AI 엔지니어로서 이와 같은 도구에서 큰 잠재력이 보입니다. 그들은 기술을보다 쉽게 ​​접근 할 수있게하고 사람들이 콘텐츠에 더 잘 참여하도록 돕고, 더 똑똑한 방식으로 프로세스를 자동화 할 수 있습니다.
    1. . 라마에 대한 학습을 ​​계속하려면 다음 리소스를 추천합니다.
        Torchchat 미세 조정 라마 3.2 및 로컬 사용 : 단계별 안내서

위 내용은 llama 3.2 90b 튜토리얼 : leamlit & groq를 가진 이미지 캡션 앱의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿