DEV Community

Cover image for LLM Uygulamaları Nasıl Test Edilir: Promptfoo ile Eksiksiz Kılavuz (2026)
Tobias Hoffmann
Tobias Hoffmann

Posted on • Originally published at apidog.com

LLM Uygulamaları Nasıl Test Edilir: Promptfoo ile Eksiksiz Kılavuz (2026)

TL;DR

Promptfoo, geliştiricilerin yapay zeka uygulamalarını sistematik ve otomatik olarak test etmelerine yardımcı olan açık kaynaklı bir LLM değerlendirme ve kırmızı ekip (red-teaming) çerçevesidir. 90'dan fazla model sağlayıcısı, 67+ güvenlik saldırısı eklentisi ve %100 yerel çalışma özelliği sunar. 1,6 milyon npm indirmesiyle ve 10+ milyon kullanıcıya hizmet veren şirketlerde üretimde kullanılıyor. LLM testi için standart haline gelmiştir. Hızlı başlamak için:

npm install -g promptfoo
promptfoo init --example getting-started
Enter fullscreen mode Exit fullscreen mode

Apidog'u hemen deneyin

Giriş

Yapay zeka destekli müşteri destek sohbet robotunuzu haftalarca geliştirdiniz. Geliştirme sırasında soruları mükemmel yanıtladı. Ancak kullanıcılar hassas verileri sızdırmanın, güvenlik önlemlerini aşmanın ve tutarsız yanıtlar vermenin yollarını bulmaya başladı.

Bu senaryo sıkça yaşanıyor. Ekipler, LLM uygulamalarını sezgi ve manuel testlerle piyasaya sürüyor, ancak üretimde güvenlik açıkları ve kalite sorunları çıkıyor. Piyasaya çıktıktan sonra bu sorunları düzeltmek, geliştirme sırasında yakalamaktan 100 kat daha maliyetli.

Promptfoo, LLM uygulamalarına sistematik, otomatik testler getirerek bu sorunu çözer. Birden fazla modelde istemleri değerlendirmenizi, güvenlik kırmızı ekip değerlendirmeleri yapmanızı ve gerilemeleri kullanıcıya ulaşmadan önce yakalamanızı sağlar.

Bu rehberde promptfoo'nun (v0.121.2) ana özelliklerini nasıl kullanacağınızı; değerlendirme kurulumunu, güvenlik taramasını, CI/CD entegrasyonunu ve sık yapılan hatalardan nasıl kaçınacağınızı öğreneceksiniz.

Sonunda, LLM uygulamanız için çalışan bir test paketi kurmuş ve güvenle dağıtım yapıyor olacaksınız.

💡 API testiyle çalışıyorsanız veya LLM testlerinizin yanı sıra API davranışını doğrulamanız gerekiyorsa, Apidog API tasarımı, testi ve dokümantasyonu için birleşik bir platform sağlar. Promptfoo ile LLM değerlendirmesi, Apidog ile API katmanı doğrulaması yapabilirsiniz.

Promptfoo Nedir ve Neden İhtiyacınız Var?

Promptfoo, LLM uygulamalarını değerlendirmek ve kırmızı ekip testleri yapmak için bir komut satırı aracı ve Node.js kütüphanesidir. Yapay zeka geliştirme süreçleri için özelleştirilmiş bir test çerçevesidir.

Promptfoo

Geleneksel test araçları, LLM'lerin deterministik olmayan çıktıları nedeniyle yetersiz kalır. Aynı istem her seferinde farklı yanıtlar üretebilir; tam dize eşleşmelerine güvenemezsiniz. Promptfoo bu zorlukları şöyle aşar:

  • Semantik iddialar: Yanıtın anlamını kontrol eder
  • LLM dereceli değerlendirmeler: Bir modelin diğerinin çıktısını değerlendirmesi
  • Çok modelli karşılaştırma: İstemi GPT-4, Claude, vb. üzerinde test etme
  • Güvenlik eklentileri: Otomatik güvenlik açıklarını araştırma

Promptfoo yerel çalışır; bulut özellikleri seçilmedikçe istem ve test verileriniz ortamınızdan ayrılmaz. Bu da hassas verilerle güvenli test imkânı sunar.

Promptfoo'nun Çözdüğü Sorun

Manuel testlerin üç ana açığı vardır:

  1. Gerileme tespiti yok: Model güncellemelerinin mevcut işlevleri bozup bozmadığını göremezsiniz.
  2. Kapsam boşlukları: Kenar durumları ve saldırgan girdiler atlanır.
  3. Metrik eksikliği: Gelişimi takip edemez, modelleri objektif olarak karşılaştıramazsınız.

Promptfoo ile otomatik değerlendirmeler her değişiklikte çalışır. Test senaryolarını bir kez tanımlar, istediğiniz modele karşı yürütürsünüz. Sonuçlar; geçme/kalma oranı, maliyet ve gecikme metrikleriyle sunulur.

Promptfoo'yu Kimler Kullanıyor?

Promptfoo, 1,6 milyon npm indirmesiyle 10+ milyon kullanıcıya hizmet veren LLM uygulamalarında aktif kullanılıyor. Kullanım alanları:

  • Tutarlı, doğru yanıtlar gerektiren sohbet botları
  • Marka sesi kontrolü gereken içerik oluşturma boru hatları
  • Sıkı uyumluluk gerektiren sağlık ve fintech uygulamaları
  • Güvenliğe duyarlı sistemler

2026 Mart'ta Promptfoo, OpenAI'a katıldı ve gelişmeye açık kaynak olarak devam ediyor.

Başlarken: İlk Değerlendirmeyi Kurun ve Çalıştırın

Promptfoo'yu global kurabilir veya doğrudan npx ile çalıştırabilirsiniz.

Kurulum

# Global kurulum (önerilir)
npm install -g promptfoo

# Veya kurmadan çalıştırın
npx promptfoo@latest

# macOS için Homebrew
brew install promptfoo

# Python için pip
pip install promptfoo
Enter fullscreen mode Exit fullscreen mode

API anahtarlarınızı ortam değişkeni olarak ayarlayın:

export OPENAI_API_KEY=sk-abc123
export ANTHROPIC_API_KEY=sk-ant-xxx
Enter fullscreen mode Exit fullscreen mode

İlk Değerlendirmenizi Oluşturun

Örnek bir proje başlatın:

promptfoo init --example getting-started
cd getting-started
Enter fullscreen mode Exit fullscreen mode

Bu komut, örnek istemler, sağlayıcılar ve test senaryoları içeren bir promptfooconfig.yaml oluşturur.

Değerlendirmeyi çalıştırın:

promptfoo eval
Enter fullscreen mode Exit fullscreen mode

Sonuçları web arayüzünde inceleyin:

promptfoo view
Enter fullscreen mode Exit fullscreen mode

Arayüz, localhost:3000 adresinde açılır. Her modelin çıktılarını ve iddiaların geçme/kalma durumlarını yan yana görebilirsiniz.

Yapılandırma Dosyasını Anlama

promptfooconfig.yaml dosyası değerlendirme paketinizi tanımlar:

description: "İlk Değerlendirme Paketi"

prompts:
  - prompts/greeting.txt
  - prompts/farewell.txt

providers:
  - openai:gpt-4o
  - anthropic:claude-sonnet-4-5

tests:
  - vars:
      input: "Merhaba"
    assert:
      - type: contains
        value: "Selam"
      - type: latency
        threshold: 3000
Enter fullscreen mode Exit fullscreen mode
  • prompts: Test edilecek istem dosyaları veya satır içi metin
  • providers: Değerlendirilecek modeller (90+ sağlayıcı destekleniyor)
  • tests: Değişkenler ve iddialar ile test senaryoları

Test paketinizi yüzlerce senaryoya ölçeklendirebilir, sürüm kontrolünde tutabilir ve CI'da otomatik çalıştırabilirsiniz.

Temel Özellikler: Promptfoo Neler Yapabilir?

1. Otomatik Değerlendirmeler

Otomatik değerlendirmeler promptfoo'nun temelini oluşturur. Test senaryolarını ve beklenen sonuçları tanımlarsınız, araç bunları seçtiğiniz modellere karşı çalıştırır.

İddia Türleri

