Kimi 开放平台 2024-09-10 11:54 北京
批量处理,自动填表
非常羡慕 Kimi 智能助手的网上冲浪(联网搜索)功能,不管是什么奇妙的问题 ,Kimi 都能从广袤的互联网上找到想要的答案,真是太好用了!
但是 Kimi API 却只有干巴巴的聊天功能,什么时候 Kimi API 也能网上冲浪啊,API 也想“遇到不会的问题就上网搜”
今天,它来了她来了他来了!
Kimi API 现在提供联网搜索功能,它的特点如下:
省心:从搜索到内容获取,都由 Kimi 完成
快速:像 Kimi 智能助手一样快
兼容:以 Tools 的形式提供,即不破坏原 API 兼容性,也不破坏你已经写好的代码;
让我们用一个简单的例子来说明如何使用联网搜索功能:
import os
from openai import OpenAI
client = OpenAI(
api_key=os.environ.get("MOONSHOT_API_KEY"),
base_url="https://api.moonshot.cn/v1",
)
tools = [
{
"type": "builtin_function",
"function": {
"name": "$web_search",
},
},
]
messages = [
{
"role": "system",
"content": "你是 Kimi"
},
{
"role": "user",
"content": "请联网搜索 Moonshot AI Context Caching 技术,并告诉我它的原理。"
},
]
completion = client.chat.completions.create(
model="moonshot-v1-auto",
messages=messages,
n=1,
temperature=0.3,
max_tokens=4096,
tools=tools,
)
if completion.choices[0].finish_reason == "tool_calls":
response_message = completion.choices[0].message
messages.append(response_message)
for tool_call in response_message.tool_calls:
if tool_call.function.name == "$web_search":
messages.append({
"role": "tool",
"tool_call_id": tool_call.id,
"name": tool_call.function.name,
"content": tool_call.function.arguments,
})
completion = client.chat.completions.create(
model="moonshot-v1-auto",
messages=messages,
n=1,
temperature=0.3,
max_tokens=4096,
tools=tools,
)
print(completion.choices[0].message.content)
关于计费:当你在 tools 中加入 $web_search 工具,并获得了一个 finish_reason = tool_calls 且 tool_call.function.name = $web_search 的响应时,我们收取联网搜索 $web_search 调用费用 0.03 元;当响应 finish_reason = stop 时,不会收取调用费用。此外,在使用 $web_search 时,我们依然会按照不同的模型大小收取 /chat/completions 接口产生的 Tokens 费用。
关于联网搜索的详细指南,请点击阅读原文查看。
快来体验更加智慧的 Kimi API 吧!