Menyusul peluncuran Firebase Genkit untuk Node.js di Google I/O, tim Firebase dan Go berkolaborasi untuk menghadirkan Genkit ke komunitas Go. Kami sangat senang mengumumkan Genkit untuk Go, framework open source untuk membangun aplikasi berteknologi AI dan layanan cloud secara native di Go, dengan memanfaatkan kesederhanaan, skalabilitas, dan keamanan bahasa pemrograman ini yang sudah terkenal.
Dengan menggabungkan keunggulan serentak dan performa Go dengan library dan alat Genkit, developer bisa membuat aplikasi AI generatif yang memanfaatkan potensi kedua teknologi ini secara maksimal. Beberapa potensi kasus penggunaannya antara lain:
Genkit untuk Go saat ini masih dalam versi alfa, membuatnya ideal untuk eksperimen dan eksplorasi. Kami mengajak Anda untuk membuat prototipe project berteknologi AI dan membagikan masukan kepada kami. Input Anda akan secara langsung membentuk roadmap Genkit untuk Go, membantu kami memberdayakan developer Go untuk membangun aplikasi AI generasi berikutnya yang siap produksi serta skalabel.
Genkit adalah framework yang diprioritaskan bagi developer untuk membangun aplikasi berteknologi AI. Library Go kami, yang ditulis dalam bahasa Go murni, menganut idiom dan konvensi bahasa ini, sehingga langsung terasa familier dan produktif bagi developer Go. Genkit menyediakan abstraksi composable yang ringan untuk menyederhanakan pengembangan alur kerja AI yang canggih tanpa mengorbankan kemampuan kustomisasi dan kontrol.
Berikut adalah beberapa cara Genkit meningkatkan produktivitas Anda saat membangun aplikasi AI generatif:
func main() {
ctx := context.Background()
// Initialize the Google AI plugin.
if err := googleai.Init(ctx, nil); err != nil {
log.Fatal(err)
}
// Define a simple flow that prompts an LLM to generate menu suggestions.
// Flows are functions that integrate with Genkit tooling and provide
// observability over multi-step workflows.
genkit.DefineFlow("menuSuggestionFlow", func(ctx context.Context, input string) (string, error) {
// Initialize gemini-1.5-flash model from Google AI.
m := googleai.Model("gemini-1.5-flash")
if m == nil {
return "", errors.New("menuSuggestionFlow: failed to find model")
}
// Construct a request and send it to the model API (Google AI).
resp, err := m.Generate(ctx,
ai.NewGenerateRequest(
&ai.GenerationCommonConfig{Temperature: 1},
ai.NewUserTextMessage(fmt.Sprintf(`Suggest an item for the menu of a %s themed restaurant`, input))),
nil)
if err != nil {
return "", err
}
// Handle the response from the model API.
text, err := resp.Text()
if err != nil {
return "", fmt.Errorf("menuSuggestionFlow: %v", err)
}
return text, nil
})
// Initialize Genkit flows server.
if err := genkit.Init(ctx, nil); err != nil {
log.Fatal(err)
}
}
Mencapai hasil generasi AI terbaik melibatkan pertimbangan yang cermat terhadap model, konfigurasi, perintah, dan bentuk output Anda. Genkit menyediakan Dotprompt, sebuah format file sederhana yang memudahkan proses rekayasa perintah Anda.
Dengan Dotprompt, Anda bisa menentukan template perintah yang kompleks, skema input dan output, pemilihan model, dan opsi konfigurasi model, semuanya dalam satu file .prompt
. Ini membuat semuanya terorganisir, sehingga mempermudah pengujian, versi, dan men-deploy perintah bersama dengan kode Go Anda.
---
model: vertexai/gemini-1.5-pro
config:
temperature: 0.9
input:
schema:
location: string
style?: string
name?: string
default:
location: a restaurant
---
You are the world's most welcoming AI assistant and are currently working at {{location}}.
Greet a guest{{#if name}} named {{name}}{{/if}}{{#if style}} in the style of {{style}}{{/if}}.
Sejatinya, Genkit untuk Go adalah framework yang ringan dan tidak bergantung pada penyedia. Kami menawarkan koleksi plugin yang terus bertambah untuk terintegrasi secara mulus dengan model tertentu, database vektor, dan layanan cloud dari Google dan penyedia pihak ketiga.
Pada rilis ini, Genkit untuk Go menyediakan plugin berikut:
Sistem plugin Genkit dirancang untuk terbuka dan dapat diperluas ke semua model, database vektor, evaluator, alat, dan lainnya. Kami secara aktif mendorong komunitas untuk berkontribusi pada ekosistem Genkit dengan memublikasikan plugin mereka sendiri.
Nantikan panduan pengembangan plugin Genkit untuk Go yang akan segera hadir ke dokumentasi kami!
Membangun aplikasi berteknologi AI memiliki tantangan unik, seperti membuat perintah yang efektif, melakukan proses debug output yang tidak terduga, mengoptimalkan proses pengambilan, dan lainnya. Kami percaya bahwa kompleksitas ini dapat diatasi dengan menggunakan alat khusus yang melampaui utilitas IDE pada umumnya.
CLI Genkit dan UI developer berbasis browser yang intuitif menyediakan alat yang efektif untuk mempermudah pengembangan AI generatif Anda.
Dengan alat ini Anda bisa:
Jika Anda suka bekerja dalam VS Code atau Project IDX, Anda bisa membuka UI developer Genkit di browser terintegrasi IDE dan menggunakannya berdampingan dengan kode Anda.
Saat Anda siap untuk men-deploy, Genkit membantu memantau aplikasi berteknologi AI dalam produksi untuk memastikan aplikasi tersebut melayani pengguna seperti yang diharapkan. Plugin telemetri Google Cloud Genkit membantu Anda mengekspor log, metrik, dan rekaman aktivitas dengan mudah dari aplikasi berteknologi AI ke Operations Suite Google Cloud.
Meskipun kami menyediakan integrasi Google Cloud secara langsung, kami mengimplementasikan instrumentasi Genkit melalui standar OpenTelemetri yang umum digunakan, serta bisa diintegrasikan dengan banyak platform kemampuan observasi populer.
Kini setelah Genkit untuk Go tersedia dalam versi alfa, Anda bisa mulai menggunakannya untuk mengintegrasikan alur kerja AI ke dalam aplikasi Anda, dan bergabung dengan komunitas Go AI Developer yang terus berkembang.
Untuk memulai, lihat Panduan Mulai dengan Genkit untuk Go.
Anda juga bisa membuka template Genkit di ruang kerja IDX yang telah dikonfigurasi sebelumnya.
Kami sangat ingin berkolaborasi dengan Anda!
Bersama-sama, mari kita bangun ekosistem yang efektif untuk pengembangan AI di Go. Kami tak sabar ingin segera melihat kreasi Anda dengan Genkit!