Güvenlik ve doğrulukla ilgili rehber

Üretken yapay zeka modelleri güçlü araçlar olsa da sınırlamaları vardır. Çok yönlülükleri ve uygulanabilirlikleri bazen yanlış, taraflı veya rahatsız edici gibi beklenmedik sonuçlara yol açabilir. Bu tür çıkışlardan kaynaklanan zarar riskini sınırlamak için sonradan işleme ve titiz bir manuel değerlendirme gereklidir.

Gemini API tarafından sağlanan modeller, çok çeşitli üretken yapay zeka ve doğal dil işleme (NLP) uygulamalarında kullanılabilir. Bu işlevler yalnızca Gemini API veya Google AI Studio web uygulaması üzerinden kullanılabilir. Gemini API'yi kullanımınız Üretken Yapay Zeka Yasaklanan Kullanım Politikası ve Gemini API Hizmet Şartları'na tabidir.

Büyük dil modellerini (LLM'ler) bu kadar kullanışlı kılan özelliklerden biri, birçok farklı dil görevini ele alabilen yaratıcı araçlar olmalarıdır. Maalesef bu durum, büyük dil modellerinin rahatsız edici, duyarsız veya olgusal olarak yanlış metinler de dahil olmak üzere beklemediğiniz çıktılar üretebileceği anlamına da gelir. Ayrıca, bu modellerin inanılmaz çok yönlülüğü, tam olarak ne tür istenmeyen çıktılar üretebileceklerini tahmin etmeyi de zorlaştırır. Gemini API, Google'ın yapay zeka ilkeleri göz önünde bulundurularak tasarlanmış olsa da bu modelleri sorumlu bir şekilde uygulamak geliştiricilerin sorumluluğundadır. Gemini API, geliştiricilerin güvenli ve sorumlu uygulamalar oluşturmasına yardımcı olmak için yerleşik içerik filtreleme ve 4 zarar boyutunda ayarlanabilir güvenlik ayarları sunar. Daha fazla bilgi edinmek için güvenlik ayarları kılavuzuna bakın. Ayrıca, doğruluk oranını artırmak için Google Arama ile Temellendirme özelliği de sunar. Ancak bu özellik, kullanım alanları daha yaratıcı olan ve bilgi edinmeye yönelik olmayan geliştiriciler için devre dışı bırakılabilir.

Bu belgenin amacı, LLM'leri kullanırken ortaya çıkabilecek bazı güvenlik risklerini tanıtmak ve yeni güvenlik tasarımı ve geliştirme önerilerini sunmaktır. (Yasa ve yönetmeliklerin de kısıtlamalar getirebileceğini ancak bu tür hususların bu kılavuzun kapsamı dışında olduğunu unutmayın.)

Büyük dil modelleriyle uygulama geliştirirken aşağıdaki adımların uygulanması önerilir:

  • Uygulamanızın güvenlik risklerini anlama
  • Güvenlik risklerini azaltmak için düzenlemeler yapma
  • Kullanım alanınıza uygun güvenlik testi yapma
  • Kullanıcılardan geri bildirim isteme ve kullanımı izleme

Uygulamanız için uygun performansa ulaşana kadar ayarlama ve test aşamaları tekrarlanmalıdır.

Model uygulama döngüsü

Uygulamanızın güvenlik risklerini anlama

Bu bağlamda güvenlik, LLM'nin kullanıcılarına zarar vermekten kaçınma yeteneği olarak tanımlanır. Örneğin, toksik dil veya kalıplaşmış düşünceleri teşvik eden içerik oluşturmaktan kaçınma. Gemini API üzerinden kullanılabilen modeller, Google'ın Yapay Zeka İlkeleri dikkate alınarak tasarlanmıştır ve bu modelleri kullanımınız Üretken Yapay Zeka Yasaklanan Kullanım Politikası'na tabidir. API, zararlı dil ve nefret söylemi gibi yaygın dil modeli sorunlarını ele almaya yardımcı olmak ve kapsayıcılığı sağlamak, klişelerden kaçınmak için yerleşik güvenlik filtreleri sunar. Ancak her uygulama, kullanıcıları için farklı riskler oluşturabilir. Bu nedenle, uygulama sahibi olarak kullanıcılarınızı ve uygulamanızın neden olabileceği olası zararları bilmekten ve uygulamanızın LLM'leri güvenli ve sorumlu bir şekilde kullanmasını sağlamaktan siz sorumlusunuz.

Bu değerlendirme kapsamında, zarar oluşma olasılığını göz önünde bulundurmalı, ciddiyetini ve azaltma adımlarını belirlemelisiniz. Örneğin, gerçek olaylara dayalı denemeler oluşturan bir uygulamanın, eğlence amaçlı kurgusal hikayeler oluşturan bir uygulamaya kıyasla yanlış bilgilendirmeyi önleme konusunda daha dikkatli olması gerekir. Olası güvenlik risklerini keşfetmeye başlamanın iyi bir yolu, son kullanıcılarınızı ve uygulamanızın sonuçlarından etkilenebilecek diğer kişileri araştırmaktır. Bu, uygulama alanınızdaki en yeni çalışmaları araştırma, kullanıcıların benzer uygulamaları nasıl kullandığını gözlemleme veya kullanıcı çalışması, anket yapma ya da potansiyel kullanıcılarla gayri resmi görüşmeler yapma gibi birçok şekilde olabilir.

Gelişmiş ipuçları

  • Uygulamanız ve amaçlanan kullanımı hakkında hedef kitlenizdeki çeşitli potansiyel kullanıcılarla konuşarak olası riskler hakkında daha geniş bir bakış açısı elde edin ve çeşitlilik ölçütlerini gerektiği gibi ayarlayın.
  • ABD hükümetinin Ulusal Standartlar ve Teknoloji Enstitüsü (NIST) tarafından yayınlanan Yapay Zeka Risk Yönetimi Çerçevesi, yapay zeka risk yönetimi için daha ayrıntılı rehberlik ve ek öğrenme kaynakları sunar.
  • DeepMind'ın dil modellerinin neden olabileceği etik ve sosyal zararlar konusundaki yayını, dil modeli uygulamalarının nasıl zarara yol açabileceğini ayrıntılı olarak açıklıyor.

Güvenlik ve doğruluk risklerini azaltmak için ayarlamalar yapma

Riskleri anladığınıza göre, bunları nasıl azaltacağınıza karar verebilirsiniz. Hangi risklere öncelik verileceğini ve bunları önlemeye çalışmak için ne kadar çaba göstermeniz gerektiğini belirlemek, bir yazılım projesindeki hataları öncelik sırasına koymaya benzer şekilde kritik bir karardır. Öncelikleri belirledikten sonra en uygun azaltma türlerini düşünmeye başlayabilirsiniz. Genellikle basit değişiklikler fark yaratabilir ve riskleri azaltabilir.

Örneğin, bir uygulama tasarlarken şunları göz önünde bulundurun:

  • Uygulama bağlamınızda kabul edilebilir olanı daha iyi yansıtmak için model çıkışını ayarlama. Ayarlama, modelin çıkışını daha tahmin edilebilir ve tutarlı hale getirebilir. Bu nedenle, belirli risklerin azaltılmasına yardımcı olabilir.
  • Daha güvenli çıkışlar sağlayan bir giriş yöntemi sunma Bir LLM'ye verdiğiniz girişin tam olarak ne olduğu, çıktının kalitesinde fark yaratabilir. Kullanım alanınızda en güvenli şekilde çalışan giriş istemlerini denemek, kullanıcı deneyimini kolaylaştıracak bir deneyim sunmanızı sağlayacağından çabaya değer. Örneğin, kullanıcıların yalnızca bir giriş istemi açılır listesinden seçim yapmasını kısıtlayabilir veya uygulama bağlamınızda güvenli bir şekilde çalıştığını tespit ettiğiniz açıklayıcı ifadeler içeren pop-up öneriler sunabilirsiniz.
  • Güvenli olmayan girişleri engelleme ve çıkışı kullanıcıya gösterilmeden önce filtreleme Basit durumlarda, istemlerde veya yanıtlarda güvenli olmayan kelimeleri ya da kelime öbeklerini belirleyip engellemek veya bu tür içeriklerin uzman incelemeciler tarafından manuel olarak değiştirilmesini ya da engellenmesini zorunlu kılmak için engellenenler listeleri kullanılabilir.

  • Eğitilmiş sınıflandırıcıları kullanarak her istemi olası zararlar veya saldırgan sinyallerle etiketleme. İsteği değerlendirirken, tespit edilen zarara bağlı olarak farklı stratejiler uygulanabilir. Örneğin, giriş son derece çekişmeli veya kötü amaçlıysa engellenebilir ve bunun yerine önceden hazırlanmış bir yanıt verilebilir.

    İleri düzey ipucu

    • Sinyaller, çıkışın zararlı olduğunu belirlerse uygulama aşağıdaki seçenekleri kullanabilir:
      • Hata mesajı veya önceden hazırlanmış çıkış sağlama
      • Aynı istem bazen farklı çıkışlar ürettiğinden, alternatif bir güvenli çıkış oluşturulması ihtimaline karşı istemi tekrar deneyin.

  • Kasıtlı kötüye kullanıma karşı koruma önlemleri alma (ör. her kullanıcıya benzersiz bir kimlik atama ve belirli bir dönemde gönderilebilecek kullanıcı sorgularının hacmine sınır koyma). Diğer bir önlem de olası istem enjeksiyonuna karşı koruma sağlamaya çalışmaktır. SQL enjeksiyonu gibi istem enjeksiyonu da kötü amaçlı kullanıcıların, modelin çıkışını manipüle eden bir giriş istemi tasarlamasına olanak tanır. Örneğin, modele önceki örnekleri yok saymasını söyleyen bir giriş istemi gönderilebilir. Kasıtlı hatalı kullanım hakkında ayrıntılı bilgi için Üretken Yapay Zeka Yasaklanan Kullanım Politikası'nı inceleyin.

  • İşlevselliği, doğası gereği daha düşük riskli bir şeye ayarlama. Kapsamı daha dar olan (ör. metin parçalarından anahtar kelimeler çıkarma) veya daha fazla insan gözetimi olan (ör. bir insan tarafından incelenecek kısa içerik oluşturma) görevler genellikle daha düşük risk taşır. Örneğin, sıfırdan e-posta yanıtı yazmak için uygulama oluşturmak yerine, uygulamayı taslağı genişletmek veya alternatif ifadeler önermekle sınırlayabilirsiniz.

  • Zararlı içerik güvenlik ayarlarını, zararlı olabilecek yanıtları görme olasılığınızı azaltacak şekilde ayarlama Gemini API, prototip oluşturma aşamasında ayarlayabileceğiniz güvenlik ayarları sunar. Bu ayarlar, uygulamanızın daha kısıtlayıcı veya daha az kısıtlayıcı bir güvenlik yapılandırması gerektirip gerektirmediğini belirlemenize yardımcı olur. Belirli içerik türlerini kısıtlamak veya bunlara izin vermek için bu ayarları beş filtre kategorisinde ayarlayabilirsiniz. Gemini API aracılığıyla kullanılabilen ayarlanabilir güvenlik ayarları hakkında bilgi edinmek için güvenlik ayarları kılavuzuna bakın.

  • Google Arama ile Temellendirme'yi etkinleştirerek olası bilgi yanlışlarını veya halüsinasyonları azaltın. Birçok yapay zeka modelinin deneme aşamasında olduğunu ve olgusal olarak yanlış bilgiler sunabileceğini, halüsinasyonlar üretebileceğini veya başka şekillerde sorunlu çıktılar oluşturabileceğini unutmayın. Google Arama ile Temellendirme özelliği, Gemini modelini gerçek zamanlı web içeriğine bağlar ve mevcut tüm dillerde çalışır. Bu sayede Gemini, daha doğru yanıtlar verebilir ve modellerin son güncel bilgi tarihinin ötesinde doğrulanabilir kaynaklardan alıntı yapabilir.

Kullanım alanınıza uygun güvenlik testi yapın.

Test etme, sağlam ve güvenli uygulamalar oluşturmanın önemli bir parçasıdır ancak testlerin kapsamı, ölçeği ve stratejileri farklılık gösterir. Örneğin, yalnızca eğlence amaçlı bir haiku oluşturma aracı, hukuk firmaları tarafından yasal belgeleri özetlemek ve sözleşme taslakları hazırlamak için kullanılmak üzere tasarlanmış bir uygulamaya kıyasla daha az ciddi riskler oluşturması muhtemeldir. Ancak haiku oluşturucu daha çeşitli kullanıcılar tarafından kullanılabileceğinden, kötü niyetli girişimler veya istenmeden girilen zararlı girişler daha fazla olabilir. Uygulama bağlamı da önemlidir. Örneğin, herhangi bir işlem yapılmadan önce çıkışları uzmanlar tarafından incelenen bir uygulamanın, aynı uygulamanın bu tür bir gözetim olmadan zararlı çıkışlar üretme olasılığı daha düşük olabilir.

Nispeten düşük riskli uygulamalar için bile, yayınlamaya hazır olduğunuzdan emin olmadan önce değişiklik yapma ve test etme sürecini birkaç kez tekrarlamanız gerekebilir. Yapay zeka uygulamaları için özellikle iki tür test yararlıdır:

  • Güvenlik karşılaştırması, uygulamanızın muhtemel kullanım şekli bağlamında güvenli olmayabileceği yolları yansıtan güvenlik metrikleri tasarlamayı ve ardından değerlendirme veri kümelerini kullanarak uygulamanızın bu metriklerde ne kadar iyi performans gösterdiğini test etmeyi içerir. Test etmeden önce güvenlik metriklerinin kabul edilebilir minimum düzeylerini düşünmek iyi bir uygulamadır. Böylece 1) test sonuçlarını bu beklentilere göre değerlendirebilir ve 2) değerlendirme veri kümesini, en çok önem verdiğiniz metrikleri değerlendiren testlere göre toplayabilirsiniz.

    Gelişmiş ipuçları

    • Uygulamanızın bağlamına tam olarak uyması için kendi test veri kümelerinizi insan derecelendirme uzmanlarını kullanarak oluşturmanız gerekeceğinden, "hazır" yaklaşımlara aşırı güvenmekten kaçının.
    • Birden fazla metriğiniz varsa bir değişiklik bir metrikte iyileşmeye yol açarken başka bir metrikte kötüleşmeye neden olursa nasıl bir denge kuracağınıza karar vermeniz gerekir. Diğer performans mühendisliği çalışmalarında olduğu gibi, değerlendirme kümenizde ortalama performans yerine en kötü durumdaki performansa odaklanmak isteyebilirsiniz.
  • Çekişmeli test, uygulamanızı proaktif bir şekilde bozmaya çalışmayı içerir. Amaç, zayıf noktaları belirleyerek uygun şekilde düzeltici adımlar atmanızı sağlamaktır. Saldırgan test, uygulamanız konusunda uzman olan değerlendiricilerden önemli ölçüde zaman/çaba gerektirebilir. Ancak ne kadar çok test yaparsanız sorunları, özellikle de nadiren veya yalnızca uygulamanın tekrar tekrar çalıştırılmasından sonra ortaya çıkan sorunları tespit etme olasılığınız o kadar artar.

    • Çekişmeli test, kötü niyetli veya istemeden zararlı girişler sağlandığında nasıl davrandığını öğrenmek amacıyla bir makine öğrenimi modelini sistematik olarak değerlendirme yöntemidir:
      • Bir girişin kötü amaçlı olabileceği durumlar: Girişin, açıkça güvenli olmayan veya zararlı bir çıkış üretecek şekilde tasarlanması (ör. bir metin oluşturma modelinden belirli bir din hakkında nefret dolu bir söylem oluşturmasını istemek).
      • Girişin kendisi zararsız olsa da zararlı çıkış ürettiğinde (ör. bir metin oluşturma modelinden belirli bir etnik kökenden olan bir kişiyi tanımlaması istendiğinde ırkçı bir çıkış alınması) giriş istemeden zararlı olur.
    • Bir saldırı testini standart değerlendirmeden ayıran şey, test için kullanılan verilerin bileşimidir. Saldırgan testler için modelden sorunlu çıkış elde etme olasılığı en yüksek olan test verilerini seçin. Bu, modelin davranışını olası tüm zarar türleri açısından incelemek anlamına gelir. Nadir veya alışılmadık örnekler ve güvenlik politikalarıyla ilgili uç durumlar da buna dahildir. Ayrıca, cümlelerin yapısı, anlamı ve uzunluğu gibi farklı boyutlarında çeşitlilik de içermelidir. Test veri kümesi oluştururken nelere dikkat etmeniz gerektiği hakkında daha fazla bilgi için Google'ın yapay zekayı sorumlu bir şekilde kullanma ve adaletle ilgili uygulamaları başlıklı makaleyi inceleyebilirsiniz.

      Gelişmiş ipuçları

      • Uygulamanızı bozmaya çalışmak için geleneksel yöntemde olduğu gibi "kırmızı takımlara" insanları dahil etmek yerine otomatik testleri kullanın. Otomatik testte "kırmızı takım", test edilen modelden zararlı çıkışlar elde eden giriş metinlerini bulan başka bir dil modelidir.