Promptfoo, 30'dan fazla yerleşik iddia sunar:

İddia Amaç
contains Çıktı bir alt dize içeriyor
equals Tam dize eşleşmesi
regex Bir regex desenine göre eşleşme
json-schema JSON yapısını doğrula
javascript Özel JS fonksiyonu geçme/kalma döndürür
python Özel Python fonksiyonu
llm-rubric Çıktıyı derecelendirmek için bir LLM kullan
similar Semantik benzerlik puanı
latency Gecikme eşiğin altında
cost İstek başına maliyet eşiğin altında

Çoklu iddialı örnek:

tests:
  - vars:
      question: "Fransa'nın başkenti neresidir?"
    assert:
      - type: contains
        value: "Paris"
      - type: javascript
        value: output.length < 100
      - type: latency
        threshold: 2000
      - type: cost
        threshold: 0.001
Enter fullscreen mode Exit fullscreen mode

Bu test, yanıtın "Paris" içermesini, 100 karakterden kısa olmasını, 2 saniyeden hızlı yanıt vermesini ve 0.001$'dan az maliyetli olmasını kontrol eder.

LLM Dereceli Değerlendirmeler

llm-rubric iddiası ile bir LLM, başka bir modelin çıktısını değerlendirebilir. Özellikle ton, yardımseverlik gibi öznel kriterlerde kullanışlıdır:

assert:
  - type: llm-rubric
    value: "Yanıt yardımcı, zararsız ve dürüst olmalı"
Enter fullscreen mode Exit fullscreen mode

Derecelendirme için uygun fiyatlı bir model seçerek maliyetleri düşürebilirsiniz.

2. Kırmızı Ekip ve Güvenlik Testleri

Promptfoo, kırmızı ekip modülü ile kapsamlı güvenlik testleri içerir. Düşmanca girdileri otomatik oluşturur, uygulamanızın güvenliğini tarar.

Redteam

Desteklenen Saldırı Vektörleri

67+ eklentiyle farklı saldırı kategorilerini test edebilirsiniz:

Kategori Neyi Test Eder
İstem Enjeksiyonu Doğrudan, dolaylı ve bağlam enjeksiyon saldırıları
Jailbreak'ler DAN, kişilik değiştirme, rol oynama bypass'ları
Veri Sızdırma SSRF, sistem istemi çıkarma, istem sızıntısı
Zararlı İçerik Nefret söylemi, tehlikeli etkinlikler, kendine zarar verme istekleri
Uyumluluk PII sızıntısı, HIPAA ihlalleri, finansal veri ifşası
Ses/Görüntü Ses enjeksiyonu ve görüntü tabanlı saldırılar

Kırmızı Ekip Taraması Çalıştırma

Kırmızı ekip yapılandırması başlatmak için:

promptfoo redteam init
Enter fullscreen mode Exit fullscreen mode

Güvenlik taramasını başlatın:

promptfoo redteam run
Enter fullscreen mode Exit fullscreen mode

Raporu görüntüleyin:

promptfoo redteam report [dizin]
Enter fullscreen mode Exit fullscreen mode

redteam run iki adımda çalışır:

  1. Uygulamanıza uygun dinamik saldırı prob'ları oluşturur.
  2. Hedefinize karşı saldırı senaryolarını uygular ve açıkları puanlar.

Örnek çıktı:

Güvenlik Açığı Özeti:
- Kritik: 2 (PII sızıntısı, istem çıkarma)
- Yüksek: 5 (jailbreak'ler, enjeksiyon saldırıları)
- Orta: 12 (önyargı, tutarsız yanıtlar)
- Düşük: 23 (küçük politika ihlalleri)
Enter fullscreen mode Exit fullscreen mode

Kritik sorunları dağıtımdan önce düzeltin ve düzeltmeleri doğrulamak için taramaları tekrar çalıştırın.

3. Çekme İstekleri İçin Kod Taraması

Promptfoo, LLM ile ilgili güvenlik sorunlarını kodda bulmak için GitHub Actions ile entegre olur.

# .github/workflows/promptfoo-scan.yml
name: Promptfoo Kod Taraması
on: [pull_request]
jobs:
  scan:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-node@v4
        with:
          node-version: '22'
      - run: npm install -g promptfoo
      - run: promptfoo/promptfoo/code-scan-action@main
        with:
          github-token: ${{ secrets.GITHUB_TOKEN }}
Enter fullscreen mode Exit fullscreen mode

Bu iş akışı şunları yakalar:

  • Sabit kodlu API anahtarları
  • Güvenli olmayan istem desenleri
  • Eksik girdi doğrulama
  • Potansiyel istem enjeksiyonu vektörleri

4. Model Karşılaştırması

Birden fazla modelin çıktısını yan yana karşılaştırın:

# Birden fazla sağlayıcıyla değerlendirme
promptfoo eval

# Web arayüzünde karşılaştır
promptfoo view
Enter fullscreen mode Exit fullscreen mode

Arayüzde şu metrikleri görebilirsiniz:

  • Model başına geçme/kalma oranları
  • 1000 istek başına maliyet
  • Ortalama gecikme
  • Niteliksel çıktı farklılıkları

Veri odaklı karşılaştırma, tanıdık modellere önyargıyı önler ve en iyi performans-maliyet dengesini seçmenizi sağlar.

Desteklenen Sağlayıcılar: 90+ LLM Entegrasyonu

Promptfoo, 90'dan fazla LLM sağlayıcısını kutudan çıktığı gibi destekler. Aynı istemi OpenAI, Anthropic, Google, Amazon, Meta ve yerel modellere gönderebilirsiniz.

Büyük Sağlayıcılar

Sağlayıcı Modeller
OpenAI GPT-4, GPT-4o, GPT-4o-mini, o1, o3
Anthropic Claude 3.5/3.7/4.5/4.6, Düşünme modelleri
Google Gemini 1.5/2.0, Vertex AI
Microsoft Azure OpenAI, Phi
Amazon Bedrock (Claude, Llama, Titan)
Meta Llama 3, 3.1, 3.2 (birden fazla sağlayıcı aracılığıyla)
Ollama Yerel modeller (Llama, Mistral, Phi)

Özel Sağlayıcılar

Kendi modeliniz varsa Python veya JavaScript ile özel sağlayıcı yazabilirsiniz.

Python örneği:

# custom_provider.py
from typing import Any

class CustomProvider:
    async def call_api(self, prompt: str, options: dict, context: dict) -> dict:
        response = await my_async_api.generate(prompt)
        return {
            "output": response.text,
            "tokenUsage": {
                "total": response.usage.total_tokens,
                "prompt": response.usage.prompt_tokens,
                "completion": response.usage.completion_tokens
            }
        }
Enter fullscreen mode Exit fullscreen mode

JavaScript örneği:

// customProvider.js
export default class CustomProvider {
  async callApi(prompt) {
    return {
      output: await myApi.generate(prompt),
      tokenUsage: { total: 50, prompt: 20, completion: 30 }
    };
  }
}
Enter fullscreen mode Exit fullscreen mode

Yapılandırma dosyanızda özel sağlayıcıyı kaydedin:

providers:
  - id: file://custom_provider.py
    config:
      api_key: ${MY_API_KEY}
Enter fullscreen mode Exit fullscreen mode

Komut Satırı Arayüzü: Temel Komutlar

Promptfoo CLI, günlük iş akışlarınız için ihtiyacınız olan tüm işlevleri sağlar.

Temel Komutlar

# Değerlendirmeleri çalıştır
promptfoo eval -c promptfooconfig.yaml

# Web arayüzünü aç
promptfoo view

# Sonuçları çevrimiçi paylaş
promptfoo share

# Kırmızı ekip testi
promptfoo redteam init
promptfoo redteam run

# Yapılandırma
promptfoo init
promptfoo validate [config]

# Sonuç yönetimi
promptfoo list
promptfoo show 
promptfoo delete 
promptfoo export 

# Yardımcı Programlar
promptfoo cache clear
promptfoo retry 
Enter fullscreen mode Exit fullscreen mode

Kullanışlı Bayraklar

--no-cache              # Yeni sonuçlar için önbelleği devre dışı bırak
--max-concurrency       # Paralel API çağrılarını sınırla
--output                # Sonuçları JSON dosyasına yaz
--verbose               # Hata ayıklama günlüğünü etkinleştir
--env-file              # Ortam değişkenlerini dosyadan yükle
--filter                # Belirli test senaryolarını çalıştır
Enter fullscreen mode Exit fullscreen mode

Örnek: Özel Ayarlarla Değerlendirme Çalıştırma

promptfoo eval \
  -c promptfooconfig.yaml \
  --no-cache \
  --max-concurrency 3 \
  --output results.json \
  --env-file .env
Enter fullscreen mode Exit fullscreen mode

Bu komut, değerlendirmeleri yeni (önbellek yok), 3 paralel çağrı ile sınırlandırarak, sonuçları JSON dosyasına kaydeder ve API anahtarlarını .env dosyasından yükler.

CI/CD Entegrasyonu: LLM Testlerini Otomatikleştirin

Promptfoo'yu CI/CD hattınıza entegre ederek dağıtımdan önce gerilemeleri tespit edin.

GitHub Actions Örneği

name: LLM Testleri
on: [push, pull_request]
jobs:
  eval:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-node@v4
        with:
          node-version: '22'
      - run: npm install -g promptfoo
      - run: promptfoo eval -c promptfooconfig.yaml
        env:
          OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
          ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}
