Gemini API ve AI Studio'daki Google Arama ile temel alma özelliği, modelden alınan yanıtların doğruluğunu ve yeniliğini iyileştirmek için kullanılabilir. Daha gerçeğe dayalı yanıtlara ek olarak, Google Arama ile Grounding etkinleştirildiğinde Gemini API, yanıt içeriğiyle birlikte temel kaynakları (satır içi destekleyici bağlantılar) ve Google Arama Önerileri'ni döndürür. Arama Önerileri, kullanıcıları gerekçeli yanıta karşılık gelen arama sonuçlarına yönlendirir.
Google Arama ile temellendirme yalnızca metin istemlerini destekler. Çok modlu (metin ve resim, metin ve ses vb.) istemleri desteklemez. Google Arama ile temellendirme özelliği, Gemini modelleri için kullanılabilir tüm dilleri destekler.
Bu kılavuz, Gemini API SDK'larından birini veya REST API'yi kullanarak Google Arama ile temellendirme özelliğini kullanmaya başlamanıza yardımcı olacaktır.
Google Arama'yı kullanacak şekilde bir model yapılandırma
Google Arama ile Temel Bilgiler özelliği neden faydalıdır?
Üretken yapay zekada temellendirme, modeli doğrulanabilir bilgi kaynaklarına bağlama işlemini ifade eder. Bu kaynaklar, gerçek işyeri bilgileri veya başka belirli bağlamlar sağlayabilir. Temellendirme, yapay zeka çıktılarının doğruluğunu, güvenilirliğini ve yararlılığını artırmaya yardımcı olur.
Gerekçelendirme, özellikle web'den güncel bilgiler gerektiren istemler için önemlidir. Temellendirme sayesinde model, bilgi son tarihi dışındaki bilgilere erişebilir, bilgilerin kaynaklarını alabilir ve aksi takdirde doğru yanıtlayamayacağı soruları yanıtlayabilir.
Google AI Studio veya Gemini API'yi kullanarak model çıktısını Google Arama'ya bağlayabilirsiniz. Google Arama ile temellendirmenin sağladığı avantajlar şunlardır:
- Belirli bir içeriğe bağlı model yanıtlarına izin verir.
- Modelin gerçek olmayan içerikler ürettiği örnekler olan halüsinasyonları azaltır.
- Sabitleme noktaları, kullanıcının tıklayıp açabileceği kaynaklara yönelik yanıtları modeller.
- Oluşturulan içeriğin güvenilirliğini ve uygulanabilirliğini artırır.
Google Arama ile temellendirmeyi kullandığınızda modeli internetteki güvenilir arama sonuçlarına etkili bir şekilde bağlarsınız. Temellendirilmemiş model yanıtları, öğrenilen kalıplara dayalı olduğundan güncel olaylarla ilgili istemlere (ör. hava durumu tahmini veya son oynanan futbol maçının skoru) gerçek yanıtlar alamayabilirsiniz. İnternet yeni bilgilere erişim sağladığından, gerekçelendirilmiş bir istem, alıntılanan kaynaklarla daha güncel yanıtlar üretebilir.
API kullanılarak oluşturulan, temellendirilmemiş bir yanıt ile temellendirilmiş bir yanıtı karşılaştıran bir örneği aşağıda bulabilirsiniz. (Yanıtlar Ekim 2024'te oluşturulmuştur.)
Gemini'nin topraklanmaması | Google Arama ile temellendirme |
---|---|
İstem: Bu yılki Super Bowl'u kim kazandı? Yanıt: Kansas City Chiefs bu yıl (2023) Super Bowl LVII'yi kazandı. |
İstem: Bu yıl Super Bowl'u kim kazandı? Yanıt: Kansas City Chiefs, bu yıl San Francisco 49ers'ı 25-22'lik skorla uzatmalarda mağlup ederek Super Bowl LVIII'i kazandı. |
Dayanağı olmayan yanıtta model, Kansas City Chiefs'in 2023 Super Bowl şampiyonluğunu referans alıyor. Model, temellendirilmiş yanıtta daha yakın tarihli 2024 zaferine doğru şekilde referans veriyor.
Aşağıdaki resimde, gerekçeli yanıtın AI Studio'da nasıl göründüğü gösterilmektedir.
Google Arama Önerileri
Google Arama ile Grounding'i kullanmak için, temel alınan yanıtın meta verilerine dahil edilmiş önerilen sorgular olan Google Arama Önerileri'ni görüntülemeniz gerekir. Görüntüleme koşulları hakkında daha fazla bilgi edinmek için Google Arama Önerileri'ni kullanma başlıklı makaleyi inceleyin.
Dinamik getirme
Bazı sorguların Google Arama ile Temel Bilgiler özelliğinden diğerlerinden daha fazla yararlanması muhtemeldir. Dinamik getirme özelliği, Google Arama ile Temel Bilgiler'i ne zaman kullanacağınız konusunda size ek kontrol sağlar.
Dinamik alma modu belirtilmediyse Google Arama ile temel alma her zaman tetiklenir. Mod dinamik olarak ayarlanmışsa model, yapılandırabileceğiniz bir eşiğe göre topraklamayı ne zaman kullanacağına karar verir. Eşik, [0,1] aralığındaki bir kayan nokta değeridir ve varsayılan olarak 0,3'tür. Eşik değeri 0 ise yanıt her zaman Google Arama ile temellendirilir; 1 ise hiçbir zaman temellendirilmez.
Dinamik getirmenin işleyiş şekli
Google Arama ile temellendirmeyi ne zaman etkinleştireceğinizi seçmek için isteğinizde dinamik getirmeyi kullanabilirsiniz. Bu, istem Google Arama'ya dayalı bir cevap gerektirmediğinde ve model, herhangi bir gerekçe olmadan kendi bilgisine dayanarak yanıt verebildiğinde faydalıdır. Bu sayede gecikmeyi, kaliteyi ve maliyeti daha etkili bir şekilde yönetebilirsiniz.
İsteğinizde dinamik alma yapılandırmasını çağırmadan önce aşağıdaki terminolojiyi öğrenin:
Tahmin puanı: Güvenilir bir yanıt istediğinizde Gemini, isteme bir tahmin puanı atar. Tahmin puanı, [0,1] aralığındaki bir kayan nokta değeridir. Değeri, istemin yanıtı Google Arama'daki en güncel bilgilerle temellendirmekten yararlanıp yararlanamayacağına bağlıdır. Bu nedenle, bir istem web'deki en güncel bilgilere dayalı bir yanıt gerektiriyorsa tahmin puanı daha yüksek olur. Model tarafından oluşturulan bir yanıtın yeterli olduğu istemlerin tahmin puanı daha düşüktür.
Aşağıda bazı istemler ve bunların tahmin puanları verilmiştir.
İstem Tahmin puanı Yorum "Şakayık hakkında şiir yaz" 0,13 Model, bilgisine güvenebilir ve yanıtın gerekçelendirilmesi gerekmez. "2 yaşındaki bir çocuk için oyuncak önerin" 0,36 Model, bilgisine güvenebilir ve yanıtın gerekçelendirilmesi gerekmez. "Asya esintili bir guakamole tarifi verebilir misiniz?" 0,55 Google Arama sağlam bir yanıt verebilir, ancak temeli sağlamlaştırmak şart değildir; model bilgisi yeterli olabilir. "Agent Builder nedir? Temsilci Oluşturucu'da topraklama nasıl faturalandırılır?" 0,72 Google Arama'nın sağlam temelli bir yanıt oluşturmasını gerektirir. "Son F1 Grand Prix'ini kim kazandı?" 0,97 Google Arama'nın sağlam bir yanıt oluşturması gerekir. Eşik: API isteğinizde, eşik içeren dinamik bir alma yapılandırması belirtebilirsiniz. Eşik, [0,1] aralığındaki bir kayan nokta değeridir ve varsayılan olarak 0,7'dir. Eşik değeri sıfır ise yanıt her zaman Google Arama ile temellendirilir. Diğer tüm eşik değerleri için aşağıdakiler geçerlidir:
- Tahmin puanı eşiğin üzerindeyse veya eşiğe eşitse yanıt, Google Arama'ya dayanır. Daha düşük bir eşik, daha fazla istemin Google Arama ile Grounding kullanılarak üretilen yanıtlara sahip olduğu anlamına gelir.
- Tahmin puanı eşiğin altındaysa model yine de yanıt oluşturabilir ancak bu yanıt Google Arama'ya dayalı değildir.
Dinamik getirme eşiğini SDK veya REST API kullanarak nasıl ayarlayacağınızı öğrenmek için ilgili kod örneğine bakın.
AI Studio kullanıyorsanız Göçümü düzenle'yi tıklayarak dinamik getirme eşiğini ayarlayabilirsiniz.
İşletmenizin ihtiyaçlarınıza uygun iyi bir eşik bulmak için karşılaşmayı beklediğiniz temsili bir sorgu kümesi oluşturabilirsiniz. Ardından sorguları yanıttaki tahmin puanına göre sıralayabilir ve kullanım alanınız için uygun bir eşik seçebilirsiniz.
Gerçekçi bir yanıt
İsteminiz Google Arama'da başarıyla temellendirilirse yanıtta groundingMetadata
yer alır. Gerçeklere dayalı bir yanıt şöyle görünebilir (kısaltmak amacıyla yanıtın bazı bölümleri çıkarılmıştır):
{
"candidates": [
{
"content": {
"parts": [
{
"text": "Carlos Alcaraz won the Gentlemen's Singles title at the 2024 Wimbledon Championships. He defeated Novak Djokovic in the final, winning his second consecutive Wimbledon title and fourth Grand Slam title overall. \n"
}
],
"role": "model"
},
...
"groundingMetadata": {
"searchEntryPoint": {
"renderedContent": "\u003cstyle\u003e\n.container {\n align-items: center;\n border-radius: 8px;\n display: flex;\n font-family: Google Sans, Roboto, sans-serif;\n font-size: 14px;\n line-height: 20px;\n padding: 8px 12px;\n}\n.chip {\n display: inline-block;\n border: solid 1px;\n border-radius: 16px;\n min-width: 14px;\n padding: 5px 16px;\n text-align: center;\n user-select: none;\n margin: 0 8px;\n -webkit-tap-highlight-color: transparent;\n}\n.carousel {\n overflow: auto;\n scrollbar-width: none;\n white-space: nowrap;\n margin-right: -12px;\n}\n.headline {\n display: flex;\n margin-right: 4px;\n}\n.gradient-container {\n position: relative;\n}\n.gradient {\n position: absolute;\n transform: translate(3px, -9px);\n height: 36px;\n width: 9px;\n}\n@media (prefers-color-scheme: light) {\n .container {\n background-color: #fafafa;\n box-shadow: 0 0 0 1px #0000000f;\n }\n .headline-label {\n color: #1f1f1f;\n }\n .chip {\n background-color: #ffffff;\n border-color: #d2d2d2;\n color: #5e5e5e;\n text-decoration: none;\n }\n .chip:hover {\n background-color: #f2f2f2;\n }\n .chip:focus {\n background-color: #f2f2f2;\n }\n .chip:active {\n background-color: #d8d8d8;\n border-color: #b6b6b6;\n }\n .logo-dark {\n display: none;\n }\n .gradient {\n background: linear-gradient(90deg, #fafafa 15%, #fafafa00 100%);\n }\n}\n@media (prefers-color-scheme: dark) {\n .container {\n background-color: #1f1f1f;\n box-shadow: 0 0 0 1px #ffffff26;\n }\n .headline-label {\n color: #fff;\n }\n .chip {\n background-color: #2c2c2c;\n border-color: #3c4043;\n color: #fff;\n text-decoration: none;\n }\n .chip:hover {\n background-color: #353536;\n }\n .chip:focus {\n background-color: #353536;\n }\n .chip:active {\n background-color: #464849;\n border-color: #53575b;\n }\n .logo-light {\n display: none;\n }\n .gradient {\n background: linear-gradient(90deg, #1f1f1f 15%, #1f1f1f00 100%);\n }\n}\n\u003c/style\u003e\n\u003cdiv class=\"container\"\u003e\n \u003cdiv class=\"headline\"\u003e\n \u003csvg class=\"logo-light\" width=\"18\" height=\"18\" viewBox=\"9 9 35 35\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\u003e\n \u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M42.8622 27.0064C42.8622 25.7839 42.7525 24.6084 42.5487 23.4799H26.3109V30.1568H35.5897C35.1821 32.3041 33.9596 34.1222 32.1258 35.3448V39.6864H37.7213C40.9814 36.677 42.8622 32.2571 42.8622 27.0064V27.0064Z\" fill=\"#4285F4\"/\u003e\n \u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M26.3109 43.8555C30.9659 43.8555 34.8687 42.3195 37.7213 39.6863L32.1258 35.3447C30.5898 36.3792 28.6306 37.0061 26.3109 37.0061C21.8282 37.0061 18.0195 33.9811 16.6559 29.906H10.9194V34.3573C13.7563 39.9841 19.5712 43.8555 26.3109 43.8555V43.8555Z\" fill=\"#34A853\"/\u003e\n \u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M16.6559 29.8904C16.3111 28.8559 16.1074 27.7588 16.1074 26.6146C16.1074 25.4704 16.3111 24.3733 16.6559 23.3388V18.8875H10.9194C9.74388 21.2072 9.06992 23.8247 9.06992 26.6146C9.06992 29.4045 9.74388 32.022 10.9194 34.3417L15.3864 30.8621L16.6559 29.8904V29.8904Z\" fill=\"#FBBC05\"/\u003e\n \u003cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M26.3109 16.2386C28.85 16.2386 31.107 17.1164 32.9095 18.8091L37.8466 13.8719C34.853 11.082 30.9659 9.3736 26.3109 9.3736C19.5712 9.3736 13.7563 13.245 10.9194 18.8875L16.6559 23.3388C18.0195 19.2636 21.8282 16.2386 26.3109 16.2386V16.2386Z\" fill=\"#EA4335\"/\u003e\n \u003c/svg\u003e\n \u003csvg class=\"logo-dark\" width=\"18\" height=\"18\" viewBox=\"0 0 48 48\" xmlns=\"http://www.w3.org/2000/svg\"\u003e\n \u003ccircle cx=\"24\" cy=\"23\" fill=\"#FFF\" r=\"22\"/\u003e\n \u003cpath d=\"M33.76 34.26c2.75-2.56 4.49-6.37 4.49-11.26 0-.89-.08-1.84-.29-3H24.01v5.99h8.03c-.4 2.02-1.5 3.56-3.07 4.56v.75l3.91 2.97h.88z\" fill=\"#4285F4\"/\u003e\n \u003cpath d=\"M15.58 25.77A8.845 8.845 0 0 0 24 31.86c1.92 0 3.62-.46 4.97-1.31l4.79 3.71C31.14 36.7 27.65 38 24 38c-5.93 0-11.01-3.4-13.45-8.36l.17-1.01 4.06-2.85h.8z\" fill=\"#34A853\"/\u003e\n \u003cpath d=\"M15.59 20.21a8.864 8.864 0 0 0 0 5.58l-5.03 3.86c-.98-2-1.53-4.25-1.53-6.64 0-2.39.55-4.64 1.53-6.64l1-.22 3.81 2.98.22 1.08z\" fill=\"#FBBC05\"/\u003e\n \u003cpath d=\"M24 14.14c2.11 0 4.02.75 5.52 1.98l4.36-4.36C31.22 9.43 27.81 8 24 8c-5.93 0-11.01 3.4-13.45 8.36l5.03 3.85A8.86 8.86 0 0 1 24 14.14z\" fill=\"#EA4335\"/\u003e\n \u003c/svg\u003e\n \u003cdiv class=\"gradient-container\"\u003e\u003cdiv class=\"gradient\"\u003e\u003c/div\u003e\u003c/div\u003e\n \u003c/div\u003e\n \u003cdiv class=\"carousel\"\u003e\n \u003ca class=\"chip\" href=\"https://vertexaisearch.cloud.google.com/grounding-api-redirect/AWhgh4x8Epe-gzpwRBvp7o3RZh2m1ygq1EHktn0OWCtvTXjad4bb1zSuqfJd6OEuZZ9_SXZ_P2SvCpJM7NaFfQfiZs6064MeqXego0vSbV9LlAZoxTdbxWK1hFeqTG6kA13YJf7Fbu1SqBYM0cFM4zo0G_sD9NKYWcOCQMvDLDEJFhjrC9DM_QobBIAMq-gWN95G5tvt6_z6EuPN8QY=\"\u003ewho won wimbledon 2024\u003c/a\u003e\n \u003c/div\u003e\n\u003c/div\u003e\n"
},
"groundingChunks": [
{
"web": {
"uri": "https://vertexaisearch.cloud.google.com/grounding-api-redirect/AWhgh4whET1ta3sDETZvcicd8FeNe4z0VuduVsxrT677KQRp2rYghXI0VpfYbIMVI3THcTuMwggRCbFXS_wVvW0UmGzMe9h2fyrkvsnQPJyikJasNIbjJLPX0StM4Bd694-ZVle56MmRA4YiUvwSqad1w6O2opmWnw==",
"title": "wikipedia.org"
}
},
{
"web": {
"uri": "https://vertexaisearch.cloud.google.com/grounding-api-redirect/AWhgh4wR1M-9-yMPUr_KdHlnoAmQ8ZX90DtQ_vDYTjtP2oR5RH4tRP04uqKPLmesvo64BBkPeYLC2EpVDxv9ngO3S1fs2xh-e78fY4m0GAtgNlahUkm_tBm_sih5kFPc7ill9u2uwesNGUkwrQlmP2mfWNU5lMMr23HGktr6t0sV0QYlzQq7odVoBxYWlQ_sqWFH",
"title": "wikipedia.org"
}
},
{
"web": {
"uri": "https://vertexaisearch.cloud.google.com/grounding-api-redirect/AWhgh4wsDmROzbP-tmt8GdwCW_pqISTZ4IRbBuoaMyaHfcQg8WW-yKRQQvMDTPAuLxJh-8_U8_iw_6JKFbQ8M9oVYtaFdWFK4gOtL4RrC9Jyqc5BNpuxp6uLEKgL5-9TggtNvO97PyCfziDFXPsxylwI1HcfQdrz3Jy7ZdOL4XM-S5rC0lF2S3VWW0IEAEtS7WX861meBYVjIuuF_mIr3spYPqWLhbAY2Spj-4_ba8DjRvmevIFUhRuESTKvBfmpxNSM",
"title": "cbssports.com"
}
},
{
"web": {
"uri": "https://vertexaisearch.cloud.google.com/grounding-api-redirect/AWhgh4yzjLkorHiUKjhOPkWaZ9b4cO-cLG-02vlEl6xTBjMUjyhK04qSIclAa7heR41JQ6AAVXmNdS3WDrLOV4Wli-iezyzW8QPQ4vgnmO_egdsuxhcGk3-Fp8-yfqNLvgXFwY5mPo6QRhvplOFv0_x9mAcka18QuAXtj0SPvJfZhUEgYLCtCrucDS5XFc5HmRBcG1tqFdKSE1ihnp8KLdaWMhrUQI21hHS9",
"title": "jagranjosh.com"
}
},
{
"web": {
"uri": "https://vertexaisearch.cloud.google.com/grounding-api-redirect/AWhgh4y9L4oeNGWCatFz63b9PpP3ys-Wi_zwnkUT5ji9lY7gPUJQcsmmE87q88GSdZqzcx5nZG9usot5FYk2yK-FAGvCRE6JsUQJB_W11_kJU2HVV1BTPiZ4SAgm8XDFIxpCZXnXmEx5HUfRqQm_zav7CvS2qjA2x3__qLME6Jy7R5oza1C5_aqjQu422le9CaigThS5bvJoMo-ZGcXdBUCj2CqoXNVjMA==",
"title": "apnews.com"
}
}
],
"groundingSupports": [
{
"segment": {
"endIndex": 85,
"text": "Carlos Alcaraz won the Gentlemen's Singles title at the 2024 Wimbledon Championships."
},
"groundingChunkIndices": [
0,
1,
2,
3
],
"confidenceScores": [
0.97380733,
0.97380733,
0.97380733,
0.97380733
]
},
{
"segment": {
"startIndex": 86,
"endIndex": 210,
"text": "He defeated Novak Djokovic in the final, winning his second consecutive Wimbledon title and fourth Grand Slam title overall."
},
"groundingChunkIndices": [
1,
0,
4
],
"confidenceScores": [
0.96145374,
0.96145374,
0.96145374
]
}
],
"webSearchQueries": [
"who won wimbledon 2024"
]
}
}
],
...
}
Yanıtta groundingMetadata
yer almıyorsa bu, yanıtın başarıyla temelleştirilmediği anlamına gelir. Bu durumun yaşanmasının, kaynakla alakanın düşük olması veya model yanıtındaki bilgilerin eksik olması gibi çeşitli nedenleri vardır.
Gerçek temelli bir sonuç oluşturulduğunda meta veriler, gerçek temelli sonucu oluşturmak için kullanılan içeriğin yayıncılarına yönlendiren URI'ler içerir.
Bu URI'ler, kısaltılmış örnekte gösterildiği gibi vertexaisearch
alt alanını içerir:
https://vertexaisearch.cloud.google.com/grounding-api-redirect/...
. Meta veriler, yayıncıların alanlarını da içerir. Sağlanan URI'lere, temellendirilmiş sonuç oluşturulduktan sonraki 30 gün boyunca erişilebilir.
searchEntryPoint
içindeki renderedContent
alanı, Google Arama Önerileri'ni uygulamak için sağlanan koddur. Daha fazla bilgi edinmek için Google Arama Önerilerini Kullanma bölümüne bakın.