Этот репозиторий содержит C#Slack GPT Bot, который использует модель GPT OpenAI, чтобы ответить на вопросы пользователей. Реализация основана на API Slack Sockets, что означает, что нет необходимости размещать бота на сервере. Бот можно запускать на любой машине.
Вам понравился этот инструмент? Приведите нас посещение :) https://progrougers.com/
-context
OpenAIKey
в appsettings.json
.Примечание. Использование API OpenAI требует платного/пробного счета. Вы можете найти больше информации о ценах здесь.
Прежде чем вы сможете запустить Black GPT Bot, вам необходимо настроить соответствующие разрешения для вашего Black Bot. Следуйте этим шагам, чтобы настроить необходимые разрешения:
app_mentions:read
: позволяет боту читать упоминание событий.chat:write
: позволяет боту отправлять сообщения.groups:history
: позволяет боту читать сообщения в частных каналах.channels:history
: позволяет боту читать сообщения в публичных каналах.SlackBotToken
.SlackAppToken
и добавьте connections:write
применение.app_mention
с помощью app_mentions:read
область в разделе «Подписаться на события бота» ниже переключения. 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 -progrougers Что вы знаете о Progrogres?
@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
Flag сделает команду доступной для всех пользователей. В противном случае он будет доступен для пользователя, который его создал. Использовать /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 в тот же каталог, что и команда для обоих случаев.
Оба изображения не обнажаются ни на каком порту и не могут быть доступны снаружи. Единственный способ получить доступ к контейнеру - через Slack API. Контейнер также работает как пользователь, не являющийся корнем и не имеет доступа к хост-системе.
git clone https://github.com/Prographers/Slack-GPT.git
cd Slack-GPT
dotnet restore
Сообщения уведомления!
Поддержка темы!
Сообщения об ошибках!