Kimi作为国内目前广受欢迎的AI工具,因其出色的性能和智能功能,迅速赢得了大量用户的青睐。随着用户量的激增,系统在高峰时段可能会面临响应压力。正是借助这一热潮,Kimi团队适时推出了其API服务,使用户和开发者能够更加灵活和深入地集成和使用Kimi的智能功能。
API是一个软件解决方案,作为中介,使两个应用程序能够相互交互。以下一些特征让API变得更加有用和有价值:
Moonshot的文本 生成模型(指moonshot-v1)是一个训练有素的模型,专门用于理解自然语言和书面语言。它能够根据输入(prompt)生成文本输出。文本生成模型可以用于多种任务,包括但不限于内容或代码生成、摘要、对话、创意写作等。
语言模型推理服务则是在其基础上开发和训练的预训练模型的 API 服务。对外主要提供了一个 Chat Completions 接口,它可以用于生成文本,但是它本身是不支持访问网络、数据库等外部资源,也不支持执行任何代码。
当前支持的模型有:
以上模型的区别在于它们的最大上下文长度,这个长度包括了输入消息和生成的输出,在效果上并没有什么区别。大致来说,对于一段通常的中文文本,1 个 Token 大约相当于 1.5-2 个汉字。
需要注意的是,对于这个文本模型,Input 和 Output 的总和长度不能超过模型的最大上下文长度。
速率限制通过4种方式衡量:并发、RPM(每分钟请求数)、TPM(每分钟 Token 数)、TPD(每天 Token 数)。速率限制可能会在任何一种选项中达到,取决于哪个先发生。例如,你可能向 ChatCompletions 发送了 20 个请求,每个请求只有 100 个 Token ,那么你就达到了限制(如果你的 RPM 限制是 20),即使你在这些 20 个请求中没有发满 200k 个 Token (假设你的TPM限制是 200k)。
对网关,出于方便考虑,会基于请求中的 max_tokens 参数来计算速率限制。这意味着,如果你的请求中包含了 max_tokens 参数,会使用这个参数来计算速率限制。如果你的请求中没有包含 max_tokens 参数,则会使用默认的 max_tokens 参数来计算速率限制。当你发出请求后,会基于你请求的 token 数量加上你 max_tokens 参数的数量来判断你是否达到了速率限制。而不考虑实际生成的 token 数量。
而在计费环节中,会基于你请求的 token 数量加上实际生成的 token 数量来计算费用。
其他值得注意的重要事项:
速率限制是在用户级别而非密钥级别上实施的。
目前在所有模型共享速率限制。
可以通过 幂简集成-API HUB快速找到大量AI技术相关API,心仪的API可以在登录后添加到个人书签,便于下次使用快速查找。

在API详情页了解了API的基础信息后,可以在服务商官网进行开通账户和充值。

我们在 API Key 管理页面点击「新建」创建一个新的 API Key,在创建好之后会生成一个 key,大家要保存好它,因为只展现一次,如果没记住那就只能删除并重建了:

Kimi API接口用量限制:

1. 首先安装 openai 库
pip3 install openai
pip3 show openai 可以查看 openai 的版本. openai 的版本要大于 1.0

openai版本低于1.0会报错
/usr/local/bin/python3 /Users/larryzheng/Desktop/kimi_chat.pylocalhost:~ larryzheng$ /usr/local/bin/python3 /Users/larryzheng/Desktop/kimi_chat.pyTraceback (most recent call last): File "/Users/larryzheng/Desktop/kimi_chat.py", line 1, in <module> from openai import OpenAIImportError: cannot import name 'OpenAI' from 'openai' (/usr/local/lib/python3.7/site-packages/openai/__init__.py)localhost:~ larryzheng$ /usr/local/bin/python3 /Users/larryzheng/Desktop/kimi_chat.pyTraceback (most recent call last): File "/Users/larryzheng/Desktop/kimi_chat.py", line 1, in <module> from openai import OpenAIImportError: cannot import name 'OpenAI' from 'openai' (/usr/local/lib/python3.7/site-packages/openai/__init__.py)
升级一下openai库
pip3 install --upgrade openai
2. 以一个简单的示例为例,来演示如何利用Python编写一个单轮对话的API接口,创建一个kimi_chat.py文件,其中 api_key 替换成自己申请的密钥。代码如下:
from openai import OpenAIclient = OpenAI( api_key="sk-*********", base_url="https://api.moonshot.cn/v1",)completion = client.chat.completions.create( model="moonshot-v1-8k", messages=[ { "role": "system", "content": "你是 Kimi,由 Moonshot AI 提供的人工智能助手,你更擅长中文和英文的对话。你会为用户提供安全,有帮助,准确的回答。同时,你会拒绝一切涉及恐怖主义,种族歧视,黄色暴力等问题的回答。Moonshot AI 为专有名词,不可翻译成其他语言。" }, { "role": "user", "content": "帮我生成一篇关于怎么使用Kimi API接口文档的文章" }, ], temperature=0.3,)answer = completion.choices[0].messageprint("*" * 30)print(answer)
3. 启动API服务
使用如下命令启动API服务:
python kimi_chat.py
4. 返回内容格式如下:
{ "id": "cmpl-04ea926191a14749b7f2c7a48a68abc6", "object": "chat.completion", "created": 1698999496, "model": "moonshot-v1-8k", "choices": [ { "index": 0, "message": { "role": "assistant", "content": " 你好,李雷!1+1等于2。如果你有其他问题,请随时提问!" }, "finish_reason": "stop" } ], "usage": { "prompt_tokens": 19, "completion_tokens": 21, "total_tokens": 40 }}
返回参数比较多,只获取content这个字段即可
answer = completion.choices[0].message.contentprint("*" * 30)print(answer)
返回结果如下:
当然可以,以下是一篇关于如何使用Kimi API接口的示例文档:---# 如何使用Kimi API接口## 简介Kimi API是一个强大的接口,为用户提供了与Moonshot AI交互的能力。通过Kimi API,开发者可以创建应用程序,实现与Kimi的对话、信息检索、数据分析等功能。## 准备工作在开始使用Kimi API之前,请确保您已经完成了以下步骤:1. **注册账户**:访问Moonshot AI的官方网站,注册一个开发者账户。2. **获取API密钥**:在您的账户中生成一个API密钥,这将用于在您的请求中验证身份。3. **阅读文档**:仔细阅读Kimi API的官方文档,了解支持的功能和使用限制。## 基本使用### 1. 初始化请求要使用Kimi API,您需要发送HTTP请求到指定的端点。以下是一个基本的请求示例:```httpPOST /api/v1/kimiHost: api.moonshot.aiAuthorization: Bearer YOUR_API_KEYContent-Type: application/json{"query": "你好,Kimi!"}```### 2. 发送查询在请求体中,您可以包含一个`query`字段,其中包含您想要Kimi回答的问题或指令。### 3. 接收响应Kimi API将返回一个JSON格式的响应,其中包含Kimi的回答:```json{"response": "你好!有什么可以帮助你的吗?","status": "success"}```## 最佳功能### 多语言支持Kimi API支持多种语言的交互。您可以通过在请求中指定`language`字段来获取不同语言的回答:```json{"query": "你好,Kimi!","language": "zh-CN"}```### 上下文管理Kimi API支持上下文管理,这意味着Kimi可以记住之前的对话内容。这对于创建更自然、连贯的对话体验非常有用。### 数据分析Kimi API还可以提供数据分析功能,帮助您理解用户查询的模式和趋势。## 安全和限制- **API密钥**:请确保您的API密钥安全,不要在公共代码库或不安全的地方共享。- **请求限制**:Kimi API可能有请求频率和数据量的限制,请遵守这些限制以避免服务中断。- **数据隐私**:请遵守数据隐私法规,确保用户数据的安全和保密。## 结论Kimi API为开发者提供了一个强大的工具,以创建智能、交互式的应用程序。通过遵循本文档的指南,您可以开始探索 Kimi API的功能,并将其集成到您的项目中。---请注意,以上文档是一个示例,实际的API使用可能会有所不同。您应该参考Moonshot AI提供的官方文档来获取最准确和最新的信息。
5. 单轮对话的例子中语言模型将用户信息列表作为输入,并将模型生成的信息作为输出返回。 我们也可以将模型输出的结果继续作为输入的一部分以实现多轮对话。下面是一个简单的示例,如何利用Python编写一个多轮对话的API接口,代码如下:
from openai import OpenAI client = OpenAI( api_key = "sk-********", base_url = "https://api.moonshot.cn/v1",) history = [ {"role": "system", "content": "你是 Kimi,由 Moonshot AI 提供的人工智能助手,你更擅长中文和英文的对话。你会为用户提供安全,有帮助,准确的回答。同时,你会拒绝一切涉及恐怖主义,种族歧视,黄色暴力等问题的回答。Moonshot AI 为专有名词,不可翻译成其他语言。"}] def chat(query, history): history.append({ "role": "user", "content": query }) completion = client.chat.completions.create( model="moonshot-v1-8k", messages=history, temperature=0.3, ) result = completion.choices[0].message.content history.append({ "role": "assistant", "content": result }) return result print(chat("我想要在北京预订一家意大利餐厅?", history))print(chat("推荐一家评价好的", history))
返回结果如下:
在北京预订一家意大利餐厅是个不错的选择,因为北京有很多优质的意大利餐厅。以下是一些步骤和建议,帮助你预订:1. **确定预算和口味**:首
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70039343/viewspace-3021161/ ,如需转载,请注明出处,否则将追究法律责任。