Maison >développement back-end >Golang >Un incontournable pour les développeurs Golang ! Explication détaillée des différentes interfaces d'accueil de l'IA de Baidu

Un incontournable pour les développeurs Golang ! Explication détaillée des différentes interfaces d'accueil de l'IA de Baidu

王林
王林original
2023-08-15 09:27:281590parcourir

Un incontournable pour les développeurs Golang ! Explication détaillée des différentes interfaces daccueil de lIA de Baidu

Un incontournable pour les développeurs Golang ! Explication détaillée des différentes interfaces d'accueil de l'IA de Baidu

L'IA (intelligence artificielle) joue un rôle de plus en plus important dans le domaine technologique actuel. En tant que développeur Golang, vous pourriez être confronté à la tâche d'interfacer avec les interfaces IA. En tant qu'entreprise technologique nationale bien connue, Baidu propose une multitude d'interfaces d'IA que les développeurs peuvent utiliser. Cet article présentera en détail certaines des interfaces couramment utilisées et fournira des exemples de code Golang correspondants.

L'interface Baidu AI couvre la reconnaissance faciale, la reconnaissance vocale, la reconnaissance d'images et d'autres domaines. Nous prendrons la reconnaissance faciale comme exemple pour présenter comment utiliser Golang pour se connecter à l'interface de reconnaissance faciale de Baidu.

Tout d'abord, nous devons créer un compte sur la plateforme ouverte Baidu AI et créer une application. Après avoir créé l'application, vous obtiendrez un AppID, une clé API et une clé secrète. Ces informations seront utilisées dans le code ultérieur.

Ensuite, nous devons présenter la bibliothèque de requêtes réseau de Golang. Entrez la commande suivante dans le terminal pour installer :

go get -u github.com/go-resty/resty/v2

Une fois l'installation terminée, nous pouvons commencer à écrire du code. Créez un fichier nommé "face_recognition.go" et entrez le code suivant dans le fichier :

package main

import (
    "fmt"
    "github.com/go-resty/resty/v2"
)

func main() {
    appID := "YOUR_APP_ID"
    apiKey := "YOUR_API_KEY"
    secretKey := "YOUR_SECRET_KEY"

    client := resty.New()

    // 调用人脸识别接口
    resp, err := client.R().
        SetFormData(map[string]string{
            "image":    "/path/to/image.jpg",
            "image_type": "BASE64",
        }).
        SetQueryParam("access_token", getToken(apiKey, secretKey)).
        Post("https://aip.baidubce.com/rest/2.0/face/v3/detect")

    if err != nil {
        fmt.Println(err)
    }

    fmt.Println(resp.String())
}

// 获取访问令牌
func getToken(apiKey, secretKey string) string {
    client := resty.New()

    // 调用获取访问令牌接口
    resp, _ := client.R().
        SetFormData(map[string]string{
            "grant_type":    "client_credentials",
            "client_id":     apiKey,
            "client_secret": secretKey,
        }).
        Post("https://aip.baidubce.com/oauth/2.0/token")

    var result map[string]interface{}
    json.Unmarshal(resp.Body(), &result)
    
    return result["access_token"].(string)
}

Dans le code, nous définissons d'abord l'AppID, la clé API et la clé secrète. Ensuite, nous avons créé un client HTTP via la bibliothèque resty. Avant d'appeler l'interface de reconnaissance faciale, nous devons d'abord obtenir le jeton d'accès. Par conséquent, nous avons écrit une fonction getToken() pour obtenir le jeton. L'URL de l'interface d'acquisition de jetons est https://aip.baidubce.com/oauth/2.0/token, et le résultat renvoyé contient le champ de jeton access_token. getToken()来获取令牌。获取令牌接口的URL是https://aip.baidubce.com/oauth/2.0/token,返回的结果中包含令牌字段access_token

在调用人脸识别接口时,我们使用了resty库的SetFormData()方法来设置请求参数。示例中设置了两个参数,一个是待识别的图片路径,另一个是图片类型。我们还使用SetQueryParam()方法来设置URL中的查询参数access_token,其值是通过getToken()

Lors de l'appel de l'interface de reconnaissance faciale, nous avons utilisé la méthode SetFormData() de la bibliothèque resty pour définir les paramètres de la requête. Dans l'exemple, deux paramètres sont définis, l'un est le chemin de l'image à reconnaître et l'autre est le type d'image. Nous utilisons également la méthode SetQueryParam() pour définir le paramètre de requête access_token dans l'URL, et sa valeur est obtenue via la fonction getToken() .

Après avoir terminé les étapes ci-dessus, nous pouvons exécuter le code pour appeler l'interface de reconnaissance faciale Baidu et obtenir les résultats.

Bien sûr, compte tenu de la stabilité des requêtes réseau, nous devrions ajouter une logique de gestion des erreurs et des exceptions au développement réel. De plus, nous pouvons également utiliser d'autres interfaces d'IA fournies par Baidu pour implémenter des fonctions plus intéressantes.

Grâce aux exemples de code ci-dessus, je pense que vous avez une compréhension préliminaire de la façon de vous connecter à l'interface de reconnaissance faciale Baidu dans Golang. J'espère que cet article pourra aider les développeurs qui apprennent Golang et qui sont intéressés par le développement d'interfaces IA ! 🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn