Perpustakaan dirancang untuk pengembang yang ingin mengeksplorasi potensi Model Bahasa Besar (LLM) dan AI generatif lainnya melalui pendekatan yang bersih, efektif, dan idiomatis Go.
Selamat datang di agency ! ♂️
Instal paket:
go get github.com/neurocult/ agency
Contoh obrolan:
package main
import (
"bufio"
"context"
"fmt"
"os"
_ "github.com/joho/godotenv/autoload"
"github.com/neurocult/ agency "
"github.com/neurocult/ agency /providers/openai"
)
func main () {
assistant := openai .
New (openai. Params { Key : os . Getenv ( "OPENAI_API_KEY" )}).
TextToText (openai. TextToTextParams { Model : "gpt-3.5-turbo" }).
SetPrompt ( "You are helpful assistant." )
messages := [] agency . Message {}
reader := bufio . NewReader ( os . Stdin )
ctx := context . Background ()
for {
fmt . Print ( "User: " )
text , err := reader . ReadString ( 'n' )
if err != nil {
panic ( err )
}
input := agency . UserMessage ( text )
answer , err := assistant . SetMessages ( messages ). Execute ( ctx , input )
if err != nil {
panic ( err )
}
fmt . Println ( "Assistant: " , answer )
messages = append ( messages , input , answer )
}
}
Itu saja!
Lihat contoh untuk mengetahui kasus penggunaan yang lebih kompleks termasuk RAG dan operasi multimodal.
Pure Go : cepat dan ringan, diketik secara statis, tidak perlu dipusingkan dengan Python atau JavaScript
Tulis kode yang bersih dan ikuti arsitektur yang bersih dengan memisahkan logika bisnis dari implementasi nyata
Buat operasi khusus dengan mudah dengan menerapkan antarmuka sederhana
Susun operasi bersama menjadi proses dengan kemampuan untuk mengamati setiap langkah melalui interseptor
Pengikatan API OpenAI (dapat digunakan untuk API apa pun yang kompatibel dengan OpenAI: teks ke teks (penyelesaian), teks ke gambar, teks ke ucapan, ucapan ke teks
Inti dari agency adalah ambisi untuk memberdayakan pengguna untuk membangun agen otonom. Meskipun sempurna untuk semua jenis aplikasi AI generatif , mulai dari antarmuka obrolan hingga analisis data yang kompleks, tujuan utama perpustakaan kami adalah menyederhanakan pembuatan sistem AI otonom. Baik Anda membangun asisten individu atau mengkoordinasikan kelompok agen, agency menyediakan alat dan fleksibilitas yang diperlukan untuk mewujudkan konsep-konsep canggih ini dengan mudah dan efisien.
Dalam lanskap AI generatif, perpustakaan berbasis Go jarang ditemukan. Yang paling menonjol adalah LangChainGo, port Go dari Python LangChain. Namun, menerjemahkan Python ke Go bisa jadi rumit dan mungkin tidak cocok dengan gaya idiomatis Go. Ditambah lagi, beberapa orang mempertanyakan desain LangChain, bahkan dengan Python. Situasi ini menunjukkan kebutuhan yang jelas akan alternatif Go yang idiomatis.
Tujuan kami adalah mengisi kesenjangan ini dengan perpustakaan Go-sentris yang menekankan kode yang bersih dan sederhana serta menghindari kerumitan yang tidak perlu. agency dirancang dengan inti yang kecil dan kuat, mudah diperluas dan sangat sesuai dengan kekuatan Go dalam pengetikan statis dan kinerja. Ini adalah jawaban kami atas kurangnya solusi pemerintah dalam AI generatif.
Di versi berikutnya: