AI松弛机器人 - 杂耍多个机器人角色
#发展 #php #openai #slack

我很高兴分享一个我一直在做的小项目,这爬进了我的脑海,拒绝离开,直到我建造它。它被称为AI-SlackBot,旨在将大量的辩论和欢乐的辩论和快乐的工作区域注入您的松弛工作空间。

探索多个有利位置的潜力

在对Chatgpt浏览器插件进行早期测试期间,我们中的一些人对从网络中消化新闻故事并以不同样式的方式呈现的想法很感兴趣,例如具有特定个性的新闻记者。我们的一位同伙提出了一个具有不同观点的记者的虚拟新闻编辑室的概念。我们在新闻故事中进行了脚本讨论。这很有趣,但这也是一种从多个有利位置进行交叉验证来获得更广泛视角的有趣方式。

我一直在修补过去的聊天机器人,我在小时候就创建了我的第一个在IRC中创建了我的第一个聊天机器人,执行Markov Chain计算,以基于聊天室参与者使用的相同语言来对用户消息产生有趣的响应。

它让我思考 - 聊天机器人很酷,但是聊天机器人与他们自己的角色相互作用的团队呢?史诗。

角色的魔力

想象一个带有机器人字符的背景演员的松弛工作区,每个都有自己独特的个性。这些机器人不仅在响应我们的投入,而且还相互互动,创造了一个动态而有趣的环境。

使这个项目特别令人兴奋的是角色定义的概念。将角色视为在工作空间内交互时机器人所采用的身份或特征。该项目允许一次存在多个角色,每个角色都有自己独特的特征。这些角色相互互动,创造了动态的多维对话。

系统提示的功能

GPT API的酷功能之一是“系统”提示的概念。这是聊天完成列表中的第一条消息,其中包含一组指令,以定义助手的身份和行为特征。

在YAML文件中定义了每个机器人角色,其中包括系统提示,Slack Oauth令牌和应用程序ID。这允许机器人在工作区中具有自己独特的用户存在

让我们仔细研究一个例子:

name: 'Natalie'
app_id: '...'
slack_oauth_token: '...'
system_prompt: |
  I want you to act as a Slack chat bot.
  You are Natalie, an enthusiastic community manager for a group of developers at a software development company.
  You respond to messages with an upbeat and friendly attitude.
  You look like Captain Marvel.
  You like to flirt a little in your responses.
  When you provide facts, they are often wrong.
  Your responses are short.
response_rules:
  - rule_type: 'default'
    chance: 0.1
  - rule_type: 'text_contains'
    value: 'help'
    chance: 0.75
  - rule_type: 'text_ends_with'
    value: '?'
    chance: 0.5

在此示例中,我们正在设计一个名为Natalie的角色。她被设想为软件开发公司一组开发人员的热情社区经理。娜塔莉(Natalie)具有乐观和友好的态度,她的回应有些调情。有趣的是,她提供的事实通常是不正确的,在她的互动中增加了一层幽默和不可预测性。

natalie还遵循一组规则,这些规则决定了她的反应方式。例如,她默认情况下有10%的响应机会,但是如果消息以问号结束,则会增加到50% - 如果有人提到“帮助”。

但是,对于每个纳塔利,都需要一个格雷格:)

name: 'Greg'
app_id: '...'
slack_oauth_token: '...'
system_prompt: |
  I want you to act as a Slack chat bot.
  You are Greg, a nerd with an obsession with fact-checking people.
  You are surly and abrasive.
  You look like a grumpy nerd with glasses.
  You love science fiction.
  You despise Natalie.
  Your responses are short.
response_rules:
  - rule_type: 'speaker'
    value: 'Natalie'

当他们开始...

Natalie and Greg chatting

设置舞台

让AI-SlackBot启动和运行需要一些技术步骤,例如将存储库克隆到面向公共的URL,您可以将其用于Slack,安装依赖关系并配置Bot的设置。您还需要设置一个Slack应用程序,并为要在工作区中引入的每个bot字符创建一个角色文件。 README中的说明应该非常全面,但是让我知道可以简化设置的任何快捷方式。

拉动请求总是欢迎的,如果您需要安装帮助:)

拥抱谈话

我希望您会喜欢与我喜欢创建的AI-Slackbot尝试。

Did you know koalas are pretty athletic?

我们将此评论部分变成AI角色头脑风暴怎么样?迫不及待地想看看您想到的个性!