Bagikan melalui


Mengkustomisasi dan menyarankan kueri pencarian gambar

Peringatan

Pada 30 Oktober 2020, API Bing Search dipindahkan dari layanan Azure AI ke Bing Search Services. Dokumentasi ini disediakan hanya untuk referensi. Untuk dokumentasi terbaru, lihat dokumentasi Bing Search API. Untuk petunjuk tentang cara membuat sumber daya Azure baru untuk pencarian Bing, lihat Membuat sumber daya Pencarian Bing melalui Marketplace Azure.

Gunakan artikel ini untuk mempelajari cara mengkustomisasi kueri dan menyarankan istilah pencarian untuk dikirim ke API Pencarian Gambar Bing.

Sarankan otomatis istilah penelusuran

Jika aplikasi Anda memiliki kotak pencarian tempat istilah pencarian dimasukkan, Anda dapat menggunakan API Bing Autosuggest untuk meningkatkan pengalaman. API dapat menampilkan istilah pencarian yang disarankan secara real time. API mengembalikan string kueri yang disarankan berdasarkan istilah pencarian parsial dan layanan Azure AI.

Pivot kueri

Jika Bing dapat memotong kueri penelusuran asli, objek Gambar yang dikembalikan berisi bidang pivotSuggestions. Saran Pivot dapat ditampilkan sebagai istilah pencarian opsional kepada pengguna. Misalnya, jika kueri asli adalah Microsoft Surface, Bing mungkin memotong kueri ke Microsoft dan Surface serta menyediakan pivot yang disarankan untuk masing-masing. Saran ini dapat ditampilkan sebagai istilah kueri opsional kepada pengguna.

Contoh berikut menunjukkan saran pivot untuk Microsoft Surface:

