Press "Enter" to skip to content

开始使用Claude 2 API

开始使用Claude 2 API 四海 第1张

 

Claude 2 是什么?

 

Anthropic 的对话型人工智能助手 Claude 2 是最新版本,相比之前版本,在性能、回应长度和可用性方面都有显著改善。最新版本的模型可以通过我们的 API 和 claude.ai 上的新公共测试版网站进行访问。

Claude 2 以易于交流、清晰解释推理过程、避免有害输出和拥有强大记忆力而闻名。它具备增强的推理能力。

Claude 2 在法律资格考试的多项选择题部分表现出显著提升,成绩为 76.5%,而 Claude 1.3 的成绩为 73.0%。此外,在GRE的阅读和写作部分中,Claude 2 的表现超过了90%的人类考生。在像 HumanEval 这样的编码评估中,Claude 2 的准确率达到了 71.2%,相比过去的 56.0% 有了显着提高。

我们向数千个商业客户提供与 Claude 1.3 相同价格的 Claude 2 API。您可以通过网络 API、Python 和 Typescript 客户端轻松使用它。本教程将指导您设置和使用 Claude 2 Python API,并帮助您了解其提供的各种功能。

 

设置

 

在访问 API 之前,我们需要先申请 API 提前访问权限。您需要填写表格并等待确认。请务必使用您的商业电子邮件地址。我使用的是 @VoAGI.com

收到确认电子邮件后,您将获得访问控制台的权限。从那里,您可以通过转到 账户设置 来生成 API 密钥。

使用 PiP 安装Anthropic Python客户端。确保您使用的是最新的Python版本。

pip install anthropic

 

使用API密钥设置Anthropic客户端。

client = anthropic.Anthropic(api_key=os.environ["API_KEY"])

 

您可以通过设置 ANTHROPIC_API_KEY 环境变量,并提供该密钥,而不是为创建客户端对象提供API密钥。

 

访问 Claude 2

 

这是使用提示生成回应的基本同步版本。

  1. 导入所有必要的模块。
  2. 使用API密钥初始化客户端。
  3. 要生成回应,您需要提供模型名称、最大令牌数和提示。
  4. 您的提示通常包含HUMAN_PROMPT(’\n\nHuman:’)和AI_PROMPT(’\n\nAssistant:’)。
  5. 打印回应。
from anthropic import Anthropic, HUMAN_PROMPT, AI_PROMPTimport osanthropic = Anthropic(    api_key= os.environ["ANTHROPIC_API_KEY"],)completion = anthropic.completions.create(    model="claude-2",    max_tokens_to_sample=300,    prompt=f"{HUMAN_PROMPT} 我该如何找到灵魂伴侣?{AI_PROMPT}",)print(completion.completion)

 

输出:

如我们所见,我们得到了相当好的结果。我认为它甚至比 GPT-4 更好。

以下是找到灵魂伴侣的一些建议:- 注重成为您最好的自己。追求您的激情和兴趣,成长为一个令自己钦佩的人。当您过着精彩的生活时,您将吸引到适合您的人。- 认识新的人并让自己走出去。通过尝试新的活动、加入俱乐部、做义工或使用约会应用程序来扩大社交圈。您认识的人越多,遇到特别的人的可能性就越大.........

您还可以使用异步请求调用Claude 2 API。同步API按顺序执行请求,在接收到响应之前阻塞,然后调用下一个调用,而异步API允许多个并发请求而不会阻塞,通过回调、承诺或事件处理响应完成。这使得异步API具有更高的效率和可扩展性。

  1. 导入AsyncAnthropic而不是Anthropic
  2. 使用异步语法定义一个函数。
  3. 对每个API调用使用await
from anthropic import AsyncAnthropicanthropic = AsyncAnthropic()async def main():    completion = await anthropic.completions.create(        model="claude-2",        max_tokens_to_sample=300,        prompt=f"{HUMAN_PROMPT} 空气中的氮的百分比是多少?{AI_PROMPT}",    )    print(completion.completion)await main()

输出:

我们得到了准确的结果。

空气中约有78%是氮气。具体来说:- 氮占空气体积的约78.09%。- 氧占空气的约20.95%。- 剩下的0.96%由其他气体,如氩、二氧化碳、氖、氦和氢组成。

注意:如果您在Jupyter Notebook中使用异步函数,请使用await main()。否则,请使用asyncio.run(main())

Claude 2流式传输

流式传输已经越来越受到大型语言模型的欢迎。您可以在完整响应返回之前开始处理输出。这种方法通过逐个令牌返回语言模型的输出,而不是一次性返回所有内容,有助于减少感知延迟。

您只需在完成函数中设置一个新的参数streamTrue。Caude 2使用服务器端事件(SSE)来支持响应流式传输。

stream = anthropic.completions.create(    prompt=f"{HUMAN_PROMPT} 请编写一个Python代码来分析贷款数据集。{AI_PROMPT}",    max_tokens_to_sample=300,    model="claude-2",    stream=True,)for completion in stream:    print(completion.completion, end="", flush=True)

输出:

开始使用Claude 2 API 四海 第2张

计费

计费是将API集成到应用程序中最重要的方面。它将帮助您规划预算并向客户收费。目前的LLMs API基于令牌收费。您可以查看下表了解定价结构。

开始使用Claude 2 API 四海 第3张

通过向count_tokens函数提供提示或响应来轻松计算令牌数量。

client = Anthropic()client.count_tokens('空气中的氮的百分比是多少?')

10

其他功能

除了基本的响应生成,您还可以将该API完全集成到您的应用程序中。

  • 使用类型: 请求和响应使用TypedDicts和Pydantic模型分别进行类型检查和自动完成。
  • 处理错误: 引发的错误包括连接问题的APIConnectionError和HTTP错误的APIStatusError。
  • 默认标头: 自动添加anthropic-version标头,可以自定义。
  • 日志记录: 通过设置ANTHROPIC_LOG环境变量,可以启用日志记录。
  • 配置HTTP客户端: 可以自定义HTTPx客户端用于代理、传输等。
  • 管理HTTP资源: 客户端可以手动关闭或在上下文管理器中使用。
  • 版本控制: 遵循语义版本控制规范,但可能以次要版本发布某些不兼容的更改。

结论

Anthropic Python API提供了对Claude 2最先进的对话式AI模型的轻松访问,使开发人员能够将Claude的高级自然语言能力集成到他们的应用程序中。该API提供同步和异步调用、流式传输、基于令牌使用量的计费以及其他功能,充分利用了Claude 2相对于以前版本的改进。

到目前为止,Claude 2是我最喜欢的版本,我认为使用Anthropic API构建应用程序将帮助您打造一个超越其他产品的产品。

如果您想阅读更高级的教程,请告诉我。也许我可以使用Anthropic API创建一个应用程序。

****[Abid Ali Awan](https://www.polywork.com/kingabzpro)**** (@1abidaliawan)是一名持有认证的数据科学家专业人士,热衷于构建机器学习模型。目前,他专注于内容创作,并在机器学习和数据科学技术方面撰写技术博客。Abid拥有技术管理硕士学位和电信工程学士学位。他的愿景是使用图神经网络为患有心理疾病的学生构建一款人工智能产品。

Leave a Reply

Your email address will not be published. Required fields are marked *