مقدمه ای در مورد استفاده از Google’s Gemini API برای بهبود عکاسی شما


نویسنده(های): دیوی

در ابتدا منتشر شد به سمت هوش مصنوعی.

قسمت 1 از مجموعه 2 قسمتی مبتدی که موارد استفاده سرگرم کننده مولد هوش مصنوعی را با Gemini بررسی می کند تا مهارت های عکاسی شما را افزایش دهد!

در این پست وبلاگ، من به شما نشان خواهم داد که چگونه یک A بسازید اپلیکیشن نقد و ارتقای عکس با استفاده از گوگل Gemini-1.5-Flash-8B API و Streamlit (همه به صورت رایگان!).

عکس توسط رابرت شونف در پاشیدن

به عنوان یک مدیر محصول که به سازنده تبدیل شد، دو سال پیش سفر هوش مصنوعی خود را آغاز کردم. وقتی شروع به ساختن اپلیکیشن‌های ساده‌ای کردم که به موارد خاص من کمک می‌کردند، چیزها به‌ویژه هیجان‌انگیز شدند – که در این مورد، این بود که برای خودم دستیار نقد عکس (یا مربی؟) بگیرم تا در عکاسی بهتر باشم!

چه شما یک عکاس آماتور باشید که به دنبال تقویت مهارت های خود هستید یا کسی که در مورد هوش مصنوعی کنجکاو است، این آموزش شما را با موارد ضروری آشنا می کند. استنتاج Gemini API.

در پایان، برنامه‌ای ساخته‌اید که نه تنها عکس‌های شما را نقد می‌کند، بلکه به شما در بهبود آن‌ها نیز کمک می‌کند! هدف کاوش است هوش مصنوعی مولد و کاربردهای متنوع آن، هنر شما را تقویت می کند – چه در عکاسی، موسیقی، هنر یا حتی آشپزی.

نمای کلی Google Flash API

Gemini 1.5-Flash-8B برای سرعت و کارایی طراحی شده است و چندوجهی است، به این معنی که می تواند ورودی های متن، تصویر و ویدئو را بپذیرد و بازخورد مبتنی بر متن را برگرداند.

دسترسی به Google AI Studio

Google AI Studio نقطه شروع شما است — یک پلتفرم با دسترسی آسان که به شما امکان می دهد با مدل های مولد Google کار کنید. استفاده از آن تا زمانی که حساب جیمیل دارید رایگان است.

  1. رفتن به استودیوی هوش مصنوعی گوگل.
  2. برای شروع با حساب جیمیل خود وارد شوید. پس از داخل شدن، می توانید مدل Gemini را انتخاب کنید و مطمئن شوید که یک کلید API برای ادغام آن با برنامه خود دارید.

آموزش، استنتاج و تنظیم دقیق در هوش مصنوعی

قبل از اینکه به فرآیند کدنویسی بپردازیم، درک برخی از مفاهیم اساسی در هوش مصنوعی ضروری است. وقتی برای اولین بار سفر هوش مصنوعی خود را شروع کردم، به سرعت متوجه شدم که ترجمه این موضوعات اساسی به برنامه های کاربردی چقدر حیاتی است.

  • آموزش: در طول مرحله آموزش، یک مدل هوش مصنوعی یاد می گیرد که الگوهای بزرگ و متنوع را تشخیص دهد مجموعه داده. مدل‌های Gemini که به آنها دسترسی خواهیم داشت توسط تیم DeepMind Google توسعه یافته و برای استفاده در دسترس قرار گرفته است. با تشکر از تیم DeepMind برای انجام آموزش و آماده کردن مدل برای استفاده ما!
  • استنباط: این مرحله «فعال» مدل است، جایی که ورودی را می‌پذیرد و بر اساس درخواست‌های کاربر خروجی تولید می‌کند. ما از قدرت استنتاج برای ساختن این برنامه نقد عکس استفاده خواهیم کرد.

💡استنباط سس مخفی برنامه نقد عکس ما است!

  • تنظیم دقیق: تنظیم دقیق مدل از پیش آموزش دیده را با آموزش آن بر روی طاقچه تخصصی می کند مجموعه داده ها. این فرآیند توانایی مدل را برای ارائه خروجی های مرتبط تر برای وظایف خاص افزایش می دهد. این همان کاری است که می‌توانیم انجام دهیم تا مدل OG (در صورت نیاز) را برای موارد استفاده تخصصی بیشتر تغییر دهیم.

برای تکمیل این بخش، این آموزش بر روی آن تمرکز دارد استنتاج با استفاده از مدل چندوجهی آموزش دیده گوگل – Gemini Flash 1.5 Flash-8B. عکس شما را می پذیرد و در مورد نحوه بهبود آن بازخورد ارائه می کند.

ساخت اپلیکیشن نقد عکس با Streamlit

این بخش شما را در راه‌اندازی محیط کدنویسی و پیکربندی مدل Gemini در آن راهنمایی می‌کند 5 مراحل ساده

مرحله 1: تنظیم محیط

  • واردات کتابخانه ها: اول، وارد کردن کتابخانه های ضروری مانند os، load_dotenv، google.generativeai، streamlit، و Image. اینها همه چیز را از متغیرهای محیطی گرفته تا تعامل با مدل هوش مصنوعی کنترل می کنند.
  • بارگیری کلید API: با استفاده از load_dotenv()، کلید API خود را از a بارگیری کنید .env فایل این کلید شما را امن و آماده برای استفاده نگه می دارد.
