مكتبة مصممة للمطورين المتحمسين لاستكشاف إمكانات نماذج اللغات الكبيرة (LLMs) وغيرها من الذكاء الاصطناعي التوليدي من خلال نهج نظيف وفعال ومباشر.
مرحبا بكم في agency ! ♂️
تثبيت الحزمة:
go get github.com/neurocult/ agency
مثال للدردشة:
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 )
}
}
هذا كل شيء!
راجع الأمثلة لمعرفة حالات الاستخدام الأكثر تعقيدًا بما في ذلك RAGs وعمليات الوسائط المتعددة.
Pure Go : سريع وخفيف الوزن، ومكتوب بشكل ثابت، ولا داعي للعبث بـ Python أو JavaScript
اكتب تعليمات برمجية نظيفة واتبع البنية النظيفة من خلال فصل منطق العمل عن التطبيقات الملموسة
يمكنك إنشاء عمليات مخصصة بسهولة من خلال تنفيذ واجهة بسيطة
قم بتأليف العمليات معًا في عمليات مع القدرة على مراقبة كل خطوة عبر المعترضات
روابط OpenAI API (يمكن استخدامها لأي واجهة برمجة تطبيقات متوافقة مع openai: نص إلى نص (إكمال)، نص إلى صورة، نص إلى كلام، كلام إلى نص
في قلب agency يوجد الطموح لتمكين المستخدمين من بناء وكلاء مستقلين. على الرغم من أنها مثالية لجميع نطاق تطبيقات الذكاء الاصطناعي التوليدية ، بدءًا من واجهات الدردشة وحتى تحليل البيانات المعقدة، فإن الهدف النهائي لمكتبتنا هو تبسيط إنشاء أنظمة الذكاء الاصطناعي المستقلة. سواء كنت تقوم ببناء مساعد فردي أو مجموعات من الوكلاء المنسقين، توفر agency الأدوات والمرونة اللازمة لإضفاء الحيوية على هذه المفاهيم المتقدمة بسهولة وكفاءة.
في مشهد الذكاء الاصطناعي التوليدي، تعد المكتبات المستندة إلى Go نادرة. أبرزها هو LangChainGo، وهو منفذ Go لـ Python LangChain. ومع ذلك، فإن ترجمة Python to Go يمكن أن تكون صعبة وقد لا تتناسب بشكل جيد مع أسلوب Go الاصطلاحي. بالإضافة إلى ذلك، يشكك البعض في تصميم LangChain، حتى في لغة Python. يكشف هذا الموقف عن حاجة واضحة لبديل Go اصطلاحي.
هدفنا هو سد هذه الفجوة بمكتبة تتمحور حول Go والتي تركز على التعليمات البرمجية النظيفة والبسيطة وتتجنب التعقيدات غير الضرورية. تم تصميم agency بنواة صغيرة وقوية وسهلة التوسيع ومناسبة تمامًا لنقاط قوة Go في الكتابة والأداء الثابت. إنها إجابتنا على نقص الحلول الأصلية في الذكاء الاصطناعي التوليدي.
في الإصدارات القادمة: