Flask ile Web Uygulaması Kurma
İlk adım olarak, Flask’ı kurmamız gerekiyor:
pip install Flask
Kurulumun ardından, temel bir Flask uygulaması şu şekilde başlar:
from flask import Flask
app = Flask(__name__)
@app.route("/")
def hello():
return "Merhaba, Dünya!"
if __name__ == "__main__":
app.run(debug=True)
Bu basit uygulama, web tarayıcınızda "Merhaba, Dünya!" mesajını gösterecek. Şimdi, uygulamamız çalışıyor! Peki, yapay zeka özelliklerini bu web uygulamasına nasıl entegre edeceğiz?
Yapay Zeka Algoritmalarını Web Uygulamasına Entegre Etme
TensorFlow, Google tarafından geliştirilmiş açık kaynaklı bir yapay zeka ve makine öğrenimi kütüphanesidir. Görüntü tanıma, metin sınıflandırma, öneri sistemleri gibi bir dizi alanda kullanabileceğiniz güçlü araçlar sunar.
TensorFlow ile Basit Bir Model Oluşturma
pip install tensorflow
Basit bir model örneği olarak, resim üzerinde nesne tanıma yapacak bir model oluşturabiliriz. Bu model, kullanıcıların yüklediği fotoğraflardaki objeleri tanıyacak.
Örneğin, TensorFlow'un sağladığı önceden eğitilmiş bir model olan MobileNet'i kullanarak, görsel tanıma işlemi gerçekleştirebiliriz:
import tensorflow as tf
from tensorflow.keras.preprocessing import image
import numpy as np
# MobileNetV2 modelini yükle
model = tf.keras.applications.MobileNetV2(weights='imagenet')
# Görseli yükle
img_path = 'resim.jpg' # Kullanıcının yüklediği resim
img = image.load_img(img_path, target_size=(224, 224))
# Görseli işleme
img_array = image.img_to_array(img)
img_array = np.expand_dims(img_array, axis=0)
img_array = tf.keras.applications.mobilenet_v2.preprocess_input(img_array)
# Model ile tahmin yap
predictions = model.predict(img_array)
# Tahmin sonucunu çözümle
decoded_predictions = tf.keras.applications.mobilenet_v2.decode_predictions(predictions)
print(decoded_predictions)
Yukarıdaki kod parçası, bir resmi alıp, TensorFlow’un MobileNetV2 modelini kullanarak o resimdeki nesneleri tanır ve tahmin eder.
Flask ile TensorFlow Modelini Entegre Etme
Aşağıda, Flask ile TensorFlow modelini entegre etmek için örnek bir kodu bulabilirsiniz:
from flask import Flask, request, render_template
import tensorflow as tf
from tensorflow.keras.preprocessing import image
import numpy as np
app = Flask(__name__)
# Modeli yükle
model = tf.keras.applications.MobileNetV2(weights='imagenet')
@app.route("/", methods=["GET", "POST"])
def index():
if request.method == "POST":
# Kullanıcının yüklediği resmi al
file = request.files['image']
img_path = "uploaded_image.jpg"
file.save(img_path)
# Görseli işle
img = image.load_img(img_path, target_size=(224, 224))
img_array = image.img_to_array(img)
img_array = np.expand_dims(img_array, axis=0)
img_array = tf.keras.applications.mobilenet_v2.preprocess_input(img_array)
# Modeli kullanarak tahmin yap
predictions = model.predict(img_array)
decoded_predictions = tf.keras.applications.mobilenet_v2.decode_predictions(predictions)
return render_template('index.html', predictions=decoded_predictions)
return render_template('index.html')
if __name__ == "__main__":
app.run(debug=True)
Bu kod parçası, kullanıcının yüklediği fotoğrafı alır, TensorFlow ile tahmin yapar ve sonucu kullanıcıya gösterir.
Performans Optimizasyonu ve Kullanıcı Deneyimi İyileştirmeleri
1. Modeli optimize edin: Daha küçük ve hızlı çalışan modeller kullanın ya da TensorFlow Lite gibi araçlarla modelinizi optimize edin.
2. Sunucu tarafı optimizasyonları yapın: Web uygulamanızın hızını artırmak için sunucu yapılandırmalarınızı optimize edin.
3. Kullanıcı dostu arayüzler tasarlayın: Görsellerin yüklenmesi veya işlem yapılması sırasında kullanıcıyı bilgilendiren görsel geri bildirimler ekleyin.
Gerçek Dünya Örnekleri ve Kullanım Alanları
- E-ticaret: Kullanıcıların yüklediği ürün fotoğraflarını analiz ederek benzer ürünleri öneren bir sistem.
- Sağlık: Hastaların tıbbi görüntülerini analiz eden, hastalıkları erken teşhis etmeye yardımcı olan bir uygulama.
- Eğitim: Öğrencilerin yüklediği yazılı metinleri analiz ederek, yazılı sunumları değerlendiren akıllı eğitim platformları.