Repositori ini berisi bot GPT Slack berbasis C#yang menggunakan model GPT OpenAI untuk menjawab pertanyaan pengguna. Implementasinya didasarkan pada Slack Sockets API, yang berarti tidak perlu meng -host bot pada server. Bot dapat dijalankan di mesin apa pun.
Apakah Anda menyukai alat ini? Beri Kami Kunjungan :) https://prographers.com/
-context
OpenAIKey
di appsettings.json
.Catatan: Menggunakan API OpenAI memerlukan akun berbayar/percobaan. Anda dapat menemukan informasi lebih lanjut tentang harga di sini.
Sebelum Anda dapat menjalankan bot GPT Slack, Anda perlu mengonfigurasi izin yang sesuai untuk bot Slack Anda. Ikuti langkah -langkah ini untuk mengatur izin yang diperlukan:
app_mentions:read
: Memungkinkan bot untuk membaca acara yang disebutkan.chat:write
: Memungkinkan bot mengirim pesan.groups:history
: Memungkinkan bot membaca pesan di saluran pribadi.channels:history
: Memungkinkan bot untuk membaca pesan di saluran publik.SlackBotToken
.SlackAppToken
dan tambahkan connections:write
lingkup.app_mention
dengan app_mentions:read
ruang lingkup di bagian "Berlangganan ke Bot Events" di bawah sakelar. dotnet run --project Slack-GPT-Socket
Atau lihat #Docker untuk informasi lebih lanjut tentang cara meng -hostnya.
Anda dapat memulai pesan Anda dengan nama model tanpa parameter misalnya:
@GPT-4 Turbo Bagaimana kabarmu hari ini?
Akan menggunakan GPT-3.5-turbo alih-alih model GPT-4 default. Lihat GPTClient untuk lebih banyak alias.
Ada beberapa parameter bawaan. Gunakan /gpt help
melihatnya. Anda dapat memodifikasi parameter dalam file appsettings.json
, atau per permintaan.
Lihat gptdefaults.cs untuk informasi lebih lanjut tentang default atau appsettings.Example.json
.
Perintah yang telah ditentukan
Anda dapat menambahkan parameter khusus Anda ke bot untuk meminimalkan pengetikan untuk setiap permintaan yang direpati. Untuk melakukannya, tambahkan definisi ke bagian GptCommands
di appsettings.json
. Misalnya:
"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. "
}
}
penggunaan:
@GPT -4 -Prographers Apa yang Anda ketahui tentang pemrograp?
@Gpt -4 -refactor
public class Foo { public void Bar() { Console.WriteLine("Hello World"); } }
Perintah Dinamis
Dengan cara yang sama Anda dapat membuat perintah dinamis. Untuk melakukannya, hubungi /gpt commands add -command "prompt" "description" -global
perintah dengan nama perintah dan prompt.
-command
bagaimana perintah ini akan dipanggil. misalnya: -prographers
-prompt
prompt yang akan digunakan untuk perintah ini. misalnya: Prographers is software-house company...
-description
deskripsi perintah. EG: A command to add infomation about Prographers
ini adalah opsional.-global
Flag akan membuat perintah tersedia untuk semua pengguna. Kalau tidak, itu akan tersedia untuk pengguna yang membuatnya. Penggunaan /gpt commands help
untuk melihat informasi lebih lanjut tentang perintah tersebut.
Anda dapat memulai wadah Docker dengan perintah berikut:
docker run -v ./appsettings.json:/app/appsettings.json --restart always ghcr.io/prographers/slack-gpt:latest
Anda juga dapat menggunakan file docker-compose.yml
untuk memulai wadah, terlepas. Docker Compose akan secara otomatis menarik gambar dari registri wadah GitHub, dan mulai wadah saat itu terjadi. Itu akan menggunakan menara menara untuk melakukan itu.
docker-compose up -d
Harap ingat untuk meletakkan file appsettings.json di direktori yang sama dengan perintah untuk kedua kasus.
Kedua gambar tidak terpapar pada port apa pun, dan tidak dapat diakses dari luar. Satu -satunya cara untuk mengakses wadah adalah melalui Slack API. Wadah ini juga berjalan sebagai pengguna non-root, dan tidak memiliki akses ke sistem host.
git clone https://github.com/Prographers/Slack-GPT.git
cd Slack-GPT
dotnet restore
Pesan Pemberitahuan!
Dukungan utas!
Pesan kesalahan!