项目介绍:claude-api-py
claude-api-py 是一个非官方的 Python 库,旨在为 Anthropic 的 Claude LLM 应用程序提供免费 API 访问接口。类似于 ChatGPT,Claude 是一款强大的语言模型应用。通过该库,开发者可以在自己的 Python 项目中与 Claude API 进行交互。
背景
Anthropic 公司已推出了 Claude 这一语言模型应用程序。为了让更多开发者免费地使用 Claude 的功能,该项目提供了一个非官方的 API 接口。使用此库,开发者可以在 Python 项目中轻松地调用 Claude 的服务。
实现的功能
目前,claude-api-py 项目正在积极开发中,以下是一些已实现的功能:
- 获取所在的组织信息
- 获取参与的对话
- 开启新对话
- 发送消息并接收回复
- 删除对话
- 从文件创建附件
- 发送附件
- 获取消息历史
需要注意的是,该 API 是同步的。
待实现功能
项目仍处于开发阶段,以下功能正在规划中:
- 单元测试
- 修复
claude_2
以外的模型 - 实现异步模式
- 更好的缓存机制
- 更干净的错误处理和提示
鉴于该项目尚不稳定,因此无法保证在所有场景下正常工作。如果用户发现了 bug 或某些场景下无法正常运行,可提交问题报告。
使用方法
第一步:安装库
用户可以通过以下命令安装 claude-api-py 库:
pip install claude-api-py
如果上述命令无法安装,也可以直接从 GitHub 仓库安装:
pip install git+git://github.com/AshwinPathi/claude-api-py.git
该项目目前有一个依赖项:sseclient-py
。
第二步:获取 sessionKey
要启动机器人工具,用户需要从 Claude 网站获取 sessionKey
。具体步骤如下:
- 登录至
https://claude.ai/chats
。 - 打开浏览器的开发者工具(在 Chrome 中按 F12)。
- 在顶部菜单中选择
Application
标签页。 - 在
Storage
下找到Cookies
。 - 寻找名为
https://claude.ai
的 cookie,并点击。 - 点击
sessionKey
字段,复制该 session key。
第三步:使用机器人
用户可以参考项目中的 example.py
以查看如何使用该库。
示例代码
-
导入必要的库
from claude import claude_client, claude_wrapper
-
创建客户端与包装器
client = claude_client.ClaudeClient(SESSION_KEY) organizations = client.get_organizations() claude_obj = claude_wrapper.ClaudeWrapper(client, organization_uuid=organizations[0]['uuid'])
-
开启新对话
new_conversation_data = claude_obj.start_new_conversation("New Conversation", "Hi Claude!")
-
发送消息
response = claude_obj.send_message("How are you doing today!", conversation_uuid=conversation_uuid)
-
发送附件
attachment = claude_obj.get_attachment('example_attachment.txt') response = claude_obj.send_message("Hi Claude, what does this attachment say?", attachments=[attachment])
-
删除对话
deleted = claude_obj.delete_conversation(conversation_uuid)
-
获取对话历史
conversation_history = claude_obj.get_conversation_info(conversation_uuid=conversation_uuid)
声明
claude-api-py 仅用于教育目的,并且为非官方项目。如果用户由于使用此库导致账户被封禁,开发者不承担任何责任。如需使用官方 API,请访问 Anthropic 的网站。