Enter fullscreen mode Exit fullscreen mode

Kalite Kapıları

Geçme/kalma eşiklerini ayarlayın:

commandLineOptions:
  threshold: 0.8  # %80 geçme oranı gerektir
Enter fullscreen mode Exit fullscreen mode

Başarısız değerlendirmeler CI'yi başarısız kılar ve gerilemelerin birleşmesini önler.

CI'da Önbelleğe Alma

CI sürelerini düşürmek için önbellekleme ekleyin:

- uses: actions/cache@v4
  with:
    path: ~/.cache/promptfoo
    key: ${{ runner.os }}-promptfoo-${{ hashFiles('promptfooconfig.yaml') }}
Enter fullscreen mode Exit fullscreen mode

Önbellekteki sonuçlar, değişmeyen testler için API çağrılarını atlar ve maliyeti azaltır.

Web Arayüzü: Sonuçları Görselleştirin ve Paylaşın

promptfoo view ile etkileşimli web arayüzü kullanın.

Özellikler

  • Değerlendirme matrisi: Çıktıları yan yana karşılaştırın
  • Filtreleme: Duruma veya sağlayıcıya göre testleri bulun
  • Fark görünümü: Çalıştırmalar arasındaki değişiklikleri görün
  • Paylaşım: Ekip için paylaşılabilir bağlantılar oluşturun
  • Canlı güncellemeler: Değerlendirmeleri canlı izleyin

Erişim ve Güvenlik

Varsayılan olarak arayüz localhost:3000'da çalışır ve CSRF koruması içerir. Güvenilmeyen ağlara açmayın. Sonuçları ekip ile paylaşmak için promptfoo share kullanın veya kendi barındırma çözümlerinizi uygulayın.

Veritabanı ve Önbelleğe Alma

Önbellek Konumu

  • macOS/Linux: ~/.cache/promptfoo
  • Windows: %LOCALAPPDATA%\promptfoo

Önbellek, değerlendirme sonuçlarını saklar. Geliştirme sırasında yeni sonuç almak için --no-cache'ı kullanın.

Veritabanı Konumu

  • Tüm platformlar: ~/.promptfoo/promptfoo.db (SQLite)

Veritabanı geçmiş değerlendirme çalıştırmalarını saklar. Analiz ve karşılaştırma için silmeyin.

Güvenlik Modeli: Neye Güvenebilirsiniz?

Promptfoo yapılandırma ile güven modeli üzerinde çalışır.

Güvenilen Girdiler (Kod Olarak İşlenenler)

Aşağıdaki girdiler kod olarak yürütülür, sadece güvenilen kaynaklardan gelmelidir:

  • Yapılandırma dosyaları (promptfooconfig.yaml)
  • Özel JavaScript/Python/Ruby iddiaları
  • Sağlayıcı yapılandırmaları
  • Dönüştürme fonksiyonları

