Heim >Backend-Entwicklung >Golang >Golang-Technologie-Praxisweg: Die Baidu-KI-Schnittstelle macht Ihre Anwendung wettbewerbsfähiger

Golang-Technologie-Praxisweg: Die Baidu-KI-Schnittstelle macht Ihre Anwendung wettbewerbsfähiger

PHPz
PHPzOriginal
2023-08-25 22:09:131160Durchsuche

Golang-Technologie-Praxisweg: Die Baidu-KI-Schnittstelle macht Ihre Anwendung wettbewerbsfähiger

Golang-Technologie-Praxispfad: Die Baidu-KI-Schnittstelle macht Ihre Anwendung wettbewerbsfähiger

Einführung:

Mit der kontinuierlichen Weiterentwicklung der Technologie der künstlichen Intelligenz wird ihre Anwendung in verschiedenen Branchen immer weiter verbreitet. Ob in den Bereichen Bilderkennung, Sprachsynthese oder Verarbeitung natürlicher Sprache: Künstliche Intelligenz kann effektive Lösungen liefern. Um die Anwendung künstlicher Intelligenz zu realisieren, ist ein wichtiger Link der Zugriff auf die entsprechende KI-Schnittstelle. In diesem Artikel wird die Baidu-KI-Schnittstelle als Beispiel verwendet, um vorzustellen, wie die Golang-Sprache zum Aufrufen der Baidu-KI-Schnittstelle verwendet wird, und es anhand von Codebeispielen zu erläutern.

  1. Registrieren Sie ein Baidu AI-Entwicklerkonto und erstellen Sie eine Anwendung.
    Bevor Sie die Baidu AI-Schnittstelle verwenden, müssen Sie zunächst ein Baidu AI-Entwicklerkonto registrieren. Melden Sie sich nach erfolgreicher Registrierung bei der Konsole an, rufen Sie die Seite [Meine Anwendung] auf und erstellen Sie eine neue Anwendung. Beim Erstellen einer Anwendung müssen Sie die entsprechenden Dienste und Schnittstellen auswählen und den entsprechenden API-Schlüssel und Geheimschlüssel erhalten. Diese Schlüssel werden für die nachfolgende API-Aufrufauthentifizierung verwendet.
  2. Installieren Sie die relevanten Golang-Pakete
    Bevor Sie Golang zum Aufrufen der Baidu AI-Schnittstelle verwenden, müssen Sie die entsprechenden Golang-Pakete installieren. Sie können zum Installieren den Befehl go get verwenden, zum Beispiel:
go get github.com/joho/godotenv
go get github.com/imroc/req

Unter anderem wird das Paket godotenv zum Laden von Umgebungsvariablendateien mit „.env“ als Suffix und dem Paket req wird zum Senden von HTTP-Anfragen verwendet. 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. Erstellen Sie eine Umgebungsvariablen-Konfigurationsdatei.
    Erstellen Sie eine Datei mit dem Namen „.env“ im Projektstammverzeichnis und geben Sie den folgenden Inhalt ein:

    go run baidu_ai.go

    wird ersetzen „Ihr Baidu AI-Anwendungs-API-Schlüssel“ und „Ihr Baidu AI-Anwendungs-Geheimschlüssel“ in der Datei mit Ihrem API-Schlüssel und Geheimschlüssel.

      Schreiben Sie das Codebeispiel

      Erstellen Sie als Nächstes eine Datei mit dem Namen „baidu_ai.go“ und füllen Sie sie mit dem folgenden Codebeispiel:

      rrreee
        🎜Führen Sie den Code aus 🎜Bevor Sie den obigen Code speichern und ausführen, verwenden Sie den Befehl go mod init, um die Projektmodularisierung zu initialisieren. 🎜🎜🎜Dann führen Sie den Codebefehl aus: 🎜rrreee🎜Nach erfolgreichem Vorgang wird im Projektverzeichnis eine Datei mit dem Namen „baidu_ai.wav“ generiert, bei der es sich um eine über die Baidu AI-Schnittstelle synthetisierte Sprachdatei handelt. 🎜🎜Fazit: 🎜🎜Durch die obigen Codebeispiele können wir die Golang-Sprache verwenden, um die Baidu-KI-Schnittstelle aufzurufen und einige gängige Funktionen der künstlichen Intelligenz zu implementieren. Natürlich bietet Baidu AI neben der Sprachsynthese auch Bilderkennung, Verarbeitung natürlicher Sprache und andere Funktionen, die der Leser entsprechend seinen eigenen Bedürfnissen aufrufen und implementieren kann. Durch die Verwendung der Baidu-KI-Schnittstelle können unsere Anwendungen wettbewerbsfähiger sein und den Benutzern ein besseres Erlebnis bieten. Ich hoffe, dieser Artikel kann den Lesern hilfreich sein. Vielen Dank fürs Lesen! 🎜

    Das obige ist der detaillierte Inhalt vonGolang-Technologie-Praxisweg: Die Baidu-KI-Schnittstelle macht Ihre Anwendung wettbewerbsfähiger. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

    Stellungnahme:
    Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn