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

大家好,我是【同学小张】。持续学习,持续干货输出,关注我,跟我一起学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 requests
import json
import os
# 加载 .env 到环境变量
from dotenv import load_dotenv, find_dotenv
_ = load_dotenv(find_dotenv())

zhipu_api_key = os.getenv('ZHIPU_AI_API_KEY') # 设置百度千帆AK

from zhipuai import ZhipuAI

client = ZhipuAI(api_key=zhipu_api_key) # 填写您自己的APIKey
response = 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 ZhipuAI

client = ZhipuAI(api_key="") # 请填写您自己的APIKey

response = 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 ZhipuAI
client = ZhipuAI(api_key=zhipu_api_key) # 请填写您自己的APIKey

response = client.images.generations(
    model="cogview-3", #填写需要调用的模型名称
    prompt="过年了,画一条东方巨龙,喜庆,可爱",
)
print(response.data[0].url)

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

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

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

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

  • 大家好,我是同学小张
  • 欢迎 点赞 + 关注 👏,促使我持续学习持续干货输出
  • +v: jasper_8017 一起交流💬,一起进步💪。
  • 微信公众号也可搜【同学小张】 🙏
  • 踩坑不易,感谢关注和围观

本站文章一览:

版权声明:本文为博主作者:同学小张原创文章,版权归属原作者,如果侵权,请联系我们删除!

原文链接:https://blog.csdn.net/Attitude93/article/details/136056318

共计人评分,平均

到目前为止还没有投票!成为第一位评论此文章。

(0)
乘风的头像乘风管理团队
上一篇 2024年4月10日
下一篇 2024年4月10日

相关推荐