共计 3373 个字符,预计需要花费 9 分钟才能阅读完成。
首先咱们介绍一下明天的配角 Claude
Claude 是最近新凋谢的一款 AI 聊天机器人,是世界上最大的语言模型之一,比之前的一些模型如 GPT-3 要弱小得多,因而 Claude 被认为是 ChatGPT 最无力的竞争对手。Claude 的研发公司是专一人工智能平安和钻研的初创公司 Anthropic,由前 OpenAI 员工独特创建的。往年 3 月份 Anthropic 取得了谷歌 3 亿美元的投资,谷歌也因而取得其 10% 股份。
据官网介绍,Claude 的外围模型经由训练,指标是变得有用、诚恳和有害。此外 Claude 更能了解和承受自然语言,和它对话无需简单的技巧,能够轻松失去具体且易于了解的答案。
与 ChatGPT 等大型语言模型一样,Claude 的利用场景十分宽泛,信息搜寻、内容总结摘要、写作帮助、创意生成、问答、编程这些工作它都能轻松实现。目前 Claude 曾经被利用在多个出名产品中,比方常识笔记工具 Notio AI 就是用 Claude 帮助用户进行智能写作,国外问答社区 Quora 也在本人的 AI 聊天应用程序 Poe 中置入了 Claude。
划重点:Claude 是收费的,至多目前是这样
理解完后咱们开始操作
第一步:注册 Slack
slack 官网地址:https://slack.com/
注册时尽量抉择应用 google 的 gmail 邮箱,后续操作的成功率高。不要应用 qq 等国产邮箱。
第二步:创立工作区
工作区是一个独立的合作环境, 每个工作区有本人的渠道(Channels)、成员、权限设置等。不同工作区之间彼此隔离, 成员和资源不共享。
至此,工作区就创立好了!
第三步:增加 Claude 利用到工作区(这一步须要魔法)
关上 Slack-Claude 官网网址(请自备梯子): https://www.anthropic.com/claude-in-slack
而后受权增加 Claude 到 Slack。
如果呈现以下界面,阐明以后 ip 被封闭了。请自行切换节点,尝试应用全局代理,切换无痕浏览等办法。
换了个浏览器,果然好了。点击容许,呈现 Success 就胜利了。
第四步:开明高级性能
回到工作区页面,左侧会主动呈现 Claude 利用,此时聊天会发现 Claude 是不会回复任何音讯的。
解决方案:点击左侧 Slack Connect,没有这个选项的话,就点击浏览 Slack,在下拉框里找到 Slack Connect。
社区小伙伴的经验通知我,这个中央有的账户没有收费试用的机会,但我创立了几个工作区了,都能够收费试用,可能是因为试用的 gmail 邮箱吧。没有就从新注册新账号,或新建工作区走流程尝试,有钱就无所谓。所以后面注册时会让你尽量应用 gmail 邮箱。
创立结束之后在左侧找到刚刚新建的频道,而后咱们为这个频道增加 Claude 利用。
增加结束后进入刚建的频道,激活高级性能。
OK 到这一步,你曾经能够欢快的在 Slack 中和 Claude 聊天啦,但咱们的目标是在本人的我的项目中接入,所以还须要略微的再操作一下!
第五步:接入 API
尽管 Claude 临时还没凋谢 API,咱们能够用一点其余的方法。
咱们应用 Laf 提供的云函数接入 api,开发速度更快。2023 年了,如果你还不晓得 Laf,那我只能再讲一遍了。
Laf 是一个 Serverless 框架,提供开箱即用的云函数,云数据库,对象存储等能力,是一个十分洁净清新的开发平台,不仅入门简略,还能像写博客一样写代码!life is short, you need laf:)
🏠官网(国内):https://laf.run
🌎官网(海内):https://laf.dev
上面让咱们开始操作~
创立云函数
增加依赖 claude-api-slack
写入以下代码
这段代码很简略,看正文就懂了。除了云函数局部,次要代码在一般 nodejs 中也同样实用。
import cloud from '@lafjs/cloud'
// 云函数入口代码
// 接管一个 question,和一个可选的上下文 id:conversationId
export default async function (ctx: FunctionContext) {const { question, conversationId} = ctx.query
return await askCluadeAPi(question, conversationId)
}
// 调用 api 的次要代码
async function askCluadeAPi(question, conversationId) {
// 见以下第一个步骤,受权以及获取 user-token 步骤
const token = 'xoxp-xxxxxx'
// 见以下第二个步骤,获取 claude appid
const bot = 'U0xxxxxx'
// chatId 就是工作区间里新建的渠道。channel 名称
const chatId = 'ai 聊天'
// 初始化 claude
const {Authenticator} = await import('claude-api-slack')
// 通过缓存保留客户端,能够防止每次发问都是在新会话
let claudeClient = cloud.shared.get('claudeClient')
if (!claudeClient) {claudeClient = new Authenticator(token, bot)
cloud.shared.set('claudeClient', claudeClient)
}
// 创立频道并返回房间 ID:channel
const channel = await claudeClient.newChannel(chatId)
let result
if (conversationId) {
result = await claudeClient.sendMessage({
text: question,
channel,
conversationId,
onMessage: (originalMessage) => {console.log("loading", originalMessage)
}
})
} else {
result = await claudeClient.sendMessage({
text: question,
channel,
onMessage: (originalMessage) => {// console.log("loading", originalMessage)
console.log("loading", originalMessage)
}
})
}
console.log("success", result)
return {
code: 0,
msg: result.text,
conversationId: result.conversationId
}
}
受权以及获取 user-token
- 进入 slack 官网并登录(https://slack.com/)
- 进入 api 配置页面(https://api.slack.com/)
- 点击页面右上角 Your apps
- 点击 Create an App
- 点击 From scratsh
- 输出 App Name,抉择后面创立的工作空间,点击 Create App
- 点击左侧边栏的 OAuth & Permissions
- 找到 Scopes 模块下的 User Token Scopes,点击 Add an OAuth Scopes 按钮,顺次搜寻增加以下权限
channels:history
channels:read
channels:write
groups:history
groups:read
groups:write
chat:write
im:history
im:write
mpim:history
mpim:write
留神:这里的搜寻是含糊搜寻,抉择权限时不要搞错了
- 点击 OAuth Tokens for Your Workspace 下的 Install to Workspace 按钮,确认受权
至此,你就领有了一串 User OAuth Token,找到 OAuth Tokens for Your Workspace
获取 claude appid
第六步:测试
ok 写到这里,咱们只须要点击右上角的公布,就能够在任何中央调用这个云函数,把 claude 接入到本人的我的项目中了!
如果你也想接入 claude,能够点击这个链接(https://forum.laf.run/d/648)报名,跟社区同学一起交换,还有机会赢取丰富的奖品。