import os
from dotenv import load_dotenv
import google.generativeai as genai
import streamlit as st
from PIL import Image
# Load environment variables
load_dotenv()

مرحله 2: پیکربندی کلید API

  • بازیابی و تنظیم کلید API: بازیابی کلید API با os.getenv('API_KEY').

پیکربندی مدل هوش مصنوعی: بعد، Google’s را راه اندازی کنید هوش مصنوعی مولد SDK با genai.configure(api_key=API_KEY) برای یکپارچگی روان با برنامه شما.

# Set up your API key
API_KEY = os.getenv('API_KEY')
if not API_KEY:
raise ValueError("No API key found. Please set API_KEY in your .env file.")

# Initialize the Generative Model
genai.configure(api_key=API_KEY)
model = genai.GenerativeModel("gemini-1.5-flash-8b")

مرحله 3: تعریف توابع برای نقد

  • پردازش تصویر: یک تابع برای آپلود و فرمت تصویر برای Gemini API تعریف کنید.
  • ایجاد عملکرد نقد: یک تابع برای ارسال تصویر پردازش شده و یک درخواست نقد به مدل تعریف کنید و بینش را به عنوان بازخورد دریافت کنید.
def get_gemini_response(input_prompt, image):
response = model.generate_content(
[input_prompt, image[0]]
)
return response.text

def get_image_content(uploaded_file):
if uploaded_file is not None:
image_byte_data = uploaded_file.getvalue()
image_parts = [{
"mime_type": uploaded_file.type,
"data": image_byte_data
}]
return image_parts
else:
raise FileNotFoundError("File not uploaded")

مرحله 4: راه اندازی رابط Streamlit

Streamlit به شما امکان می دهد یک رابط کاربری تمیز بسازید و توانایی برنامه خود را آزمایش کنید.

# Set Streamlit page configuration FIRST
st.set_page_config(page_title="PhotoCritique", layout="centered")

# Streamlit interface setup
st.markdown("", unsafe_allow_html=True)

# Sidebar for critique options
st.sidebar.header("Critique Options")

# Allow users to select which aspects they want feedback on
aspects = st.sidebar.multiselect(
"Select any 3 aspects to critique:",
options=["Composition", "Lighting", "Focus and Sharpness", "Exposure", "Color Balance", "Creativity and Impact"],
default=["Composition", "Lighting", "Focus and Sharpness"]
)
# Ensure the user selects exactly three aspects
if len(aspects) != 3:
st.sidebar.warning("Please select exactly 3 aspects.")

# File uploader
uploaded_file = st.file_uploader("Upload a Photo for Critique", type=["jpg", "png", "jpeg"])
if uploaded_file is not None:
image = Image.open(uploaded_file)
st.image(image, caption="Uploaded Photo", use_column_width=True)

submit = st.button("Get Critique")

# Construct the input prompt based on selected aspects
if submit:
if len(aspects) == 3:
try:
image_data = get_image_content(uploaded_file)

# Create a formatted list of aspects
aspects_list = "\n".join([f"- {aspect}" for aspect in aspects])

# Instruction for feedback length
feedback_instruction = f"Provide concise and actionable feedback for each selected aspect. Limit each section to {feedback_length} sentences."

# Construct the prompt
input_prompt = f"""
You are an expert professional photographer. Please critique the uploaded photo focusing on the following aspects:
{aspects_list}

{feedback_instruction}

Provide three critique areas and three areas for improvement based on the selected aspects.
Format the response as follows:

**Critique Areas:**
1.
2.
3.

**Areas for Improvement:**
1.
2.
3.
"""

# Get the response from Gemini
response = get_gemini_response(input_prompt, image_data)

# Display the response with formatting
st.subheader("Photo Critique")
st.write(response)

except FileNotFoundError as e:
st.error(str(e))
except Exception as e:
st.error(f"An error occurred: {e}")
else:
st.error("Please select exactly 3 aspects for the critique.")

مرحله 5: برنامه خود را اجرا کنید!

برای اجرای برنامه به صورت محلی، دستور زیر را در ترمینال خود تایپ کنید:

streamlit run app.py

با این کار یک تب جدید در مرورگر شما باز می شود که در آن می توانید یک عکس آپلود کنید و بازخورد تولید شده توسط هوش مصنوعی را دریافت کنید.

عکس خود را ارسال کنید و روی دکمه “دریافت نقد” کلیک کنید
بازخورد دقیق و زمینه های بهبود از مدل Gemini در عکس توله سگ من! 🙂

نتیجه گیری

برنامه Photo Critique چیزی بیش از بازخورد ارائه می دهد. شما را در یک سفر بهبود راهنمایی می کند! امیدوارم در طول مسیر یکی دو چیز در مورد استنباط مدل Gemini و Streamlit نیز به شما یاد داده باشد! 😉

با ما همراه باشید! صفحه Medium من را برای آموزش های بیشتر در مورد هوش مصنوعی و Cloud دنبال کنید.

🌟🌟🌟 مثل الماس بدرخشید 💎💎💎

منتشر شده از طریق به سمت هوش مصنوعی



منبع: https://towardsai.net/p/machine-learning/a-primer-on-using-googles-gemini-api-to-improve-your-photography

پاسخی بگذارید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *