乐趣区

关于人工智能:三分钟免费将-Claude-API-接入个人服务

首先咱们介绍一下明天的配角 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)报名,跟社区同学一起交换,还有机会赢取丰富的奖品。

退出移动版