Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Go for GenAI!
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Daniela Petruzalek
December 01, 2025
Programming
0
16
Go for GenAI!
Keynote presented at DevFest Bletchley Park 2025 highlighting the new developments in Go for GenAI
Daniela Petruzalek
December 01, 2025
Tweet
Share
More Decks by Daniela Petruzalek
See All by Daniela Petruzalek
[Golab 2025] The Gopher's Craft in the Age of AI
danicat
0
11
Making of GoDoctor: Lessons Learned While Building a Go-Aware MCP Server
danicat
0
18
Diagnostic Agent with ADK, Gemini and OSQuery
danicat
0
16
Hello, MCP World!
danicat
0
17
A Gopher's Guide to Vibe Coding
danicat
0
14
How to Create a Diagnostic Agent with Gemini and OSQuery
danicat
0
37
How to create a diagnostic agent using Gemini and osquery
danicat
0
33
Como criar um agente de diagnósticos usando Gemini e Osquery
danicat
0
82
A Gopher's Guide to Vibe Coding
danicat
0
250
Other Decks in Programming
See All in Programming
AI時代のキャリアプラン「技術の引力」からの脱出と「問い」へのいざない / tech-gravity
minodriven
21
7.2k
Fragmented Architectures
denyspoltorak
0
150
疑似コードによるプロンプト記述、どのくらい正確に実行される?
kokuyouwind
0
380
CSC307 Lecture 07
javiergs
PRO
0
550
登壇資料を作る時に意識していること #登壇資料_findy
konifar
4
1.1k
AIによる開発の民主化を支える コンテキスト管理のこれまでとこれから
mulyu
3
270
AI Schema Enrichment for your Oracle AI Database
thatjeffsmith
0
280
Spinner 軸ズレ現象を調べたらレンダリング深淵に飲まれた #レバテックMeetup
bengo4com
1
230
副作用をどこに置くか問題:オブジェクト指向で整理する設計判断ツリー
koxya
1
610
Oxlintはいいぞ
yug1224
5
1.3k
そのAIレビュー、レビューしてますか? / Are you reviewing those AI reviews?
rkaga
6
4.6k
責任感のあるCloudWatchアラームを設計しよう
akihisaikeda
3
170
Featured
See All Featured
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
0
250
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
66
37k
Principles of Awesome APIs and How to Build Them.
keavy
128
17k
The #1 spot is gone: here's how to win anyway
tamaranovitovic
2
940
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.2k
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
0
170
Statistics for Hackers
jakevdp
799
230k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
450
Building AI with AI
inesmontani
PRO
1
690
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
1
300
Transcript
Bletchley Park Daniela Petruzalek Developer Relations, Google Cloud Go for
GenAI!
About me… DevRel at Google UK Originally from Brazil Backend
/ Data Engineer Currently obsessed with AI Love Games, Anime and Cats =^_^=
Agenda • Why Go? • Genkit Go • Agent Development
Kit • Go SDK for MCP
Why Go?
Why Go? Because it has a cute mascot! Bletchley Park
Or because… It’s a compiled language Code is simple to
read / maintain It has a rich standard library Great performance and tooling It is fun!* * based on my totally biased personal opinion
The two sides of GenAI Code generation (aka “vibe coding”)
AI workloads in production
Go for GenAI: Code generation Compiled: tight feedback loop Code
is standardised: better for training models Standard library: less moving parts Tooling: automate code quality checks
Go for GenAI: Production Workloads Great performance Concurrency out-of-the-box (go
func()) Tooling (go vet, trace, pprof, static analysis …) Rich ecosystem of AI frameworks
Genkit is an open-source framework for building full-stack AI-powered applications
Bletchley Park
Key Features Model support: Google, Ollama, OpenAI, … Building blocks:
structured output, tool calling, multi-modal input/output and more. Developer tools: CLI and developer UI Production monitoring: Firebase dashboard
// Genkit: Define and Run a Flow g := genkit.Init(ctx,
genkit.WithPlugins(&googlegenai.VertexAI{}) ) helloFlow := genkit.DefineFlow(g, "helloFlow", func(ctx context.Context, prompt string) (string, error) { resp, _ := genkit.Generate(ctx, g, ai.WithModelName("vertexai/gemini-2.5-flash"), ai.WithPrompt(prompt)) return resp.Text(), nil }, ) result, _ := helloFlow.Run(ctx, "Say hello!") fmt.Println(result)
// Genkit: Define a Flow Server g := genkit.Init(ctx, genkit.WithPlugins(&googlegenai.VertexAI{})
) genkit.DefineFlow(g, "helloFlow", func(ctx context.Context, prompt string) (string, error) { resp, _ := genkit.Generate(ctx, g, ai.WithModelName("vertexai/gemini-2.5-flash"), ai.WithPrompt(prompt)) return resp.Text(), nil }, ) // Keep running to serve the flow <-ctx.Done()
None
Agent Development Kit (ADK) for Go An open-source toolkit for
building, evaluating, and deploying AI agents Bletchley Park
Key Features Model agnostic, deployment agnostic Agentic workflows: sequential, parallel,
loop, … Pre-built (search, code exec) and custom tools Built-in evaluation
// ADK: Create and Launch an Agent model, _ :=
gemini.NewModel(ctx, "gemini-2.5-flash", &genai.ClientConfig{Backend: genai.BackendVertexAI}) agent, _ := llmagent.New(llmagent.Config{ Name: "hello_agent", Model: model, Instruction: "You are a helpful assistant.", }) full.NewLauncher().Execute(ctx, &adk.Config{ AgentLoader: services.NewSingleAgentLoader(agent), }, []string{"console"})
None
Genkit vs ADK
None
Model Context Protocol (MCP) is an open standard that allows
AI models to connect and communicate with external tools and data sources Bletchley Park Go SDK for MCP
Shameless plug… Session: Hello, MCP World! @ 12:20 PM Lab:
Build an MCP with Gemini CLI and Go @ 3:45 PM
Bletchley Park Daniela Petruzalek Developer Relations, Google Cloud danicat.dev |
@danicat83 Thank you!