Güvenilmeyen Girdiler (Sadece Veri)

Aşağıdaki girdiler veri olarak işlenir ve kod yürütmez:

  • İstem metni
  • Test senaryosu değişkenleri
  • Model çıktıları
  • Değerlendirme sırasında yüklenen uzaktaki içerik

Sağlamlaştırma Önerileri

Yüksek güvenlikli ortamlar için:

  1. Minimum ayrıcalıklı bir konteyner/VM içinde çalıştırın
  2. En az ayrıcalıklı özel API anahtarları kullanın
  3. İstem veya yapılandırmaya sır eklemeyin
  4. Üçüncü taraf kod için ağ çıkışını kısıtlayın
  5. Web arayüzünü güvenilmeyen ağlara açmayın

Performans: Değerlendirmelerinizi Optimize Edin

Optimizasyon İpuçları

  1. Önbelleğe almayı kullanın: Tekrar çalıştırmaları hızlandırır
  2. Eşzamanlılığı ayarlayın: --max-concurrency ile hız/limit dengesini kurun
  3. Testleri filtreleyin: Geliştirme sırasında belirli testleri çalıştırmak için --filter kullanın
  4. Örnek veri kümeleriyle çalışın: Alt kümelerle hızlı iterasyon için --repeat kullanın

Büyük Değerlendirmeler İçin Ölçeklendirme

Binlerce test senaryosu için:

  • Dağıtılmış çalıştırmalar için zamanlayıcıyı (src/scheduler/) kullanın
  • Hesaplamayı dışa vermek için uzaktan üretimi kullanın
  • Sonuçları Google E-Tablolar'a aktararak ekip paylaşımı sağlayın

Genişletilebilirlik: Özel Özellikler Oluşturun

Özel İddialar

Alan özelinde kontrol için özel iddialar yazabilirsiniz:

// assertions/customCheck.js
export default function customCheck(output, context) {
  const pass = output.includes('beklenen');
  return {
    pass,
    score: pass ? 1 : 0,
    reason: pass ? 'Çıktı eşleşti' : 'Beklenen içerik eksik'
  };
}
Enter fullscreen mode Exit fullscreen mode

Yapılandırmanızda kullanımı:

assert:
  - type: file://assertions/customCheck.js
Enter fullscreen mode Exit fullscreen mode

MCP Sunucusu

Promptfoo, Claude Code gibi AI asistanlarıyla entegrasyon için bir Model Bağlam Protokolü (MCP) sunucusu içerir:

promptfoo mcp
Enter fullscreen mode Exit fullscreen mode

Bu sayede:

  • Sohbetten doğrudan değerlendirme çalıştırma
  • Kırmızı ekip yeteneklerine erişim
  • Sonuç sorgulama
  • Yeni test senaryoları oluşturma

Gerçek Dünya Kullanım Durumları

Müşteri Destek Sohbet Robotu

Bir SaaS şirketi, her dağıtımdan önce destek sohbet robotlarını test etmek için promptfoo'yu şöyle kullanıyor:

  • 500 test senaryosu ile yaygın soru kapsama
  • GPT-4 ve Claude arasında kalite karşılaştırması
  • PII sızıntısı ve jailbreak için kırmızı ekip taraması
  • CI entegrasyonu ile başarısız testlerde dağıtımı engelleme

Sonuç: Otomatik testlerle müşteri şikayetlerinde %90 azalma.

İçerik Oluşturma Boru Hattı

Pazarlama ekibi, marka sesi için AI üretilen içeriği doğrular:

  • LLM dereceli değerlendirmeler ile ton ve stil kontrolü
  • Gecikme eşikleri ile hızlı üretim
  • Maliyet izleme ile gider kontrolü
  • Model karşılaştırması ile en iyi değeri bulma

Sonuç: Tutarlı marka sesi ve %40 daha düşük API maliyeti.

Sağlık Uygulaması

Bir sağlık teknolojisi girişimi, uyumluluk için sıkı testler uygular:

  • HIPAA ihlalleri için kırmızı ekip taraması
  • Tıbbi doğruluğu doğrulayan özel iddialar
  • Tüm değerlendirmelerin yerel çalıştırılması
  • Yasal denetimler için audit logları