Sorunları izleme

Ne kadar çok test edip azaltırsanız azaltın, mükemmelliği asla garanti edemezsiniz. Bu nedenle, ortaya çıkan sorunları nasıl tespit edeceğinizi ve nasıl ele alacağınızı önceden planlayın. Kullanıcıların geri bildirimlerini paylaşmaları için izlenen bir kanal oluşturmak (ör.beğeni/beğenmeme puanı) ve çeşitli kullanıcılardan proaktif olarak geri bildirim almak için bir kullanıcı çalışması yürütmek yaygın yaklaşımlar arasındadır. Bu yaklaşım, özellikle kullanım kalıpları beklentilerden farklıysa değerlidir.

Gelişmiş ipuçları

  • Kullanıcılar yapay zeka ürünlerine geri bildirim verdiğinde, bu geri bildirimler yapay zeka performansını ve kullanıcı deneyimini zaman içinde önemli ölçüde iyileştirebilir. Örneğin, istem ayarlama için daha iyi örnekler seçmenize yardımcı olabilir. Google'ın İnsan ve Yapay Zeka Rehberi'ndeki Geri Bildirim ve Kontrol bölümünde geri bildirim mekanizmaları tasarlarken dikkate alınması gereken önemli noktalar vurgulanmaktadır.

Sonraki adımlar

  • Gemini API'de kullanılabilen ayarlanabilir güvenlik ayarları hakkında bilgi edinmek için güvenlik ayarları kılavuzuna bakın.
  • İlk istemlerinizi yazmaya başlamak için istemlere giriş bölümüne bakın.