如何使用Python调用大语言模型的API接口?

以下是使用 Python 调用几种常见大语言模型 API 接口的详细步骤和示例代码:

1. 调用 OpenAI 的 GPT 模型 API

OpenAI 提供了强大的 GPT 系列模型,使用其 API 需要先注册 OpenAI 账号并获取 API 密钥。

步骤:
  • 安装openai库:pip install openai
  • 获取 OpenAI API 密钥,并设置环境变量或直接在代码中使用
示例代码:

python

复制代码
import openai

# 设置API密钥
openai.api_key = "your_api_key"

# 调用Chat Completion API
response = openai.ChatCompletion.create(
    model="gpt-3.5-turbo",  # 选择模型
    messages=[
        {"role": "system", "content": "你是一个友善的助手。"},
        {"role": "user", "content": "给我讲一个笑话。"}
    ]
)

# 提取生成的回复
answer = response['choices'][0]['message']['content']
print(answer)

2. 调用百度文心一言 API

百度文心一言是百度的大语言模型,使用其 API 需要在百度智能云平台注册并创建应用,获取 API Key 和 Secret Key。

步骤:
  • 安装requests库(如果未安装):pip install requests
  • 获取 API Key 和 Secret Key
示例代码:

收起

python

复制代码
import requests

# 获取access_token
def get_access_token():
    API_KEY = "your_api_key"
    SECRET_KEY = "your_secret_key"
    url = f"https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id={API_KEY}&client_secret={SECRET_KEY}"
    response = requests.get(url)
    return response.json().get("access_token")

# 调用文心一言API
def call_wenxin_api():
    access_token = get_access_token()
    url = f"https://aip.baidubce.com/rpc/2.0/ai_custom/v1/wenxinworkshop/chat/eb-instant?access_token={access_token}"
    headers = {
        "Content-Type": "application/json"
    }
    data = {
        "messages": [
            {
                "role": "user",
                "content": "给我讲一个笑话"
            }
        ]
    }
    response = requests.post(url, headers=headers, json=data)
    return response.json()

result = call_wenxin_api()
print(result)

3. 调用火山引擎云雀模型 API

火山引擎提供的云雀模型,使用其 API 需要在火山引擎平台注册并创建密钥。

步骤:
  • 安装volcengine库:pip install volcengine
  • 获取 Access Key 和 Secret Key
示例代码:

python

复制代码
from volcengine.core import Credentials
from volcengine.core.session import Session
from volcengine.core.constant import REGION_CN_NORTH_1
from volcengine.core.rest import RESTClient
from volcengine.core.config import Config

# 配置认证信息
credentials = Credentials("your_access_key", "your_secret_key")
session = Session(credentials, REGION_CN_NORTH_1)
config = Config()
client = RESTClient(session, config)

# 调用API
body = {
    "input": {
        "messages": [
            {
                "role": "user",
                "content": "给我讲一个笑话"
            }
        ]
    },
    "parameters": {
        "max_new_tokens": 200,
        "temperature": 0.8
    }
}

response = client.post("/invoke", json=body)
print(response.json())

注意事项:

  • API 密钥安全:不要将 API 密钥硬编码在代码中,建议使用环境变量或配置文件来管理。
  • 请求频率限制:各平台对 API 调用频率有一定限制,避免频繁调用导致请求被拒绝。
  • 错误处理:在实际应用中,需要添加适当的错误处理代码,以应对网络异常、API 调用失败等情况。
相关推荐
汤姆yu7 分钟前
基于python大数据的商品数据可视化分析系统
大数据·python·信息可视化·商品数据
Matlab光学22 分钟前
MATLAB仿真:Ince-Gaussian光束和Ince-Gaussian矢量光束
开发语言·算法·matlab
好记忆不如烂笔头abc39 分钟前
oracle-blob导出,在ob导入失败
大数据·数据库·python
珹洺43 分钟前
Java-servlet(十)使用过滤器,请求调度程序和Servlet线程(附带图谱表格更好对比理解)
java·开发语言·前端·hive·hadoop·servlet·html
程序员一诺44 分钟前
【Python使用】嘿马python数据分析教程第1篇:Excel的使用,一. Excel的基本使用,二. 会员分析【附代码文档】
后端·python
勘察加熊人1 小时前
c#使用forms实现helloworld和login登录
开发语言·c#
神奇侠20241 小时前
快速入手-基于Django-rest-framework的serializers序列化器(二)
后端·python·django
双叶8361 小时前
(C语言)学生信息表(学生管理系统)(基于通讯录改版)(正式版)(C语言项目)
c语言·开发语言·c++·算法·microsoft
搬砖的阿wei1 小时前
从零开始学 Flask:构建你的第一个 Web 应用
前端·后端·python·flask
IT从业者张某某1 小时前
Python数据可视化-第4章-图表样式的美化
开发语言·python·信息可视化