GPT4Free Python Kütüphanesi Nasıl Kullanılır

Bu eğitim, gpt4free kütüphanesinin kurulumunu, ayarlarını ve kullanımını gösterir. Metin üretimi için yeteneklerinden faydalanmayı öğretir.

Efe Demir

Efe Demir

5 June 2025

GPT4Free Python Kütüphanesi Nasıl Kullanılır

Giriş

GPT4Free, çeşitli sağlayıcılar aracılığıyla bir dizi güçlü dil modeline erişim sağlayan, açık kaynaklı bir Python kütüphanesidir. Zaman aşımı, yük dengeleme ve akış kontrolü gibi özelliklerle çok sağlayıcılı yapay zeka isteklerini gösteren bir konsept kanıtlama API paketidir. Bu kütüphane, geliştiricilerin birçok durumda resmi API anahtarlarına ihtiyaç duymadan, GPT-3.5 ve GPT-4 varyantları dahil olmak üzere metin oluşturma için farklı dil modellerini kullanmasını sağlar.

Bu eğitim, gpt4free kütüphanesinin kurulumu, ayarlanması ve kullanımında size rehberlik edecek ve çeşitli yapay zeka destekli metin oluşturma görevleri için yeteneklerinden nasıl yararlanacağınızı gösterecektir.

Yasal Hususlar

💡
UYARI: Bu eğitime başlamadan önce, gpt4free kütüphanesini kullanmanın yasal sonuçlarını anlamak önemlidir.

Bu depoyu veya bununla ilgili herhangi bir kodu kullanarak, geliştiriciler tarafından sağlanan yasal bildirimi kabul etmiş olursunuz. Orijinal yazar, bu deponun kullanımından veya onu onaylamaktan sorumlu değildir. Yazar ayrıca, diğer kullanıcılar tarafından yapılan herhangi bir kopya, çatal, yeniden yükleme veya GPT4Free ile ilgili başka herhangi bir şeyden sorumlu değildir.

GPT4Free, öncelikle çok sağlayıcılı isteklerle bir API paketinin geliştirilmesini gösteren bir konsept kanıtı olarak hizmet vermektedir. Bu kütüphaneyi resmi API'leri atlamak için kullanmak, çeşitli yapay zeka sağlayıcılarının hizmet şartlarını ihlal edebilir. Bu kütüphaneye dayalı herhangi bir çözümü bir üretim ortamında dağıtmadan önce, uygun yetkiye sahip olduğunuzdan ve kullanmayı düşündüğünüz her sağlayıcının hizmet şartlarına uyduğunuzdan emin olun.

Uygulama detaylarına dalmadan önce, gpt4free ile API testleri için Postman'e mükemmel bir alternatif olarak Apidog'u kullanabileceğinizi belirtmekte fayda var. Apidog, API tasarımı, hata ayıklama, otomatik test ve dokümantasyon gibi özellikler sunan kapsamlı bir API geliştirme platformudur.

gpt4free arayüz API'si ile çalışırken, Apidog size şunlarda yardımcı olabilir:

  1. API uç noktalarına istek gönderme
  2. Farklı parametre yapılandırmalarını test etme
  3. Yanıt verilerini görselleştirme
  4. Gelecekteki kullanımlar için API istekleri koleksiyonları oluşturma ve kaydetme
button

GPT4Free Nasıl Kurulur

Önkoşullar

GPT4Free'yi Yükleme Yöntemleri

Yöntem 1: PyPI Kullanarak

Tüm özelliklerle eksiksiz bir kurulum için:

pip install -U g4f[all]

Kısmi kurulumlar için:

# OpenAI Chat sağlayıcısı için
pip install -U g4f[openai]

# Arayüz API'si için
pip install -U g4f[api]

# Web arayüzü için
pip install -U g4f[gui]

# Görüntü oluşturma için
pip install -U g4f[image]

# Webdriver'lı sağlayıcılar için
pip install -U g4f[webdriver]

