Maison >développement back-end >Golang >Route de pratique de la technologie Golang : l'interface Baidu AI rend votre application plus compétitive

Route de pratique de la technologie Golang : l'interface Baidu AI rend votre application plus compétitive

PHPz
PHPzoriginal
2023-08-25 22:09:131160parcourir

Route de pratique de la technologie Golang : linterface Baidu AI rend votre application plus compétitive

Parcours pratique de la technologie Golang : l'interface Baidu AI rend votre application plus compétitive

Introduction :

Avec le développement continu de la technologie de l'intelligence artificielle, son application dans diverses industries devient de plus en plus répandue. Que ce soit dans les domaines de la reconnaissance d’images, de la synthèse vocale ou du traitement du langage naturel, l’intelligence artificielle peut apporter des solutions efficaces. Pour réaliser l’application de l’intelligence artificielle, un lien important consiste à accéder à l’interface IA correspondante. Cet article prendra l'interface Baidu AI comme exemple pour présenter comment utiliser le langage Golang pour appeler l'interface Baidu AI et l'expliquera avec des exemples de code.

  1. Enregistrez un compte développeur Baidu AI et créez une application
    Tout d'abord, avant d'utiliser l'interface Baidu AI, vous devez enregistrer un compte développeur Baidu AI. Une fois l'enregistrement réussi, connectez-vous à la console, accédez à la page [Mon application] et créez une nouvelle application. Lors de la création d'une application, vous devez sélectionner les services et interfaces correspondants, et obtenir la clé API et la clé secrète correspondantes. Ces clés seront utilisées pour l'authentification ultérieure des appels API.
  2. Installez les packages Golang pertinents
    Avant de commencer à utiliser Golang pour appeler l'interface Baidu AI, vous devez installer les packages Golang correspondants. Vous pouvez utiliser la commande go get pour installer, par exemple :
go get github.com/joho/godotenv
go get github.com/imroc/req

Parmi eux, le package godotenv est utilisé pour charger des fichiers de variables d'environnement avec ".env" comme suffixe, et le req est utilisé pour envoyer des requêtes HTTP. godotenv包用于加载以“.env”为后缀的环境变量文件,req包用于发送HTTP请求。

  1. 创建环境变量配置文件
    在项目根目录下创建一个名为“.env”的文件,并填入以下内容:
APP_KEY=你的百度AI应用API Key
SECRET_KEY=你的百度AI应用Secret Key

将文件中的“你的百度AI应用API Key”和“你的百度AI应用Secret Key”替换为你的API Key和Secret Key。

  1. 编写代码示例
    接下来,创建一个名为“baidu_ai.go”的文件,并填入以下代码示例:
package main

import (
    "fmt"
    "log"
    "os"

    "github.com/joho/godotenv"
    "github.com/imroc/req"
)

func main() {
    // 加载环境变量配置文件
    err := godotenv.Load()
    if err != nil {
        log.Fatal("Error loading .env file")
    }

    // 获取环境变量中的API Key和Secret Key
    appKey := os.Getenv("APP_KEY")
    secretKey := os.Getenv("SECRET_KEY")

    // 调用百度AI接口的示例:语音合成
    resp, err := req.Post("https://naviapi.baidu.com/v2/tts", req.Param{
        "tex":          "百度AI接口让你的应用更有竞争力",
        "lan":          "zh",
        "ctp":          "1",
        "cuid":         "baidu_ai_sample",
        "tok":          getToken(appKey, secretKey),
        "spd":          "5",
        "pit":          "5",
        "vol":          "9",
        "per":          "4",
        "fmt":          "wav",
    })
    if err != nil {
        log.Fatal(err)
    }

    // 获取返回结果
    bodyBytes, err := resp.ToBytes()
    if err != nil {
        log.Fatal(err)
    }

    // 输出结果
    fmt.Println("语音合成成功,结果保存在baidu_ai.wav文件中")
    err = os.WriteFile("baidu_ai.wav", bodyBytes, 0644)
    if err != nil {
        log.Fatal(err)
    }
}

// 获取百度AI接口调用凭证
func getToken(appKey string, secretKey string) string {
    resp, err := req.Get("https://naviapi.baidu.com/v2/token", req.QueryParam{
        "grant_type": "client_credentials",
        "client_id":  appKey,
        "client_secret": secretKey,
    })
    if err != nil {
        log.Fatal(err)
    }

    var tokenResp struct {
        AccessToken string `json:"access_token"`
    }
    err = resp.ToJSON(&tokenResp)
    if err != nil {
        log.Fatal(err)
    }

    return tokenResp.AccessToken
}
  1. 运行代码
    保存并运行上述代码之前,使用命令go mod init
    1. Créez un fichier de configuration de variable d'environnement
    Créez un fichier nommé ".env" dans le répertoire racine du projet et remplissez le contenu suivant :

    go run baidu_ai.go

    remplacera « Votre clé API d'application Baidu AI » et « Votre clé secrète d'application Baidu AI » dans le fichier contenant votre clé API et votre clé secrète.

      Écrivez l'exemple de code

      Ensuite, créez un fichier appelé "baidu_ai.go" et remplissez-le avec l'exemple de code suivant :

      rrreee
        🎜Exécutez le code 🎜Avant d'enregistrer et d'exécuter le code ci-dessus, utilisez la commande go mod init pour initialiser la modularisation du projet. 🎜🎜🎜Ensuite, exécutez la commande de code : 🎜rrreee🎜Après une opération réussie, un fichier nommé "baidu_ai.wav" sera généré dans le répertoire du projet, qui est un fichier vocal synthétisé via l'interface Baidu AI. 🎜🎜Conclusion : 🎜🎜Grâce aux exemples de code ci-dessus, nous pouvons utiliser le langage Golang pour appeler l'interface Baidu AI et implémenter certaines fonctions courantes d'intelligence artificielle. Bien entendu, en plus de la synthèse vocale, Baidu AI fournit également la reconnaissance d'images, le traitement du langage naturel et d'autres fonctions, que les lecteurs peuvent appeler et mettre en œuvre en fonction de leurs propres besoins. Grâce à l'utilisation de l'interface Baidu AI, nos applications pourront être plus compétitives et offrir aux utilisateurs une meilleure expérience. J'espère que cet article pourra être utile aux lecteurs, merci d'avoir lu ! 🎜

    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