مكتبة NestJS لبناء حلول فعالة وقابلة للتطوير وسريعة باستخدام OpenAI Assistant API (روبوتات الدردشة).
ابدأ عملية تطوير مساعد الذكاء الاصطناعي في أقل من 15 دقيقة
تقديم مكتبة NestJS. سواء كنت تقوم بإنشاء مساعد افتراضي، أو برنامج دردشة تفاعلي لإشراك تجارب المستخدم، فإن مكتبتنا تمكّنك من الاستفادة من إمكانات الذكاء الاصطناعي المتطورة بأقل جهد.
توفر المكتبة نقاط نهاية API جاهزة للاستخدام للتعامل مع مساعدك وخادم WebSocket للاتصال في الوقت الفعلي بين العميل والمساعد. قم بتثبيت المكتبة ولصق التكوين لتشغيلها.
فيديو - مساعد الذكاء الاصطناعي في 15 دقيقة
يحتوي المستودع على مكتبة ولكنه يوفر أيضًا ميزات إضافية. يمكنك فقط استنساخ المستودع واستخدامه على الفور للاستفادة من جميع الميزات:
ستتعلم في هذا القسم كيفية دمج مكتبة AI Assistant في تطبيق NestJS الخاص بك. سوف ترشدك الخطوات التالية خلال عملية إعداد المكتبة وإنشاء وظائف بسيطة.
^20.0.0
)^10.0.0
الإصدار)^10.0.0
)^4.51.0
)افتح أو أنشئ تطبيق NestJS الخاص بك حيث تريد دمج مساعد الذكاء الاصطناعي. لإنشاء تطبيق NestJS جديد، استخدم الأمر التالي:
nest new project-name
الآن عليك تثبيت الحزم. انتقل إلى الخطوة التالية.
تأكد من أنك في الدليل الجذر لمشروعك. قم بتثبيت المكتبة وحزمة openai
باستخدام npm:
npm i @boldare/openai-assistant openai --save
تم تثبيت المكتبة ولكن يتعين علينا تكوينها. انتقل إلى الخطوة التالية.
قم بإعداد متغيرات البيئة الخاصة بك، وقم بإنشاء متغيرات البيئة في ملف .env
في الدليل الجذر للمشروع، وقم بتعبئته بالأسرار الضرورية. معرف المساعد اختياري ويعمل كمعرف فريد لمساعدك. عندما لا يتم تعيين متغير البيئة، سيتم إنشاء المساعد تلقائيًا. يمكنك استخدام معرف المساعد للاتصال بمساعد موجود، والذي يمكن العثور عليه في منصة OpenAI بعد إنشاء مساعد.
قم بإنشاء ملف .env
في الدليل الجذر لمشروعك وقم بتعبئته بالأسرار الضرورية:
touch .env
أضف المحتوى التالي إلى ملف .env
:
# OpenAI API Key
OPENAI_API_KEY =
# Assistant ID - leave it empty if you don't have an assistant to reuse
ASSISTANT_ID =
يرجى ملاحظة أن ملف .env
لا ينبغي أن يكون ملتزمًا بالمستودع. أضف ملف .env
إلى ملف .gitignore
لمنع الالتزام به.
كانت هذه هي الخطوة الأولى اللازمة لتشغيل المكتبة. والخطوة التالية هي تكوين المساعد.
توفر المكتبة طريقة لتكوين المساعد باستخدام أسلوب AssistantModule.forRoot
. تأخذ الطريقة كائن التكوين كوسيطة. قم بإنشاء ملف تكوين جديد كما هو الحال في نموذج ملف التكوين (chat.config.ts) واملأه بالتكوين الضروري.
// chat.config.ts file
import { AssistantConfigParams } from '@boldare/openai-assistant' ;
import { AssistantCreateParams } from 'openai/resources/beta' ;
// Default OpenAI configuration
export const assistantParams : AssistantCreateParams = {
name : 'Your assistant name' ,
instructions : `You are a chatbot assistant. Speak briefly and clearly.` ,
tools : [ { type : 'file_search' } ] ,
model : 'gpt-4-turbo' ,
temperature : 0.05 ,
} ;
// Additional configuration for our assistant
export const assistantConfig : AssistantConfigParams = {
id : process . env [ 'ASSISTANT_ID' ] ,
params : assistantParams ,
filesDir : './apps/api/src/app/knowledge' ,
toolResources : {
file_search : {
// Provide files if you use file_search tool
fileNames : [ 'example1.txt' , 'example2.txt' ] ,
} ,
} ,
} ;
يمكن العثور على مزيد من التفاصيل حول التكوين في الويكي.
من الآن يمكنك تشغيل التطبيق الخاص بك والاتصال بالمساعد.
يتيح لك استدعاء الوظائف توسيع قدرات المساعد باستخدام المنطق المخصص. إذا كنت لن تستخدم استدعاء الوظائف، فيمكنك الانتقال إلى: الخطوة 5: الاختبار.
قم بإنشاء خدمة جديدة تعمل على توسيع فئة AgentBase
، وملء التعريف وتنفيذ طريقة output
.
output
هي الطريقة الرئيسية التي سيتم استدعاؤها عند استدعاء الوظيفة بواسطة المساعد.definition
هي كائن يصف الوظيفة ومعلماتها حتى يتمكن المساعد من فهم كيفية استدعائها.لمزيد من المعلومات حول استدعاء الوظائف، يمكنك الرجوع إلى وثائق OpenAI.
يمكن العثور على تعليمات إنشاء وظيفة في الويكي، بينما يمكن العثور على أمثلة في دليل الوكلاء.
إذا قمت بتحديد دالة وطريقة الإخراج، فيمكنك الآن استدعاؤها من المساعد فقط عن طريق مطالبته بتنفيذ الإجراء الموضح في تعريف الوظيفة.
قم بتشغيل التطبيق الخاص بك وهذا سيسمح لك باختبار المساعد.
# use this if you are using the repository:
npm run start:dev
# if you are using your own NestJS application, please check the npm scripts in the package.json file
# defualt command for NestJS is:
npm run start
ثم يمكنك اختبار المساعد.
/assistant/threads
مع الكائن الفارغ في النص ./assistant/chat
بالنص التالي: {
"threadId" : " your-thread-id " ,
"content" : " Hello, how are you? "
}
/assistant/chat
بنفس النص كما في الخطوة 2.تهاني! لقد نجحت في دمج مكتبة AI Assistant في تطبيق NestJS الخاص بك. ؟
يمكن العثور على الوثائق الكاملة حول كيفية تشغيل العرض التوضيحي مع جميع التطبيقات والمكتبات من المستودع في wiki.
مهندسو Boldare موجودون هنا لمساعدتك. إذا كان لديك أي أسئلة أو كنت بحاجة إلى مساعدة في التنفيذ، فلا تتردد في حجز مكالمة مع أحد مهندسينا.
تعرف على المزيد كيف يمكن لـ Boldare مساعدتك في تطوير الذكاء الاصطناعي .
يمكنك أيضًا طرح الأسئلة في قسم مناقشات GitHub.
هل ترغب في رؤية الميزات الجديدة في المكتبة؟
@boldare/openai-assistant
وهذا المستودع مرخص من معهد ماساتشوستس للتكنولوجيا