Develop AI apps with Go

This article contains an organized list of the best learning resources for Go developers who are getting started building AI apps. Resources include popular quickstart articles, reference samples, documentation, training courses, and so on.

OpenAI for Go developers

Link Description
Azure OpenAI SDK for Go The GitHub source version of the Azure OpenAI SDK for Go.
Azure OpenAI SDK Releases Links to all Azure OpenAI SDK library packages, including links for .NET, Java, JavaScript and Go.
Package (pkg.go.dev) The Go package version of Azure OpenAI client module for Go.
Get started using GPT-35-Turbo and GPT-4 An article that walks you through creating a chat completion sample.
ChatCompletions A simple example demonstrating how to implement completions.
ChatCompletions using Functions A simple example demonstrating how to implement completions using Functions.
Streaming Chat Completions A simple example demonstrating how to implement streaming completions.
Image generation A simple example of implementing image generation.
Embeddings A simple example demonstrating how to create embeddings.
Other examples The Go package version of documentation for the OpenAI client module for Go.
More guidance The hub page for Azure OpenAI Service documentation.

Secure your Azure AI resources

Link Description
OpenAI with Microsoft Entra ID Role based access control A look at authentication using Microsoft Entra ID.
OpenAI with Managed Identities An article detailing more complex security scenarios that require Azure role-based access control (Azure RBAC). This document covers how to authenticate to your OpenAI resource using Microsoft Entra ID.

Speech/Vision

Link Description
Captioning and Call Center Transcription in Go A repo containing samples for captions and transcriptions in a call center scenario.
Integrate Speech into your apps with Speech SDK for Go The source for the Azure Cognitive Services Speech SDK.

Language

Link Description
Extract, classify, and understand text within documents using Text Analytics in Go The client library for Text Analytics, which is part of the Azure Cognitive Service for Language, a cloud-based service that provides Natural Language Processing (NLP) features for understanding and analyzing text.
Document Translation in Go A quickstart article showing how to use Document Translation to translate a source document into a target language while preserving structure and text formatting.