【AI大模型应用开发】0.2 智谱AI API接入详细步骤和简单应用

同学小张 2024-06-24 10:01:01 阅读 73

大家好,我是【同学小张】。持续学习,持续干货输出,关注我,跟我一起学AI大模型技能。

最近我的OpenAI的API key由于调用次数太多被封了… 不知道下个月能不能解封。而为了尽可能地不花钱,先来看下国内的大模型API怎么用。

本文是智谱AI API的使用。

0. 环境

(1)注册并登录智谱AI开发者平台:https://www.zhipuai.cn/

原来注册的时候赠送了18块钱的使用额度,不知道现在注册还有没有。

(2)获取API key

在这里插入图片描述

在这里插入图片描述

(3)安装智谱AI API的Python包

pip install --upgrade zhipuai

1. 调用接口

(1)将你的API Key添加到环境变量中

ZHIPU_AI_API_KEY = "7c470xxxxxXwe"

(2)调用对话接口

import requestsimport jsonimport os# 加载 .env 到环境变量from dotenv import load_dotenv, find_dotenv_ = load_dotenv(find_dotenv())zhipu_api_key = os.getenv('ZHIPU_AI_API_KEY') # 设置百度千帆AKfrom zhipuai import ZhipuAIclient = ZhipuAI(api_key=zhipu_api_key) # 填写您自己的APIKeyresponse = client.chat.completions.create( model="glm-4", # 填写需要调用的模型名称 messages=[ { "role": "user", "content": "作为一名营销专家,请为我的产品创作一个吸引人的slogan"}, { "role": "assistant", "content": "当然,为了创作一个吸引人的slogan,请告诉我一些关于您产品的信息"}, { "role": "user", "content": "智谱AI开放平台"}, { "role": "assistant", "content": "智启未来,谱绘无限一智谱AI,让创新触手可及!"}, { "role": "user", "content": "创造一个更精准、吸引人的slogan"} ],)print(response.choices[0].message)## 输出:content='"精准智绘,创想由AI驱动 —— 智谱AI,共筑智能巅峰。"' role='assistant' tool_calls=None

从接口的调用形式来看,基本跟OpenAI API的调用方式一样了,可以无缝切换。

2. Function Calling

from zhipuai import ZhipuAIclient = ZhipuAI(api_key="") # 请填写您自己的APIKeyresponse = client.chat.completions.create( model="glm-4", # 填写需要调用的模型名称 messages = [ { "role": "user", "content": "你能帮我查询2024年1月1日从北京南站到上海的火车票吗?" } ], tools = [ { "type": "function", "function": { "name": "query_train_info", "description": "根据用户提供的信息,查询对应的车次", "parameters": { "type": "object", "properties": { "departure": { "type": "string", "description": "出发城市或车站", }, "destination": { "type": "string", "description": "目的地城市或车站", }, "date": { "type": "string", "description": "要查询的车次日期", }, }, "required": ["departure", "destination", "date"], }, } } ], tool_choice="auto",)print(response.choices[0].message)

运行结果:

在这里插入图片描述

可以看到,它的function calling的使用方式,也与OpenAI API中function calling功能的使用几乎一模一样。

OpenAI 的 function calling使用方式可以看我这篇文章:【AI大模型应用开发】2.1 Function Calling连接外部世界 - 入门与实战(1)

3. 文生图API

from zhipuai import ZhipuAIclient = ZhipuAI(api_key=zhipu_api_key) # 请填写您自己的APIKeyresponse = client.images.generations( model="cogview-3", #填写需要调用的模型名称 prompt="过年了,画一条东方巨龙,喜庆,可爱",)print(response.data[0].url)

输出为图片的url链接,用浏览器打开返回的url,可以获得图片

在这里插入图片描述

文生图接口当然比较费钱,上面这一张图,花费了2-3毛钱。

好了,本文就到这了。当然,智谱AIAPI不止如此,它还有更多丰富的功能和接口,例如嵌入模型和接口。因为我目前的目的只是看看智谱AI API怎么接入以及怎么替换掉OpenAI的接口,所以没有太过深入。后面有机会继续探索。

如果觉得本文对你有帮助,麻烦点个赞和关注呗 ~~~


大家好,我是同学小张欢迎 点赞 + 关注 👏,促使我 持续学习持续干货输出。+v: jasper_8017 一起交流💬,一起进步💪。


声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。