# Proxy desteği için
pip install -U aiohttp_socks

Yöntem 2: GitHub Deposundan

# Depoyu klonlayın
git clone https://github.com/xtekky/gpt4free.git

# Proje dizinine gidin
cd gpt4free

# Sanal bir ortam oluşturun (önerilir)
python3 -m venv venv

# Sanal ortamı etkinleştirin
# Windows'ta:
.\venv\Scripts\activate
# macOS ve Linux'ta:
source venv/bin/activate

# Minimum gereksinimleri yükleyin
pip install -r requirements-min.txt

# Veya tüm gereksinimleri yükleyin
pip install -r requirements.txt

Yöntem 3: Docker Kullanarak

# Docker imajını çekin
docker pull hlohaus789/g4f

# Kapsayıcıyı çalıştırın
docker run -p 8080:8080 -p 1337:1337 -p 7900:7900 --shm-size="2g" hlohaus789/g4f:latest

Slim sürümü için (hem x64 hem de arm64 ile uyumlu):

# Gerekli dizinleri oluşturun
mkdir -p ${PWD}/har_and_cookies ${PWD}/generated_images
chown -R 1000:1000 ${PWD}/har_and_cookies ${PWD}/generated_images

# Slim Docker imajını çalıştırın
docker run \
  -p 1337:1337 \
  -v ${PWD}/har_and_cookies:/app/har_and_cookies \
  -v ${PWD}/generated_images:/app/generated_images \
  hlohaus789/g4f:latest-slim \
  /bin/sh -c 'rm -rf /app/g4f && pip install -U g4f[slim] && python -m g4f --debug'

GPT4Free'yi Python Temelleri ile Nasıl Kullanılır

ChatCompletion ile Metin Oluşturma

Basit Örnek

import g4f

# Hata ayıklama günlüğünü etkinleştirin (isteğe bağlı)
g4f.debug.logging = True

# Otomatik sürüm kontrolünü devre dışı bırakın (isteğe bağlı)
g4f.debug.version_check = False

# Normal (akışsız) yanıt
response = g4f.ChatCompletion.create(
    model="gpt-3.5-turbo",
    messages=[{"role": "user", "content": "Merhaba, bugün nasılsınız?"}]
)
print(response)

Akış Yanıtı

import g4f

# Yanıtı akışla gönderin
response = g4f.ChatCompletion.create(
    model="gpt-3.5-turbo",
    messages=[{"role": "user", "content": "Bir robot hakkında kısa bir hikaye yazın."}],
    stream=True
)

for message in response:
    print(message, end='', flush=True)

Belirli Bir Sağlayıcıyı Kullanma

import g4f

# Mevcut tüm çalışan sağlayıcıları listeleyin
providers = [provider.__name__ for provider in g4f.Provider.__providers__ if provider.working]
print("Mevcut sağlayıcılar:", providers)

# Belirli bir sağlayıcıyı kullanın
response = g4f.ChatCompletion.create(
    model="gpt-3.5-turbo",
    provider=g4f.Provider.Aichat,
    messages=[{"role": "user", "content": "Kuantum hesaplamayı basit terimlerle açıklayın."}]
)
print(response)

İstemci API'sini Kullanma

İstemci API'sini kullanan daha modern bir yaklaşım:

from g4f.client import Client

# Bir istemci örneği oluşturun
client = Client()

# Sohbet tamamlamaları kullanarak metin oluşturun
response = client.chat.completions.create(
    model="gpt-4o-mini",
    messages=[{"role": "user", "content": "Merhaba"}],
    web_search=False
)
print(response.choices[0].message.content)

Görüntü Oluşturma

from g4f.client import Client

# Bir istemci örneği oluşturun
client = Client()

# Bir görüntü oluşturun
response = client.images.generate(
    model="flux",
    prompt="beyaz bir siyam kedisi",
    response_format="url"
)
print(f"Oluşturulan görüntü URL'si: {response.data[0].url}")

Sağlayıcı Kimlik Doğrulama

Bazı sağlayıcılar kimlik doğrulama için çerezler veya erişim belirteçleri gerektirir:

from g4f import set_cookies

# Bing için çerezleri ayarlayın
set_cookies(".bing", {"_U": "çerez değeri"})

# OpenAI Chat için erişim belirtecini ayarlayın
set_cookies("chat.openai.com", {"access_token": "belirteç değeri"})

Tarayıcı Otomasyonunu Kullanma

Tarayıcı etkileşimi gerektiren sağlayıcılar için:

import g4f
from undetected_chromedriver import Chrome, ChromeOptions

# Chrome seçeneklerini yapılandırın
options = ChromeOptions()
options.add_argument("--incognito")

# Chrome WebDriver'ını başlatın
webdriver = Chrome(options=options, headless=True)

try:
    # Tarayıcıyı birden fazla istek için kullanın
    for idx in range(5):
        response = g4f.ChatCompletion.create(
            model=g4f.models.default,
            provider=g4f.Provider.MyShell,
            messages=[{"role": "user", "content": f"Bana bir mobil uygulama için {idx+1}. fikri verin."}],
            webdriver=webdriver
        )
        print(f"Fikir {idx+1}:", response)
finally:
    # İşiniz bittiğinde her zaman webdriver'ı kapatın
    webdriver.quit()

Eşzamansız Destek

Birden fazla istek ile geliştirilmiş performans için:

import g4f
import asyncio

# Kullanılacak sağlayıcıları tanımlayın
providers = [
    g4f.Provider.Aichat,
    g4f.Provider.ChatBase,
    g4f.Provider.Bing,
    g4f.Provider.GptGo
]

async def run_provider(provider):
    try:
        response = await g4f.ChatCompletion.create_async(
            model=g4f.models.default,
            messages=[{"role": "user", "content": "Adınız nedir?"}],
            provider=provider,
        )
        print(f"{provider.__name__}:", response)
    except Exception as e:
        print(f"{provider.__name__}:", e)

async def run_all():
    calls = [run_provider(provider) for provider in providers]
    await asyncio.gather(*calls)

# Tüm sağlayıcıları eşzamansız olarak çalıştırın
asyncio.run(run_all())

Proxy ve Zaman Aşımı Desteği

Ağ kısıtlamalarını yönetmek için:

import g4f

# Belirli bir proxy ve genişletilmiş zaman aşımı ile kullanın
response = g4f.ChatCompletion.create(
    model=g4f.models.default,
    messages=[{"role": "user", "content": "Python kodumu nasıl geliştirebilirim?"}],
    proxy="http://host:port",  # veya socks5://user:pass@host:port
    timeout=120  # saniye cinsinden
)
print("Sonuç:", response)

Ayrıca, bir ortam değişkeni aracılığıyla genel bir proxy ayarlayabilirsiniz:

export G4F_PROXY="http://host:port"

GPT4Free ile Web Arayüzünü Çalıştırma

GPT4Free, daha kolay etkileşim için bir web arayüzü içerir:

from g4f.gui import run_gui
run_gui()

Alternatif olarak, komut satırını kullanın:

# Flask sunucusunu başlatın
python -m g4f.cli gui --port 8080 --debug

# Veya FastAPI sunucusunu başlatın
python -m g4f --port 8080 --debug

Web arayüzü http://localhost:8080/chat/ adresinde mevcut olacaktır

GPT4Free ile Arayüz API'sini Kullanma

GPT4Free, diğer araçlarla entegrasyon için OpenAI uyumlu bir API sağlar:

# API sunucusunu çalıştırın
from g4f.api import run_api
run_api()

Veya komut satırı aracılığıyla:

g4f-api
# veya
python -m g4f.api.run

Ardından, OpenAI Python istemcisini kullanarak ona bağlanın:

from openai import OpenAI

client = OpenAI(
    # İsteğe bağlı: Gömme işlemleri için Hugging Face belirtecinizi ayarlayın
    api_key="YOUR_HUGGING_FACE_TOKEN",
    base_url="http://localhost:1337/v1"
)