{
    "_type": "Images",
    "webSearchUrl": "https:\/\/www.bing.com\/images\/search?q=microsoft%20surface&FORM=OIIARP",
    "totalEstimatedMatches": 1000,
    "value": [...],
    "queryExpansions": [...],
    "pivotSuggestions": [{
        "pivot": "microsoft",
        "suggestions": [{
            "text": "Contoso Surface",
            "displayText": "Contoso",
            "webSearchUrl": "https:\/\/www.bing.com\/images\/search?q=OtterBox+Surface&FORM=IRQBPS",
            "searchLink": "https:\/\/api.cognitive.microsoft.com\/api\/v7\/images\/search?q=Contoso...",
                    "searchLink": "https:\/\/api.cognitive.microsoft.com\/api...",
            "thumbnail": {
                "thumbnailUrl": "https:\/\/tse3.mm.bing.net\/th?q=Contoso+Surface..."
            }
        },
        {
            "text": "Adatum Surface",
            "displayText": "Adatum",
            "webSearchUrl": "https:\/\/www.bing.com\/images\/search?q=Adatum+Surface&FORM=IRQBPS",
            "searchLink": "https:\/\/api.cognitive.microsoft.com\/api\/v7\/images\/search?q=...",
            "thumbnail": {
                "thumbnailUrl": "https:\/\/tse3.mm.bing.net\/th?q=Adatum+Surface&pid=Ap..."
            }
        },
        ...
        ]
    },
    {
        "pivot": "surface",
        "suggestions": [{
            "text": "Microsoft Surface4",
            "displayText": "Surface4",
            "webSearchUrl": "https:\/\/www.bing.com\/images\/search?q=Microsoft+Surface...",
            "searchLink": "https:\/\/api.cognitive.microsoft.com\/api\/v7\/images\/search?...",
            "thumbnail": {
                "thumbnailUrl": "https:\/\/tse4.mm.bing.net\/th?q=Microsoft..."
            }
        },
        {
            "text": "Microsoft Tablet",
            "displayText": "Tablet",
            "webSearchUrl": "https:\/\/www.bing.com\/images\/search?q=Microsoft+Tablet&FORM=IRQBPS",
            "searchLink": "https:\/\/api.cognitive.microsoft.com\/api\/v7\/images\/search?...",
            "thumbnail": {
                "thumbnailUrl": "https:\/\/tse3.mm.bing.net\/th?q=Microsoft+Tablet..."
            }
        },
        ...
    ],
    "nextOffsetAddCount": 0
}

Bidang pivotSuggestions berisi daftar segmen (pivot) yang dipecah kueri asli. Untuk setiap pivot, respons berisi daftar objek Kueri yang berisi kueri yang disarankan. Bidang text berisi kueri yang disarankan. Bidang displayText berisi istilah yang menggantikan pivot dalam kueri asli. Contohnya adalah Tanggal Rilis Permukaan.

Jika untai (karakter) kueri pivot adalah apa yang dicari pengguna, gunakan bidang text dan thumbnail untuk menampilkan untai (karakter) kueri pivot. Buat gambar mini dan teks dapat diklik dengan menggunakan URL webSearchUrl atau searchLink. Gunakan webSearchUrl untuk mengirim pengguna ke hasil pencarian Bing. Jika Anda menyediakan halaman hasil Anda sendiri, gunakan searchLink.

Memperluas kueri

Jika Bing dapat memperluas kueri untuk mempersempit pencarian asli, objek Gambar yang berisi bidang queryExpansions. Misalnya, jika kueri adalah Microsoft Surface, kueri yang diperluas mungkin:

  • Microsoft Surface Pro 3.
  • Microsoft Surface RT.
  • Microsoft Surface Telepon.
  • Microsoft Surface Hub.

Contoh berikut menunjukkan kueri yang diperlua untuk Microsoft Surface.

{
    "_type": "Images",
    "webSearchUrl": "https:\/\/www.bing.com\/images\/search?q=microsoft%20surface...",
    "totalEstimatedMatches": 1000,
    "value": [...],
    "queryExpansions":  [{
        "text": "Microsoft Surface Pro 3",
        "displayText": "Pro 3",
        "webSearchUrl": "https:\/\/www.bing.com\/images\/search?q=Microsoft+Surface+Pro+3...",
        "searchLink": "https:\/\/api.cognitive.microsoft.com\/api\/v7\/images\/search?q=Microsoft...",
        "thumbnail": {
            "thumbnailUrl": "https:\/\/tse4.mm.bing.net\/th?q=Microsoft+Surface+Pro+3..."
        }
    },
    {
        "text": "Microsoft Surface RT",
        "displayText": "RT",
        "webSearchUrl": "https:\/\/www.bing.com\/images\/search?q=Microsoft+Surface+RT...",
        "searchLink": "https:\/\/api.cognitive.microsoft.com\/api\/v7\/images\/search?q=...",
        "thumbnail": {
            "thumbnailUrl": "https:\/\/tse4.mm.bing.net\/th?q=Microsoft+Surface+RT..."
        }
    },
    {
        "text": "Microsoft Surface Phone",
        "displayText": "Phone",
        "webSearchUrl": "https:\/\/www.bing.com\/images\/search?q=Microsoft+Surface+Phone",
        "searchLink": "https:\/\/api.cognitive.microsoft.com\/api\/v7\/images\/search?q=...",
        "thumbnail": {
            "thumbnailUrl": "https:\/\/tse4.mm.bing.net\/th?q=Microsoft+Surface+Phone..."
        }
    }],
    "pivotSuggestions": [...],
    "nextOffsetAddCount": 0
}

Bidang queryExpansions berisi daftar objek Kueri. Bidang text berisi kueri yang diperluas. Bidang displayText berisi istilah ekspansi. Jika untai (karakter) kueri diperluas adalah apa yang dicari pengguna, gunakan bidang text dan thumbnail untuk menampilkan untai (karakter) kueri yang diperluas. Buat gambar mini dan teks dapat diklik dengan menggunakan URL webSearchUrl atau searchLink. Gunakan webSearchUrl untuk mengirim pengguna ke hasil pencarian Bing. jika Anda menyediakan halaman hasil Anda sendiri, gunakan searchLink.

Permintaan pembatasan

Layanan dan jenis langganan Anda menentukan jumlah kueri per detik (QPS) yang bisa Anda buat. Pastikan aplikasi Anda menyertakan logika untuk tetap berada dalam kuota Anda. Jika batas QPS terpenuhi atau terlampaui, permintaan gagal dan kode status HTTP 429 dikembalikan. Respons mencakup Retry-After header, yang menunjukkan berapa lama Anda harus menunggu sebelum mengirim permintaan lain.

Penolakan layanan versus pembatasan

Layanan ini membuat diferensiasi antara serangan denial-of-service (DoS) dan pelanggaran QPS. Jika layanan mencurigai serangan DoS, permintaan berhasil (kode status HTTP adalah 200 OK). Namun, body responsnya kosong.

Langkah berikutnya

Jika Anda belum mencoba API Pencarian Gambar Bing sebelumnya, coba mulai cepat. Jika Anda mencari sesuatu yang lebih kompleks, cobalah tutorial untuk membuat aplikasi web halaman tunggal.