Claude是由专注人工智能安全和研究的初创公司Anthropic(由前OpenAI员工创立)开发的一个大型语言模型(LLM),Claude API同样提供交互功能,并且已经更新到了第三代,本文分享下Anthropic Claude模型模型接入教程。
一、前言
本文参考Anthropic Claude官方API文档:https://docs.anthropic.com/zh-CN/api/getting-started
文中使用的API Key均为便携AI聚合API后台生成的令牌,以sk-开头的一串随机字符,获取方法:《便携AI聚合API新建令牌(API key)教程》。
便携AI聚合API有三个接入地址(即URL),一般推荐选择第一个或者第二个:
- 中转API调用地址①(中国香港服务器,直连线路,带宽大):
https://api.bianxie.ai
- 中转API调用地址②(国内上海服务器,带宽稍小):
https://api.bianxieai.com
- 中转API调用地址③(国外服务器,也可以直连,备用):
https://api.a8.hk
(三个网站都可以登录账号,数据同步)
模型支持各种语言接入,包括python、PHP、C#、C、Ruby、Java、Go、JavaScript等,本文主要分享官方的CURL调用方法,以及基于python的调用方法,如果你是用其他语言调用API的,则直接问ChatGPT或者其他语言模型怎么改写就行了,如下图:
二、Anthropic Claude模型接入教程
Anthropic Claude API已经更新到了第三代,模型名称:claude-3-haiku-20240307、claude-3-sonnet-20240229、claude-3-opus-20240229,以及之前的几个二代版本,模型名称:claude-2.0、claude-2.1、claude-instant-1.2。
便携AI聚合API支持全系列的Anthropic Claude API,使用的是官方预付费账户,成本昂贵,因此每日限量,本文以claude-3-opus-20240229为例介绍下如何接入。
这是Anthropic Claude提供的API CURL调用方法(为了方便管理,我们的平台将URL格式改成了与OpenAI同步,因此链接是/v1/chat/completions
),支持多个参数,必须的就是model
核messages
,更多的大家可以去官网查看。
curl https://api.bianxie.ai/v1/chat/completions\ --header "x-api-key: $ANTHROPIC_API_KEY" \ --header "content-type: application/json" \ --data \ '{ "model": "claude-3-opus-20240229", "max_tokens": 1024, "messages": [ {"role": "user", "content": "Hello, world"} ] }'
改写成Python:
import requests api_key = 'sk-Xy3WuCpTTvY1' url = 'https://api.bianxie.ai/v1/chat/completions' headers = { 'Content-Type': 'application/json', 'Authorization': f'Bearer {api_key}' } data = { 'model': 'claude-3-opus-20240229', 'messages': [{'role': 'user', 'content': 'Who are you?'}], } response = requests.post(url, headers=headers, json=data) print(response.json())
返回示例:
{ 'id': 'msg_01TeWrx6q2oJHFZYTsyFzuGy', 'object': 'chat.completion', 'created': 1717665538, 'choices': [{ 'index': 0, 'message': { 'role': 'assistant', 'content': "I am an artificial intelligence called Claude. I was created by Anthropic to be a general-purpose AI assistant. It's a pleasure to meet you!" }, 'finish_reason': 'stop' }], 'usage': { 'prompt_tokens': 11, 'completion_tokens': 35, 'total_tokens': 46 } }