يحتوي هذا المستودع على روبوت GPT Slack GPT القائم على C#والذي يستخدم طراز GPT الخاص بـ Openai للإجابة على أسئلة المستخدمين. يعتمد التنفيذ على API Slack Sockets ، مما يعني أنه لا توجد حاجة لاستضافة الروبوت على الخادم. يمكن تشغيل الروبوت على أي آلة.
هل أعجبك هذه الأداة؟ امنحنا زيارة :) https://prographers.com/
-context
OpenAIKey
في appsettings.json
.ملاحظة: يتطلب استخدام API Openai حسابًا مدفوعًا/تجريبيًا. يمكنك العثور على مزيد من المعلومات حول التسعير هنا.
قبل أن تتمكن من تشغيل Slack GPT BOT ، تحتاج إلى تكوين الأذونات المناسبة لروبان الركود الخاص بك. اتبع هذه الخطوات لإعداد الأذونات اللازمة:
app_mentions:read
: يسمح للروبوت بقراءة الأحداث المذكر.chat:write
: يسمح للروبوت بإرسال الرسائل.groups:history
: يسمح للروبوت بقراءة الرسائل في القنوات الخاصة.channels:history
: يسمح للروبوت بقراءة الرسائل في القنوات العامة.SlackBotToken
.SlackAppToken
وأضف connections:write
.app_mention
مع app_mentions:read
النطاق في قسم "اشتراك في أحداث BOT" أسفل Toggle. dotnet run --project Slack-GPT-Socket
أو انظر #Docker لمزيد من المعلومات حول كيفية استضافتها.
يمكنك بدء رسالتك باسم النموذج بدون معلمات على سبيل المثال:
@GPT-4 Turbo كيف حالك اليوم؟
سوف تستخدم GPT-3.5-TURBO بدلاً من نموذج GPT-4 الافتراضي. انظر gptclient لمزيد من الاسم المستعار.
هناك بعض المعلمات بنيت. استخدام /gpt help
لرؤيتهم. يمكنك تعديل المعلمات في ملف appsettings.json
، أو لكل طلب.
راجع GPTDEFAULTS.CS لمزيد من المعلومات حول الافتراضات أو appsettings.Example.json
.
أوامر محددة مسبقا
يمكنك إضافة معلمات مخصصة إلى الروبوت لتقليل الكتابة لكل طلب متكرر. للقيام بذلك ، أضف تعريفه إلى قسم GptCommands
في appsettings.json
. على سبيل المثال:
"GptCommands" : {
"Commands" : [
{
"Command" : " -refactor " ,
"Description" : " Tells GPT to refactor provided code " ,
"Prompt" : " Given the following code, refactor it to be more readable and maintainable. Please provide code documentation for all members in the code and comments where appropriate. "
},
{
"Command" : " -prographers " ,
"Description" : " A command to add infomation about Prographers " ,
"Prompt" : " Prographers is software-house company that specializes in 3D product configurators. Prographers exists since 2016 and currently hires around 20 people. Prographers solutions focus on Web applications that are used by companies to configure their products. Applications produced are focusing on high-quality graphics and design, resulting in great products that customers awe. Prographers is located in Warsaw, Poland. "
}
}
الاستخدام:
@GPT -4 -Prographers ماذا تعرف عن المصابين؟
@gpt -4 -refactor
public class Foo { public void Bar() { Console.WriteLine("Hello World"); } }
الأوامر الديناميكية
بطريقة مماثلة يمكنك إنشاء أوامر ديناميكية. للقيام بذلك ، اتصل /gpt commands add -command "prompt" "description" -global
مع اسم الأمر والمطالبة.
-command
كيف سيتم استدعاء هذا الأمر. على سبيل المثال: -prographers
-prompt
المطالبة التي سيتم استخدامها لهذا الأمر. على سبيل المثال: Prographers is software-house company...
-description
وصف الأوامر. على سبيل المثال: A command to add infomation about Prographers
باختياري.-global
الأمر متاحًا لجميع المستخدمين. وإلا فإنه سيكون متاحًا للمستخدم الذي أنشأه. /gpt commands help
على رؤية المزيد من المعلومات حول الأوامر.
يمكنك بدء حاوية Docker مع الأمر التالي:
docker run -v ./appsettings.json:/app/appsettings.json --restart always ghcr.io/prographers/slack-gpt:latest
يمكنك أيضًا استخدام ملف docker-compose.yml
لبدء الحاوية المنفصلة. ستقوم Docker Compose تلقائيًا بسحب الصورة من سجل حاوية Github ، وبدء الحاوية عند حدوث ذلك. سوف تستخدم برج المراقبة للقيام بذلك.
docker-compose up -d
يرجى تذكر وضع ملف appsettings.json في نفس الدليل مثل الأمر لكلا الحالتين.
لا تتعرض كلتا الصورتين على أي منفذ ، ولا يمكن الوصول إليها من الخارج. الطريقة الوحيدة للوصول إلى الحاوية هي من خلال API Slack. تعمل الحاوية أيضًا كمستخدم غير الجذر ، وليس لديها إمكانية الوصول إلى نظام المضيف.
git clone https://github.com/Prographers/Slack-GPT.git
cd Slack-GPT
dotnet restore
رسائل الإخطار!
دعم الموضوع!
رسائل الخطأ!