Sonuç: Promptfoo ile yapılan değerlendirmeler SOC 2 denetimini geçti.

Sonuç

Promptfoo ile LLM uygulamalarınızı sistematik ve otomatik şekilde test edebilirsiniz. Manuel, hataya açık süreçleri; dağıtımdan önce gerileme, güvenlik ve kalite sorunlarını yakalayan değerlendirmelerle değiştirin.

Öne çıkan adımlar:

  • npm install -g promptfoo ile kurun, promptfoo init ile başlayın
  • Tam dize eşleşmesi ötesinde iddialar kullanın
  • Güvenlik açıkları için kırmızı ekip taraması yapın
  • Gerilemeye karşı CI/CD entegrasyonu uygulayın
  • Yan yana değerlendirmelerle modelleri objektif olarak karşılaştırın
  • Özel sağlayıcılar ve iddialarla işlevselliği genişletin

Veri odaklı yapay zeka geliştirme için ihtiyacınız olan test ve güvence araçları Promptfoo ile elinizin altında.

API'lerle de çalışıyorsanız, promptfoo'nun yanı sıra Apidog'u kullanmayı düşünün. Apidog API tasarımı, testi ve dokümantasyonu için bütünleşik çözüm sunarken, promptfoo LLM testlerine odaklanır. Birlikte, modern uygulama testinin tüm katmanlarını kapsarsınız.

SSS

Promptfoo ne için kullanılır?

Promptfoo, LLM uygulamalarını test etmek ve değerlendirmek için kullanılır. İstemlere karşı otomatik testler çalıştırır, modelleri karşılaştırır ve güvenlik açıklarını bulmak için kırmızı ekip değerlendirmeleri yapar.

Promptfoo ücretsiz mi?

Evet, promptfoo açık kaynaklı ve MIT lisanslıdır. Kişisel ve ticari projelerde ücretsiz kullanılabilir. Bulut özellikleri ve kurumsal destek ücretli olabilir.

Promptfoo'yu nasıl kurarım?

Global kurulum için:

npm install -g promptfoo
Enter fullscreen mode Exit fullscreen mode

Kurulum yapmadan kullanmak için:

npx promptfoo@latest
Enter fullscreen mode Exit fullscreen mode

macOS'ta:

brew install promptfoo
Enter fullscreen mode Exit fullscreen mode

Python için:

pip install promptfoo
Enter fullscreen mode Exit fullscreen mode

Promptfoo hangi modelleri destekler?

Promptfoo, OpenAI (GPT-4, GPT-4o, o1), Anthropic (Claude 3.5/4/4.5), Google (Gemini), Microsoft (Azure OpenAI), Amazon Bedrock ve Ollama ile yerel modeller dahil 90+ LLM sağlayıcısını destekler.

Kırmızı ekip taramasını nasıl çalıştırırım?

Bir yapılandırma oluşturun:

promptfoo redteam init
Enter fullscreen mode Exit fullscreen mode

Güvenlik taramasını başlatın:

promptfoo redteam run
Enter fullscreen mode Exit fullscreen mode

Sonuçları görüntüleyin:

promptfoo redteam report
Enter fullscreen mode Exit fullscreen mode

Promptfoo'yu CI/CD'de kullanabilir miyim?

Evet. CI hattınıza promptfoo'yu kurup yapılandırma dosyanızla promptfoo eval çalıştırın. Geçme oranı eşiği için threshold seçeneğini kullanarak kalite kapısı ekleyin.

Promptfoo verilerimi harici sunuculara gönderiyor mu?

Hayır. Promptfoo varsayılan olarak tamamen yerelde çalışır. Bulut özelliklerini açıkça seçmedikçe istemler ve test verileri makinenizden ayrılmaz. Önbellek ve veritabanı dosyaları yereldedir.

Promptfoo ile modelleri nasıl karşılaştırırım?

Yapılandırmanızda birden fazla sağlayıcı tanımlayın, ardından promptfoo eval çalıştırın. Web arayüzünde (promptfoo view) model başına geçme/kalma oranı, maliyet ve gecikme karşılaştırmalarını görebilirsiniz.

Top comments (0)