Source code for azure.cognitiveservices.search.visualsearch.visual_search_client

# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for
# license information.
#
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is
# regenerated.
# --------------------------------------------------------------------------

from msrest.service_client import SDKClient
from msrest import Configuration, Serializer, Deserializer
from .version import VERSION
from .operations.images_operations import ImagesOperations
from . import models


class VisualSearchClientConfiguration(Configuration):
    """Configuration for VisualSearchClient
    Note that all parameters used to create this instance are saved as instance
    attributes.

    :param endpoint: Supported Cognitive Services endpoints (protocol and
     hostname, for example: "https://westus.api.cognitive.microsoft.com",
     "https://api.cognitive.microsoft.com").
    :type endpoint: str
    :param credentials: Subscription credentials which uniquely identify
     client subscription.
    :type credentials: None
    """

    def __init__(
            self, endpoint, credentials):

        if endpoint is None:
            raise ValueError("Parameter 'endpoint' must not be None.")
        if credentials is None:
            raise ValueError("Parameter 'credentials' must not be None.")
        base_url = '{Endpoint}/bing/v7.0'

        super(VisualSearchClientConfiguration, self).__init__(base_url)

        self.add_user_agent('azure-cognitiveservices-search-visualsearch/{}'.format(VERSION))

        self.endpoint = endpoint
        self.credentials = credentials


[docs]class VisualSearchClient(SDKClient): """Visual Search API lets you discover insights about an image such as visually similar images, shopping sources, and related searches. The API can also perform text recognition, identify entities (people, places, things), return other topical content for the user to explore, and more. For more information, see [Visual Search Overview](https://docs.microsoft.com/azure/cognitive-services/bing-visual-search/overview). :ivar config: Configuration for client. :vartype config: VisualSearchClientConfiguration :ivar images: Images operations :vartype images: azure.cognitiveservices.search.visualsearch.operations.ImagesOperations :param endpoint: Supported Cognitive Services endpoints (protocol and hostname, for example: "https://westus.api.cognitive.microsoft.com", "https://api.cognitive.microsoft.com"). :type endpoint: str :param credentials: Subscription credentials which uniquely identify client subscription. :type credentials: None """ def __init__( self, endpoint, credentials): self.config = VisualSearchClientConfiguration(endpoint, credentials) super(VisualSearchClient, self).__init__(self.config.credentials, self.config) client_models = {k: v for k, v in models.__dict__.items() if isinstance(v, type)} self.api_version = '1.0' self._serialize = Serializer(client_models) self._deserialize = Deserializer(client_models) self.images = ImagesOperations( self._client, self.config, self._serialize, self._deserialize)