# Resmi OpenAI istemcisi gibi kullanın
chat_completion = client.chat.completions.create(
    model="gpt-3.5-turbo",
    messages=[{"role": "user", "content": "Bir ağaç hakkında bir şiir yazın"}],
    stream=True,
)

for token in chat_completion:
    content = token.choices[0].delta.content
    if content is not None:
        print(content, end="", flush=True)

GPT4Free Desteklenen Modeller ve Sağlayıcılar

GPT4Free, çeşitli yeteneklere sahip çok sayıda sağlayıcıyı destekler. Bazı sağlayıcılar GPT-4'ü, diğerleri GPT-3.5'i ve bazıları alternatif modelleri destekler.

GPT-4 Sağlayıcıları

GPT-3.5 Sağlayıcıları

Diğer Modeller

Sonuç

gpt4free Python kütüphanesi, birçok durumda resmi API anahtarları gerektirmeden çeşitli dil modellerine erişmek için etkileyici bir yetenek yelpazesi sunar. Birden fazla sağlayıcı için birleşik bir arayüz sağlayarak, geliştiricilerin farklı dil modelleriyle denemeler yapmasını ve performanslarını karşılaştırmasını sağlar.

Bu kütüphane öncelikle bir konsept kanıtı olsa ve üretim kullanımı için yasal sonuçları olabilse de, yapay zeka yetenekleri hakkında bilgi edinmek, küçük projeleri test etmek ve farklı dil modellerinin nasıl çalıştığını anlamak için değerli bir araçtır.

Bu kütüphaneyi sorumlu bir şekilde kullanmayı, sağlayıcıların hizmet şartlarına uymayı ve yapay zeka kullanımıyla ilgili etik hususları göz önünde bulundurmayı unutmayın. Üretim uygulamaları için, uygun kimlik doğrulama ve lisanslama ile resmi API'leri kullanmanız şiddetle tavsiye edilir.

Kütüphane aktif geliştirme aşamasındadır, bu nedenle en son özellikler, sağlayıcılar ve en iyi uygulamalar için GitHub deposunu ve belgeleri kontrol edin. Yapay zeka alanı hızla gelişmeye devam ettikçe, gpt4free gibi araçlar, en son teknolojilere erişimi demokratikleştirerek daha fazla geliştiricinin bu güçlü modellerle denemeler yapmasına ve onlardan öğrenmesine yardımcı olur.

Explore more

Fathom-R1-14B: Hindistan'dan Gelişmiş Yapay Zeka Muhakeme Modeli

Fathom-R1-14B: Hindistan'dan Gelişmiş Yapay Zeka Muhakeme Modeli

Yapay zeka hızla gelişiyor. FractalAIResearch/Fathom-R1-14B, 14.8 milyar parametreyle matematik ve genel akıl yürütmede başarılı.

5 June 2025

Mistral Code: İşletmeler için En Özelleştirilebilir Yapay Zeka Destekli Kodlama Asistanı

Mistral Code: İşletmeler için En Özelleştirilebilir Yapay Zeka Destekli Kodlama Asistanı

Mistral Code'u keşfedin: Kurumsal kullanıma özel, en özelleştirilebilir yapay zeka destekli kodlama asistanı.

5 June 2025

Claude Code'un 2025'te Yapay Zeka Kodlamasını Nasıl Dönüştürdüğü

Claude Code'un 2025'te Yapay Zeka Kodlamasını Nasıl Dönüştürdüğü

Claude Code, 2025'te yapay zeka destekli kodlamayı nasıl devrimleştiriyor? Özelliklerini, kullanımını ve Windsurf kısıtlamalarından sonra neden popüler olduğunu öğrenin. Geliştiriciler için okunması gereken!

5 June 2025

API Tasarım-Öncelikli Yaklaşımı Apidog'da Uygulayın

API'leri oluşturmanın ve kullanmanın daha kolay yolunu keşfedin